mirror of
https://github.com/EyeTrackVR/EyeTrackVR-Docs.git
synced 2025-11-04 14:49:44 +08:00
docs: Merge pull request #22 from Frosty704/main with tweaks
Updated camera page to have IR filter removal, parts updates, JLC3DP page, 3d Printed Mounts update, clarify wording
This commit is contained in:
parent
5ca7660ff7
commit
d21aa6dfec
14
about.html
14
about.html
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
import{V as i,a as r,b as s,c as u}from"./chunks/theme.6ff56f93.js";import{o as m,c as p,E as n,w as o,l,k as t,a}from"./chunks/framework.79850ceb.js";const h=[{name:"Prohurtz",avatar:"https://avatars.githubusercontent.com/u/48768484?v=4",title:"Creator / Lead Software Developer / Documentor / Hardware Developer",links:[{icon:"github",link:"https://github.com/RedHawk989"}]},{name:"Summer",avatar:"https://avatars.githubusercontent.com/u/115666235?v=4",title:"Machine Learning Engineer / Data Scientist / App Developer",links:[{icon:"github",link:"https://github.com/Summer404NotFound"}]},{name:"lorow",avatar:"https://avatars.githubusercontent.com/u/14099558?v=4",title:"Lead Firmware Developer / App Developer",links:[{icon:"github",link:"https://github.com/lorow"}]},{name:"DaOfficialWizard",avatar:"https://avatars.githubusercontent.com/u/45744329?v=4",title:"Firmware Developer / Documentation Manager / App Developer",links:[{icon:"github",link:"https://github.com/ZanzyTHEbar"}]}],b=[{name:"qdot",avatar:"https://avatars.githubusercontent.com/u/34539?v=4",links:[{icon:"github",link:"https://github.com/qdot"}]},{name:"dfgHiatus",avatar:"https://avatars.githubusercontent.com/u/51272212?v=4",links:[{icon:"github",link:"https://github.com/dfgHiatus"}]},{name:"PallasNeko",avatar:"https://avatars.githubusercontent.com/u/124042774?v=4",links:[{icon:"github",link:"https://github.com/PallasNeko"}]}],f=JSON.parse('{"title":"","description":"","frontmatter":{"layout":"page"},"headers":[],"relativePath":"about.md","filePath":"about.md","lastUpdated":1700510338000}'),d={name:"about.md"},w=Object.assign(d,{setup(c){return(g,e)=>(m(),p("div",null,[n(l(u),null,{default:o(()=>[n(l(i),null,{title:o(()=>e[0]||(e[0]=[t("div",{class:"text-[#ab5ac7]"}," Our Team ",-1)])),lead:o(()=>e[1]||(e[1]=[a(" The development of EyeTrackVR is guided by an international team, some of whom have chosen to be featured below."),t("br",null,null,-1),t("br",null,null,-1),a(" EyeTrackVR developers are a group of people who are passionate about the field of augmented and virtual reality. ")])),_:1}),n(l(r),{size:"medium",members:l(h)},null,8,["members"]),n(l(s),null,{title:o(()=>e[2]||(e[2]=[a("Contributors")])),lead:o(()=>e[3]||(e[3]=[a("Those who have actively contributed to development."),t("br",null,null,-1),a(" Community Support")])),members:o(()=>[n(l(r),{size:"small",members:l(b)},null,8,["members"])]),_:1}),n(l(s),null,{title:o(()=>e[4]||(e[4]=[a("Philosophy")])),lead:o(()=>e[5]||(e[5]=[a(" The "),t("a",{class:"custom-links",href:"/intro",target:"_blank"},"guides",-1),a(" on this website include some of our team's own notes (not all of them are polished) that we disclose for other people to use."),t("br",null,null,-1),t("br",null,null,-1),a(" Here, we hope you may find something useful to you."),t("br",null,null,-1),t("br",null,null,-1),a(" We advocate the "),t("a",{class:"custom-links",href:"https://en.wikipedia.org/wiki/Open-source_model",target:"_blank"},"Open Source model",-1),a("."),t("br",null,null,-1),t("br",null,null,-1),a(" This is why we strive to make our work open to other people for consultation, replication and reuse. ")])),_:1})]),_:1})]))}});export{f as __pageData,w as default};
|
||||
import{V as i,a as r,b as s,c as u}from"./chunks/theme.e2b88eb8.js";import{o as m,c as p,E as n,w as o,l,k as t,a}from"./chunks/framework.a4daa24a.js";const h=[{name:"Prohurtz",avatar:"https://avatars.githubusercontent.com/u/48768484?v=4",title:"Creator / Lead Software Developer / Documentor / Hardware Developer",links:[{icon:"github",link:"https://github.com/RedHawk989"}]},{name:"Summer",avatar:"https://avatars.githubusercontent.com/u/115666235?v=4",title:"Machine Learning Engineer / Data Scientist / App Developer",links:[{icon:"github",link:"https://github.com/Summer404NotFound"}]},{name:"lorow",avatar:"https://avatars.githubusercontent.com/u/14099558?v=4",title:"Lead Firmware Developer / App Developer",links:[{icon:"github",link:"https://github.com/lorow"}]},{name:"DaOfficialWizard",avatar:"https://avatars.githubusercontent.com/u/45744329?v=4",title:"Firmware Developer / Documentation Manager / App Developer",links:[{icon:"github",link:"https://github.com/ZanzyTHEbar"}]}],b=[{name:"qdot",avatar:"https://avatars.githubusercontent.com/u/34539?v=4",links:[{icon:"github",link:"https://github.com/qdot"}]},{name:"dfgHiatus",avatar:"https://avatars.githubusercontent.com/u/51272212?v=4",links:[{icon:"github",link:"https://github.com/dfgHiatus"}]},{name:"PallasNeko",avatar:"https://avatars.githubusercontent.com/u/124042774?v=4",links:[{icon:"github",link:"https://github.com/PallasNeko"}]}],f=JSON.parse('{"title":"","description":"","frontmatter":{"layout":"page"},"headers":[],"relativePath":"about.md","filePath":"about.md","lastUpdated":1700510338000}'),d={name:"about.md"},w=Object.assign(d,{setup(c){return(g,e)=>(m(),p("div",null,[n(l(u),null,{default:o(()=>[n(l(i),null,{title:o(()=>e[0]||(e[0]=[t("div",{class:"text-[#ab5ac7]"}," Our Team ",-1)])),lead:o(()=>e[1]||(e[1]=[a(" The development of EyeTrackVR is guided by an international team, some of whom have chosen to be featured below."),t("br",null,null,-1),t("br",null,null,-1),a(" EyeTrackVR developers are a group of people who are passionate about the field of augmented and virtual reality. ")])),_:1}),n(l(r),{size:"medium",members:l(h)},null,8,["members"]),n(l(s),null,{title:o(()=>e[2]||(e[2]=[a("Contributors")])),lead:o(()=>e[3]||(e[3]=[a("Those who have actively contributed to development."),t("br",null,null,-1),a(" Community Support")])),members:o(()=>[n(l(r),{size:"small",members:l(b)},null,8,["members"])]),_:1}),n(l(s),null,{title:o(()=>e[4]||(e[4]=[a("Philosophy")])),lead:o(()=>e[5]||(e[5]=[a(" The "),t("a",{class:"custom-links",href:"/intro",target:"_blank"},"guides",-1),a(" on this website include some of our team's own notes (not all of them are polished) that we disclose for other people to use."),t("br",null,null,-1),t("br",null,null,-1),a(" Here, we hope you may find something useful to you."),t("br",null,null,-1),t("br",null,null,-1),a(" We advocate the "),t("a",{class:"custom-links",href:"https://en.wikipedia.org/wiki/Open-source_model",target:"_blank"},"Open Source model",-1),a("."),t("br",null,null,-1),t("br",null,null,-1),a(" This is why we strive to make our work open to other people for consultation, replication and reuse. ")])),_:1})]),_:1})]))}});export{f as __pageData,w as default};
|
||||
@ -1 +1 @@
|
||||
import{V as i,a as r,b as s,c as u}from"./chunks/theme.6ff56f93.js";import{o as m,c as p,E as n,w as o,l,k as t,a}from"./chunks/framework.79850ceb.js";const h=[{name:"Prohurtz",avatar:"https://avatars.githubusercontent.com/u/48768484?v=4",title:"Creator / Lead Software Developer / Documentor / Hardware Developer",links:[{icon:"github",link:"https://github.com/RedHawk989"}]},{name:"Summer",avatar:"https://avatars.githubusercontent.com/u/115666235?v=4",title:"Machine Learning Engineer / Data Scientist / App Developer",links:[{icon:"github",link:"https://github.com/Summer404NotFound"}]},{name:"lorow",avatar:"https://avatars.githubusercontent.com/u/14099558?v=4",title:"Lead Firmware Developer / App Developer",links:[{icon:"github",link:"https://github.com/lorow"}]},{name:"DaOfficialWizard",avatar:"https://avatars.githubusercontent.com/u/45744329?v=4",title:"Firmware Developer / Documentation Manager / App Developer",links:[{icon:"github",link:"https://github.com/ZanzyTHEbar"}]}],b=[{name:"qdot",avatar:"https://avatars.githubusercontent.com/u/34539?v=4",links:[{icon:"github",link:"https://github.com/qdot"}]},{name:"dfgHiatus",avatar:"https://avatars.githubusercontent.com/u/51272212?v=4",links:[{icon:"github",link:"https://github.com/dfgHiatus"}]},{name:"PallasNeko",avatar:"https://avatars.githubusercontent.com/u/124042774?v=4",links:[{icon:"github",link:"https://github.com/PallasNeko"}]}],f=JSON.parse('{"title":"","description":"","frontmatter":{"layout":"page"},"headers":[],"relativePath":"about.md","filePath":"about.md","lastUpdated":1700510338000}'),d={name:"about.md"},w=Object.assign(d,{setup(c){return(g,e)=>(m(),p("div",null,[n(l(u),null,{default:o(()=>[n(l(i),null,{title:o(()=>e[0]||(e[0]=[t("div",{class:"text-[#ab5ac7]"}," Our Team ",-1)])),lead:o(()=>e[1]||(e[1]=[a(" The development of EyeTrackVR is guided by an international team, some of whom have chosen to be featured below."),t("br",null,null,-1),t("br",null,null,-1),a(" EyeTrackVR developers are a group of people who are passionate about the field of augmented and virtual reality. ")])),_:1}),n(l(r),{size:"medium",members:l(h)},null,8,["members"]),n(l(s),null,{title:o(()=>e[2]||(e[2]=[a("Contributors")])),lead:o(()=>e[3]||(e[3]=[a("Those who have actively contributed to development."),t("br",null,null,-1),a(" Community Support")])),members:o(()=>[n(l(r),{size:"small",members:l(b)},null,8,["members"])]),_:1}),n(l(s),null,{title:o(()=>e[4]||(e[4]=[a("Philosophy")])),lead:o(()=>e[5]||(e[5]=[a(" The "),t("a",{class:"custom-links",href:"/intro",target:"_blank"},"guides",-1),a(" on this website include some of our team's own notes (not all of them are polished) that we disclose for other people to use."),t("br",null,null,-1),t("br",null,null,-1),a(" Here, we hope you may find something useful to you."),t("br",null,null,-1),t("br",null,null,-1),a(" We advocate the "),t("a",{class:"custom-links",href:"https://en.wikipedia.org/wiki/Open-source_model",target:"_blank"},"Open Source model",-1),a("."),t("br",null,null,-1),t("br",null,null,-1),a(" This is why we strive to make our work open to other people for consultation, replication and reuse. ")])),_:1})]),_:1})]))}});export{f as __pageData,w as default};
|
||||
import{V as i,a as r,b as s,c as u}from"./chunks/theme.e2b88eb8.js";import{o as m,c as p,E as n,w as o,l,k as t,a}from"./chunks/framework.a4daa24a.js";const h=[{name:"Prohurtz",avatar:"https://avatars.githubusercontent.com/u/48768484?v=4",title:"Creator / Lead Software Developer / Documentor / Hardware Developer",links:[{icon:"github",link:"https://github.com/RedHawk989"}]},{name:"Summer",avatar:"https://avatars.githubusercontent.com/u/115666235?v=4",title:"Machine Learning Engineer / Data Scientist / App Developer",links:[{icon:"github",link:"https://github.com/Summer404NotFound"}]},{name:"lorow",avatar:"https://avatars.githubusercontent.com/u/14099558?v=4",title:"Lead Firmware Developer / App Developer",links:[{icon:"github",link:"https://github.com/lorow"}]},{name:"DaOfficialWizard",avatar:"https://avatars.githubusercontent.com/u/45744329?v=4",title:"Firmware Developer / Documentation Manager / App Developer",links:[{icon:"github",link:"https://github.com/ZanzyTHEbar"}]}],b=[{name:"qdot",avatar:"https://avatars.githubusercontent.com/u/34539?v=4",links:[{icon:"github",link:"https://github.com/qdot"}]},{name:"dfgHiatus",avatar:"https://avatars.githubusercontent.com/u/51272212?v=4",links:[{icon:"github",link:"https://github.com/dfgHiatus"}]},{name:"PallasNeko",avatar:"https://avatars.githubusercontent.com/u/124042774?v=4",links:[{icon:"github",link:"https://github.com/PallasNeko"}]}],f=JSON.parse('{"title":"","description":"","frontmatter":{"layout":"page"},"headers":[],"relativePath":"about.md","filePath":"about.md","lastUpdated":1700510338000}'),d={name:"about.md"},w=Object.assign(d,{setup(c){return(g,e)=>(m(),p("div",null,[n(l(u),null,{default:o(()=>[n(l(i),null,{title:o(()=>e[0]||(e[0]=[t("div",{class:"text-[#ab5ac7]"}," Our Team ",-1)])),lead:o(()=>e[1]||(e[1]=[a(" The development of EyeTrackVR is guided by an international team, some of whom have chosen to be featured below."),t("br",null,null,-1),t("br",null,null,-1),a(" EyeTrackVR developers are a group of people who are passionate about the field of augmented and virtual reality. ")])),_:1}),n(l(r),{size:"medium",members:l(h)},null,8,["members"]),n(l(s),null,{title:o(()=>e[2]||(e[2]=[a("Contributors")])),lead:o(()=>e[3]||(e[3]=[a("Those who have actively contributed to development."),t("br",null,null,-1),a(" Community Support")])),members:o(()=>[n(l(r),{size:"small",members:l(b)},null,8,["members"])]),_:1}),n(l(s),null,{title:o(()=>e[4]||(e[4]=[a("Philosophy")])),lead:o(()=>e[5]||(e[5]=[a(" The "),t("a",{class:"custom-links",href:"/intro",target:"_blank"},"guides",-1),a(" on this website include some of our team's own notes (not all of them are polished) that we disclose for other people to use."),t("br",null,null,-1),t("br",null,null,-1),a(" Here, we hope you may find something useful to you."),t("br",null,null,-1),t("br",null,null,-1),a(" We advocate the "),t("a",{class:"custom-links",href:"https://en.wikipedia.org/wiki/Open-source_model",target:"_blank"},"Open Source model",-1),a("."),t("br",null,null,-1),t("br",null,null,-1),a(" This is why we strive to make our work open to other people for consultation, replication and reuse. ")])),_:1})]),_:1})]))}});export{f as __pageData,w as default};
|
||||
@ -1 +1 @@
|
||||
import{u as p,v as i,p as s,a1 as c,a2 as l,a3 as d,a4 as f,a5 as m,a6 as h,a7 as g,a8 as A,a9 as v,aa as C,S as P,d as y,j as _,ab as w,ac as T,ad as b,ae as E}from"./chunks/framework.79850ceb.js";import{t as R}from"./chunks/theme.6ff56f93.js";const S={};const D={...R,setup(){const{lang:e}=p();i(()=>{s&&(document.cookie=`nf_lang=${e.value}; expires=Mon, 1 Jan 2024 00:00:00 UTC; path=/`)})},...S};function u(e){if(e.extends){const t=u(e.extends);return{...t,...e,async enhanceApp(a){t.enhanceApp&&await t.enhanceApp(a),e.enhanceApp&&await e.enhanceApp(a)}}}return e}const o=u(D),j=y({name:"VitePressApp",setup(){const{site:e}=p();return _(()=>{i(()=>{document.documentElement.lang=e.value.lang,document.documentElement.dir=e.value.dir})}),w(),T(),b(),o.setup&&o.setup(),()=>E(o.Layout)}});async function x(){const e=$(),t=O();t.provide(l,e);const a=d(e.route);return t.provide(f,a),t.component("Content",m),t.component("ClientOnly",h),Object.defineProperties(t.config.globalProperties,{$frontmatter:{get(){return a.frontmatter.value}},$params:{get(){return a.page.value.params}}}),o.enhanceApp&&await o.enhanceApp({app:t,router:e,siteData:g}),{app:t,router:e,data:a}}function O(){return A(j)}function $(){let e=s,t;return v(a=>{let n=C(a),r=null;return n&&(e&&(t=n),(e||t===n)&&(n=n.replace(/\.js$/,".lean.js")),r=P(()=>import(n),[])),s&&(e=!1),r},o.NotFound)}s&&x().then(({app:e,router:t,data:a})=>{t.go().then(()=>{c(t.route,a.site),e.mount("#app")})});export{x as createApp};
|
||||
import{u as p,v as i,p as s,a1 as c,a2 as l,a3 as d,a4 as f,a5 as m,a6 as h,a7 as g,a8 as A,a9 as v,aa as C,S as P,d as y,j as _,ab as w,ac as T,ad as b,ae as E}from"./chunks/framework.a4daa24a.js";import{t as R}from"./chunks/theme.e2b88eb8.js";const S={};const D={...R,setup(){const{lang:e}=p();i(()=>{s&&(document.cookie=`nf_lang=${e.value}; expires=Mon, 1 Jan 2024 00:00:00 UTC; path=/`)})},...S};function u(e){if(e.extends){const t=u(e.extends);return{...t,...e,async enhanceApp(a){t.enhanceApp&&await t.enhanceApp(a),e.enhanceApp&&await e.enhanceApp(a)}}}return e}const o=u(D),j=y({name:"VitePressApp",setup(){const{site:e}=p();return _(()=>{i(()=>{document.documentElement.lang=e.value.lang,document.documentElement.dir=e.value.dir})}),w(),T(),b(),o.setup&&o.setup(),()=>E(o.Layout)}});async function x(){const e=$(),t=O();t.provide(l,e);const a=d(e.route);return t.provide(f,a),t.component("Content",m),t.component("ClientOnly",h),Object.defineProperties(t.config.globalProperties,{$frontmatter:{get(){return a.frontmatter.value}},$params:{get(){return a.page.value.params}}}),o.enhanceApp&&await o.enhanceApp({app:t,router:e,siteData:g}),{app:t,router:e,data:a}}function O(){return A(j)}function $(){let e=s,t;return v(a=>{let n=C(a),r=null;return n&&(e&&(t=n),(e||t===n)&&(n=n.replace(/\.js$/,".lean.js")),r=P(()=>import(n),[])),s&&(e=!1),r},o.NotFound)}s&&x().then(({app:e,router:t,data:a})=>{t.go().then(()=>{c(t.route,a.site),e.mount("#app")})});export{x as createApp};
|
||||
@ -1 +1 @@
|
||||
import{_ as t,i as s}from"./chunks/index.6e6e7312.js";import{o as l,c as d,k as e,a as r,E as i,l as n,O as p}from"./chunks/framework.79850ceb.js";const m=JSON.parse('{"title":"Fox IR V2 Buil dInstructions","description":"","frontmatter":{},"headers":[],"relativePath":"archive/fox_ir_v2_build_instructions.md","filePath":"archive/fox_ir_v2_build_instructions.md","lastUpdated":1676223729000}'),a={name:"archive/fox_ir_v2_build_instructions.md"},b=Object.assign(a,{setup(u){return(f,o)=>(l(),d("div",null,[o[0]||(o[0]=e("h1",{class:"text-[var(--font-accent)]",id:"fox-ir-v2-buil-dinstructions",tabindex:"-1"},[r("Fox IR V2 Buil dInstructions "),e("a",{class:"header-anchor",href:"#fox-ir-v2-buil-dinstructions","aria-label":'Permalink to "Fox IR V2 Buil dInstructions {.text-[var(--font-accent)]}"'},"")],-1)),o[1]||(o[1]=e("h2",{id:"step-15-prepare-to-solder-ir-led-pcb-v2s",tabindex:"-1"},[r("Step 15: Prepare to solder IR LED PCB V2s "),e("a",{class:"header-anchor",href:"#step-15-prepare-to-solder-ir-led-pcb-v2s","aria-label":'Permalink to "Step 15: Prepare to solder IR LED PCB V2s"'},"")],-1)),o[2]||(o[2]=e("p",null,"Get your magnifying glass out, it's time to solder very smol things.",-1)),o[3]||(o[3]=e("p",null,"Gather 4 PCBs, 4 IR LEDs, and 2 ~700ohm resistors.",-1)),i(t,{options:n(s).fox_ir_build_instructions_one},null,8,["options"]),o[4]||(o[4]=e("p",null,"Here are the PCB pin-out labels:",-1)),i(t,{options:n(s).fox_ir_build_instructions_two},null,8,["options"]),o[5]||(o[5]=e("p",null,"LED labels:",-1)),i(t,{options:n(s).fox_ir_build_instructions_three},null,8,["options"]),o[6]||(o[6]=p('<p>If you have different LEDs, please consult their datasheet.</p><p>Some terminology related to them:</p><p><code>5V</code>: 5-volt power in.</p><p><code>GND</code>: Ground or power out.</p><p><code>AR</code>: After-Resistor this is to be used as the power in on the 2nd PCB in series as resistors are not needed on the 2nd PCB since they are on the 1st one.</p><p><code>SNG</code>: Single resistor, use this as 5V in if you are using <em><strong>only 1</strong></em> <code>~700ohm</code> resistor on V3 boards <em><strong>(not recommended)</strong></em>.</p><p><code>Negative</code>: This marks the negative side of the LED.</p><p><code>Positive</code>: This marks the positive side of the LED.</p><h2 id="step-17-solder-resistors-on-pcb-v2" tabindex="-1">Step 17: Solder resistors on PCB V2 <a class="header-anchor" href="#step-17-solder-resistors-on-pcb-v2" aria-label="Permalink to "Step 17: Solder resistors on PCB V2""></a></h2><p>You only need 1 PCB to have a resistor per eye.</p>',10)),i(t,{options:n(s).fox_ir_build_instructions_four},null,8,["options"]),o[7]||(o[7]=e("p",null,"Tin the resistor pads.",-1)),i(t,{options:n(s).fox_ir_build_instructions_five},null,8,["options"]),o[8]||(o[8]=e("p",null,"Hold the resistor in place.",-1)),i(t,{options:n(s).fox_ir_build_instructions_six},null,8,["options"]),o[9]||(o[9]=e("p",null,"Solder one end.",-1)),i(t,{options:n(s).fox_ir_build_instructions_seven},null,8,["options"]),o[10]||(o[10]=e("p",null,"Flip to the other side of the resistor and solder it.",-1)),i(t,{options:n(s).fox_ir_build_instructions_eight},null,8,["options"]),o[11]||(o[11]=e("h2",{id:"solder-leds-on-pcb-v2",tabindex:"-1"},[r("Solder LEDs on PCB V2 "),e("a",{class:"header-anchor",href:"#solder-leds-on-pcb-v2","aria-label":'Permalink to "Solder LEDs on PCB V2"'},"")],-1)),i(t,{options:n(s).fox_ir_build_instructions_nine},null,8,["options"]),o[12]||(o[12]=e("p",null,"Tin the pads",-1)),i(t,{options:n(s).fox_ir_build_instructions_ten},null,8,["options"]),o[13]||(o[13]=e("p",null,"Place the resistor on the pads in the correct orientation.",-1)),i(t,{options:n(s).fox_ir_build_instructions_eleven},null,8,["options"]),o[14]||(o[14]=e("p",null,[r("Solder each side of the resistor. Be careful not to solder at too high of a temp, recommended soldering temp is "),e("code",null,"230C with a max of 245C"),r(".")],-1)),i(t,{options:n(s).fox_ir_build_instructions_twelve},null,8,["options"]),o[15]||(o[15]=e("h2",{id:"wire-up-the-pcbs-v2",tabindex:"-1"},[r("Wire up the PCBs V2 "),e("a",{class:"header-anchor",href:"#wire-up-the-pcbs-v2","aria-label":'Permalink to "Wire up the PCBs V2"'},"")],-1)),o[16]||(o[16]=e("p",null,"Basic full wiring diagram of IR PCBs V2.",-1)),i(t,{options:n(s).fox_ir_build_instructions_thirteen},null,8,["options"]),o[17]||(o[17]=e("p",null,"The PCB that receives the 5V power is the one with the resistor. The second one, which gets its power from the ground pin of the first, does not have a resistor on it and its power input pin is the AR pin (After-Resistor). The 2nd PCBs ground pin goes to the ground of the system, in the diagram it is the ESPs ground pin.",-1))]))}});export{m as __pageData,b as default};
|
||||
import{_ as t,i as s}from"./chunks/index.3af2e52b.js";import{o as l,c as d,k as e,a as r,E as i,l as n,O as p}from"./chunks/framework.a4daa24a.js";const m=JSON.parse('{"title":"Fox IR V2 Buil dInstructions","description":"","frontmatter":{},"headers":[],"relativePath":"archive/fox_ir_v2_build_instructions.md","filePath":"archive/fox_ir_v2_build_instructions.md","lastUpdated":1676223729000}'),a={name:"archive/fox_ir_v2_build_instructions.md"},b=Object.assign(a,{setup(u){return(f,o)=>(l(),d("div",null,[o[0]||(o[0]=e("h1",{class:"text-[var(--font-accent)]",id:"fox-ir-v2-buil-dinstructions",tabindex:"-1"},[r("Fox IR V2 Buil dInstructions "),e("a",{class:"header-anchor",href:"#fox-ir-v2-buil-dinstructions","aria-label":'Permalink to "Fox IR V2 Buil dInstructions {.text-[var(--font-accent)]}"'},"")],-1)),o[1]||(o[1]=e("h2",{id:"step-15-prepare-to-solder-ir-led-pcb-v2s",tabindex:"-1"},[r("Step 15: Prepare to solder IR LED PCB V2s "),e("a",{class:"header-anchor",href:"#step-15-prepare-to-solder-ir-led-pcb-v2s","aria-label":'Permalink to "Step 15: Prepare to solder IR LED PCB V2s"'},"")],-1)),o[2]||(o[2]=e("p",null,"Get your magnifying glass out, it's time to solder very smol things.",-1)),o[3]||(o[3]=e("p",null,"Gather 4 PCBs, 4 IR LEDs, and 2 ~700ohm resistors.",-1)),i(t,{options:n(s).fox_ir_build_instructions_one},null,8,["options"]),o[4]||(o[4]=e("p",null,"Here are the PCB pin-out labels:",-1)),i(t,{options:n(s).fox_ir_build_instructions_two},null,8,["options"]),o[5]||(o[5]=e("p",null,"LED labels:",-1)),i(t,{options:n(s).fox_ir_build_instructions_three},null,8,["options"]),o[6]||(o[6]=p('<p>If you have different LEDs, please consult their datasheet.</p><p>Some terminology related to them:</p><p><code>5V</code>: 5-volt power in.</p><p><code>GND</code>: Ground or power out.</p><p><code>AR</code>: After-Resistor this is to be used as the power in on the 2nd PCB in series as resistors are not needed on the 2nd PCB since they are on the 1st one.</p><p><code>SNG</code>: Single resistor, use this as 5V in if you are using <em><strong>only 1</strong></em> <code>~700ohm</code> resistor on V3 boards <em><strong>(not recommended)</strong></em>.</p><p><code>Negative</code>: This marks the negative side of the LED.</p><p><code>Positive</code>: This marks the positive side of the LED.</p><h2 id="step-17-solder-resistors-on-pcb-v2" tabindex="-1">Step 17: Solder resistors on PCB V2 <a class="header-anchor" href="#step-17-solder-resistors-on-pcb-v2" aria-label="Permalink to "Step 17: Solder resistors on PCB V2""></a></h2><p>You only need 1 PCB to have a resistor per eye.</p>',10)),i(t,{options:n(s).fox_ir_build_instructions_four},null,8,["options"]),o[7]||(o[7]=e("p",null,"Tin the resistor pads.",-1)),i(t,{options:n(s).fox_ir_build_instructions_five},null,8,["options"]),o[8]||(o[8]=e("p",null,"Hold the resistor in place.",-1)),i(t,{options:n(s).fox_ir_build_instructions_six},null,8,["options"]),o[9]||(o[9]=e("p",null,"Solder one end.",-1)),i(t,{options:n(s).fox_ir_build_instructions_seven},null,8,["options"]),o[10]||(o[10]=e("p",null,"Flip to the other side of the resistor and solder it.",-1)),i(t,{options:n(s).fox_ir_build_instructions_eight},null,8,["options"]),o[11]||(o[11]=e("h2",{id:"solder-leds-on-pcb-v2",tabindex:"-1"},[r("Solder LEDs on PCB V2 "),e("a",{class:"header-anchor",href:"#solder-leds-on-pcb-v2","aria-label":'Permalink to "Solder LEDs on PCB V2"'},"")],-1)),i(t,{options:n(s).fox_ir_build_instructions_nine},null,8,["options"]),o[12]||(o[12]=e("p",null,"Tin the pads",-1)),i(t,{options:n(s).fox_ir_build_instructions_ten},null,8,["options"]),o[13]||(o[13]=e("p",null,"Place the resistor on the pads in the correct orientation.",-1)),i(t,{options:n(s).fox_ir_build_instructions_eleven},null,8,["options"]),o[14]||(o[14]=e("p",null,[r("Solder each side of the resistor. Be careful not to solder at too high of a temp, recommended soldering temp is "),e("code",null,"230C with a max of 245C"),r(".")],-1)),i(t,{options:n(s).fox_ir_build_instructions_twelve},null,8,["options"]),o[15]||(o[15]=e("h2",{id:"wire-up-the-pcbs-v2",tabindex:"-1"},[r("Wire up the PCBs V2 "),e("a",{class:"header-anchor",href:"#wire-up-the-pcbs-v2","aria-label":'Permalink to "Wire up the PCBs V2"'},"")],-1)),o[16]||(o[16]=e("p",null,"Basic full wiring diagram of IR PCBs V2.",-1)),i(t,{options:n(s).fox_ir_build_instructions_thirteen},null,8,["options"]),o[17]||(o[17]=e("p",null,"The PCB that receives the 5V power is the one with the resistor. The second one, which gets its power from the ground pin of the first, does not have a resistor on it and its power input pin is the AR pin (After-Resistor). The 2nd PCBs ground pin goes to the ground of the system, in the diagram it is the ESPs ground pin.",-1))]))}});export{m as __pageData,b as default};
|
||||
@ -1 +1 @@
|
||||
import{_ as t,i as s}from"./chunks/index.6e6e7312.js";import{o as l,c as d,k as e,a as r,E as i,l as n,O as p}from"./chunks/framework.79850ceb.js";const m=JSON.parse('{"title":"Fox IR V2 Buil dInstructions","description":"","frontmatter":{},"headers":[],"relativePath":"archive/fox_ir_v2_build_instructions.md","filePath":"archive/fox_ir_v2_build_instructions.md","lastUpdated":1676223729000}'),a={name:"archive/fox_ir_v2_build_instructions.md"},b=Object.assign(a,{setup(u){return(f,o)=>(l(),d("div",null,[o[0]||(o[0]=e("h1",{class:"text-[var(--font-accent)]",id:"fox-ir-v2-buil-dinstructions",tabindex:"-1"},[r("Fox IR V2 Buil dInstructions "),e("a",{class:"header-anchor",href:"#fox-ir-v2-buil-dinstructions","aria-label":'Permalink to "Fox IR V2 Buil dInstructions {.text-[var(--font-accent)]}"'},"")],-1)),o[1]||(o[1]=e("h2",{id:"step-15-prepare-to-solder-ir-led-pcb-v2s",tabindex:"-1"},[r("Step 15: Prepare to solder IR LED PCB V2s "),e("a",{class:"header-anchor",href:"#step-15-prepare-to-solder-ir-led-pcb-v2s","aria-label":'Permalink to "Step 15: Prepare to solder IR LED PCB V2s"'},"")],-1)),o[2]||(o[2]=e("p",null,"Get your magnifying glass out, it's time to solder very smol things.",-1)),o[3]||(o[3]=e("p",null,"Gather 4 PCBs, 4 IR LEDs, and 2 ~700ohm resistors.",-1)),i(t,{options:n(s).fox_ir_build_instructions_one},null,8,["options"]),o[4]||(o[4]=e("p",null,"Here are the PCB pin-out labels:",-1)),i(t,{options:n(s).fox_ir_build_instructions_two},null,8,["options"]),o[5]||(o[5]=e("p",null,"LED labels:",-1)),i(t,{options:n(s).fox_ir_build_instructions_three},null,8,["options"]),o[6]||(o[6]=p('<p>If you have different LEDs, please consult their datasheet.</p><p>Some terminology related to them:</p><p><code>5V</code>: 5-volt power in.</p><p><code>GND</code>: Ground or power out.</p><p><code>AR</code>: After-Resistor this is to be used as the power in on the 2nd PCB in series as resistors are not needed on the 2nd PCB since they are on the 1st one.</p><p><code>SNG</code>: Single resistor, use this as 5V in if you are using <em><strong>only 1</strong></em> <code>~700ohm</code> resistor on V3 boards <em><strong>(not recommended)</strong></em>.</p><p><code>Negative</code>: This marks the negative side of the LED.</p><p><code>Positive</code>: This marks the positive side of the LED.</p><h2 id="step-17-solder-resistors-on-pcb-v2" tabindex="-1">Step 17: Solder resistors on PCB V2 <a class="header-anchor" href="#step-17-solder-resistors-on-pcb-v2" aria-label="Permalink to "Step 17: Solder resistors on PCB V2""></a></h2><p>You only need 1 PCB to have a resistor per eye.</p>',10)),i(t,{options:n(s).fox_ir_build_instructions_four},null,8,["options"]),o[7]||(o[7]=e("p",null,"Tin the resistor pads.",-1)),i(t,{options:n(s).fox_ir_build_instructions_five},null,8,["options"]),o[8]||(o[8]=e("p",null,"Hold the resistor in place.",-1)),i(t,{options:n(s).fox_ir_build_instructions_six},null,8,["options"]),o[9]||(o[9]=e("p",null,"Solder one end.",-1)),i(t,{options:n(s).fox_ir_build_instructions_seven},null,8,["options"]),o[10]||(o[10]=e("p",null,"Flip to the other side of the resistor and solder it.",-1)),i(t,{options:n(s).fox_ir_build_instructions_eight},null,8,["options"]),o[11]||(o[11]=e("h2",{id:"solder-leds-on-pcb-v2",tabindex:"-1"},[r("Solder LEDs on PCB V2 "),e("a",{class:"header-anchor",href:"#solder-leds-on-pcb-v2","aria-label":'Permalink to "Solder LEDs on PCB V2"'},"")],-1)),i(t,{options:n(s).fox_ir_build_instructions_nine},null,8,["options"]),o[12]||(o[12]=e("p",null,"Tin the pads",-1)),i(t,{options:n(s).fox_ir_build_instructions_ten},null,8,["options"]),o[13]||(o[13]=e("p",null,"Place the resistor on the pads in the correct orientation.",-1)),i(t,{options:n(s).fox_ir_build_instructions_eleven},null,8,["options"]),o[14]||(o[14]=e("p",null,[r("Solder each side of the resistor. Be careful not to solder at too high of a temp, recommended soldering temp is "),e("code",null,"230C with a max of 245C"),r(".")],-1)),i(t,{options:n(s).fox_ir_build_instructions_twelve},null,8,["options"]),o[15]||(o[15]=e("h2",{id:"wire-up-the-pcbs-v2",tabindex:"-1"},[r("Wire up the PCBs V2 "),e("a",{class:"header-anchor",href:"#wire-up-the-pcbs-v2","aria-label":'Permalink to "Wire up the PCBs V2"'},"")],-1)),o[16]||(o[16]=e("p",null,"Basic full wiring diagram of IR PCBs V2.",-1)),i(t,{options:n(s).fox_ir_build_instructions_thirteen},null,8,["options"]),o[17]||(o[17]=e("p",null,"The PCB that receives the 5V power is the one with the resistor. The second one, which gets its power from the ground pin of the first, does not have a resistor on it and its power input pin is the AR pin (After-Resistor). The 2nd PCBs ground pin goes to the ground of the system, in the diagram it is the ESPs ground pin.",-1))]))}});export{m as __pageData,b as default};
|
||||
import{_ as t,i as s}from"./chunks/index.3af2e52b.js";import{o as l,c as d,k as e,a as r,E as i,l as n,O as p}from"./chunks/framework.a4daa24a.js";const m=JSON.parse('{"title":"Fox IR V2 Buil dInstructions","description":"","frontmatter":{},"headers":[],"relativePath":"archive/fox_ir_v2_build_instructions.md","filePath":"archive/fox_ir_v2_build_instructions.md","lastUpdated":1676223729000}'),a={name:"archive/fox_ir_v2_build_instructions.md"},b=Object.assign(a,{setup(u){return(f,o)=>(l(),d("div",null,[o[0]||(o[0]=e("h1",{class:"text-[var(--font-accent)]",id:"fox-ir-v2-buil-dinstructions",tabindex:"-1"},[r("Fox IR V2 Buil dInstructions "),e("a",{class:"header-anchor",href:"#fox-ir-v2-buil-dinstructions","aria-label":'Permalink to "Fox IR V2 Buil dInstructions {.text-[var(--font-accent)]}"'},"")],-1)),o[1]||(o[1]=e("h2",{id:"step-15-prepare-to-solder-ir-led-pcb-v2s",tabindex:"-1"},[r("Step 15: Prepare to solder IR LED PCB V2s "),e("a",{class:"header-anchor",href:"#step-15-prepare-to-solder-ir-led-pcb-v2s","aria-label":'Permalink to "Step 15: Prepare to solder IR LED PCB V2s"'},"")],-1)),o[2]||(o[2]=e("p",null,"Get your magnifying glass out, it's time to solder very smol things.",-1)),o[3]||(o[3]=e("p",null,"Gather 4 PCBs, 4 IR LEDs, and 2 ~700ohm resistors.",-1)),i(t,{options:n(s).fox_ir_build_instructions_one},null,8,["options"]),o[4]||(o[4]=e("p",null,"Here are the PCB pin-out labels:",-1)),i(t,{options:n(s).fox_ir_build_instructions_two},null,8,["options"]),o[5]||(o[5]=e("p",null,"LED labels:",-1)),i(t,{options:n(s).fox_ir_build_instructions_three},null,8,["options"]),o[6]||(o[6]=p('<p>If you have different LEDs, please consult their datasheet.</p><p>Some terminology related to them:</p><p><code>5V</code>: 5-volt power in.</p><p><code>GND</code>: Ground or power out.</p><p><code>AR</code>: After-Resistor this is to be used as the power in on the 2nd PCB in series as resistors are not needed on the 2nd PCB since they are on the 1st one.</p><p><code>SNG</code>: Single resistor, use this as 5V in if you are using <em><strong>only 1</strong></em> <code>~700ohm</code> resistor on V3 boards <em><strong>(not recommended)</strong></em>.</p><p><code>Negative</code>: This marks the negative side of the LED.</p><p><code>Positive</code>: This marks the positive side of the LED.</p><h2 id="step-17-solder-resistors-on-pcb-v2" tabindex="-1">Step 17: Solder resistors on PCB V2 <a class="header-anchor" href="#step-17-solder-resistors-on-pcb-v2" aria-label="Permalink to "Step 17: Solder resistors on PCB V2""></a></h2><p>You only need 1 PCB to have a resistor per eye.</p>',10)),i(t,{options:n(s).fox_ir_build_instructions_four},null,8,["options"]),o[7]||(o[7]=e("p",null,"Tin the resistor pads.",-1)),i(t,{options:n(s).fox_ir_build_instructions_five},null,8,["options"]),o[8]||(o[8]=e("p",null,"Hold the resistor in place.",-1)),i(t,{options:n(s).fox_ir_build_instructions_six},null,8,["options"]),o[9]||(o[9]=e("p",null,"Solder one end.",-1)),i(t,{options:n(s).fox_ir_build_instructions_seven},null,8,["options"]),o[10]||(o[10]=e("p",null,"Flip to the other side of the resistor and solder it.",-1)),i(t,{options:n(s).fox_ir_build_instructions_eight},null,8,["options"]),o[11]||(o[11]=e("h2",{id:"solder-leds-on-pcb-v2",tabindex:"-1"},[r("Solder LEDs on PCB V2 "),e("a",{class:"header-anchor",href:"#solder-leds-on-pcb-v2","aria-label":'Permalink to "Solder LEDs on PCB V2"'},"")],-1)),i(t,{options:n(s).fox_ir_build_instructions_nine},null,8,["options"]),o[12]||(o[12]=e("p",null,"Tin the pads",-1)),i(t,{options:n(s).fox_ir_build_instructions_ten},null,8,["options"]),o[13]||(o[13]=e("p",null,"Place the resistor on the pads in the correct orientation.",-1)),i(t,{options:n(s).fox_ir_build_instructions_eleven},null,8,["options"]),o[14]||(o[14]=e("p",null,[r("Solder each side of the resistor. Be careful not to solder at too high of a temp, recommended soldering temp is "),e("code",null,"230C with a max of 245C"),r(".")],-1)),i(t,{options:n(s).fox_ir_build_instructions_twelve},null,8,["options"]),o[15]||(o[15]=e("h2",{id:"wire-up-the-pcbs-v2",tabindex:"-1"},[r("Wire up the PCBs V2 "),e("a",{class:"header-anchor",href:"#wire-up-the-pcbs-v2","aria-label":'Permalink to "Wire up the PCBs V2"'},"")],-1)),o[16]||(o[16]=e("p",null,"Basic full wiring diagram of IR PCBs V2.",-1)),i(t,{options:n(s).fox_ir_build_instructions_thirteen},null,8,["options"]),o[17]||(o[17]=e("p",null,"The PCB that receives the 5V power is the one with the resistor. The second one, which gets its power from the ground pin of the first, does not have a resistor on it and its power input pin is the AR pin (After-Resistor). The 2nd PCBs ground pin goes to the ground of the system, in the diagram it is the ESPs ground pin.",-1))]))}});export{m as __pageData,b as default};
|
||||
1
assets/chunks/@localSearchIndexroot.47f590e7.js
Normal file
1
assets/chunks/@localSearchIndexroot.47f590e7.js
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
import{_ as l,o as t,c as r,k as n,r as i,n as d,$ as c,a0 as p}from"./framework.79850ceb.js";const u={data(){return{isOpen:!1}},methods:{toggleAccordion(){this.isOpen=!this.isOpen}}},f=["aria-expanded","aria-controls"],m=["id"];function w(e,s,h,k,o,a){return t(),r("div",null,[n("button",{onClick:s[0]||(s[0]=v=>a.toggleAccordion()),class:"flex items-center space-x-3","aria-expanded":o.isOpen,"aria-controls":`collapse${e._uid}`},[i(e.$slots,"title"),(t(),r("svg",{class:d(["w-3 transition-all duration-200 transform",{"rotate-180":o.isOpen,"rotate-0":!o.isOpen}]),fill:"none",stroke:"currentColor",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 10","aria-hidden":"true"},s[1]||(s[1]=[n("path",{d:"M15 1.2l-7 7-7-7","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},null,-1)]),2))],8,f),c(n("div",{id:`collapse${e._uid}`},[i(e.$slots,"content")],8,m),[[p,o.isOpen]])])}const O=l(u,[["render",w]]);export{O as A};
|
||||
import{_ as l,o as t,c as r,k as n,r as i,n as d,$ as c,a0 as p}from"./framework.a4daa24a.js";const u={data(){return{isOpen:!1}},methods:{toggleAccordion(){this.isOpen=!this.isOpen}}},f=["aria-expanded","aria-controls"],m=["id"];function w(e,s,h,k,o,a){return t(),r("div",null,[n("button",{onClick:s[0]||(s[0]=v=>a.toggleAccordion()),class:"flex items-center space-x-3","aria-expanded":o.isOpen,"aria-controls":`collapse${e._uid}`},[i(e.$slots,"title"),(t(),r("svg",{class:d(["w-3 transition-all duration-200 transform",{"rotate-180":o.isOpen,"rotate-0":!o.isOpen}]),fill:"none",stroke:"currentColor",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 10","aria-hidden":"true"},s[1]||(s[1]=[n("path",{d:"M15 1.2l-7 7-7-7","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},null,-1)]),2))],8,f),c(n("div",{id:`collapse${e._uid}`},[i(e.$slots,"content")],8,m),[[p,o.isOpen]])])}const O=l(u,[["render",w]]);export{O as A};
|
||||
@ -1 +1 @@
|
||||
import{o as e,c as t,k as l,F as i,B as _,t as a}from"./framework.79850ceb.js";const r={class:"checkboxes"},k={style:{"list-style":"none"}},d={key:0},h={key:0},p=["href"],u={key:1},b={key:1},y={key:0},f=["href"],x={key:1},v={__name:"CheckBoxList",props:["options"],setup(c){const o=c;return(B,n)=>(e(),t("div",r,[l("ul",k,[(e(!0),t(i,null,_(o.options.object,s=>(e(),t("li",null,[o.options.state?(e(),t("div",d,[n[0]||(n[0]=l("input",{type:"checkbox",checked:""},null,-1)),s.link!==null||o.link!==""?(e(),t("label",h,[l("a",{href:s.link,target:"_blank"},a(s.label),9,p)])):(e(),t("label",u,a(s.label),1))])):(e(),t("div",b,[n[1]||(n[1]=l("input",{type:"checkbox",unchecked:""},null,-1)),s.link!==null||o.link!==""?(e(),t("label",y,[l("a",{href:s.link,target:"_blank"},a(s.label),9,f)])):(e(),t("label",x,a(s.label),1))]))]))),256))])]))}};export{v as _};
|
||||
import{o as e,c as t,k as l,F as i,B as _,t as a}from"./framework.a4daa24a.js";const r={class:"checkboxes"},k={style:{"list-style":"none"}},d={key:0},h={key:0},p=["href"],u={key:1},b={key:1},y={key:0},f=["href"],x={key:1},v={__name:"CheckBoxList",props:["options"],setup(c){const o=c;return(B,n)=>(e(),t("div",r,[l("ul",k,[(e(!0),t(i,null,_(o.options.object,s=>(e(),t("li",null,[o.options.state?(e(),t("div",d,[n[0]||(n[0]=l("input",{type:"checkbox",checked:""},null,-1)),s.link!==null||o.link!==""?(e(),t("label",h,[l("a",{href:s.link,target:"_blank"},a(s.label),9,p)])):(e(),t("label",u,a(s.label),1))])):(e(),t("div",b,[n[1]||(n[1]=l("input",{type:"checkbox",unchecked:""},null,-1)),s.link!==null||o.link!==""?(e(),t("label",y,[l("a",{href:s.link,target:"_blank"},a(s.label),9,f)])):(e(),t("label",x,a(s.label),1))]))]))),256))])]))}};export{v as _};
|
||||
1
assets/chunks/PartsList.24207c5d.js
Normal file
1
assets/chunks/PartsList.24207c5d.js
Normal file
@ -0,0 +1 @@
|
||||
import{A as l}from"./Accordion.6b599df0.js";import{o as e,c as t,F as s,B as o,b as c,w as u,k as r,t as i,e as m,l as _}from"./framework.a4daa24a.js";const h={hmds:[{hmd:"Quest 3",parts:[""],hyper_links:[{url:"https://www.thingiverse.com/thing:6439510",desc:"★ Quest 3 V4 Mount by BasilAldwin & Dentohn (Eye_Tracking_Ring_V21-B.stl)"}],link_id:1},{hmd:"Quest 2",parts:[""],hyper_links:[{url:"https://github.com/EyeTrackVR/EyeTrackVR-Hardware/tree/main/3d_Printed_Mounts/Quest_2/V4/Prohurtz",desc:"★ V4 Camera and IR emitter mount by Prohurtz"},{url:"https://github.com/EyeTrackVR/EyeTrackVR-Hardware/tree/main/3d_Printed_Mounts/Quest_2/lordnathan",desc:"★ ESP-32CAM mount by lordnathan"},{url:"https://github.com/EyeTrackVR/EyeTrackVR-Hardware/blob/main/3d_Printed_Mounts/Quest_2/Arkfall/EyeTrack_Quest_2_Mount_v10_By_Arkfall.stl",desc:"V3 Camera and IR emitter mount by Arkfall"},{url:"https://github.com/EyeTrackVR/EyeTrackVR-Hardware/tree/main/3d_Printed_Mounts/Quest_2/Prohurtz",desc:"V3 Camera and IR emitter mount by Prohurtz"},{url:"https://github.com/EyeTrackVR/EyeTrackVR-Hardware/blob/main/3d_Printed_Mounts/Quest_2/Arkfall/Quest_2_ESP_Mount_v2_By_Arkfall.stl",desc:"ESP mount by Arkfall"},{url:"https://github.com/EyeTrackVR/EyeTrackVR-Hardware/blob/main/3d_Printed_Mounts/Quest_2/Prohurtz/Quest_2_ESP_Mounts_By_Prohurtz.stl",desc:"ESP mount by Prohurtz"}],link_id:2},{hmd:"Valve Index",parts:[""],hyper_links:[{url:"https://github.com/Physics-Dude/Phys-Index-EyetrackVR-HW/blob/main/ETVR%20ValveIndex%20Cam-LED%20Mount%20Rings/Index-EyetrackVRv4%20v18%20Print%20Me.stl",desc:"★ 160° V4 IR and Camera mount by Physics Dude and bitbyt3r."},{url:"https://makerworld.com/en/models/196741#profileId-217255",desc:"★ 160/130° V4 IR and Camera mount by Foow17 & Physics Dude"},{url:"https://makerworld.com/en/models/196791#profileId-217330",desc:"★ 160/130° VROptician V4 IR and Camera mount by Foow17 & MUTE"},{url:"https://github.com/Frosty704/indexwidmo-eyetrackvr/tree/main/v2",desc:"★ 160/120° WidmoVR V4 IR and Camera mount by frosty704 & lerx-cnm"},{url:"https://github.com/MUTEtheCyberwolf/VALVE-INDEX-DEV-Frunk-1.0/tree/main/3D%20Print%20Files%20STL(Ascii)",desc:" ESP frunk mod by MUTE the Cyberwolf"},{url:"https://github.com/Physics-Dude/Phys-Index-EyetrackVR-HW/tree/main",desc:"Gum Stick USB Hub Dongle by Physics Dude"}],link_id:3},{hmd:"Samsung Odyssey +",parts:["ESP mount: Refer to general ESP Mounts"],hyper_links:[{url:"https://github.com/EyeTrackVR/EyeTrackVR-Hardware/blob/main/3d_Printed_Mounts/Samsung_Odyssey%2B/Breakdown/Samsung%20Odyssey%2B%20Left%20by%20Breakdown.stl",desc:"★ V3 Camera and IR emitter mount by Breakdown"}],link_id:4},{hmd:"Quest 1",parts:["ESP mount : Refer to general ESP Mounts"],hyper_links:[{url:"https://github.com/EyeTrackVR/EyeTrackVR-Hardware/blob/main/3d_Printed_Mounts/Quest_1/G0LDJAY/Quest_1_Cam_mount_v5_By_G0LDJAY.stl",desc:"★ V3 Camera and IR emitter mount by G0LDJAY"}],link_id:5},{hmd:"Vive Pro 2",parts:["ESP mount : Refer to general ESP Mounts"],hyper_links:[{url:"https://github.com/EyeTrackVR/EyeTrackVR-Hardware/tree/main/3d_Printed_Mounts/Vive_Pro_2/StormFox",desc:"★ V3 Camera and IR emitter mount by StormFox"},{url:"https://github.com/EyeTrackVR/EyeTrackVR-Hardware/blob/main/3d_Printed_Mounts/Vive_Pro_2/cat_who_loves_pie/Vive_Pro_2_VROptician_by_cat_who_loves_pie.stl",desc:"V3 VROptician camera and IR emitter mount by cat_who_loves_pie"}],link_id:6},{hmd:"Vive & Vive Pro",parts:[],hyper_links:[{url:"https://www.thingiverse.com/thing:6438138",desc:"★ Vive & Vive Pro EyeTrackVR V4 mount by SunGear"}],link_id:6},{hmd:"Pico 4",parts:[""],hyper_links:[{url:"https://github.com/EyeTrackVR/EyeTrackVR-Hardware/blob/main/3d_Printed_Mounts/Pico_4/V4/RamesTheGeneric/Pico%20ET%20V4%20Mount_L.stl",desc:"★ V4 IR and camera mount by RamesTheGeneric"},{url:"https://github.com/EyeTrackVR/EyeTrackVR-Hardware/tree/main/3d_Printed_Mounts/Pico_4/V4/RamesTheGeneric",desc:"★ V4 board, and XIAO ESP mounts by RamesTheGeneric"}],link_id:8},{hmd:"General ESP Mounts",parts:[""],hyper_links:[{url:"https://github.com/EyeTrackVR/EyeTrackVR-Hardware/tree/main/3d_Printed_Mounts/General_ESP32-CAM_Mounts",desc:"★ ESP mount by G0LDJAY for general HMD use (use if there are no specific HMD mounts available)"}],link_id:9}]},y={class:"font-semibold text-xl"},k={class:""},V={style:{"list-style":"none"}},b=["href"],T={__name:"PartsList",setup(p){return(d,E)=>(e(),t("div",null,[(e(!0),t(s,null,o(_(h).hmds,a=>(e(),c(l,{class:"mb-4"},{title:u(()=>[r("span",y,i(a.hmd),1)]),content:u(()=>[r("div",null,[r("span",k,[r("blockquote",null,[r("ul",V,[a.hyper_links!=d.NULL&&a.hyper_links!=""?(e(!0),t(s,{key:0},o(a.hyper_links,n=>(e(),t("p",null,[r("a",{href:n.url,target:"_blank"},i(n.desc),9,b)]))),256)):m("",!0),(e(!0),t(s,null,o(a.parts,n=>(e(),t("li",{key:n},i(n),1))),128))])])])])]),_:2},1024))),256))]))}};export{T as _};
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
34
assets/chunks/framework.a4daa24a.js
Normal file
34
assets/chunks/framework.a4daa24a.js
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
import{o as n,c as r,k as e,E as s,t as i,n as o,r as _,A as x}from"./framework.79850ceb.js";const c={class:"my-2 max-w-xs rounded-lg bg-white px-4 py-4 shadow-xl ring-1 ring-slate-900/5 dark:bg-slate-800"},d={class:"drop-shadow-lg"},b={__name:"Alerts",props:["options"],setup(t){return(l,p)=>{const a=x("Badge");return n(),r("div",c,[e("div",null,[e("span",d,[s(a,{type:t.options.type,text:t.options.badge_content},null,8,["type","text"])])]),e("div",{class:o(["mt-2 pl-1 text-2xl font-bold tracking-tight text-slate-900",t.options.title_color])},i(t.options.title),3),e("p",{class:o(["mt-2 pl-1 text-sm",t.options.text_color])},[_(l.$slots,"content")],2)])}}},u={user_warning:{type:"warning",title:"",title_color:"text-[orange]",text_color:"text-slate-500 dark:text-slate-400",badge_content:"CAUTION"},led_power_warning:{type:"danger",title:"Please pay attention",title_color:"text-[#b63a61] dark:text-[#ea4b7d]",text_color:"text-orange-400 dark:text-orange-500",badge_content:"WARNING"},parts_list_one:{type:"warning",title:"",title_color:"text-[orange]",text_color:"text-slate-500 dark:text-slate-400",badge_content:"CAUTION"},parts_list_two:{type:"info",title:"",title_color:"text-[blue]",text_color:"text-slate-500 dark:text-slate-400",badge_content:"NOTE"},parts_list_three:{type:"info",title:"",title_color:"text-[blue]",text_color:"text-slate-500 dark:text-slate-400",badge_content:"NOTE"},parts_list_four:{type:"info",title:"",title_color:"text-[blue]",text_color:"text-slate-500 dark:text-slate-400",badge_content:"NOTE"},parts_list_five:{type:"warning",title:"",title_color:"text-[orange]",text_color:"text-slate-500 dark:text-slate-400",badge_content:"CAUTION"},parts_list_six:{type:"tip",title:"",title_color:"text-[green]",text_color:"text-slate-500 dark:text-slate-400",badge_content:"TIP"},upload_firmware_one:{type:"info",title:"",title_color:"text-[blue]",text_color:"text-slate-500 dark:text-slate-400",badge_content:"NOTE"},configure_firmware_one:{type:"info",title:"",title_color:"text-[blue]",text_color:"text-slate-500 dark:text-slate-400",badge_content:"NOTE"},build_software_one:{type:"info",title:"",title_color:"text-[blue]",text_color:"text-slate-500 dark:text-slate-400",badge_content:"NOTE"},eyetrack_vr_guide_one:{type:"info",title:"",title_color:"text-[blue]",text_color:"text-slate-500 dark:text-slate-400",badge_content:"NOTE"},eyetrack_vr_guide_two:{type:"info",title:"",title_color:"text-[blue]",text_color:"text-slate-500 dark:text-slate-400",badge_content:"NOTE"},vrc_avatar_setup:{type:"info",title:"",title_color:"text-[blue]",text_color:"text-slate-500 dark:text-slate-400",badge_content:"NOTE"},end_one:{type:"info",title:"",title_color:"text-[blue]",text_color:"text-slate-500 dark:text-slate-400",badge_content:"NOTE"}};export{b as _,u as a};
|
||||
import{o as n,c as r,k as e,E as s,t as i,n as o,r as _,A as x}from"./framework.a4daa24a.js";const c={class:"my-2 max-w-xs rounded-lg bg-white px-4 py-4 shadow-xl ring-1 ring-slate-900/5 dark:bg-slate-800"},d={class:"drop-shadow-lg"},b={__name:"Alerts",props:["options"],setup(t){return(l,p)=>{const a=x("Badge");return n(),r("div",c,[e("div",null,[e("span",d,[s(a,{type:t.options.type,text:t.options.badge_content},null,8,["type","text"])])]),e("div",{class:o(["mt-2 pl-1 text-2xl font-bold tracking-tight text-slate-900",t.options.title_color])},i(t.options.title),3),e("p",{class:o(["mt-2 pl-1 text-sm",t.options.text_color])},[_(l.$slots,"content")],2)])}}},u={user_warning:{type:"warning",title:"",title_color:"text-[orange]",text_color:"text-slate-500 dark:text-slate-400",badge_content:"CAUTION"},led_power_warning:{type:"danger",title:"Please pay attention",title_color:"text-[#b63a61] dark:text-[#ea4b7d]",text_color:"text-orange-400 dark:text-orange-500",badge_content:"WARNING"},parts_list_one:{type:"warning",title:"",title_color:"text-[orange]",text_color:"text-slate-500 dark:text-slate-400",badge_content:"CAUTION"},parts_list_two:{type:"info",title:"",title_color:"text-[blue]",text_color:"text-slate-500 dark:text-slate-400",badge_content:"NOTE"},parts_list_three:{type:"info",title:"",title_color:"text-[blue]",text_color:"text-slate-500 dark:text-slate-400",badge_content:"NOTE"},parts_list_four:{type:"info",title:"",title_color:"text-[blue]",text_color:"text-slate-500 dark:text-slate-400",badge_content:"NOTE"},parts_list_five:{type:"warning",title:"",title_color:"text-[orange]",text_color:"text-slate-500 dark:text-slate-400",badge_content:"CAUTION"},parts_list_six:{type:"tip",title:"",title_color:"text-[green]",text_color:"text-slate-500 dark:text-slate-400",badge_content:"TIP"},upload_firmware_one:{type:"info",title:"",title_color:"text-[blue]",text_color:"text-slate-500 dark:text-slate-400",badge_content:"NOTE"},configure_firmware_one:{type:"info",title:"",title_color:"text-[blue]",text_color:"text-slate-500 dark:text-slate-400",badge_content:"NOTE"},build_software_one:{type:"info",title:"",title_color:"text-[blue]",text_color:"text-slate-500 dark:text-slate-400",badge_content:"NOTE"},eyetrack_vr_guide_one:{type:"info",title:"",title_color:"text-[blue]",text_color:"text-slate-500 dark:text-slate-400",badge_content:"NOTE"},eyetrack_vr_guide_two:{type:"info",title:"",title_color:"text-[blue]",text_color:"text-slate-500 dark:text-slate-400",badge_content:"NOTE"},vrc_avatar_setup:{type:"info",title:"",title_color:"text-[blue]",text_color:"text-slate-500 dark:text-slate-400",badge_content:"NOTE"},end_one:{type:"info",title:"",title_color:"text-[blue]",text_color:"text-slate-500 dark:text-slate-400",badge_content:"NOTE"}};export{b as _,u as a};
|
||||
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
import{_ as e,o,c as s,k as t,a as r}from"./chunks/framework.79850ceb.js";const f=JSON.parse('{"title":"","description":"","frontmatter":{},"headers":[],"relativePath":"contact.md","filePath":"contact.md","lastUpdated":1673564209000}'),d={name:"contact.md"};function c(n,a,i,l,p,m){return o(),s("div",null,a[0]||(a[0]=[t("div",{align:"center",class:"rounded-md"},[t("h1",{class:"text-[#ab5ac7]"},"Contact Us"),t("br"),r(" Please join our Discord for updates and any questions. "),t("br"),t("br"),t("iframe",{class:"rounded-md",id:"discord-widget",src:"https://discord.com/widget?id=946212245187199026&theme=dark",width:"350",height:"500",allowtransparency:"true",frameborder:"0",sandbox:"allow-popups allow-popups-to-escape-sandbox allow-same-origin allow-scripts",target:"_blank"})],-1)]))}const _=e(d,[["render",c]]);export{f as __pageData,_ as default};
|
||||
import{_ as e,o,c as s,k as t,a as r}from"./chunks/framework.a4daa24a.js";const f=JSON.parse('{"title":"","description":"","frontmatter":{},"headers":[],"relativePath":"contact.md","filePath":"contact.md","lastUpdated":1673564209000}'),d={name:"contact.md"};function c(n,a,i,l,p,m){return o(),s("div",null,a[0]||(a[0]=[t("div",{align:"center",class:"rounded-md"},[t("h1",{class:"text-[#ab5ac7]"},"Contact Us"),t("br"),r(" Please join our Discord for updates and any questions. "),t("br"),t("br"),t("iframe",{class:"rounded-md",id:"discord-widget",src:"https://discord.com/widget?id=946212245187199026&theme=dark",width:"350",height:"500",allowtransparency:"true",frameborder:"0",sandbox:"allow-popups allow-popups-to-escape-sandbox allow-same-origin allow-scripts",target:"_blank"})],-1)]))}const _=e(d,[["render",c]]);export{f as __pageData,_ as default};
|
||||
@ -1 +1 @@
|
||||
import{_ as e,o,c as s,k as t,a as r}from"./chunks/framework.79850ceb.js";const f=JSON.parse('{"title":"","description":"","frontmatter":{},"headers":[],"relativePath":"contact.md","filePath":"contact.md","lastUpdated":1673564209000}'),d={name:"contact.md"};function c(n,a,i,l,p,m){return o(),s("div",null,a[0]||(a[0]=[t("div",{align:"center",class:"rounded-md"},[t("h1",{class:"text-[#ab5ac7]"},"Contact Us"),t("br"),r(" Please join our Discord for updates and any questions. "),t("br"),t("br"),t("iframe",{class:"rounded-md",id:"discord-widget",src:"https://discord.com/widget?id=946212245187199026&theme=dark",width:"350",height:"500",allowtransparency:"true",frameborder:"0",sandbox:"allow-popups allow-popups-to-escape-sandbox allow-same-origin allow-scripts",target:"_blank"})],-1)]))}const _=e(d,[["render",c]]);export{f as __pageData,_ as default};
|
||||
import{_ as e,o,c as s,k as t,a as r}from"./chunks/framework.a4daa24a.js";const f=JSON.parse('{"title":"","description":"","frontmatter":{},"headers":[],"relativePath":"contact.md","filePath":"contact.md","lastUpdated":1673564209000}'),d={name:"contact.md"};function c(n,a,i,l,p,m){return o(),s("div",null,a[0]||(a[0]=[t("div",{align:"center",class:"rounded-md"},[t("h1",{class:"text-[#ab5ac7]"},"Contact Us"),t("br"),r(" Please join our Discord for updates and any questions. "),t("br"),t("br"),t("iframe",{class:"rounded-md",id:"discord-widget",src:"https://discord.com/widget?id=946212245187199026&theme=dark",width:"350",height:"500",allowtransparency:"true",frameborder:"0",sandbox:"allow-popups allow-popups-to-escape-sandbox allow-same-origin allow-scripts",target:"_blank"})],-1)]))}const _=e(d,[["render",c]]);export{f as __pageData,_ as default};
|
||||
@ -1 +1 @@
|
||||
import{_ as l}from"./chunks/CheckBoxList.d118cd11.js";import{o as n,c as s,k as a,a as t,E as r,l as o}from"./chunks/framework.79850ceb.js";const i={state:!0,object:[{label:"Tracking algorithm"},{label:"Calibration"},{label:"GUI"},{label:"PCB Design for IR emitters"},{label:"Dual Eye support"},{label:"Firmware"},{label:"Better documentation over things (setup, wiring etc.)"},{label:"Setup dynamic WiFi credentials at runtime"},{label:"OTA using Platformio"},{label:"Auto threshold's"},{label:"New LED Power regulator board (V4)"},{label:"New IR LED PCB (only for the power reg board) (V4)"},{label:"Setup flashing of ESPs through anything other than VSC"}]},d={state:!1,object:[{label:"Variable eye openness tracking (being improved)"},{label:"Auto ROI cropping/better cropping"},{label:"New GUI"},{label:"New backend for new GUI"},{label:"V5 hardware (focus on wired usage)"},{label:"Dynamic foveated rendering via OpenXR"},{label:"3D, 9-point calibration via OpenXR/SteamVR overlay"}]},p={state:!1,object:[{label:"Custom cam boards/cameras?"},{label:"Game interaction SDK"},{label:"Game developer integration program"}]},g=JSON.parse('{"title":"EyeTrackVR Development Roadmap","description":"","frontmatter":{},"headers":[],"relativePath":"dev_roadmap.md","filePath":"dev_roadmap.md","lastUpdated":1676223729000}'),m={name:"dev_roadmap.md"},h=Object.assign(m,{setup(b){return(c,e)=>(n(),s("div",null,[e[0]||(e[0]=a("h1",{class:"text-[var(--font-accent)]",id:"eyetrackvr-development-roadmap",tabindex:"-1"},[t("EyeTrackVR Development Roadmap "),a("a",{class:"header-anchor",href:"#eyetrackvr-development-roadmap","aria-label":'Permalink to "EyeTrackVR Development Roadmap {.text-[var(--font-accent)]}"'},"")],-1)),e[1]||(e[1]=a("p",null,"This will contain a list of features that are in progress, completed, and planned.",-1)),e[2]||(e[2]=a("h2",{id:"completed",tabindex:"-1"},[t("Completed "),a("a",{class:"header-anchor",href:"#completed","aria-label":'Permalink to "Completed"'},"")],-1)),r(l,{options:{...o(i)}},null,8,["options"]),e[3]||(e[3]=a("h2",{id:"in-progress",tabindex:"-1"},[t("In Progress "),a("a",{class:"header-anchor",href:"#in-progress","aria-label":'Permalink to "In Progress"'},"")],-1)),r(l,{options:{...o(d)}},null,8,["options"]),e[4]||(e[4]=a("h2",{id:"planned",tabindex:"-1"},[t("Planned "),a("a",{class:"header-anchor",href:"#planned","aria-label":'Permalink to "Planned"'},"")],-1)),r(l,{options:{...o(p)}},null,8,["options"])]))}});export{g as __pageData,h as default};
|
||||
import{_ as l}from"./chunks/CheckBoxList.e60898cc.js";import{o as n,c as s,k as a,a as t,E as r,l as o}from"./chunks/framework.a4daa24a.js";const i={state:!0,object:[{label:"Tracking algorithm"},{label:"Calibration"},{label:"GUI"},{label:"PCB Design for IR emitters"},{label:"Dual Eye support"},{label:"Firmware"},{label:"Better documentation over things (setup, wiring etc.)"},{label:"Setup dynamic WiFi credentials at runtime"},{label:"OTA using Platformio"},{label:"Auto threshold's"},{label:"New LED Power regulator board (V4)"},{label:"New IR LED PCB (only for the power reg board) (V4)"},{label:"Setup flashing of ESPs through anything other than VSC"}]},d={state:!1,object:[{label:"Variable eye openness tracking (being improved)"},{label:"Auto ROI cropping/better cropping"},{label:"New GUI"},{label:"New backend for new GUI"},{label:"V5 hardware (focus on wired usage)"},{label:"Dynamic foveated rendering via OpenXR"},{label:"3D, 9-point calibration via OpenXR/SteamVR overlay"}]},p={state:!1,object:[{label:"Custom cam boards/cameras?"},{label:"Game interaction SDK"},{label:"Game developer integration program"}]},g=JSON.parse('{"title":"EyeTrackVR Development Roadmap","description":"","frontmatter":{},"headers":[],"relativePath":"dev_roadmap.md","filePath":"dev_roadmap.md","lastUpdated":1676223729000}'),m={name:"dev_roadmap.md"},h=Object.assign(m,{setup(b){return(c,e)=>(n(),s("div",null,[e[0]||(e[0]=a("h1",{class:"text-[var(--font-accent)]",id:"eyetrackvr-development-roadmap",tabindex:"-1"},[t("EyeTrackVR Development Roadmap "),a("a",{class:"header-anchor",href:"#eyetrackvr-development-roadmap","aria-label":'Permalink to "EyeTrackVR Development Roadmap {.text-[var(--font-accent)]}"'},"")],-1)),e[1]||(e[1]=a("p",null,"This will contain a list of features that are in progress, completed, and planned.",-1)),e[2]||(e[2]=a("h2",{id:"completed",tabindex:"-1"},[t("Completed "),a("a",{class:"header-anchor",href:"#completed","aria-label":'Permalink to "Completed"'},"")],-1)),r(l,{options:{...o(i)}},null,8,["options"]),e[3]||(e[3]=a("h2",{id:"in-progress",tabindex:"-1"},[t("In Progress "),a("a",{class:"header-anchor",href:"#in-progress","aria-label":'Permalink to "In Progress"'},"")],-1)),r(l,{options:{...o(d)}},null,8,["options"]),e[4]||(e[4]=a("h2",{id:"planned",tabindex:"-1"},[t("Planned "),a("a",{class:"header-anchor",href:"#planned","aria-label":'Permalink to "Planned"'},"")],-1)),r(l,{options:{...o(p)}},null,8,["options"])]))}});export{g as __pageData,h as default};
|
||||
@ -1 +1 @@
|
||||
import{_ as l}from"./chunks/CheckBoxList.d118cd11.js";import{o as n,c as s,k as a,a as t,E as r,l as o}from"./chunks/framework.79850ceb.js";const i={state:!0,object:[{label:"Tracking algorithm"},{label:"Calibration"},{label:"GUI"},{label:"PCB Design for IR emitters"},{label:"Dual Eye support"},{label:"Firmware"},{label:"Better documentation over things (setup, wiring etc.)"},{label:"Setup dynamic WiFi credentials at runtime"},{label:"OTA using Platformio"},{label:"Auto threshold's"},{label:"New LED Power regulator board (V4)"},{label:"New IR LED PCB (only for the power reg board) (V4)"},{label:"Setup flashing of ESPs through anything other than VSC"}]},d={state:!1,object:[{label:"Variable eye openness tracking (being improved)"},{label:"Auto ROI cropping/better cropping"},{label:"New GUI"},{label:"New backend for new GUI"},{label:"V5 hardware (focus on wired usage)"},{label:"Dynamic foveated rendering via OpenXR"},{label:"3D, 9-point calibration via OpenXR/SteamVR overlay"}]},p={state:!1,object:[{label:"Custom cam boards/cameras?"},{label:"Game interaction SDK"},{label:"Game developer integration program"}]},g=JSON.parse('{"title":"EyeTrackVR Development Roadmap","description":"","frontmatter":{},"headers":[],"relativePath":"dev_roadmap.md","filePath":"dev_roadmap.md","lastUpdated":1676223729000}'),m={name:"dev_roadmap.md"},h=Object.assign(m,{setup(b){return(c,e)=>(n(),s("div",null,[e[0]||(e[0]=a("h1",{class:"text-[var(--font-accent)]",id:"eyetrackvr-development-roadmap",tabindex:"-1"},[t("EyeTrackVR Development Roadmap "),a("a",{class:"header-anchor",href:"#eyetrackvr-development-roadmap","aria-label":'Permalink to "EyeTrackVR Development Roadmap {.text-[var(--font-accent)]}"'},"")],-1)),e[1]||(e[1]=a("p",null,"This will contain a list of features that are in progress, completed, and planned.",-1)),e[2]||(e[2]=a("h2",{id:"completed",tabindex:"-1"},[t("Completed "),a("a",{class:"header-anchor",href:"#completed","aria-label":'Permalink to "Completed"'},"")],-1)),r(l,{options:{...o(i)}},null,8,["options"]),e[3]||(e[3]=a("h2",{id:"in-progress",tabindex:"-1"},[t("In Progress "),a("a",{class:"header-anchor",href:"#in-progress","aria-label":'Permalink to "In Progress"'},"")],-1)),r(l,{options:{...o(d)}},null,8,["options"]),e[4]||(e[4]=a("h2",{id:"planned",tabindex:"-1"},[t("Planned "),a("a",{class:"header-anchor",href:"#planned","aria-label":'Permalink to "Planned"'},"")],-1)),r(l,{options:{...o(p)}},null,8,["options"])]))}});export{g as __pageData,h as default};
|
||||
import{_ as l}from"./chunks/CheckBoxList.e60898cc.js";import{o as n,c as s,k as a,a as t,E as r,l as o}from"./chunks/framework.a4daa24a.js";const i={state:!0,object:[{label:"Tracking algorithm"},{label:"Calibration"},{label:"GUI"},{label:"PCB Design for IR emitters"},{label:"Dual Eye support"},{label:"Firmware"},{label:"Better documentation over things (setup, wiring etc.)"},{label:"Setup dynamic WiFi credentials at runtime"},{label:"OTA using Platformio"},{label:"Auto threshold's"},{label:"New LED Power regulator board (V4)"},{label:"New IR LED PCB (only for the power reg board) (V4)"},{label:"Setup flashing of ESPs through anything other than VSC"}]},d={state:!1,object:[{label:"Variable eye openness tracking (being improved)"},{label:"Auto ROI cropping/better cropping"},{label:"New GUI"},{label:"New backend for new GUI"},{label:"V5 hardware (focus on wired usage)"},{label:"Dynamic foveated rendering via OpenXR"},{label:"3D, 9-point calibration via OpenXR/SteamVR overlay"}]},p={state:!1,object:[{label:"Custom cam boards/cameras?"},{label:"Game interaction SDK"},{label:"Game developer integration program"}]},g=JSON.parse('{"title":"EyeTrackVR Development Roadmap","description":"","frontmatter":{},"headers":[],"relativePath":"dev_roadmap.md","filePath":"dev_roadmap.md","lastUpdated":1676223729000}'),m={name:"dev_roadmap.md"},h=Object.assign(m,{setup(b){return(c,e)=>(n(),s("div",null,[e[0]||(e[0]=a("h1",{class:"text-[var(--font-accent)]",id:"eyetrackvr-development-roadmap",tabindex:"-1"},[t("EyeTrackVR Development Roadmap "),a("a",{class:"header-anchor",href:"#eyetrackvr-development-roadmap","aria-label":'Permalink to "EyeTrackVR Development Roadmap {.text-[var(--font-accent)]}"'},"")],-1)),e[1]||(e[1]=a("p",null,"This will contain a list of features that are in progress, completed, and planned.",-1)),e[2]||(e[2]=a("h2",{id:"completed",tabindex:"-1"},[t("Completed "),a("a",{class:"header-anchor",href:"#completed","aria-label":'Permalink to "Completed"'},"")],-1)),r(l,{options:{...o(i)}},null,8,["options"]),e[3]||(e[3]=a("h2",{id:"in-progress",tabindex:"-1"},[t("In Progress "),a("a",{class:"header-anchor",href:"#in-progress","aria-label":'Permalink to "In Progress"'},"")],-1)),r(l,{options:{...o(d)}},null,8,["options"]),e[4]||(e[4]=a("h2",{id:"planned",tabindex:"-1"},[t("Planned "),a("a",{class:"header-anchor",href:"#planned","aria-label":'Permalink to "Planned"'},"")],-1)),r(l,{options:{...o(p)}},null,8,["options"])]))}});export{g as __pageData,h as default};
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1,4 +1,4 @@
|
||||
import{_ as s,o as a,c as o,O as n}from"./chunks/framework.79850ceb.js";const y=JSON.parse('{"title":"Pages","description":"","frontmatter":{},"headers":[],"relativePath":"development/docs/pages.md","filePath":"development/docs/pages.md","lastUpdated":1700510338000}'),l={name:"development/docs/pages.md"};function t(p,e,c,r,i,d){return a(),o("div",null,e[0]||(e[0]=[n(`<h1 class="text-[var(--font-accent)]" id="pages" tabindex="-1">Pages <a class="header-anchor" href="#pages" aria-label="Permalink to "Pages {.text-[var(--font-accent)]}""></a></h1><p>This section will cover how to add or edit pages on the docs website.</p><p>Please use the <code>Github Markdown</code> flavour for your Markdown files.</p><p>Please look at other pages to see how they are formatted, and for examples of how to use Markdown.</p><h2 id="adding-a-page" tabindex="-1">Adding a Page <a class="header-anchor" href="#adding-a-page" aria-label="Permalink to "Adding a Page""></a></h2><p>To add a page, you will need to create a new Markdown file in the <code>vitepress/docs/src/pages</code> folder. The file name will be the URL of the page. For example, if you create a file called <code>my_page.md</code>, the URL will be <code>https://docs.eyetrackvr.dev/my_page</code>.</p><h3 id="sub-directories" tabindex="-1">Sub-directories <a class="header-anchor" href="#sub-directories" aria-label="Permalink to "Sub-directories""></a></h3><p>You can also create sub-directories in the <code>vitepress/docs/src/pages</code> folder. For example, if you create a file called <code>my_page.md</code> in a folder called <code>my_folder</code>, the URL will be <code>https://docs.eyetrackvr.dev/my_folder/my_page</code>.</p><p>This is useful for organizing pages into categories.</p><h3 id="adding-a-page-to-the-sidebar" tabindex="-1">Adding a Page to the Sidebar <a class="header-anchor" href="#adding-a-page-to-the-sidebar" aria-label="Permalink to "Adding a Page to the Sidebar""></a></h3><p>To add a page to the sidebar, you will need to add the page to the <code>vitepress/docs/src/custom/theme/index.js</code> file.</p><p>To do this, you will need to add the page to the <code>sidebar</code> object.</p><p>For example, if you want to add a page called <code>my_page.md</code> to the sidebar, you will need to add the following to the <code>sidebar</code> object:</p><div class="language-js line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">js</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#89DDFF;">{</span></span>
|
||||
import{_ as s,o as a,c as o,O as n}from"./chunks/framework.a4daa24a.js";const y=JSON.parse('{"title":"Pages","description":"","frontmatter":{},"headers":[],"relativePath":"development/docs/pages.md","filePath":"development/docs/pages.md","lastUpdated":1700510338000}'),l={name:"development/docs/pages.md"};function t(p,e,c,r,i,d){return a(),o("div",null,e[0]||(e[0]=[n(`<h1 class="text-[var(--font-accent)]" id="pages" tabindex="-1">Pages <a class="header-anchor" href="#pages" aria-label="Permalink to "Pages {.text-[var(--font-accent)]}""></a></h1><p>This section will cover how to add or edit pages on the docs website.</p><p>Please use the <code>Github Markdown</code> flavour for your Markdown files.</p><p>Please look at other pages to see how they are formatted, and for examples of how to use Markdown.</p><h2 id="adding-a-page" tabindex="-1">Adding a Page <a class="header-anchor" href="#adding-a-page" aria-label="Permalink to "Adding a Page""></a></h2><p>To add a page, you will need to create a new Markdown file in the <code>vitepress/docs/src/pages</code> folder. The file name will be the URL of the page. For example, if you create a file called <code>my_page.md</code>, the URL will be <code>https://docs.eyetrackvr.dev/my_page</code>.</p><h3 id="sub-directories" tabindex="-1">Sub-directories <a class="header-anchor" href="#sub-directories" aria-label="Permalink to "Sub-directories""></a></h3><p>You can also create sub-directories in the <code>vitepress/docs/src/pages</code> folder. For example, if you create a file called <code>my_page.md</code> in a folder called <code>my_folder</code>, the URL will be <code>https://docs.eyetrackvr.dev/my_folder/my_page</code>.</p><p>This is useful for organizing pages into categories.</p><h3 id="adding-a-page-to-the-sidebar" tabindex="-1">Adding a Page to the Sidebar <a class="header-anchor" href="#adding-a-page-to-the-sidebar" aria-label="Permalink to "Adding a Page to the Sidebar""></a></h3><p>To add a page to the sidebar, you will need to add the page to the <code>vitepress/docs/src/custom/theme/index.js</code> file.</p><p>To do this, you will need to add the page to the <code>sidebar</code> object.</p><p>For example, if you want to add a page called <code>my_page.md</code> to the sidebar, you will need to add the following to the <code>sidebar</code> object:</p><div class="language-js line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">js</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#89DDFF;">{</span></span>
|
||||
<span class="line"><span style="color:#F07178;"> </span><span style="color:#FFCB6B;">text</span><span style="color:#89DDFF;">:</span><span style="color:#F07178;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C3E88D;">Getting Started</span><span style="color:#89DDFF;">"</span><span style="color:#89DDFF;">,</span></span>
|
||||
<span class="line"><span style="color:#F07178;"> </span><span style="color:#FFCB6B;">collapsible</span><span style="color:#89DDFF;">:</span><span style="color:#F07178;"> </span><span style="color:#FF9CAC;">true</span><span style="color:#89DDFF;">,</span></span>
|
||||
<span class="line"><span style="color:#F07178;"> </span><span style="color:#FFCB6B;">items</span><span style="color:#89DDFF;">:</span><span style="color:#F07178;"> [</span></span>
|
||||
@ -1,4 +1,4 @@
|
||||
import{_ as s,o as a,c as o,O as n}from"./chunks/framework.79850ceb.js";const y=JSON.parse('{"title":"Pages","description":"","frontmatter":{},"headers":[],"relativePath":"development/docs/pages.md","filePath":"development/docs/pages.md","lastUpdated":1700510338000}'),l={name:"development/docs/pages.md"};function t(p,e,c,r,i,d){return a(),o("div",null,e[0]||(e[0]=[n(`<h1 class="text-[var(--font-accent)]" id="pages" tabindex="-1">Pages <a class="header-anchor" href="#pages" aria-label="Permalink to "Pages {.text-[var(--font-accent)]}""></a></h1><p>This section will cover how to add or edit pages on the docs website.</p><p>Please use the <code>Github Markdown</code> flavour for your Markdown files.</p><p>Please look at other pages to see how they are formatted, and for examples of how to use Markdown.</p><h2 id="adding-a-page" tabindex="-1">Adding a Page <a class="header-anchor" href="#adding-a-page" aria-label="Permalink to "Adding a Page""></a></h2><p>To add a page, you will need to create a new Markdown file in the <code>vitepress/docs/src/pages</code> folder. The file name will be the URL of the page. For example, if you create a file called <code>my_page.md</code>, the URL will be <code>https://docs.eyetrackvr.dev/my_page</code>.</p><h3 id="sub-directories" tabindex="-1">Sub-directories <a class="header-anchor" href="#sub-directories" aria-label="Permalink to "Sub-directories""></a></h3><p>You can also create sub-directories in the <code>vitepress/docs/src/pages</code> folder. For example, if you create a file called <code>my_page.md</code> in a folder called <code>my_folder</code>, the URL will be <code>https://docs.eyetrackvr.dev/my_folder/my_page</code>.</p><p>This is useful for organizing pages into categories.</p><h3 id="adding-a-page-to-the-sidebar" tabindex="-1">Adding a Page to the Sidebar <a class="header-anchor" href="#adding-a-page-to-the-sidebar" aria-label="Permalink to "Adding a Page to the Sidebar""></a></h3><p>To add a page to the sidebar, you will need to add the page to the <code>vitepress/docs/src/custom/theme/index.js</code> file.</p><p>To do this, you will need to add the page to the <code>sidebar</code> object.</p><p>For example, if you want to add a page called <code>my_page.md</code> to the sidebar, you will need to add the following to the <code>sidebar</code> object:</p><div class="language-js line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">js</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#89DDFF;">{</span></span>
|
||||
import{_ as s,o as a,c as o,O as n}from"./chunks/framework.a4daa24a.js";const y=JSON.parse('{"title":"Pages","description":"","frontmatter":{},"headers":[],"relativePath":"development/docs/pages.md","filePath":"development/docs/pages.md","lastUpdated":1700510338000}'),l={name:"development/docs/pages.md"};function t(p,e,c,r,i,d){return a(),o("div",null,e[0]||(e[0]=[n(`<h1 class="text-[var(--font-accent)]" id="pages" tabindex="-1">Pages <a class="header-anchor" href="#pages" aria-label="Permalink to "Pages {.text-[var(--font-accent)]}""></a></h1><p>This section will cover how to add or edit pages on the docs website.</p><p>Please use the <code>Github Markdown</code> flavour for your Markdown files.</p><p>Please look at other pages to see how they are formatted, and for examples of how to use Markdown.</p><h2 id="adding-a-page" tabindex="-1">Adding a Page <a class="header-anchor" href="#adding-a-page" aria-label="Permalink to "Adding a Page""></a></h2><p>To add a page, you will need to create a new Markdown file in the <code>vitepress/docs/src/pages</code> folder. The file name will be the URL of the page. For example, if you create a file called <code>my_page.md</code>, the URL will be <code>https://docs.eyetrackvr.dev/my_page</code>.</p><h3 id="sub-directories" tabindex="-1">Sub-directories <a class="header-anchor" href="#sub-directories" aria-label="Permalink to "Sub-directories""></a></h3><p>You can also create sub-directories in the <code>vitepress/docs/src/pages</code> folder. For example, if you create a file called <code>my_page.md</code> in a folder called <code>my_folder</code>, the URL will be <code>https://docs.eyetrackvr.dev/my_folder/my_page</code>.</p><p>This is useful for organizing pages into categories.</p><h3 id="adding-a-page-to-the-sidebar" tabindex="-1">Adding a Page to the Sidebar <a class="header-anchor" href="#adding-a-page-to-the-sidebar" aria-label="Permalink to "Adding a Page to the Sidebar""></a></h3><p>To add a page to the sidebar, you will need to add the page to the <code>vitepress/docs/src/custom/theme/index.js</code> file.</p><p>To do this, you will need to add the page to the <code>sidebar</code> object.</p><p>For example, if you want to add a page called <code>my_page.md</code> to the sidebar, you will need to add the following to the <code>sidebar</code> object:</p><div class="language-js line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">js</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#89DDFF;">{</span></span>
|
||||
<span class="line"><span style="color:#F07178;"> </span><span style="color:#FFCB6B;">text</span><span style="color:#89DDFF;">:</span><span style="color:#F07178;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C3E88D;">Getting Started</span><span style="color:#89DDFF;">"</span><span style="color:#89DDFF;">,</span></span>
|
||||
<span class="line"><span style="color:#F07178;"> </span><span style="color:#FFCB6B;">collapsible</span><span style="color:#89DDFF;">:</span><span style="color:#F07178;"> </span><span style="color:#FF9CAC;">true</span><span style="color:#89DDFF;">,</span></span>
|
||||
<span class="line"><span style="color:#F07178;"> </span><span style="color:#FFCB6B;">items</span><span style="color:#89DDFF;">:</span><span style="color:#F07178;"> [</span></span>
|
||||
@ -1,4 +1,4 @@
|
||||
import{_ as s,o as a,c as n,O as t}from"./chunks/framework.79850ceb.js";const m=JSON.parse('{"title":"Standards Guide","description":"","frontmatter":{},"headers":[],"relativePath":"development/docs/standards.md","filePath":"development/docs/standards.md","lastUpdated":1677868200000}'),o={name:"development/docs/standards.md"};function l(i,e,r,p,c,d){return a(),n("div",null,e[0]||(e[0]=[t(`<h1 id="standards-guide" tabindex="-1">Standards Guide <a class="header-anchor" href="#standards-guide" aria-label="Permalink to "Standards Guide""></a></h1><p>Listed here are the standards that are used for the EyeTrackVR project. These standards are used to ensure that the project is consistent and easy to understand.</p><h2 id="code-standards" tabindex="-1">Code Standards <a class="header-anchor" href="#code-standards" aria-label="Permalink to "Code Standards""></a></h2><h3 id="general" tabindex="-1">General <a class="header-anchor" href="#general" aria-label="Permalink to "General""></a></h3><p>It is by design that we use a static-site framework for the documentation site. This is to ensure that the documentation is easy to maintain and extend. This is also to ensure that the documentation is easy to understand.</p><p>We have only a few rules for the documentation site:</p><ul><li>All code should be written in English.</li><li>All code should be written in a way that is easy to understand.</li><li>All code should be written in a way that is easy to maintain.</li><li>All code should be written in a way that is easy to extend.</li><li>Our git commit style is to be followed, in english only.</li></ul><h3 id="git-commit-style" tabindex="-1">Git Commit Style <a class="header-anchor" href="#git-commit-style" aria-label="Permalink to "Git Commit Style""></a></h3><p>We use the <a href="https://www.conventionalcommits.org/en/v1.0.0/" target="_blank" rel="noreferrer">Conventional Commits</a> standard for our git commit style. This is to ensure that our git commits are easy to understand and easy to maintain. This is also to ensure that our git commits are easy to extend.</p><p>Git commits are used to with the <a href="https://semantic-release.gitbook.io/semantic-release/" target="_blank" rel="noreferrer">Semantic Release</a> tool to automatically generate the changelog and versioning for the project. As such, it is important that we follow the Conventional Commits standard, with our own rule customizations.</p><p>The following is a list of the customizations that we have made to the Conventional Commits standard:</p><ul><li>We use the <code>BREAKING CHANGE(S)</code> or <code>BREAKING</code> text to indicate a breaking change.</li></ul><p>Our git commit style is as follows:</p><div class="language-bash line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">bash</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#89DDFF;"><</span><span style="color:#BABED8;">type</span><span style="color:#89DDFF;">>[</span><span style="color:#BABED8;">optional scope</span><span style="color:#89DDFF;">]</span><span style="color:#BABED8;">: </span><span style="color:#89DDFF;"><</span><span style="color:#BABED8;">description</span><span style="color:#89DDFF;">></span></span>
|
||||
import{_ as s,o as a,c as n,O as t}from"./chunks/framework.a4daa24a.js";const m=JSON.parse('{"title":"Standards Guide","description":"","frontmatter":{},"headers":[],"relativePath":"development/docs/standards.md","filePath":"development/docs/standards.md","lastUpdated":1677868200000}'),o={name:"development/docs/standards.md"};function l(i,e,r,p,c,d){return a(),n("div",null,e[0]||(e[0]=[t(`<h1 id="standards-guide" tabindex="-1">Standards Guide <a class="header-anchor" href="#standards-guide" aria-label="Permalink to "Standards Guide""></a></h1><p>Listed here are the standards that are used for the EyeTrackVR project. These standards are used to ensure that the project is consistent and easy to understand.</p><h2 id="code-standards" tabindex="-1">Code Standards <a class="header-anchor" href="#code-standards" aria-label="Permalink to "Code Standards""></a></h2><h3 id="general" tabindex="-1">General <a class="header-anchor" href="#general" aria-label="Permalink to "General""></a></h3><p>It is by design that we use a static-site framework for the documentation site. This is to ensure that the documentation is easy to maintain and extend. This is also to ensure that the documentation is easy to understand.</p><p>We have only a few rules for the documentation site:</p><ul><li>All code should be written in English.</li><li>All code should be written in a way that is easy to understand.</li><li>All code should be written in a way that is easy to maintain.</li><li>All code should be written in a way that is easy to extend.</li><li>Our git commit style is to be followed, in english only.</li></ul><h3 id="git-commit-style" tabindex="-1">Git Commit Style <a class="header-anchor" href="#git-commit-style" aria-label="Permalink to "Git Commit Style""></a></h3><p>We use the <a href="https://www.conventionalcommits.org/en/v1.0.0/" target="_blank" rel="noreferrer">Conventional Commits</a> standard for our git commit style. This is to ensure that our git commits are easy to understand and easy to maintain. This is also to ensure that our git commits are easy to extend.</p><p>Git commits are used to with the <a href="https://semantic-release.gitbook.io/semantic-release/" target="_blank" rel="noreferrer">Semantic Release</a> tool to automatically generate the changelog and versioning for the project. As such, it is important that we follow the Conventional Commits standard, with our own rule customizations.</p><p>The following is a list of the customizations that we have made to the Conventional Commits standard:</p><ul><li>We use the <code>BREAKING CHANGE(S)</code> or <code>BREAKING</code> text to indicate a breaking change.</li></ul><p>Our git commit style is as follows:</p><div class="language-bash line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">bash</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#89DDFF;"><</span><span style="color:#BABED8;">type</span><span style="color:#89DDFF;">>[</span><span style="color:#BABED8;">optional scope</span><span style="color:#89DDFF;">]</span><span style="color:#BABED8;">: </span><span style="color:#89DDFF;"><</span><span style="color:#BABED8;">description</span><span style="color:#89DDFF;">></span></span>
|
||||
<span class="line"></span>
|
||||
<span class="line"><span style="color:#89DDFF;">[</span><span style="color:#BABED8;">optional body</span><span style="color:#89DDFF;">]</span></span>
|
||||
<span class="line"></span>
|
||||
@ -1,4 +1,4 @@
|
||||
import{_ as s,o as a,c as n,O as t}from"./chunks/framework.79850ceb.js";const m=JSON.parse('{"title":"Standards Guide","description":"","frontmatter":{},"headers":[],"relativePath":"development/docs/standards.md","filePath":"development/docs/standards.md","lastUpdated":1677868200000}'),o={name:"development/docs/standards.md"};function l(i,e,r,p,c,d){return a(),n("div",null,e[0]||(e[0]=[t(`<h1 id="standards-guide" tabindex="-1">Standards Guide <a class="header-anchor" href="#standards-guide" aria-label="Permalink to "Standards Guide""></a></h1><p>Listed here are the standards that are used for the EyeTrackVR project. These standards are used to ensure that the project is consistent and easy to understand.</p><h2 id="code-standards" tabindex="-1">Code Standards <a class="header-anchor" href="#code-standards" aria-label="Permalink to "Code Standards""></a></h2><h3 id="general" tabindex="-1">General <a class="header-anchor" href="#general" aria-label="Permalink to "General""></a></h3><p>It is by design that we use a static-site framework for the documentation site. This is to ensure that the documentation is easy to maintain and extend. This is also to ensure that the documentation is easy to understand.</p><p>We have only a few rules for the documentation site:</p><ul><li>All code should be written in English.</li><li>All code should be written in a way that is easy to understand.</li><li>All code should be written in a way that is easy to maintain.</li><li>All code should be written in a way that is easy to extend.</li><li>Our git commit style is to be followed, in english only.</li></ul><h3 id="git-commit-style" tabindex="-1">Git Commit Style <a class="header-anchor" href="#git-commit-style" aria-label="Permalink to "Git Commit Style""></a></h3><p>We use the <a href="https://www.conventionalcommits.org/en/v1.0.0/" target="_blank" rel="noreferrer">Conventional Commits</a> standard for our git commit style. This is to ensure that our git commits are easy to understand and easy to maintain. This is also to ensure that our git commits are easy to extend.</p><p>Git commits are used to with the <a href="https://semantic-release.gitbook.io/semantic-release/" target="_blank" rel="noreferrer">Semantic Release</a> tool to automatically generate the changelog and versioning for the project. As such, it is important that we follow the Conventional Commits standard, with our own rule customizations.</p><p>The following is a list of the customizations that we have made to the Conventional Commits standard:</p><ul><li>We use the <code>BREAKING CHANGE(S)</code> or <code>BREAKING</code> text to indicate a breaking change.</li></ul><p>Our git commit style is as follows:</p><div class="language-bash line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">bash</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#89DDFF;"><</span><span style="color:#BABED8;">type</span><span style="color:#89DDFF;">>[</span><span style="color:#BABED8;">optional scope</span><span style="color:#89DDFF;">]</span><span style="color:#BABED8;">: </span><span style="color:#89DDFF;"><</span><span style="color:#BABED8;">description</span><span style="color:#89DDFF;">></span></span>
|
||||
import{_ as s,o as a,c as n,O as t}from"./chunks/framework.a4daa24a.js";const m=JSON.parse('{"title":"Standards Guide","description":"","frontmatter":{},"headers":[],"relativePath":"development/docs/standards.md","filePath":"development/docs/standards.md","lastUpdated":1677868200000}'),o={name:"development/docs/standards.md"};function l(i,e,r,p,c,d){return a(),n("div",null,e[0]||(e[0]=[t(`<h1 id="standards-guide" tabindex="-1">Standards Guide <a class="header-anchor" href="#standards-guide" aria-label="Permalink to "Standards Guide""></a></h1><p>Listed here are the standards that are used for the EyeTrackVR project. These standards are used to ensure that the project is consistent and easy to understand.</p><h2 id="code-standards" tabindex="-1">Code Standards <a class="header-anchor" href="#code-standards" aria-label="Permalink to "Code Standards""></a></h2><h3 id="general" tabindex="-1">General <a class="header-anchor" href="#general" aria-label="Permalink to "General""></a></h3><p>It is by design that we use a static-site framework for the documentation site. This is to ensure that the documentation is easy to maintain and extend. This is also to ensure that the documentation is easy to understand.</p><p>We have only a few rules for the documentation site:</p><ul><li>All code should be written in English.</li><li>All code should be written in a way that is easy to understand.</li><li>All code should be written in a way that is easy to maintain.</li><li>All code should be written in a way that is easy to extend.</li><li>Our git commit style is to be followed, in english only.</li></ul><h3 id="git-commit-style" tabindex="-1">Git Commit Style <a class="header-anchor" href="#git-commit-style" aria-label="Permalink to "Git Commit Style""></a></h3><p>We use the <a href="https://www.conventionalcommits.org/en/v1.0.0/" target="_blank" rel="noreferrer">Conventional Commits</a> standard for our git commit style. This is to ensure that our git commits are easy to understand and easy to maintain. This is also to ensure that our git commits are easy to extend.</p><p>Git commits are used to with the <a href="https://semantic-release.gitbook.io/semantic-release/" target="_blank" rel="noreferrer">Semantic Release</a> tool to automatically generate the changelog and versioning for the project. As such, it is important that we follow the Conventional Commits standard, with our own rule customizations.</p><p>The following is a list of the customizations that we have made to the Conventional Commits standard:</p><ul><li>We use the <code>BREAKING CHANGE(S)</code> or <code>BREAKING</code> text to indicate a breaking change.</li></ul><p>Our git commit style is as follows:</p><div class="language-bash line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">bash</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#89DDFF;"><</span><span style="color:#BABED8;">type</span><span style="color:#89DDFF;">>[</span><span style="color:#BABED8;">optional scope</span><span style="color:#89DDFF;">]</span><span style="color:#BABED8;">: </span><span style="color:#89DDFF;"><</span><span style="color:#BABED8;">description</span><span style="color:#89DDFF;">></span></span>
|
||||
<span class="line"></span>
|
||||
<span class="line"><span style="color:#89DDFF;">[</span><span style="color:#BABED8;">optional body</span><span style="color:#89DDFF;">]</span></span>
|
||||
<span class="line"></span>
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
import{_ as o,i}from"./chunks/index.6e6e7312.js";import{o as t,c as s,O as n,E as r,l as a}from"./chunks/framework.79850ceb.js";const p=JSON.parse('{"title":"Firmware Environments","description":"","frontmatter":{},"headers":[],"relativePath":"firmware_guide/environments.md","filePath":"firmware_guide/environments.md","lastUpdated":1698315393000}'),d={name:"firmware_guide/environments.md"},u=Object.assign(d,{setup(l){return(c,e)=>(t(),s("div",null,[e[0]||(e[0]=n('<h1 class="text-[var(--font-accent)]" id="firmware-environments" tabindex="-1">Firmware Environments <a class="header-anchor" href="#firmware-environments" aria-label="Permalink to "Firmware Environments {.text-[var(--font-accent)]}""></a></h1><h2 id="what-is-it" tabindex="-1">What is it? <a class="header-anchor" href="#what-is-it" aria-label="Permalink to "What is it?""></a></h2><p>A firmware environment is a way to store the custom firmware config for a specific device. This is useful if you want to have multiple devices with different firmware configs.</p><p>We use environments to store the firmware config for each device, so that you can easily switch between them.</p><p>Environments are broken up into two distinct parts:</p><ul><li>The <code>build type</code> (e.g. <code>debug</code>, <code>release</code>)</li><li>The <code>board type</code> (e.g. <code>espaithinker</code>, <code>esp32cam</code>)</li></ul><h2 id="build-types" tabindex="-1">Build Types <a class="header-anchor" href="#build-types" aria-label="Permalink to "Build Types""></a></h2><p>We now have a couple of options letting us decide how we want to build the firmware.</p><ul><li><p><code>Debug</code> - The debug environment is the default environment and does not need to be specified. It has a lot of logging so it is useful for getting everything setup for the first time and to see what is going on.</p></li><li><p><code>_release</code> - Has a lot less debugging, may also be missing some things available only in debug for debug purposes, this should be flashed when everything is working.</p></li></ul><p>Examples:<br><code>xiaosenses3</code> - This is the debug environment.<br><code>xiaosenses3_release</code> - This is the release environment for daily use.</p><div class="tip custom-block"><p class="custom-block-title">Tip</p><p>We recommend starting with a debug environment, and then switching to release once everything is working. A debug environnement should not be used permanently.</p></div><h2 id="board-types" tabindex="-1">Board Types <a class="header-anchor" href="#board-types" aria-label="Permalink to "Board Types""></a></h2><p>We currently support for several different boards, and we are working on adding more.</p><div class="warning custom-block"><p class="custom-block-title">Warning</p><p>It is important to note that the <code>esp32AIThinker</code> environment is the default environment. Only switch your environment if you have another board or an environment is not working.</p><p>Most esp32Cams from Aliexpress will work with the <code>esp32AIThinker</code> environment, but some may require the <code>esp32cam</code> environment. Test the default environment first, and if it does not work, try the <code>esp32cam</code> environment.</p></div><p>Currently supported boards:</p><ul><li><code>esp32AIThinker</code> - This is the default environment. This is for the ESP32-AI-THINKER and generic alibaba/aliexpress/amazon esp cam boards.</li><li><code>esp32Cam</code> - This is for the special ESP32-CAM, it is unlikely that you will need to use this environment.</li><li><code>esp32M5Stack</code> - This is for ESP32M5Stack.</li><li><code>esp32WRover</code> - This is for the ESP32WRover.</li><li><code>esp-eye</code> - This is for the ESP-EYE (not the S3 variant).</li><li><code>wrooms3</code> - For FREENOVE-ESP32-S3 (<em>wireless mode</em>)</li><li><code>wrooms3QIO</code> - For FREENOVE-ESP32-S3 (<em>wireless mode</em>, for boards with octal flash)</li><li><code>wrooms3USB</code> - For FREENOVE-ESP32-S3 (<em>wired mode</em>)</li><li><code>wrooms3QIOUSB</code> - For FREENOVE-ESP32-S3 (<em>wired mode</em>, for boards with octal flash)</li><li><code>xiaosenses3</code> - For SeedStudio's XAIO ESP32-S3 Sense (<em>wireless mode</em>)</li><li><code>xiaosenses3_USB</code> - For SeedStudio's XAIO ESP32-S3 Sense (<em>wired mode</em>)</li></ul><p>You can change the board enviroment by changing the <code>default_envs</code> argument in <code>platformio.ini</code> to a supported board like shown:</p>',17)),r(o,{options:a(i).esp_board_env},null,8,["options"])]))}});export{p as __pageData,u as default};
|
||||
import{_ as o,i}from"./chunks/index.3af2e52b.js";import{o as t,c as s,O as n,E as r,l as a}from"./chunks/framework.a4daa24a.js";const p=JSON.parse('{"title":"Firmware Environments","description":"","frontmatter":{},"headers":[],"relativePath":"firmware_guide/environments.md","filePath":"firmware_guide/environments.md","lastUpdated":1698315393000}'),d={name:"firmware_guide/environments.md"},u=Object.assign(d,{setup(l){return(c,e)=>(t(),s("div",null,[e[0]||(e[0]=n('<h1 class="text-[var(--font-accent)]" id="firmware-environments" tabindex="-1">Firmware Environments <a class="header-anchor" href="#firmware-environments" aria-label="Permalink to "Firmware Environments {.text-[var(--font-accent)]}""></a></h1><h2 id="what-is-it" tabindex="-1">What is it? <a class="header-anchor" href="#what-is-it" aria-label="Permalink to "What is it?""></a></h2><p>A firmware environment is a way to store the custom firmware config for a specific device. This is useful if you want to have multiple devices with different firmware configs.</p><p>We use environments to store the firmware config for each device, so that you can easily switch between them.</p><p>Environments are broken up into two distinct parts:</p><ul><li>The <code>build type</code> (e.g. <code>debug</code>, <code>release</code>)</li><li>The <code>board type</code> (e.g. <code>espaithinker</code>, <code>esp32cam</code>)</li></ul><h2 id="build-types" tabindex="-1">Build Types <a class="header-anchor" href="#build-types" aria-label="Permalink to "Build Types""></a></h2><p>We now have a couple of options letting us decide how we want to build the firmware.</p><ul><li><p><code>Debug</code> - The debug environment is the default environment and does not need to be specified. It has a lot of logging so it is useful for getting everything setup for the first time and to see what is going on.</p></li><li><p><code>_release</code> - Has a lot less debugging, may also be missing some things available only in debug for debug purposes, this should be flashed when everything is working.</p></li></ul><p>Examples:<br><code>xiaosenses3</code> - This is the debug environment.<br><code>xiaosenses3_release</code> - This is the release environment for daily use.</p><div class="tip custom-block"><p class="custom-block-title">Tip</p><p>We recommend starting with a debug environment, and then switching to release once everything is working. A debug environnement should not be used permanently.</p></div><h2 id="board-types" tabindex="-1">Board Types <a class="header-anchor" href="#board-types" aria-label="Permalink to "Board Types""></a></h2><p>We currently support for several different boards, and we are working on adding more.</p><div class="warning custom-block"><p class="custom-block-title">Warning</p><p>It is important to note that the <code>esp32AIThinker</code> environment is the default environment. Only switch your environment if you have another board or an environment is not working.</p><p>Most esp32Cams from Aliexpress will work with the <code>esp32AIThinker</code> environment, but some may require the <code>esp32cam</code> environment. Test the default environment first, and if it does not work, try the <code>esp32cam</code> environment.</p></div><p>Currently supported boards:</p><ul><li><code>esp32AIThinker</code> - This is the default environment. This is for the ESP32-AI-THINKER and generic alibaba/aliexpress/amazon esp cam boards.</li><li><code>esp32Cam</code> - This is for the special ESP32-CAM, it is unlikely that you will need to use this environment.</li><li><code>esp32M5Stack</code> - This is for ESP32M5Stack.</li><li><code>esp32WRover</code> - This is for the ESP32WRover.</li><li><code>esp-eye</code> - This is for the ESP-EYE (not the S3 variant).</li><li><code>wrooms3</code> - For FREENOVE-ESP32-S3 (<em>wireless mode</em>)</li><li><code>wrooms3QIO</code> - For FREENOVE-ESP32-S3 (<em>wireless mode</em>, for boards with octal flash)</li><li><code>wrooms3USB</code> - For FREENOVE-ESP32-S3 (<em>wired mode</em>)</li><li><code>wrooms3QIOUSB</code> - For FREENOVE-ESP32-S3 (<em>wired mode</em>, for boards with octal flash)</li><li><code>xiaosenses3</code> - For SeedStudio's XAIO ESP32-S3 Sense (<em>wireless mode</em>)</li><li><code>xiaosenses3_USB</code> - For SeedStudio's XAIO ESP32-S3 Sense (<em>wired mode</em>)</li></ul><p>You can change the board enviroment by changing the <code>default_envs</code> argument in <code>platformio.ini</code> to a supported board like shown:</p>',17)),r(o,{options:a(i).esp_board_env},null,8,["options"])]))}});export{p as __pageData,u as default};
|
||||
@ -1 +1 @@
|
||||
import{_ as o,i}from"./chunks/index.6e6e7312.js";import{o as t,c as s,O as n,E as r,l as a}from"./chunks/framework.79850ceb.js";const p=JSON.parse('{"title":"Firmware Environments","description":"","frontmatter":{},"headers":[],"relativePath":"firmware_guide/environments.md","filePath":"firmware_guide/environments.md","lastUpdated":1698315393000}'),d={name:"firmware_guide/environments.md"},u=Object.assign(d,{setup(l){return(c,e)=>(t(),s("div",null,[e[0]||(e[0]=n('<h1 class="text-[var(--font-accent)]" id="firmware-environments" tabindex="-1">Firmware Environments <a class="header-anchor" href="#firmware-environments" aria-label="Permalink to "Firmware Environments {.text-[var(--font-accent)]}""></a></h1><h2 id="what-is-it" tabindex="-1">What is it? <a class="header-anchor" href="#what-is-it" aria-label="Permalink to "What is it?""></a></h2><p>A firmware environment is a way to store the custom firmware config for a specific device. This is useful if you want to have multiple devices with different firmware configs.</p><p>We use environments to store the firmware config for each device, so that you can easily switch between them.</p><p>Environments are broken up into two distinct parts:</p><ul><li>The <code>build type</code> (e.g. <code>debug</code>, <code>release</code>)</li><li>The <code>board type</code> (e.g. <code>espaithinker</code>, <code>esp32cam</code>)</li></ul><h2 id="build-types" tabindex="-1">Build Types <a class="header-anchor" href="#build-types" aria-label="Permalink to "Build Types""></a></h2><p>We now have a couple of options letting us decide how we want to build the firmware.</p><ul><li><p><code>Debug</code> - The debug environment is the default environment and does not need to be specified. It has a lot of logging so it is useful for getting everything setup for the first time and to see what is going on.</p></li><li><p><code>_release</code> - Has a lot less debugging, may also be missing some things available only in debug for debug purposes, this should be flashed when everything is working.</p></li></ul><p>Examples:<br><code>xiaosenses3</code> - This is the debug environment.<br><code>xiaosenses3_release</code> - This is the release environment for daily use.</p><div class="tip custom-block"><p class="custom-block-title">Tip</p><p>We recommend starting with a debug environment, and then switching to release once everything is working. A debug environnement should not be used permanently.</p></div><h2 id="board-types" tabindex="-1">Board Types <a class="header-anchor" href="#board-types" aria-label="Permalink to "Board Types""></a></h2><p>We currently support for several different boards, and we are working on adding more.</p><div class="warning custom-block"><p class="custom-block-title">Warning</p><p>It is important to note that the <code>esp32AIThinker</code> environment is the default environment. Only switch your environment if you have another board or an environment is not working.</p><p>Most esp32Cams from Aliexpress will work with the <code>esp32AIThinker</code> environment, but some may require the <code>esp32cam</code> environment. Test the default environment first, and if it does not work, try the <code>esp32cam</code> environment.</p></div><p>Currently supported boards:</p><ul><li><code>esp32AIThinker</code> - This is the default environment. This is for the ESP32-AI-THINKER and generic alibaba/aliexpress/amazon esp cam boards.</li><li><code>esp32Cam</code> - This is for the special ESP32-CAM, it is unlikely that you will need to use this environment.</li><li><code>esp32M5Stack</code> - This is for ESP32M5Stack.</li><li><code>esp32WRover</code> - This is for the ESP32WRover.</li><li><code>esp-eye</code> - This is for the ESP-EYE (not the S3 variant).</li><li><code>wrooms3</code> - For FREENOVE-ESP32-S3 (<em>wireless mode</em>)</li><li><code>wrooms3QIO</code> - For FREENOVE-ESP32-S3 (<em>wireless mode</em>, for boards with octal flash)</li><li><code>wrooms3USB</code> - For FREENOVE-ESP32-S3 (<em>wired mode</em>)</li><li><code>wrooms3QIOUSB</code> - For FREENOVE-ESP32-S3 (<em>wired mode</em>, for boards with octal flash)</li><li><code>xiaosenses3</code> - For SeedStudio's XAIO ESP32-S3 Sense (<em>wireless mode</em>)</li><li><code>xiaosenses3_USB</code> - For SeedStudio's XAIO ESP32-S3 Sense (<em>wired mode</em>)</li></ul><p>You can change the board enviroment by changing the <code>default_envs</code> argument in <code>platformio.ini</code> to a supported board like shown:</p>',17)),r(o,{options:a(i).esp_board_env},null,8,["options"])]))}});export{p as __pageData,u as default};
|
||||
import{_ as o,i}from"./chunks/index.3af2e52b.js";import{o as t,c as s,O as n,E as r,l as a}from"./chunks/framework.a4daa24a.js";const p=JSON.parse('{"title":"Firmware Environments","description":"","frontmatter":{},"headers":[],"relativePath":"firmware_guide/environments.md","filePath":"firmware_guide/environments.md","lastUpdated":1698315393000}'),d={name:"firmware_guide/environments.md"},u=Object.assign(d,{setup(l){return(c,e)=>(t(),s("div",null,[e[0]||(e[0]=n('<h1 class="text-[var(--font-accent)]" id="firmware-environments" tabindex="-1">Firmware Environments <a class="header-anchor" href="#firmware-environments" aria-label="Permalink to "Firmware Environments {.text-[var(--font-accent)]}""></a></h1><h2 id="what-is-it" tabindex="-1">What is it? <a class="header-anchor" href="#what-is-it" aria-label="Permalink to "What is it?""></a></h2><p>A firmware environment is a way to store the custom firmware config for a specific device. This is useful if you want to have multiple devices with different firmware configs.</p><p>We use environments to store the firmware config for each device, so that you can easily switch between them.</p><p>Environments are broken up into two distinct parts:</p><ul><li>The <code>build type</code> (e.g. <code>debug</code>, <code>release</code>)</li><li>The <code>board type</code> (e.g. <code>espaithinker</code>, <code>esp32cam</code>)</li></ul><h2 id="build-types" tabindex="-1">Build Types <a class="header-anchor" href="#build-types" aria-label="Permalink to "Build Types""></a></h2><p>We now have a couple of options letting us decide how we want to build the firmware.</p><ul><li><p><code>Debug</code> - The debug environment is the default environment and does not need to be specified. It has a lot of logging so it is useful for getting everything setup for the first time and to see what is going on.</p></li><li><p><code>_release</code> - Has a lot less debugging, may also be missing some things available only in debug for debug purposes, this should be flashed when everything is working.</p></li></ul><p>Examples:<br><code>xiaosenses3</code> - This is the debug environment.<br><code>xiaosenses3_release</code> - This is the release environment for daily use.</p><div class="tip custom-block"><p class="custom-block-title">Tip</p><p>We recommend starting with a debug environment, and then switching to release once everything is working. A debug environnement should not be used permanently.</p></div><h2 id="board-types" tabindex="-1">Board Types <a class="header-anchor" href="#board-types" aria-label="Permalink to "Board Types""></a></h2><p>We currently support for several different boards, and we are working on adding more.</p><div class="warning custom-block"><p class="custom-block-title">Warning</p><p>It is important to note that the <code>esp32AIThinker</code> environment is the default environment. Only switch your environment if you have another board or an environment is not working.</p><p>Most esp32Cams from Aliexpress will work with the <code>esp32AIThinker</code> environment, but some may require the <code>esp32cam</code> environment. Test the default environment first, and if it does not work, try the <code>esp32cam</code> environment.</p></div><p>Currently supported boards:</p><ul><li><code>esp32AIThinker</code> - This is the default environment. This is for the ESP32-AI-THINKER and generic alibaba/aliexpress/amazon esp cam boards.</li><li><code>esp32Cam</code> - This is for the special ESP32-CAM, it is unlikely that you will need to use this environment.</li><li><code>esp32M5Stack</code> - This is for ESP32M5Stack.</li><li><code>esp32WRover</code> - This is for the ESP32WRover.</li><li><code>esp-eye</code> - This is for the ESP-EYE (not the S3 variant).</li><li><code>wrooms3</code> - For FREENOVE-ESP32-S3 (<em>wireless mode</em>)</li><li><code>wrooms3QIO</code> - For FREENOVE-ESP32-S3 (<em>wireless mode</em>, for boards with octal flash)</li><li><code>wrooms3USB</code> - For FREENOVE-ESP32-S3 (<em>wired mode</em>)</li><li><code>wrooms3QIOUSB</code> - For FREENOVE-ESP32-S3 (<em>wired mode</em>, for boards with octal flash)</li><li><code>xiaosenses3</code> - For SeedStudio's XAIO ESP32-S3 Sense (<em>wireless mode</em>)</li><li><code>xiaosenses3_USB</code> - For SeedStudio's XAIO ESP32-S3 Sense (<em>wired mode</em>)</li></ul><p>You can change the board enviroment by changing the <code>default_envs</code> argument in <code>platformio.ini</code> to a supported board like shown:</p>',17)),r(o,{options:a(i).esp_board_env},null,8,["options"])]))}});export{p as __pageData,u as default};
|
||||
@ -1 +1 @@
|
||||
import{_ as a,o as t,c as o,O as r}from"./chunks/framework.79850ceb.js";const u=JSON.parse('{"title":"What is this?","description":"","frontmatter":{},"headers":[],"relativePath":"firmware_guide/firmware.md","filePath":"firmware_guide/firmware.md","lastUpdated":1700510338000}'),s={name:"firmware_guide/firmware.md"};function i(n,e,l,d,h,p){return t(),o("div",null,e[0]||(e[0]=[r('<h1 class="text-[var(--font-accent)]" id="what-is-this" tabindex="-1">What is this? <a class="header-anchor" href="#what-is-this" aria-label="Permalink to "What is this? {.text-[var(--font-accent)]}""></a></h1><p>Firmware is the second part of the equation to get your trackers going. It lives on the ESP32 chip, and is responsible for streaming video data from the tracker. We currently fully support wireless streaming over 2.4GHz, and are working on adding support for wired streaming to the main desktop App.</p><h2 id="what-should-i-download-and-where" tabindex="-1">What should I download and where? <a class="header-anchor" href="#what-should-i-download-and-where" aria-label="Permalink to "What should I download and where?""></a></h2><p>You can access the firmware, as well as flash your boards, using our new <a href="https://github.com/EyeTrackVR/FirmwareFlashingTool" target="_blank" rel="noreferrer">Firmware Flashing Tool</a>.</p><div class="warning custom-block"><p class="custom-block-title">Caution</p><p>This tool is currently in beta.</p></div><p>We are working on adding support for Over-The-Air (OTA) and configuring network settings. If you have any issues, please let us know by opening an issue on the repository.</p><p>This tool relies on our own solution called <code>OpenIris</code>, <a href="https://github.com/EyeTrackVR/OpenIris" target="_blank" rel="noreferrer">found here</a>.</p><div class="info custom-block"><p class="custom-block-title">Note</p><p>You <strong>do not</strong> need to download OpenIris separately. The flashing tool will download it for you.</p></div><p>To check the status of the project, please visit the <a href="/dev_roadmap">Development Road Map</a></p><details class="details custom-block"><summary>I want to use VSCode - How would I do this?</summary><p><a href="./setup_vscode">Follow the steps described here</a></p></details>',10)]))}const f=a(s,[["render",i]]);export{u as __pageData,f as default};
|
||||
import{_ as a,o as t,c as o,O as r}from"./chunks/framework.a4daa24a.js";const u=JSON.parse('{"title":"What is this?","description":"","frontmatter":{},"headers":[],"relativePath":"firmware_guide/firmware.md","filePath":"firmware_guide/firmware.md","lastUpdated":1700510338000}'),s={name:"firmware_guide/firmware.md"};function i(n,e,l,d,h,p){return t(),o("div",null,e[0]||(e[0]=[r('<h1 class="text-[var(--font-accent)]" id="what-is-this" tabindex="-1">What is this? <a class="header-anchor" href="#what-is-this" aria-label="Permalink to "What is this? {.text-[var(--font-accent)]}""></a></h1><p>Firmware is the second part of the equation to get your trackers going. It lives on the ESP32 chip, and is responsible for streaming video data from the tracker. We currently fully support wireless streaming over 2.4GHz, and are working on adding support for wired streaming to the main desktop App.</p><h2 id="what-should-i-download-and-where" tabindex="-1">What should I download and where? <a class="header-anchor" href="#what-should-i-download-and-where" aria-label="Permalink to "What should I download and where?""></a></h2><p>You can access the firmware, as well as flash your boards, using our new <a href="https://github.com/EyeTrackVR/FirmwareFlashingTool" target="_blank" rel="noreferrer">Firmware Flashing Tool</a>.</p><div class="warning custom-block"><p class="custom-block-title">Caution</p><p>This tool is currently in beta.</p></div><p>We are working on adding support for Over-The-Air (OTA) and configuring network settings. If you have any issues, please let us know by opening an issue on the repository.</p><p>This tool relies on our own solution called <code>OpenIris</code>, <a href="https://github.com/EyeTrackVR/OpenIris" target="_blank" rel="noreferrer">found here</a>.</p><div class="info custom-block"><p class="custom-block-title">Note</p><p>You <strong>do not</strong> need to download OpenIris separately. The flashing tool will download it for you.</p></div><p>To check the status of the project, please visit the <a href="/dev_roadmap">Development Road Map</a></p><details class="details custom-block"><summary>I want to use VSCode - How would I do this?</summary><p><a href="./setup_vscode">Follow the steps described here</a></p></details>',10)]))}const f=a(s,[["render",i]]);export{u as __pageData,f as default};
|
||||
@ -1 +1 @@
|
||||
import{_ as a,o as t,c as o,O as r}from"./chunks/framework.79850ceb.js";const u=JSON.parse('{"title":"What is this?","description":"","frontmatter":{},"headers":[],"relativePath":"firmware_guide/firmware.md","filePath":"firmware_guide/firmware.md","lastUpdated":1700510338000}'),s={name:"firmware_guide/firmware.md"};function i(n,e,l,d,h,p){return t(),o("div",null,e[0]||(e[0]=[r('<h1 class="text-[var(--font-accent)]" id="what-is-this" tabindex="-1">What is this? <a class="header-anchor" href="#what-is-this" aria-label="Permalink to "What is this? {.text-[var(--font-accent)]}""></a></h1><p>Firmware is the second part of the equation to get your trackers going. It lives on the ESP32 chip, and is responsible for streaming video data from the tracker. We currently fully support wireless streaming over 2.4GHz, and are working on adding support for wired streaming to the main desktop App.</p><h2 id="what-should-i-download-and-where" tabindex="-1">What should I download and where? <a class="header-anchor" href="#what-should-i-download-and-where" aria-label="Permalink to "What should I download and where?""></a></h2><p>You can access the firmware, as well as flash your boards, using our new <a href="https://github.com/EyeTrackVR/FirmwareFlashingTool" target="_blank" rel="noreferrer">Firmware Flashing Tool</a>.</p><div class="warning custom-block"><p class="custom-block-title">Caution</p><p>This tool is currently in beta.</p></div><p>We are working on adding support for Over-The-Air (OTA) and configuring network settings. If you have any issues, please let us know by opening an issue on the repository.</p><p>This tool relies on our own solution called <code>OpenIris</code>, <a href="https://github.com/EyeTrackVR/OpenIris" target="_blank" rel="noreferrer">found here</a>.</p><div class="info custom-block"><p class="custom-block-title">Note</p><p>You <strong>do not</strong> need to download OpenIris separately. The flashing tool will download it for you.</p></div><p>To check the status of the project, please visit the <a href="/dev_roadmap">Development Road Map</a></p><details class="details custom-block"><summary>I want to use VSCode - How would I do this?</summary><p><a href="./setup_vscode">Follow the steps described here</a></p></details>',10)]))}const f=a(s,[["render",i]]);export{u as __pageData,f as default};
|
||||
import{_ as a,o as t,c as o,O as r}from"./chunks/framework.a4daa24a.js";const u=JSON.parse('{"title":"What is this?","description":"","frontmatter":{},"headers":[],"relativePath":"firmware_guide/firmware.md","filePath":"firmware_guide/firmware.md","lastUpdated":1700510338000}'),s={name:"firmware_guide/firmware.md"};function i(n,e,l,d,h,p){return t(),o("div",null,e[0]||(e[0]=[r('<h1 class="text-[var(--font-accent)]" id="what-is-this" tabindex="-1">What is this? <a class="header-anchor" href="#what-is-this" aria-label="Permalink to "What is this? {.text-[var(--font-accent)]}""></a></h1><p>Firmware is the second part of the equation to get your trackers going. It lives on the ESP32 chip, and is responsible for streaming video data from the tracker. We currently fully support wireless streaming over 2.4GHz, and are working on adding support for wired streaming to the main desktop App.</p><h2 id="what-should-i-download-and-where" tabindex="-1">What should I download and where? <a class="header-anchor" href="#what-should-i-download-and-where" aria-label="Permalink to "What should I download and where?""></a></h2><p>You can access the firmware, as well as flash your boards, using our new <a href="https://github.com/EyeTrackVR/FirmwareFlashingTool" target="_blank" rel="noreferrer">Firmware Flashing Tool</a>.</p><div class="warning custom-block"><p class="custom-block-title">Caution</p><p>This tool is currently in beta.</p></div><p>We are working on adding support for Over-The-Air (OTA) and configuring network settings. If you have any issues, please let us know by opening an issue on the repository.</p><p>This tool relies on our own solution called <code>OpenIris</code>, <a href="https://github.com/EyeTrackVR/OpenIris" target="_blank" rel="noreferrer">found here</a>.</p><div class="info custom-block"><p class="custom-block-title">Note</p><p>You <strong>do not</strong> need to download OpenIris separately. The flashing tool will download it for you.</p></div><p>To check the status of the project, please visit the <a href="/dev_roadmap">Development Road Map</a></p><details class="details custom-block"><summary>I want to use VSCode - How would I do this?</summary><p><a href="./setup_vscode">Follow the steps described here</a></p></details>',10)]))}const f=a(s,[["render",i]]);export{u as __pageData,f as default};
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
import{_ as a,i as e}from"./chunks/index.6e6e7312.js";import{o as s,c as d,O as r,E as l,l as n,k as o,a as i}from"./chunks/framework.79850ceb.js";const h=JSON.parse('{"title":"Updating Platformio","description":"","frontmatter":{},"headers":[],"relativePath":"firmware_guide/update_platformio.md","filePath":"firmware_guide/update_platformio.md","lastUpdated":1678402493000}'),p={name:"firmware_guide/update_platformio.md"},g=Object.assign(p,{setup(u){return(m,t)=>(s(),d("div",null,[t[0]||(t[0]=r('<h1 class="text-[var(--font-accent)]" id="updating-platformio" tabindex="-1">Updating Platformio <a class="header-anchor" href="#updating-platformio" aria-label="Permalink to "Updating Platformio {.text-[var(--font-accent)]}""></a></h1><p>Sometimes, when building and uploading the firmware, you may run into bizarre, even-though the code is correct - platformio will refuse to build and instead will complain with some weird error.</p><p>It usually means that either PlatformIO, or ArduinoSDK got and update and that's the moment when this guide may come in handy.</p><h2 id="updating-platformio-itself" tabindex="-1">Updating PlatformIO itself <a class="header-anchor" href="#updating-platformio-itself" aria-label="Permalink to "Updating PlatformIO itself""></a></h2><p>There are two ways to update your platformio installation</p><h3 id="via-cli" tabindex="-1">Via CLI <a class="header-anchor" href="#via-cli" aria-label="Permalink to "Via CLI""></a></h3><p>You can update it easily by simply typing in one command into your terminal.</p>',7)),l(a,{options:n(e).pio_upgrade_command},null,8,["options"]),t[1]||(t[1]=r('<ol><li>Open a terminal / command prompt</li><li>Type <code>pio upgrade</code> and press enter</li><li>Wait for it to finish</li><li>Done</li></ol><h3 id="via-platformio-in-visual-studio-code" tabindex="-1">Via PlatformIO in Visual Studio Code <a class="header-anchor" href="#via-platformio-in-visual-studio-code" aria-label="Permalink to "Via PlatformIO in Visual Studio Code""></a></h3><p>You can also update it using the platformio tab in your Visual Studio Code.</p><ol><li>Open VSC</li><li>Click on that little and icon on the sidebar</li></ol>',4)),l(a,{options:n(e).ant_logo_platformio},null,8,["options"]),t[2]||(t[2]=o("ol",{start:"3"},[o("li",null,[i("A side panel will open, there will be a couple of sections, one of them called "),o("code",null,"Quick Access"),i(", open it.")])],-1)),l(a,{options:n(e).platformio_quick_access},null,8,["options"]),t[3]||(t[3]=o("ol",{start:"4"},[o("li",null,[i("In "),o("code",null,"Quick Access"),i(" section, click on the "),o("code",null,"Miscelleneous"),i(" tab")])],-1)),l(a,{options:n(e).platformio_quick_access_miscellaneous},null,8,["options"]),t[4]||(t[4]=o("ol",{start:"5"},[o("li",null,[i("Then, click on the "),o("code",null,"Upgrade PlatformIO Core")])],-1)),l(a,{options:n(e).platformio_quick_access_upgrade_core},null,8,["options"]),t[5]||(t[5]=r('<ol start="6"><li>Wait for it to finnish and done!</li></ol><h2 id="upgrading-the-sdk" tabindex="-1">Upgrading the SDK <a class="header-anchor" href="#upgrading-the-sdk" aria-label="Permalink to "Upgrading the SDK""></a></h2><p>You'll also need to upgrade the SDK from timem to do this</p><h3 id="upgrading-the-sdk-via-vsc" tabindex="-1">Upgrading the SDK via VSC <a class="header-anchor" href="#upgrading-the-sdk-via-vsc" aria-label="Permalink to "Upgrading the SDK via VSC""></a></h3><ol><li>Follow the guide above up until clicking on the <code>Quick Access</code> section.</li><li>Instead, open the <code>PIO Home</code> and select <code>Open</code></li></ol>',5)),l(a,{options:n(e).platformio_pio_home},null,8,["options"]),t[6]||(t[6]=o("ol",{start:"3"},[o("li",null,[i("This will open a window for PlatformIO dashboard, in there, click on a "),o("code",null,"Platforms"),i(" button on the sidebar")])],-1)),l(a,{options:n(e).platformio_pio_sidebar_platforms},null,8,["options"]),t[7]||(t[7]=o("ol",{start:"4"},[o("li",null,[i("Once there, you should see a couple of tabs next to the side bard, things like "),o("code",null,"Installed"),i(" or "),o("code",null,"Embedded"),i(". Click on "),o("code",null,"Updates")])],-1)),l(a,{options:n(e).platformio_pio_sidebar_platforms_updates},null,8,["options"]),t[8]||(t[8]=o("ol",{start:"5"},[o("li",null,[i("Locate a platform called "),o("code",null,"Espressif 32"),i(" and click on "),o("code",null,"Update to <version>")])],-1)),l(a,{options:n(e).platformio_pio_espressif32},null,8,["options"]),t[9]||(t[9]=o("ol",{start:"6"},[o("li",null,"Wait until it is done and that's it!")],-1))]))}});export{h as __pageData,g as default};
|
||||
import{_ as a,i as e}from"./chunks/index.3af2e52b.js";import{o as s,c as d,O as r,E as l,l as n,k as o,a as i}from"./chunks/framework.a4daa24a.js";const h=JSON.parse('{"title":"Updating Platformio","description":"","frontmatter":{},"headers":[],"relativePath":"firmware_guide/update_platformio.md","filePath":"firmware_guide/update_platformio.md","lastUpdated":1678402493000}'),p={name:"firmware_guide/update_platformio.md"},g=Object.assign(p,{setup(u){return(m,t)=>(s(),d("div",null,[t[0]||(t[0]=r('<h1 class="text-[var(--font-accent)]" id="updating-platformio" tabindex="-1">Updating Platformio <a class="header-anchor" href="#updating-platformio" aria-label="Permalink to "Updating Platformio {.text-[var(--font-accent)]}""></a></h1><p>Sometimes, when building and uploading the firmware, you may run into bizarre, even-though the code is correct - platformio will refuse to build and instead will complain with some weird error.</p><p>It usually means that either PlatformIO, or ArduinoSDK got and update and that's the moment when this guide may come in handy.</p><h2 id="updating-platformio-itself" tabindex="-1">Updating PlatformIO itself <a class="header-anchor" href="#updating-platformio-itself" aria-label="Permalink to "Updating PlatformIO itself""></a></h2><p>There are two ways to update your platformio installation</p><h3 id="via-cli" tabindex="-1">Via CLI <a class="header-anchor" href="#via-cli" aria-label="Permalink to "Via CLI""></a></h3><p>You can update it easily by simply typing in one command into your terminal.</p>',7)),l(a,{options:n(e).pio_upgrade_command},null,8,["options"]),t[1]||(t[1]=r('<ol><li>Open a terminal / command prompt</li><li>Type <code>pio upgrade</code> and press enter</li><li>Wait for it to finish</li><li>Done</li></ol><h3 id="via-platformio-in-visual-studio-code" tabindex="-1">Via PlatformIO in Visual Studio Code <a class="header-anchor" href="#via-platformio-in-visual-studio-code" aria-label="Permalink to "Via PlatformIO in Visual Studio Code""></a></h3><p>You can also update it using the platformio tab in your Visual Studio Code.</p><ol><li>Open VSC</li><li>Click on that little and icon on the sidebar</li></ol>',4)),l(a,{options:n(e).ant_logo_platformio},null,8,["options"]),t[2]||(t[2]=o("ol",{start:"3"},[o("li",null,[i("A side panel will open, there will be a couple of sections, one of them called "),o("code",null,"Quick Access"),i(", open it.")])],-1)),l(a,{options:n(e).platformio_quick_access},null,8,["options"]),t[3]||(t[3]=o("ol",{start:"4"},[o("li",null,[i("In "),o("code",null,"Quick Access"),i(" section, click on the "),o("code",null,"Miscelleneous"),i(" tab")])],-1)),l(a,{options:n(e).platformio_quick_access_miscellaneous},null,8,["options"]),t[4]||(t[4]=o("ol",{start:"5"},[o("li",null,[i("Then, click on the "),o("code",null,"Upgrade PlatformIO Core")])],-1)),l(a,{options:n(e).platformio_quick_access_upgrade_core},null,8,["options"]),t[5]||(t[5]=r('<ol start="6"><li>Wait for it to finnish and done!</li></ol><h2 id="upgrading-the-sdk" tabindex="-1">Upgrading the SDK <a class="header-anchor" href="#upgrading-the-sdk" aria-label="Permalink to "Upgrading the SDK""></a></h2><p>You'll also need to upgrade the SDK from timem to do this</p><h3 id="upgrading-the-sdk-via-vsc" tabindex="-1">Upgrading the SDK via VSC <a class="header-anchor" href="#upgrading-the-sdk-via-vsc" aria-label="Permalink to "Upgrading the SDK via VSC""></a></h3><ol><li>Follow the guide above up until clicking on the <code>Quick Access</code> section.</li><li>Instead, open the <code>PIO Home</code> and select <code>Open</code></li></ol>',5)),l(a,{options:n(e).platformio_pio_home},null,8,["options"]),t[6]||(t[6]=o("ol",{start:"3"},[o("li",null,[i("This will open a window for PlatformIO dashboard, in there, click on a "),o("code",null,"Platforms"),i(" button on the sidebar")])],-1)),l(a,{options:n(e).platformio_pio_sidebar_platforms},null,8,["options"]),t[7]||(t[7]=o("ol",{start:"4"},[o("li",null,[i("Once there, you should see a couple of tabs next to the side bard, things like "),o("code",null,"Installed"),i(" or "),o("code",null,"Embedded"),i(". Click on "),o("code",null,"Updates")])],-1)),l(a,{options:n(e).platformio_pio_sidebar_platforms_updates},null,8,["options"]),t[8]||(t[8]=o("ol",{start:"5"},[o("li",null,[i("Locate a platform called "),o("code",null,"Espressif 32"),i(" and click on "),o("code",null,"Update to <version>")])],-1)),l(a,{options:n(e).platformio_pio_espressif32},null,8,["options"]),t[9]||(t[9]=o("ol",{start:"6"},[o("li",null,"Wait until it is done and that's it!")],-1))]))}});export{h as __pageData,g as default};
|
||||
@ -1 +1 @@
|
||||
import{_ as a,i as e}from"./chunks/index.6e6e7312.js";import{o as s,c as d,O as r,E as l,l as n,k as o,a as i}from"./chunks/framework.79850ceb.js";const h=JSON.parse('{"title":"Updating Platformio","description":"","frontmatter":{},"headers":[],"relativePath":"firmware_guide/update_platformio.md","filePath":"firmware_guide/update_platformio.md","lastUpdated":1678402493000}'),p={name:"firmware_guide/update_platformio.md"},g=Object.assign(p,{setup(u){return(m,t)=>(s(),d("div",null,[t[0]||(t[0]=r('<h1 class="text-[var(--font-accent)]" id="updating-platformio" tabindex="-1">Updating Platformio <a class="header-anchor" href="#updating-platformio" aria-label="Permalink to "Updating Platformio {.text-[var(--font-accent)]}""></a></h1><p>Sometimes, when building and uploading the firmware, you may run into bizarre, even-though the code is correct - platformio will refuse to build and instead will complain with some weird error.</p><p>It usually means that either PlatformIO, or ArduinoSDK got and update and that's the moment when this guide may come in handy.</p><h2 id="updating-platformio-itself" tabindex="-1">Updating PlatformIO itself <a class="header-anchor" href="#updating-platformio-itself" aria-label="Permalink to "Updating PlatformIO itself""></a></h2><p>There are two ways to update your platformio installation</p><h3 id="via-cli" tabindex="-1">Via CLI <a class="header-anchor" href="#via-cli" aria-label="Permalink to "Via CLI""></a></h3><p>You can update it easily by simply typing in one command into your terminal.</p>',7)),l(a,{options:n(e).pio_upgrade_command},null,8,["options"]),t[1]||(t[1]=r('<ol><li>Open a terminal / command prompt</li><li>Type <code>pio upgrade</code> and press enter</li><li>Wait for it to finish</li><li>Done</li></ol><h3 id="via-platformio-in-visual-studio-code" tabindex="-1">Via PlatformIO in Visual Studio Code <a class="header-anchor" href="#via-platformio-in-visual-studio-code" aria-label="Permalink to "Via PlatformIO in Visual Studio Code""></a></h3><p>You can also update it using the platformio tab in your Visual Studio Code.</p><ol><li>Open VSC</li><li>Click on that little and icon on the sidebar</li></ol>',4)),l(a,{options:n(e).ant_logo_platformio},null,8,["options"]),t[2]||(t[2]=o("ol",{start:"3"},[o("li",null,[i("A side panel will open, there will be a couple of sections, one of them called "),o("code",null,"Quick Access"),i(", open it.")])],-1)),l(a,{options:n(e).platformio_quick_access},null,8,["options"]),t[3]||(t[3]=o("ol",{start:"4"},[o("li",null,[i("In "),o("code",null,"Quick Access"),i(" section, click on the "),o("code",null,"Miscelleneous"),i(" tab")])],-1)),l(a,{options:n(e).platformio_quick_access_miscellaneous},null,8,["options"]),t[4]||(t[4]=o("ol",{start:"5"},[o("li",null,[i("Then, click on the "),o("code",null,"Upgrade PlatformIO Core")])],-1)),l(a,{options:n(e).platformio_quick_access_upgrade_core},null,8,["options"]),t[5]||(t[5]=r('<ol start="6"><li>Wait for it to finnish and done!</li></ol><h2 id="upgrading-the-sdk" tabindex="-1">Upgrading the SDK <a class="header-anchor" href="#upgrading-the-sdk" aria-label="Permalink to "Upgrading the SDK""></a></h2><p>You'll also need to upgrade the SDK from timem to do this</p><h3 id="upgrading-the-sdk-via-vsc" tabindex="-1">Upgrading the SDK via VSC <a class="header-anchor" href="#upgrading-the-sdk-via-vsc" aria-label="Permalink to "Upgrading the SDK via VSC""></a></h3><ol><li>Follow the guide above up until clicking on the <code>Quick Access</code> section.</li><li>Instead, open the <code>PIO Home</code> and select <code>Open</code></li></ol>',5)),l(a,{options:n(e).platformio_pio_home},null,8,["options"]),t[6]||(t[6]=o("ol",{start:"3"},[o("li",null,[i("This will open a window for PlatformIO dashboard, in there, click on a "),o("code",null,"Platforms"),i(" button on the sidebar")])],-1)),l(a,{options:n(e).platformio_pio_sidebar_platforms},null,8,["options"]),t[7]||(t[7]=o("ol",{start:"4"},[o("li",null,[i("Once there, you should see a couple of tabs next to the side bard, things like "),o("code",null,"Installed"),i(" or "),o("code",null,"Embedded"),i(". Click on "),o("code",null,"Updates")])],-1)),l(a,{options:n(e).platformio_pio_sidebar_platforms_updates},null,8,["options"]),t[8]||(t[8]=o("ol",{start:"5"},[o("li",null,[i("Locate a platform called "),o("code",null,"Espressif 32"),i(" and click on "),o("code",null,"Update to <version>")])],-1)),l(a,{options:n(e).platformio_pio_espressif32},null,8,["options"]),t[9]||(t[9]=o("ol",{start:"6"},[o("li",null,"Wait until it is done and that's it!")],-1))]))}});export{h as __pageData,g as default};
|
||||
import{_ as a,i as e}from"./chunks/index.3af2e52b.js";import{o as s,c as d,O as r,E as l,l as n,k as o,a as i}from"./chunks/framework.a4daa24a.js";const h=JSON.parse('{"title":"Updating Platformio","description":"","frontmatter":{},"headers":[],"relativePath":"firmware_guide/update_platformio.md","filePath":"firmware_guide/update_platformio.md","lastUpdated":1678402493000}'),p={name:"firmware_guide/update_platformio.md"},g=Object.assign(p,{setup(u){return(m,t)=>(s(),d("div",null,[t[0]||(t[0]=r('<h1 class="text-[var(--font-accent)]" id="updating-platformio" tabindex="-1">Updating Platformio <a class="header-anchor" href="#updating-platformio" aria-label="Permalink to "Updating Platformio {.text-[var(--font-accent)]}""></a></h1><p>Sometimes, when building and uploading the firmware, you may run into bizarre, even-though the code is correct - platformio will refuse to build and instead will complain with some weird error.</p><p>It usually means that either PlatformIO, or ArduinoSDK got and update and that's the moment when this guide may come in handy.</p><h2 id="updating-platformio-itself" tabindex="-1">Updating PlatformIO itself <a class="header-anchor" href="#updating-platformio-itself" aria-label="Permalink to "Updating PlatformIO itself""></a></h2><p>There are two ways to update your platformio installation</p><h3 id="via-cli" tabindex="-1">Via CLI <a class="header-anchor" href="#via-cli" aria-label="Permalink to "Via CLI""></a></h3><p>You can update it easily by simply typing in one command into your terminal.</p>',7)),l(a,{options:n(e).pio_upgrade_command},null,8,["options"]),t[1]||(t[1]=r('<ol><li>Open a terminal / command prompt</li><li>Type <code>pio upgrade</code> and press enter</li><li>Wait for it to finish</li><li>Done</li></ol><h3 id="via-platformio-in-visual-studio-code" tabindex="-1">Via PlatformIO in Visual Studio Code <a class="header-anchor" href="#via-platformio-in-visual-studio-code" aria-label="Permalink to "Via PlatformIO in Visual Studio Code""></a></h3><p>You can also update it using the platformio tab in your Visual Studio Code.</p><ol><li>Open VSC</li><li>Click on that little and icon on the sidebar</li></ol>',4)),l(a,{options:n(e).ant_logo_platformio},null,8,["options"]),t[2]||(t[2]=o("ol",{start:"3"},[o("li",null,[i("A side panel will open, there will be a couple of sections, one of them called "),o("code",null,"Quick Access"),i(", open it.")])],-1)),l(a,{options:n(e).platformio_quick_access},null,8,["options"]),t[3]||(t[3]=o("ol",{start:"4"},[o("li",null,[i("In "),o("code",null,"Quick Access"),i(" section, click on the "),o("code",null,"Miscelleneous"),i(" tab")])],-1)),l(a,{options:n(e).platformio_quick_access_miscellaneous},null,8,["options"]),t[4]||(t[4]=o("ol",{start:"5"},[o("li",null,[i("Then, click on the "),o("code",null,"Upgrade PlatformIO Core")])],-1)),l(a,{options:n(e).platformio_quick_access_upgrade_core},null,8,["options"]),t[5]||(t[5]=r('<ol start="6"><li>Wait for it to finnish and done!</li></ol><h2 id="upgrading-the-sdk" tabindex="-1">Upgrading the SDK <a class="header-anchor" href="#upgrading-the-sdk" aria-label="Permalink to "Upgrading the SDK""></a></h2><p>You'll also need to upgrade the SDK from timem to do this</p><h3 id="upgrading-the-sdk-via-vsc" tabindex="-1">Upgrading the SDK via VSC <a class="header-anchor" href="#upgrading-the-sdk-via-vsc" aria-label="Permalink to "Upgrading the SDK via VSC""></a></h3><ol><li>Follow the guide above up until clicking on the <code>Quick Access</code> section.</li><li>Instead, open the <code>PIO Home</code> and select <code>Open</code></li></ol>',5)),l(a,{options:n(e).platformio_pio_home},null,8,["options"]),t[6]||(t[6]=o("ol",{start:"3"},[o("li",null,[i("This will open a window for PlatformIO dashboard, in there, click on a "),o("code",null,"Platforms"),i(" button on the sidebar")])],-1)),l(a,{options:n(e).platformio_pio_sidebar_platforms},null,8,["options"]),t[7]||(t[7]=o("ol",{start:"4"},[o("li",null,[i("Once there, you should see a couple of tabs next to the side bard, things like "),o("code",null,"Installed"),i(" or "),o("code",null,"Embedded"),i(". Click on "),o("code",null,"Updates")])],-1)),l(a,{options:n(e).platformio_pio_sidebar_platforms_updates},null,8,["options"]),t[8]||(t[8]=o("ol",{start:"5"},[o("li",null,[i("Locate a platform called "),o("code",null,"Espressif 32"),i(" and click on "),o("code",null,"Update to <version>")])],-1)),l(a,{options:n(e).platformio_pio_espressif32},null,8,["options"]),t[9]||(t[9]=o("ol",{start:"6"},[o("li",null,"Wait until it is done and that's it!")],-1))]))}});export{h as __pageData,g as default};
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
import{_ as a,o as t,c as o,O as i}from"./chunks/framework.79850ceb.js";const f=JSON.parse('{"title":"Things To Know Before You Start","description":"","frontmatter":{},"headers":[],"relativePath":"getting_started/things_to_know.md","filePath":"getting_started/things_to_know.md","lastUpdated":1700510338000}'),r={name:"getting_started/things_to_know.md"};function n(s,e,l,u,d,h){return t(),o("div",null,e[0]||(e[0]=[i('<h1 class="text-[var(--font-accent)]" id="things-to-know-before-you-start" tabindex="-1">Things To Know Before You Start <a class="header-anchor" href="#things-to-know-before-you-start" aria-label="Permalink to "Things To Know Before You Start {.text-[var(--font-accent)]}""></a></h1><h2 id="this-page-is-an-overview-of-things-to-know-and-understand-before-you-start-this-project" tabindex="-1">This page is an overview of things to know and understand before you start this project <a class="header-anchor" href="#this-page-is-an-overview-of-things-to-know-and-understand-before-you-start-this-project" aria-label="Permalink to "This page is an overview of things to know and understand before you start this project""></a></h2><h3 id="software-is-not-final" tabindex="-1">Software is not final <a class="header-anchor" href="#software-is-not-final" aria-label="Permalink to "Software is not final""></a></h3><p>Bugs can and will occur which may hinder the experience or usability at times. Do not expect 100% reliable and perfect function. Not all features are fully developed yet.</p><h3 id="firmware-may-have-user-difficulties" tabindex="-1">Firmware may have user difficulties <a class="header-anchor" href="#firmware-may-have-user-difficulties" aria-label="Permalink to "Firmware may have user difficulties""></a></h3><p>Our firmware has not been tested widely so issues may creep up.</p><h3 id="ir-emitters-are-dangerous" tabindex="-1">IR emitters are dangerous <a class="header-anchor" href="#ir-emitters-are-dangerous" aria-label="Permalink to "IR emitters are dangerous""></a></h3><p>If handled wrong or precautions are ignored you can and will cause damage to your eyes. Please make sure to only buy linked ones or ones with specs that match exactly. We will not be responsible for damage caused if you go your own route.</p><h3 id="documentation-may-be-incomplete" tabindex="-1">Documentation may be incomplete <a class="header-anchor" href="#documentation-may-be-incomplete" aria-label="Permalink to "Documentation may be incomplete""></a></h3><p>Important steps may be missing.</p><h3 id="you-will-need-to-set-up-your-avatar-to-use-this" tabindex="-1">You will need to set up your avatar to use this <a class="header-anchor" href="#you-will-need-to-set-up-your-avatar-to-use-this" aria-label="Permalink to "You will need to set up your avatar to use this""></a></h3><p>This will require basic knowledge of Unity and ownership of your own avatar. Note: The 2.0 beta version of our app uses VRC's Native eye tracking, which does <strong>NOT</strong> require a special avatar.</p><h3 id="once-you-have-acknowledged-the-items-above-move-on-to-the-full-build-guide" tabindex="-1">Once you have acknowledged the items above, move on to the <a href="./../how_to_build/full_build">Full Build Guide</a> <a class="header-anchor" href="#once-you-have-acknowledged-the-items-above-move-on-to-the-full-build-guide" aria-label="Permalink to "Once you have acknowledged the items above, move on to the [Full Build Guide](../how_to_build/full_build)""></a></h3>',13)]))}const m=a(r,[["render",n]]);export{f as __pageData,m as default};
|
||||
import{_ as a,o as t,c as o,O as i}from"./chunks/framework.a4daa24a.js";const f=JSON.parse('{"title":"Things To Know Before You Start","description":"","frontmatter":{},"headers":[],"relativePath":"getting_started/things_to_know.md","filePath":"getting_started/things_to_know.md","lastUpdated":1700510338000}'),r={name:"getting_started/things_to_know.md"};function n(s,e,l,u,d,h){return t(),o("div",null,e[0]||(e[0]=[i('<h1 class="text-[var(--font-accent)]" id="things-to-know-before-you-start" tabindex="-1">Things To Know Before You Start <a class="header-anchor" href="#things-to-know-before-you-start" aria-label="Permalink to "Things To Know Before You Start {.text-[var(--font-accent)]}""></a></h1><h2 id="this-page-is-an-overview-of-things-to-know-and-understand-before-you-start-this-project" tabindex="-1">This page is an overview of things to know and understand before you start this project <a class="header-anchor" href="#this-page-is-an-overview-of-things-to-know-and-understand-before-you-start-this-project" aria-label="Permalink to "This page is an overview of things to know and understand before you start this project""></a></h2><h3 id="software-is-not-final" tabindex="-1">Software is not final <a class="header-anchor" href="#software-is-not-final" aria-label="Permalink to "Software is not final""></a></h3><p>Bugs can and will occur which may hinder the experience or usability at times. Do not expect 100% reliable and perfect function. Not all features are fully developed yet.</p><h3 id="firmware-may-have-user-difficulties" tabindex="-1">Firmware may have user difficulties <a class="header-anchor" href="#firmware-may-have-user-difficulties" aria-label="Permalink to "Firmware may have user difficulties""></a></h3><p>Our firmware has not been tested widely so issues may creep up.</p><h3 id="ir-emitters-are-dangerous" tabindex="-1">IR emitters are dangerous <a class="header-anchor" href="#ir-emitters-are-dangerous" aria-label="Permalink to "IR emitters are dangerous""></a></h3><p>If handled wrong or precautions are ignored you can and will cause damage to your eyes. Please make sure to only buy linked ones or ones with specs that match exactly. We will not be responsible for damage caused if you go your own route.</p><h3 id="documentation-may-be-incomplete" tabindex="-1">Documentation may be incomplete <a class="header-anchor" href="#documentation-may-be-incomplete" aria-label="Permalink to "Documentation may be incomplete""></a></h3><p>Important steps may be missing.</p><h3 id="you-will-need-to-set-up-your-avatar-to-use-this" tabindex="-1">You will need to set up your avatar to use this <a class="header-anchor" href="#you-will-need-to-set-up-your-avatar-to-use-this" aria-label="Permalink to "You will need to set up your avatar to use this""></a></h3><p>This will require basic knowledge of Unity and ownership of your own avatar. Note: The 2.0 beta version of our app uses VRC's Native eye tracking, which does <strong>NOT</strong> require a special avatar.</p><h3 id="once-you-have-acknowledged-the-items-above-move-on-to-the-full-build-guide" tabindex="-1">Once you have acknowledged the items above, move on to the <a href="./../how_to_build/full_build">Full Build Guide</a> <a class="header-anchor" href="#once-you-have-acknowledged-the-items-above-move-on-to-the-full-build-guide" aria-label="Permalink to "Once you have acknowledged the items above, move on to the [Full Build Guide](../how_to_build/full_build)""></a></h3>',13)]))}const m=a(r,[["render",n]]);export{f as __pageData,m as default};
|
||||
@ -1 +1 @@
|
||||
import{_ as a,o as t,c as o,O as i}from"./chunks/framework.79850ceb.js";const f=JSON.parse('{"title":"Things To Know Before You Start","description":"","frontmatter":{},"headers":[],"relativePath":"getting_started/things_to_know.md","filePath":"getting_started/things_to_know.md","lastUpdated":1700510338000}'),r={name:"getting_started/things_to_know.md"};function n(s,e,l,u,d,h){return t(),o("div",null,e[0]||(e[0]=[i('<h1 class="text-[var(--font-accent)]" id="things-to-know-before-you-start" tabindex="-1">Things To Know Before You Start <a class="header-anchor" href="#things-to-know-before-you-start" aria-label="Permalink to "Things To Know Before You Start {.text-[var(--font-accent)]}""></a></h1><h2 id="this-page-is-an-overview-of-things-to-know-and-understand-before-you-start-this-project" tabindex="-1">This page is an overview of things to know and understand before you start this project <a class="header-anchor" href="#this-page-is-an-overview-of-things-to-know-and-understand-before-you-start-this-project" aria-label="Permalink to "This page is an overview of things to know and understand before you start this project""></a></h2><h3 id="software-is-not-final" tabindex="-1">Software is not final <a class="header-anchor" href="#software-is-not-final" aria-label="Permalink to "Software is not final""></a></h3><p>Bugs can and will occur which may hinder the experience or usability at times. Do not expect 100% reliable and perfect function. Not all features are fully developed yet.</p><h3 id="firmware-may-have-user-difficulties" tabindex="-1">Firmware may have user difficulties <a class="header-anchor" href="#firmware-may-have-user-difficulties" aria-label="Permalink to "Firmware may have user difficulties""></a></h3><p>Our firmware has not been tested widely so issues may creep up.</p><h3 id="ir-emitters-are-dangerous" tabindex="-1">IR emitters are dangerous <a class="header-anchor" href="#ir-emitters-are-dangerous" aria-label="Permalink to "IR emitters are dangerous""></a></h3><p>If handled wrong or precautions are ignored you can and will cause damage to your eyes. Please make sure to only buy linked ones or ones with specs that match exactly. We will not be responsible for damage caused if you go your own route.</p><h3 id="documentation-may-be-incomplete" tabindex="-1">Documentation may be incomplete <a class="header-anchor" href="#documentation-may-be-incomplete" aria-label="Permalink to "Documentation may be incomplete""></a></h3><p>Important steps may be missing.</p><h3 id="you-will-need-to-set-up-your-avatar-to-use-this" tabindex="-1">You will need to set up your avatar to use this <a class="header-anchor" href="#you-will-need-to-set-up-your-avatar-to-use-this" aria-label="Permalink to "You will need to set up your avatar to use this""></a></h3><p>This will require basic knowledge of Unity and ownership of your own avatar. Note: The 2.0 beta version of our app uses VRC's Native eye tracking, which does <strong>NOT</strong> require a special avatar.</p><h3 id="once-you-have-acknowledged-the-items-above-move-on-to-the-full-build-guide" tabindex="-1">Once you have acknowledged the items above, move on to the <a href="./../how_to_build/full_build">Full Build Guide</a> <a class="header-anchor" href="#once-you-have-acknowledged-the-items-above-move-on-to-the-full-build-guide" aria-label="Permalink to "Once you have acknowledged the items above, move on to the [Full Build Guide](../how_to_build/full_build)""></a></h3>',13)]))}const m=a(r,[["render",n]]);export{f as __pageData,m as default};
|
||||
import{_ as a,o as t,c as o,O as i}from"./chunks/framework.a4daa24a.js";const f=JSON.parse('{"title":"Things To Know Before You Start","description":"","frontmatter":{},"headers":[],"relativePath":"getting_started/things_to_know.md","filePath":"getting_started/things_to_know.md","lastUpdated":1700510338000}'),r={name:"getting_started/things_to_know.md"};function n(s,e,l,u,d,h){return t(),o("div",null,e[0]||(e[0]=[i('<h1 class="text-[var(--font-accent)]" id="things-to-know-before-you-start" tabindex="-1">Things To Know Before You Start <a class="header-anchor" href="#things-to-know-before-you-start" aria-label="Permalink to "Things To Know Before You Start {.text-[var(--font-accent)]}""></a></h1><h2 id="this-page-is-an-overview-of-things-to-know-and-understand-before-you-start-this-project" tabindex="-1">This page is an overview of things to know and understand before you start this project <a class="header-anchor" href="#this-page-is-an-overview-of-things-to-know-and-understand-before-you-start-this-project" aria-label="Permalink to "This page is an overview of things to know and understand before you start this project""></a></h2><h3 id="software-is-not-final" tabindex="-1">Software is not final <a class="header-anchor" href="#software-is-not-final" aria-label="Permalink to "Software is not final""></a></h3><p>Bugs can and will occur which may hinder the experience or usability at times. Do not expect 100% reliable and perfect function. Not all features are fully developed yet.</p><h3 id="firmware-may-have-user-difficulties" tabindex="-1">Firmware may have user difficulties <a class="header-anchor" href="#firmware-may-have-user-difficulties" aria-label="Permalink to "Firmware may have user difficulties""></a></h3><p>Our firmware has not been tested widely so issues may creep up.</p><h3 id="ir-emitters-are-dangerous" tabindex="-1">IR emitters are dangerous <a class="header-anchor" href="#ir-emitters-are-dangerous" aria-label="Permalink to "IR emitters are dangerous""></a></h3><p>If handled wrong or precautions are ignored you can and will cause damage to your eyes. Please make sure to only buy linked ones or ones with specs that match exactly. We will not be responsible for damage caused if you go your own route.</p><h3 id="documentation-may-be-incomplete" tabindex="-1">Documentation may be incomplete <a class="header-anchor" href="#documentation-may-be-incomplete" aria-label="Permalink to "Documentation may be incomplete""></a></h3><p>Important steps may be missing.</p><h3 id="you-will-need-to-set-up-your-avatar-to-use-this" tabindex="-1">You will need to set up your avatar to use this <a class="header-anchor" href="#you-will-need-to-set-up-your-avatar-to-use-this" aria-label="Permalink to "You will need to set up your avatar to use this""></a></h3><p>This will require basic knowledge of Unity and ownership of your own avatar. Note: The 2.0 beta version of our app uses VRC's Native eye tracking, which does <strong>NOT</strong> require a special avatar.</p><h3 id="once-you-have-acknowledged-the-items-above-move-on-to-the-full-build-guide" tabindex="-1">Once you have acknowledged the items above, move on to the <a href="./../how_to_build/full_build">Full Build Guide</a> <a class="header-anchor" href="#once-you-have-acknowledged-the-items-above-move-on-to-the-full-build-guide" aria-label="Permalink to "Once you have acknowledged the items above, move on to the [Full Build Guide](../how_to_build/full_build)""></a></h3>',13)]))}const m=a(r,[["render",n]]);export{f as __pageData,m as default};
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
1
assets/headset_guides_valve_index.md.860c48a5.js
Normal file
1
assets/headset_guides_valve_index.md.860c48a5.js
Normal file
File diff suppressed because one or more lines are too long
1
assets/headset_guides_valve_index.md.860c48a5.lean.js
Normal file
1
assets/headset_guides_valve_index.md.860c48a5.lean.js
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
1
assets/how_to_build_3d_printed_mounts.md.d3969a4f.js
Normal file
1
assets/how_to_build_3d_printed_mounts.md.d3969a4f.js
Normal file
@ -0,0 +1 @@
|
||||
import{_ as r,a as s}from"./chunks/index.b5dd7625.js";import{_ as a}from"./chunks/PartsList.24207c5d.js";import{o as i,c as d,k as e,a as o,E as n,w as l,l as m}from"./chunks/framework.a4daa24a.js";import"./chunks/Accordion.6b599df0.js";const w=JSON.parse('{"title":"3D Printed Mounts","description":"","frontmatter":{},"headers":[],"relativePath":"how_to_build/3d_printed_mounts.md","filePath":"how_to_build/3d_printed_mounts.md","lastUpdated":1727916239000}'),_={name:"how_to_build/3d_printed_mounts.md"},x=Object.assign(_,{setup(p){return(u,t)=>(i(),d("div",null,[t[1]||(t[1]=e("h1",{class:"text-[var(--font-accent)]",id:"_3d-printed-mounts",tabindex:"-1"},[o("3D Printed Mounts "),e("a",{class:"header-anchor",href:"#_3d-printed-mounts","aria-label":'Permalink to "3D Printed Mounts {.text-[var(--font-accent)]}"'},"")],-1)),t[2]||(t[2]=e("p",null,[o("Mounts with a "),e("code",null,"★"),o(" next to them are the recommended mounts for the respected hmd. This is based on user feedback on what works best for most people.")],-1)),n(r,{options:m(s).parts_list_three},{content:l(()=>t[0]||(t[0]=[e("p",null," Keep in mind, some mounts only have the right(or left) version available. You will need to use blender or any slicer to mirror an STL for the other side. ",-1)])),_:1},8,["options"]),n(a)]))}});export{w as __pageData,x as default};
|
||||
@ -0,0 +1 @@
|
||||
import{_ as r,a as s}from"./chunks/index.b5dd7625.js";import{_ as a}from"./chunks/PartsList.24207c5d.js";import{o as i,c as d,k as e,a as o,E as n,w as l,l as m}from"./chunks/framework.a4daa24a.js";import"./chunks/Accordion.6b599df0.js";const w=JSON.parse('{"title":"3D Printed Mounts","description":"","frontmatter":{},"headers":[],"relativePath":"how_to_build/3d_printed_mounts.md","filePath":"how_to_build/3d_printed_mounts.md","lastUpdated":1727916239000}'),_={name:"how_to_build/3d_printed_mounts.md"},x=Object.assign(_,{setup(p){return(u,t)=>(i(),d("div",null,[t[1]||(t[1]=e("h1",{class:"text-[var(--font-accent)]",id:"_3d-printed-mounts",tabindex:"-1"},[o("3D Printed Mounts "),e("a",{class:"header-anchor",href:"#_3d-printed-mounts","aria-label":'Permalink to "3D Printed Mounts {.text-[var(--font-accent)]}"'},"")],-1)),t[2]||(t[2]=e("p",null,[o("Mounts with a "),e("code",null,"★"),o(" next to them are the recommended mounts for the respected hmd. This is based on user feedback on what works best for most people.")],-1)),n(r,{options:m(s).parts_list_three},{content:l(()=>t[0]||(t[0]=[e("p",null," Keep in mind, some mounts only have the right(or left) version available. You will need to use blender or any slicer to mirror an STL for the other side. ",-1)])),_:1},8,["options"]),n(a)]))}});export{w as __pageData,x as default};
|
||||
@ -1 +1 @@
|
||||
import{_ as t,o as a,c as o,O as r}from"./chunks/framework.79850ceb.js";const m=JSON.parse('{"title":"Creating Your Own Mount","description":"","frontmatter":{},"headers":[],"relativePath":"how_to_build/creating_your_own_mount.md","filePath":"how_to_build/creating_your_own_mount.md","lastUpdated":1700510338000}'),n={name:"how_to_build/creating_your_own_mount.md"};function i(s,e,h,u,l,d){return a(),o("div",null,e[0]||(e[0]=[r('<h1 class="text-[var(--font-accent)]" id="creating-your-own-mount" tabindex="-1">Creating Your Own Mount <a class="header-anchor" href="#creating-your-own-mount" aria-label="Permalink to "Creating Your Own Mount {.text-[var(--font-accent)]}""></a></h1><h2 id="this-page-will-include-a-basic-rundown-on-how-to-create-your-own-camera-mount-for-a-headset-that-may-not-have-any-existing-community-mounts" tabindex="-1">This page will include a basic rundown on how to create your own camera mount for a headset that may not have any existing community mounts <a class="header-anchor" href="#this-page-will-include-a-basic-rundown-on-how-to-create-your-own-camera-mount-for-a-headset-that-may-not-have-any-existing-community-mounts" aria-label="Permalink to "This page will include a basic rundown on how to create your own camera mount for a headset that may not have any existing community mounts""></a></h2><p>So, you have a headset that does not have any mounts or none that work well for you. Here I will show some simple steps to get some form of a mount working.</p><h2 id="step-1-find-a-way-to-mount-to-your-headset-s-lens" tabindex="-1">Step 1: Find a way to mount to your headset's lens <a class="header-anchor" href="#step-1-find-a-way-to-mount-to-your-headset-s-lens" aria-label="Permalink to "Step 1: Find a way to mount to your headset's lens""></a></h2><p>The easiest way to get started is to find a lens protector for your headset. You can visit a website like <a href="https://www.thingiverse.com/" target="_blank" rel="noreferrer">Thingiverse</a> or do a search for "3d printed lens protector for {your headset here}"</p><p>Example: Here is a lens protector for the Quest 1/2 and Rift S <a href="https://www.thingiverse.com/thing:3653631" target="_blank" rel="noreferrer">https://www.thingiverse.com/thing:3653631</a></p><h2 id="step-2-find-a-camera-mount" tabindex="-1">Step 2: Find a camera mount <a class="header-anchor" href="#step-2-find-a-camera-mount" aria-label="Permalink to "Step 2: Find a camera mount""></a></h2><p>Now, you need a way to attach the camera. We have a basic design created by qdot, based on his mount on the hardware GitHub <a href="https://github.com/EyeTrackVR/EyeTrackVR-Hardware/blob/main/3d_Printed_Mounts/Basic_Mount_Components/basic_ETVR_camera_mount.stl" target="_blank" rel="noreferrer">here</a></p><p>Alternatively, you can create your own mount if you have the skills.</p><h2 id="step-3-place-the-camera-mount-where-it-will-give-a-good-camera-angle" tabindex="-1">Step 3: Place the camera mount where it will give a good camera angle <a class="header-anchor" href="#step-3-place-the-camera-mount-where-it-will-give-a-good-camera-angle" aria-label="Permalink to "Step 3: Place the camera mount where it will give a good camera angle""></a></h2><p>The "Ideal" location is a place that gives a good view of the pupil when looking to all extremes, the lower corners do a good job at getting there, or nearly there.</p><p>It is recommended to place the camera as close as possible to the headset's lens to maximize the view of the eye. I recommend looking at other headset mounts for <a href="https://github.com/EyeTrackVR/EyeTrackVR-Hardware/tree/main/3d_Printed_Mounts" target="_blank" rel="noreferrer">inspiration.</a></p><h2 id="step-4-mount-your-leds" tabindex="-1">Step 4: Mount your LEDs <a class="header-anchor" href="#step-4-mount-your-leds" aria-label="Permalink to "Step 4: Mount your LEDs""></a></h2><p>You can either add parts to your mount for holding the LED boards or just glue them on. It's up to you and what works best for you, experiment!</p><h2 id="step-5-test-everything" tabindex="-1">Step 5: Test everything <a class="header-anchor" href="#step-5-test-everything" aria-label="Permalink to "Step 5: Test everything""></a></h2><p>It is unlikely you will get a perfect mount on the first try. Print, test, adjust, and repeat until you have a satisfactory mount. Good luck!</p><h2 id="step-6-get-your-mounts-listed" tabindex="-1">Step 6: Get your mounts listed <a class="header-anchor" href="#step-6-get-your-mounts-listed" aria-label="Permalink to "Step 6: Get your mounts listed""></a></h2><p>Send me the mount to be added to the docs here! You can upload it to Thingiverse or similar services, or just send me the .STLs via discord <code>(Prohurtz#0001)</code></p>',18)]))}const p=t(n,[["render",i]]);export{m as __pageData,p as default};
|
||||
import{_ as t,o as a,c as o,O as r}from"./chunks/framework.a4daa24a.js";const m=JSON.parse('{"title":"Creating Your Own Mount","description":"","frontmatter":{},"headers":[],"relativePath":"how_to_build/creating_your_own_mount.md","filePath":"how_to_build/creating_your_own_mount.md","lastUpdated":1700510338000}'),n={name:"how_to_build/creating_your_own_mount.md"};function i(s,e,h,u,l,d){return a(),o("div",null,e[0]||(e[0]=[r('<h1 class="text-[var(--font-accent)]" id="creating-your-own-mount" tabindex="-1">Creating Your Own Mount <a class="header-anchor" href="#creating-your-own-mount" aria-label="Permalink to "Creating Your Own Mount {.text-[var(--font-accent)]}""></a></h1><h2 id="this-page-will-include-a-basic-rundown-on-how-to-create-your-own-camera-mount-for-a-headset-that-may-not-have-any-existing-community-mounts" tabindex="-1">This page will include a basic rundown on how to create your own camera mount for a headset that may not have any existing community mounts <a class="header-anchor" href="#this-page-will-include-a-basic-rundown-on-how-to-create-your-own-camera-mount-for-a-headset-that-may-not-have-any-existing-community-mounts" aria-label="Permalink to "This page will include a basic rundown on how to create your own camera mount for a headset that may not have any existing community mounts""></a></h2><p>So, you have a headset that does not have any mounts or none that work well for you. Here I will show some simple steps to get some form of a mount working.</p><h2 id="step-1-find-a-way-to-mount-to-your-headset-s-lens" tabindex="-1">Step 1: Find a way to mount to your headset's lens <a class="header-anchor" href="#step-1-find-a-way-to-mount-to-your-headset-s-lens" aria-label="Permalink to "Step 1: Find a way to mount to your headset's lens""></a></h2><p>The easiest way to get started is to find a lens protector for your headset. You can visit a website like <a href="https://www.thingiverse.com/" target="_blank" rel="noreferrer">Thingiverse</a> or do a search for "3d printed lens protector for {your headset here}"</p><p>Example: Here is a lens protector for the Quest 1/2 and Rift S <a href="https://www.thingiverse.com/thing:3653631" target="_blank" rel="noreferrer">https://www.thingiverse.com/thing:3653631</a></p><h2 id="step-2-find-a-camera-mount" tabindex="-1">Step 2: Find a camera mount <a class="header-anchor" href="#step-2-find-a-camera-mount" aria-label="Permalink to "Step 2: Find a camera mount""></a></h2><p>Now, you need a way to attach the camera. We have a basic design created by qdot, based on his mount on the hardware GitHub <a href="https://github.com/EyeTrackVR/EyeTrackVR-Hardware/blob/main/3d_Printed_Mounts/Basic_Mount_Components/basic_ETVR_camera_mount.stl" target="_blank" rel="noreferrer">here</a></p><p>Alternatively, you can create your own mount if you have the skills.</p><h2 id="step-3-place-the-camera-mount-where-it-will-give-a-good-camera-angle" tabindex="-1">Step 3: Place the camera mount where it will give a good camera angle <a class="header-anchor" href="#step-3-place-the-camera-mount-where-it-will-give-a-good-camera-angle" aria-label="Permalink to "Step 3: Place the camera mount where it will give a good camera angle""></a></h2><p>The "Ideal" location is a place that gives a good view of the pupil when looking to all extremes, the lower corners do a good job at getting there, or nearly there.</p><p>It is recommended to place the camera as close as possible to the headset's lens to maximize the view of the eye. I recommend looking at other headset mounts for <a href="https://github.com/EyeTrackVR/EyeTrackVR-Hardware/tree/main/3d_Printed_Mounts" target="_blank" rel="noreferrer">inspiration.</a></p><h2 id="step-4-mount-your-leds" tabindex="-1">Step 4: Mount your LEDs <a class="header-anchor" href="#step-4-mount-your-leds" aria-label="Permalink to "Step 4: Mount your LEDs""></a></h2><p>You can either add parts to your mount for holding the LED boards or just glue them on. It's up to you and what works best for you, experiment!</p><h2 id="step-5-test-everything" tabindex="-1">Step 5: Test everything <a class="header-anchor" href="#step-5-test-everything" aria-label="Permalink to "Step 5: Test everything""></a></h2><p>It is unlikely you will get a perfect mount on the first try. Print, test, adjust, and repeat until you have a satisfactory mount. Good luck!</p><h2 id="step-6-get-your-mounts-listed" tabindex="-1">Step 6: Get your mounts listed <a class="header-anchor" href="#step-6-get-your-mounts-listed" aria-label="Permalink to "Step 6: Get your mounts listed""></a></h2><p>Send me the mount to be added to the docs here! You can upload it to Thingiverse or similar services, or just send me the .STLs via discord <code>(Prohurtz#0001)</code></p>',18)]))}const p=t(n,[["render",i]]);export{m as __pageData,p as default};
|
||||
@ -1 +1 @@
|
||||
import{_ as t,o as a,c as o,O as r}from"./chunks/framework.79850ceb.js";const m=JSON.parse('{"title":"Creating Your Own Mount","description":"","frontmatter":{},"headers":[],"relativePath":"how_to_build/creating_your_own_mount.md","filePath":"how_to_build/creating_your_own_mount.md","lastUpdated":1700510338000}'),n={name:"how_to_build/creating_your_own_mount.md"};function i(s,e,h,u,l,d){return a(),o("div",null,e[0]||(e[0]=[r('<h1 class="text-[var(--font-accent)]" id="creating-your-own-mount" tabindex="-1">Creating Your Own Mount <a class="header-anchor" href="#creating-your-own-mount" aria-label="Permalink to "Creating Your Own Mount {.text-[var(--font-accent)]}""></a></h1><h2 id="this-page-will-include-a-basic-rundown-on-how-to-create-your-own-camera-mount-for-a-headset-that-may-not-have-any-existing-community-mounts" tabindex="-1">This page will include a basic rundown on how to create your own camera mount for a headset that may not have any existing community mounts <a class="header-anchor" href="#this-page-will-include-a-basic-rundown-on-how-to-create-your-own-camera-mount-for-a-headset-that-may-not-have-any-existing-community-mounts" aria-label="Permalink to "This page will include a basic rundown on how to create your own camera mount for a headset that may not have any existing community mounts""></a></h2><p>So, you have a headset that does not have any mounts or none that work well for you. Here I will show some simple steps to get some form of a mount working.</p><h2 id="step-1-find-a-way-to-mount-to-your-headset-s-lens" tabindex="-1">Step 1: Find a way to mount to your headset's lens <a class="header-anchor" href="#step-1-find-a-way-to-mount-to-your-headset-s-lens" aria-label="Permalink to "Step 1: Find a way to mount to your headset's lens""></a></h2><p>The easiest way to get started is to find a lens protector for your headset. You can visit a website like <a href="https://www.thingiverse.com/" target="_blank" rel="noreferrer">Thingiverse</a> or do a search for "3d printed lens protector for {your headset here}"</p><p>Example: Here is a lens protector for the Quest 1/2 and Rift S <a href="https://www.thingiverse.com/thing:3653631" target="_blank" rel="noreferrer">https://www.thingiverse.com/thing:3653631</a></p><h2 id="step-2-find-a-camera-mount" tabindex="-1">Step 2: Find a camera mount <a class="header-anchor" href="#step-2-find-a-camera-mount" aria-label="Permalink to "Step 2: Find a camera mount""></a></h2><p>Now, you need a way to attach the camera. We have a basic design created by qdot, based on his mount on the hardware GitHub <a href="https://github.com/EyeTrackVR/EyeTrackVR-Hardware/blob/main/3d_Printed_Mounts/Basic_Mount_Components/basic_ETVR_camera_mount.stl" target="_blank" rel="noreferrer">here</a></p><p>Alternatively, you can create your own mount if you have the skills.</p><h2 id="step-3-place-the-camera-mount-where-it-will-give-a-good-camera-angle" tabindex="-1">Step 3: Place the camera mount where it will give a good camera angle <a class="header-anchor" href="#step-3-place-the-camera-mount-where-it-will-give-a-good-camera-angle" aria-label="Permalink to "Step 3: Place the camera mount where it will give a good camera angle""></a></h2><p>The "Ideal" location is a place that gives a good view of the pupil when looking to all extremes, the lower corners do a good job at getting there, or nearly there.</p><p>It is recommended to place the camera as close as possible to the headset's lens to maximize the view of the eye. I recommend looking at other headset mounts for <a href="https://github.com/EyeTrackVR/EyeTrackVR-Hardware/tree/main/3d_Printed_Mounts" target="_blank" rel="noreferrer">inspiration.</a></p><h2 id="step-4-mount-your-leds" tabindex="-1">Step 4: Mount your LEDs <a class="header-anchor" href="#step-4-mount-your-leds" aria-label="Permalink to "Step 4: Mount your LEDs""></a></h2><p>You can either add parts to your mount for holding the LED boards or just glue them on. It's up to you and what works best for you, experiment!</p><h2 id="step-5-test-everything" tabindex="-1">Step 5: Test everything <a class="header-anchor" href="#step-5-test-everything" aria-label="Permalink to "Step 5: Test everything""></a></h2><p>It is unlikely you will get a perfect mount on the first try. Print, test, adjust, and repeat until you have a satisfactory mount. Good luck!</p><h2 id="step-6-get-your-mounts-listed" tabindex="-1">Step 6: Get your mounts listed <a class="header-anchor" href="#step-6-get-your-mounts-listed" aria-label="Permalink to "Step 6: Get your mounts listed""></a></h2><p>Send me the mount to be added to the docs here! You can upload it to Thingiverse or similar services, or just send me the .STLs via discord <code>(Prohurtz#0001)</code></p>',18)]))}const p=t(n,[["render",i]]);export{m as __pageData,p as default};
|
||||
import{_ as t,o as a,c as o,O as r}from"./chunks/framework.a4daa24a.js";const m=JSON.parse('{"title":"Creating Your Own Mount","description":"","frontmatter":{},"headers":[],"relativePath":"how_to_build/creating_your_own_mount.md","filePath":"how_to_build/creating_your_own_mount.md","lastUpdated":1700510338000}'),n={name:"how_to_build/creating_your_own_mount.md"};function i(s,e,h,u,l,d){return a(),o("div",null,e[0]||(e[0]=[r('<h1 class="text-[var(--font-accent)]" id="creating-your-own-mount" tabindex="-1">Creating Your Own Mount <a class="header-anchor" href="#creating-your-own-mount" aria-label="Permalink to "Creating Your Own Mount {.text-[var(--font-accent)]}""></a></h1><h2 id="this-page-will-include-a-basic-rundown-on-how-to-create-your-own-camera-mount-for-a-headset-that-may-not-have-any-existing-community-mounts" tabindex="-1">This page will include a basic rundown on how to create your own camera mount for a headset that may not have any existing community mounts <a class="header-anchor" href="#this-page-will-include-a-basic-rundown-on-how-to-create-your-own-camera-mount-for-a-headset-that-may-not-have-any-existing-community-mounts" aria-label="Permalink to "This page will include a basic rundown on how to create your own camera mount for a headset that may not have any existing community mounts""></a></h2><p>So, you have a headset that does not have any mounts or none that work well for you. Here I will show some simple steps to get some form of a mount working.</p><h2 id="step-1-find-a-way-to-mount-to-your-headset-s-lens" tabindex="-1">Step 1: Find a way to mount to your headset's lens <a class="header-anchor" href="#step-1-find-a-way-to-mount-to-your-headset-s-lens" aria-label="Permalink to "Step 1: Find a way to mount to your headset's lens""></a></h2><p>The easiest way to get started is to find a lens protector for your headset. You can visit a website like <a href="https://www.thingiverse.com/" target="_blank" rel="noreferrer">Thingiverse</a> or do a search for "3d printed lens protector for {your headset here}"</p><p>Example: Here is a lens protector for the Quest 1/2 and Rift S <a href="https://www.thingiverse.com/thing:3653631" target="_blank" rel="noreferrer">https://www.thingiverse.com/thing:3653631</a></p><h2 id="step-2-find-a-camera-mount" tabindex="-1">Step 2: Find a camera mount <a class="header-anchor" href="#step-2-find-a-camera-mount" aria-label="Permalink to "Step 2: Find a camera mount""></a></h2><p>Now, you need a way to attach the camera. We have a basic design created by qdot, based on his mount on the hardware GitHub <a href="https://github.com/EyeTrackVR/EyeTrackVR-Hardware/blob/main/3d_Printed_Mounts/Basic_Mount_Components/basic_ETVR_camera_mount.stl" target="_blank" rel="noreferrer">here</a></p><p>Alternatively, you can create your own mount if you have the skills.</p><h2 id="step-3-place-the-camera-mount-where-it-will-give-a-good-camera-angle" tabindex="-1">Step 3: Place the camera mount where it will give a good camera angle <a class="header-anchor" href="#step-3-place-the-camera-mount-where-it-will-give-a-good-camera-angle" aria-label="Permalink to "Step 3: Place the camera mount where it will give a good camera angle""></a></h2><p>The "Ideal" location is a place that gives a good view of the pupil when looking to all extremes, the lower corners do a good job at getting there, or nearly there.</p><p>It is recommended to place the camera as close as possible to the headset's lens to maximize the view of the eye. I recommend looking at other headset mounts for <a href="https://github.com/EyeTrackVR/EyeTrackVR-Hardware/tree/main/3d_Printed_Mounts" target="_blank" rel="noreferrer">inspiration.</a></p><h2 id="step-4-mount-your-leds" tabindex="-1">Step 4: Mount your LEDs <a class="header-anchor" href="#step-4-mount-your-leds" aria-label="Permalink to "Step 4: Mount your LEDs""></a></h2><p>You can either add parts to your mount for holding the LED boards or just glue them on. It's up to you and what works best for you, experiment!</p><h2 id="step-5-test-everything" tabindex="-1">Step 5: Test everything <a class="header-anchor" href="#step-5-test-everything" aria-label="Permalink to "Step 5: Test everything""></a></h2><p>It is unlikely you will get a perfect mount on the first try. Print, test, adjust, and repeat until you have a satisfactory mount. Good luck!</p><h2 id="step-6-get-your-mounts-listed" tabindex="-1">Step 6: Get your mounts listed <a class="header-anchor" href="#step-6-get-your-mounts-listed" aria-label="Permalink to "Step 6: Get your mounts listed""></a></h2><p>Send me the mount to be added to the docs here! You can upload it to Thingiverse or similar services, or just send me the .STLs via discord <code>(Prohurtz#0001)</code></p>',18)]))}const p=t(n,[["render",i]]);export{m as __pageData,p as default};
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
1
assets/how_to_build_full_build.md.4bd1a259.js
Normal file
1
assets/how_to_build_full_build.md.4bd1a259.js
Normal file
File diff suppressed because one or more lines are too long
1
assets/how_to_build_full_build.md.4bd1a259.lean.js
Normal file
1
assets/how_to_build_full_build.md.4bd1a259.lean.js
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
1
assets/how_to_build_part_list.md.233ec3f6.js
Normal file
1
assets/how_to_build_part_list.md.233ec3f6.js
Normal file
File diff suppressed because one or more lines are too long
1
assets/how_to_build_part_list.md.233ec3f6.lean.js
Normal file
1
assets/how_to_build_part_list.md.233ec3f6.lean.js
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
1
assets/how_to_build_parts_list.md.72ebb13f.js
Normal file
1
assets/how_to_build_parts_list.md.72ebb13f.js
Normal file
File diff suppressed because one or more lines are too long
1
assets/how_to_build_parts_list.md.72ebb13f.lean.js
Normal file
1
assets/how_to_build_parts_list.md.72ebb13f.lean.js
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
1
assets/how_to_build_preparing_cameras.md.d2e98268.js
Normal file
1
assets/how_to_build_preparing_cameras.md.d2e98268.js
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
import{_ as e,o as t,c as a}from"./chunks/framework.79850ceb.js";const m=JSON.parse('{"title":"","description":"","frontmatter":{"layout":"home","head":[["meta",{"name":"keywords","content":"EyeTrackVR (ETVR) VR Virtual Reality Eye Tracking VRChat Social VR Games VR Game VR Games VRChat Avatar VRChat Avatars VRChat Eye Tracking VRChat Eye Tracking Avatar VRChat Eye Tracking Avatars"}]],"hero":{"name":"EyeTrackVR Docs","text":"Open-source and affordable VR eye tracking.","image":{"src":"/logo_light.png","alt":"ETVR logo"},"tagline":"For Social VR Games via OSC and UDP protocol.","actions":[{"theme":"brand","text":"Get Started","link":"/getting_started/intro"},{"theme":"alt","text":"View on GitHub","link":"https://github.com/EyeTrackVR/EyeTrackVR"}]},"features":[{"icon":"⚡️","title":"Open Source","details":"fully open source and free to use."},{"icon":"🎉","title":"Community Driven","details":"built by you for you."},{"icon":"💰","title":"Affordable","details":"affordable and easy to use."},{"icon":"🎮","title":"Nearly All VR Headsets","details":"EyeTrackVR works with nearly all VR headsets."},{"icon":"🔨","title":"Completely DIY","details":"completely DIY and easy to build."},{"icon":"🌐","title":"Open Platform","details":"open platform and works with any Social VR game."},{"icon":"🔏","title":"Privacy Focused","details":"privacy focused and does not collect any data, hosted on your own PC."},{"icon":"📡","title":"Open Protocol","details":"EyeTrackVR uses the Open Sound Control (OSC) protocol."}]},"headers":[],"relativePath":"index.md","filePath":"index.md","lastUpdated":1719688072000}'),o={name:"index.md"};function n(i,r,l,c,s,d){return t(),a("div")}const p=e(o,[["render",n]]);export{m as __pageData,p as default};
|
||||
import{_ as e,o as t,c as a}from"./chunks/framework.a4daa24a.js";const m=JSON.parse('{"title":"","description":"","frontmatter":{"layout":"home","head":[["meta",{"name":"keywords","content":"EyeTrackVR (ETVR) VR Virtual Reality Eye Tracking VRChat Social VR Games VR Game VR Games VRChat Avatar VRChat Avatars VRChat Eye Tracking VRChat Eye Tracking Avatar VRChat Eye Tracking Avatars"}]],"hero":{"name":"EyeTrackVR Docs","text":"Open-source and affordable VR eye tracking.","image":{"src":"/logo_light.png","alt":"ETVR logo"},"tagline":"For Social VR Games via OSC and UDP protocol.","actions":[{"theme":"brand","text":"Get Started","link":"/getting_started/intro"},{"theme":"alt","text":"View on GitHub","link":"https://github.com/EyeTrackVR/EyeTrackVR"}]},"features":[{"icon":"⚡️","title":"Open Source","details":"fully open source and free to use."},{"icon":"🎉","title":"Community Driven","details":"built by you for you."},{"icon":"💰","title":"Affordable","details":"affordable and easy to use."},{"icon":"🎮","title":"Nearly All VR Headsets","details":"EyeTrackVR works with nearly all VR headsets."},{"icon":"🔨","title":"Completely DIY","details":"completely DIY and easy to build."},{"icon":"🌐","title":"Open Platform","details":"open platform and works with any Social VR game."},{"icon":"🔏","title":"Privacy Focused","details":"privacy focused and does not collect any data, hosted on your own PC."},{"icon":"📡","title":"Open Protocol","details":"EyeTrackVR uses the Open Sound Control (OSC) protocol."}]},"headers":[],"relativePath":"index.md","filePath":"index.md","lastUpdated":1719688072000}'),o={name:"index.md"};function n(i,r,l,c,s,d){return t(),a("div")}const p=e(o,[["render",n]]);export{m as __pageData,p as default};
|
||||
@ -1 +1 @@
|
||||
import{_ as e,o as t,c as a}from"./chunks/framework.79850ceb.js";const m=JSON.parse('{"title":"","description":"","frontmatter":{"layout":"home","head":[["meta",{"name":"keywords","content":"EyeTrackVR (ETVR) VR Virtual Reality Eye Tracking VRChat Social VR Games VR Game VR Games VRChat Avatar VRChat Avatars VRChat Eye Tracking VRChat Eye Tracking Avatar VRChat Eye Tracking Avatars"}]],"hero":{"name":"EyeTrackVR Docs","text":"Open-source and affordable VR eye tracking.","image":{"src":"/logo_light.png","alt":"ETVR logo"},"tagline":"For Social VR Games via OSC and UDP protocol.","actions":[{"theme":"brand","text":"Get Started","link":"/getting_started/intro"},{"theme":"alt","text":"View on GitHub","link":"https://github.com/EyeTrackVR/EyeTrackVR"}]},"features":[{"icon":"⚡️","title":"Open Source","details":"fully open source and free to use."},{"icon":"🎉","title":"Community Driven","details":"built by you for you."},{"icon":"💰","title":"Affordable","details":"affordable and easy to use."},{"icon":"🎮","title":"Nearly All VR Headsets","details":"EyeTrackVR works with nearly all VR headsets."},{"icon":"🔨","title":"Completely DIY","details":"completely DIY and easy to build."},{"icon":"🌐","title":"Open Platform","details":"open platform and works with any Social VR game."},{"icon":"🔏","title":"Privacy Focused","details":"privacy focused and does not collect any data, hosted on your own PC."},{"icon":"📡","title":"Open Protocol","details":"EyeTrackVR uses the Open Sound Control (OSC) protocol."}]},"headers":[],"relativePath":"index.md","filePath":"index.md","lastUpdated":1719688072000}'),o={name:"index.md"};function n(i,r,l,c,s,d){return t(),a("div")}const p=e(o,[["render",n]]);export{m as __pageData,p as default};
|
||||
import{_ as e,o as t,c as a}from"./chunks/framework.a4daa24a.js";const m=JSON.parse('{"title":"","description":"","frontmatter":{"layout":"home","head":[["meta",{"name":"keywords","content":"EyeTrackVR (ETVR) VR Virtual Reality Eye Tracking VRChat Social VR Games VR Game VR Games VRChat Avatar VRChat Avatars VRChat Eye Tracking VRChat Eye Tracking Avatar VRChat Eye Tracking Avatars"}]],"hero":{"name":"EyeTrackVR Docs","text":"Open-source and affordable VR eye tracking.","image":{"src":"/logo_light.png","alt":"ETVR logo"},"tagline":"For Social VR Games via OSC and UDP protocol.","actions":[{"theme":"brand","text":"Get Started","link":"/getting_started/intro"},{"theme":"alt","text":"View on GitHub","link":"https://github.com/EyeTrackVR/EyeTrackVR"}]},"features":[{"icon":"⚡️","title":"Open Source","details":"fully open source and free to use."},{"icon":"🎉","title":"Community Driven","details":"built by you for you."},{"icon":"💰","title":"Affordable","details":"affordable and easy to use."},{"icon":"🎮","title":"Nearly All VR Headsets","details":"EyeTrackVR works with nearly all VR headsets."},{"icon":"🔨","title":"Completely DIY","details":"completely DIY and easy to build."},{"icon":"🌐","title":"Open Platform","details":"open platform and works with any Social VR game."},{"icon":"🔏","title":"Privacy Focused","details":"privacy focused and does not collect any data, hosted on your own PC."},{"icon":"📡","title":"Open Protocol","details":"EyeTrackVR uses the Open Sound Control (OSC) protocol."}]},"headers":[],"relativePath":"index.md","filePath":"index.md","lastUpdated":1719688072000}'),o={name:"index.md"};function n(i,r,l,c,s,d){return t(),a("div")}const p=e(o,[["render",n]]);export{m as __pageData,p as default};
|
||||
@ -1 +1 @@
|
||||
import{A as d}from"./chunks/Accordion.31e6a419.js";import{o as a,c as n,F as u,B as h,b as c,w as r,k as e,t as i,e as p,l as f,a as m,E as y}from"./chunks/framework.79850ceb.js";const _={faq:[{question:"What is the goal of this project?",answer:"To provide an open source, affordable VR eye tracker for Social games like VRChat as well as provide an open eye tracking platform.",hyper_link:"",link_description:""},{question:"What headsets will be supported?",answer:"Any headset that the hardware can fit in with community mounts or a mount you design.",hyper_link:"",link_description:""},{question:"How will this work?",answer:"Currently, a camera is mounted inside the headset for each eye. The camera streams through wifi to a PC client which processes and sends eye tracking data to an OSC endpoint ex VRChat.",hyper_link:"",link_description:""},{question:"What features will be supported?",answer:"The goal is eye tracking with eye openness, and some form of pupil dilation. A far away aspiration of this project is some form of weak foveated rendering because it's cool and any small performance increase in VR is welcome.",hyper_link:"",link_description:""},{question:"When will this be completed?",answer:"When it's done 😉 I have a semi busy life so development may slow and speed up inconsistently.",hyper_link:"",link_description:""},{question:"Will IR damage my eyes?",answer:"This project has safety in mind. If you do all of the safety measures that we put into place and visually test the amount of IR light you will be fine. Please note we have not finished development of all safety stuff so be careful.",hyper_link:"https://dammedia.osram.info/media/bin/osram-dam-2496608/AN002_Details%20on%20photobiological%20safety%20of%20LED%20light%20sources.pdf",link_description:" here is a pdf with safety information"},{question:"How expensive will this be?",answer:"My goal is to keep it as cheap as possible with around $75 as the absolute max, with current setups being around $30-80. aaaa",hyper_link:"",link_description:""},{question:"How do I set up my avatar?",answer:"Check out the VR Chat face tracking wiki on our github. Keep in mind that we currently only support float parameters. ",hyper_link:"",link_description:""},{question:"What hardware does this use / How do I build?",answer:"Checkout our build guides on this site for specific information, hardware may change and evolve over time.",hyper_link:"",link_description:""},{question:"Where are the docs?",answer:"All of our documentation is located on this website, all future documentation will be found here as well.",hyper_link:"",link_description:""}]},k={class:"font-semibold text-xl"},w={class:""},q={style:{"list-style":"none"}},g={key:0},b=["href"],v={__name:"FAQ",setup(l){return(o,t)=>(a(),n("div",null,[(a(!0),n(u,null,h(f(_).faq,s=>(a(),c(d,{class:"mb-4"},{title:r(()=>[e("span",k,i(s.question),1)]),content:r(()=>[e("div",null,[e("span",w,[e("blockquote",null,[e("ul",q,[e("li",null,i(s.answer),1),s.hyper_link!=o.NULL&&s.hyper_link!=""?(a(),n("p",g,[e("a",{href:s.hyper_link,target:"_blank"},i(s.link_description),9,b)])):p("",!0)])])])])]),_:2},1024))),256))]))}},V=JSON.parse('{"title":"Frequently Asked Questions","description":"","frontmatter":{},"headers":[],"relativePath":"misc/faq.md","filePath":"misc/faq.md","lastUpdated":1676223729000}'),x={name:"misc/faq.md"},W=Object.assign(x,{setup(l){return(o,t)=>(a(),n("div",null,[t[0]||(t[0]=e("h1",{class:"text-[var(--font-accent)]",id:"frequently-asked-questions",tabindex:"-1"},[m("Frequently Asked Questions "),e("a",{class:"header-anchor",href:"#frequently-asked-questions","aria-label":'Permalink to "Frequently Asked Questions {.text-[var(--font-accent)]}"'},"")],-1)),t[1]||(t[1]=e("br",null,null,-1)),t[2]||(t[2]=e("hr",null,null,-1)),y(v)]))}});export{V as __pageData,W as default};
|
||||
import{A as d}from"./chunks/Accordion.6b599df0.js";import{o as a,c as n,F as u,B as h,b as c,w as r,k as e,t as i,e as p,l as f,a as m,E as y}from"./chunks/framework.a4daa24a.js";const _={faq:[{question:"What is the goal of this project?",answer:"To provide an open source, affordable VR eye tracker for Social games like VRChat as well as provide an open eye tracking platform.",hyper_link:"",link_description:""},{question:"What headsets will be supported?",answer:"Any headset that the hardware can fit in with community mounts or a mount you design.",hyper_link:"",link_description:""},{question:"How will this work?",answer:"Currently, a camera is mounted inside the headset for each eye. The camera streams through wifi to a PC client which processes and sends eye tracking data to an OSC endpoint ex VRChat.",hyper_link:"",link_description:""},{question:"What features will be supported?",answer:"The goal is eye tracking with eye openness, and some form of pupil dilation. A far away aspiration of this project is some form of weak foveated rendering because it's cool and any small performance increase in VR is welcome.",hyper_link:"",link_description:""},{question:"When will this be completed?",answer:"When it's done 😉 I have a semi busy life so development may slow and speed up inconsistently.",hyper_link:"",link_description:""},{question:"Will IR damage my eyes?",answer:"This project has safety in mind. If you do all of the safety measures that we put into place and visually test the amount of IR light you will be fine. Please note we have not finished development of all safety stuff so be careful.",hyper_link:"https://dammedia.osram.info/media/bin/osram-dam-2496608/AN002_Details%20on%20photobiological%20safety%20of%20LED%20light%20sources.pdf",link_description:" here is a pdf with safety information"},{question:"How expensive will this be?",answer:"My goal is to keep it as cheap as possible with around $75 as the absolute max, with current setups being around $30-80. aaaa",hyper_link:"",link_description:""},{question:"How do I set up my avatar?",answer:"Check out the VR Chat face tracking wiki on our github. Keep in mind that we currently only support float parameters. ",hyper_link:"",link_description:""},{question:"What hardware does this use / How do I build?",answer:"Checkout our build guides on this site for specific information, hardware may change and evolve over time.",hyper_link:"",link_description:""},{question:"Where are the docs?",answer:"All of our documentation is located on this website, all future documentation will be found here as well.",hyper_link:"",link_description:""}]},k={class:"font-semibold text-xl"},w={class:""},q={style:{"list-style":"none"}},g={key:0},b=["href"],v={__name:"FAQ",setup(l){return(o,t)=>(a(),n("div",null,[(a(!0),n(u,null,h(f(_).faq,s=>(a(),c(d,{class:"mb-4"},{title:r(()=>[e("span",k,i(s.question),1)]),content:r(()=>[e("div",null,[e("span",w,[e("blockquote",null,[e("ul",q,[e("li",null,i(s.answer),1),s.hyper_link!=o.NULL&&s.hyper_link!=""?(a(),n("p",g,[e("a",{href:s.hyper_link,target:"_blank"},i(s.link_description),9,b)])):p("",!0)])])])])]),_:2},1024))),256))]))}},V=JSON.parse('{"title":"Frequently Asked Questions","description":"","frontmatter":{},"headers":[],"relativePath":"misc/faq.md","filePath":"misc/faq.md","lastUpdated":1676223729000}'),x={name:"misc/faq.md"},W=Object.assign(x,{setup(l){return(o,t)=>(a(),n("div",null,[t[0]||(t[0]=e("h1",{class:"text-[var(--font-accent)]",id:"frequently-asked-questions",tabindex:"-1"},[m("Frequently Asked Questions "),e("a",{class:"header-anchor",href:"#frequently-asked-questions","aria-label":'Permalink to "Frequently Asked Questions {.text-[var(--font-accent)]}"'},"")],-1)),t[1]||(t[1]=e("br",null,null,-1)),t[2]||(t[2]=e("hr",null,null,-1)),y(v)]))}});export{V as __pageData,W as default};
|
||||
@ -1 +1 @@
|
||||
import{A as d}from"./chunks/Accordion.31e6a419.js";import{o as a,c as n,F as u,B as h,b as c,w as r,k as e,t as i,e as p,l as f,a as m,E as y}from"./chunks/framework.79850ceb.js";const _={faq:[{question:"What is the goal of this project?",answer:"To provide an open source, affordable VR eye tracker for Social games like VRChat as well as provide an open eye tracking platform.",hyper_link:"",link_description:""},{question:"What headsets will be supported?",answer:"Any headset that the hardware can fit in with community mounts or a mount you design.",hyper_link:"",link_description:""},{question:"How will this work?",answer:"Currently, a camera is mounted inside the headset for each eye. The camera streams through wifi to a PC client which processes and sends eye tracking data to an OSC endpoint ex VRChat.",hyper_link:"",link_description:""},{question:"What features will be supported?",answer:"The goal is eye tracking with eye openness, and some form of pupil dilation. A far away aspiration of this project is some form of weak foveated rendering because it's cool and any small performance increase in VR is welcome.",hyper_link:"",link_description:""},{question:"When will this be completed?",answer:"When it's done 😉 I have a semi busy life so development may slow and speed up inconsistently.",hyper_link:"",link_description:""},{question:"Will IR damage my eyes?",answer:"This project has safety in mind. If you do all of the safety measures that we put into place and visually test the amount of IR light you will be fine. Please note we have not finished development of all safety stuff so be careful.",hyper_link:"https://dammedia.osram.info/media/bin/osram-dam-2496608/AN002_Details%20on%20photobiological%20safety%20of%20LED%20light%20sources.pdf",link_description:" here is a pdf with safety information"},{question:"How expensive will this be?",answer:"My goal is to keep it as cheap as possible with around $75 as the absolute max, with current setups being around $30-80. aaaa",hyper_link:"",link_description:""},{question:"How do I set up my avatar?",answer:"Check out the VR Chat face tracking wiki on our github. Keep in mind that we currently only support float parameters. ",hyper_link:"",link_description:""},{question:"What hardware does this use / How do I build?",answer:"Checkout our build guides on this site for specific information, hardware may change and evolve over time.",hyper_link:"",link_description:""},{question:"Where are the docs?",answer:"All of our documentation is located on this website, all future documentation will be found here as well.",hyper_link:"",link_description:""}]},k={class:"font-semibold text-xl"},w={class:""},q={style:{"list-style":"none"}},g={key:0},b=["href"],v={__name:"FAQ",setup(l){return(o,t)=>(a(),n("div",null,[(a(!0),n(u,null,h(f(_).faq,s=>(a(),c(d,{class:"mb-4"},{title:r(()=>[e("span",k,i(s.question),1)]),content:r(()=>[e("div",null,[e("span",w,[e("blockquote",null,[e("ul",q,[e("li",null,i(s.answer),1),s.hyper_link!=o.NULL&&s.hyper_link!=""?(a(),n("p",g,[e("a",{href:s.hyper_link,target:"_blank"},i(s.link_description),9,b)])):p("",!0)])])])])]),_:2},1024))),256))]))}},V=JSON.parse('{"title":"Frequently Asked Questions","description":"","frontmatter":{},"headers":[],"relativePath":"misc/faq.md","filePath":"misc/faq.md","lastUpdated":1676223729000}'),x={name:"misc/faq.md"},W=Object.assign(x,{setup(l){return(o,t)=>(a(),n("div",null,[t[0]||(t[0]=e("h1",{class:"text-[var(--font-accent)]",id:"frequently-asked-questions",tabindex:"-1"},[m("Frequently Asked Questions "),e("a",{class:"header-anchor",href:"#frequently-asked-questions","aria-label":'Permalink to "Frequently Asked Questions {.text-[var(--font-accent)]}"'},"")],-1)),t[1]||(t[1]=e("br",null,null,-1)),t[2]||(t[2]=e("hr",null,null,-1)),y(v)]))}});export{V as __pageData,W as default};
|
||||
import{A as d}from"./chunks/Accordion.6b599df0.js";import{o as a,c as n,F as u,B as h,b as c,w as r,k as e,t as i,e as p,l as f,a as m,E as y}from"./chunks/framework.a4daa24a.js";const _={faq:[{question:"What is the goal of this project?",answer:"To provide an open source, affordable VR eye tracker for Social games like VRChat as well as provide an open eye tracking platform.",hyper_link:"",link_description:""},{question:"What headsets will be supported?",answer:"Any headset that the hardware can fit in with community mounts or a mount you design.",hyper_link:"",link_description:""},{question:"How will this work?",answer:"Currently, a camera is mounted inside the headset for each eye. The camera streams through wifi to a PC client which processes and sends eye tracking data to an OSC endpoint ex VRChat.",hyper_link:"",link_description:""},{question:"What features will be supported?",answer:"The goal is eye tracking with eye openness, and some form of pupil dilation. A far away aspiration of this project is some form of weak foveated rendering because it's cool and any small performance increase in VR is welcome.",hyper_link:"",link_description:""},{question:"When will this be completed?",answer:"When it's done 😉 I have a semi busy life so development may slow and speed up inconsistently.",hyper_link:"",link_description:""},{question:"Will IR damage my eyes?",answer:"This project has safety in mind. If you do all of the safety measures that we put into place and visually test the amount of IR light you will be fine. Please note we have not finished development of all safety stuff so be careful.",hyper_link:"https://dammedia.osram.info/media/bin/osram-dam-2496608/AN002_Details%20on%20photobiological%20safety%20of%20LED%20light%20sources.pdf",link_description:" here is a pdf with safety information"},{question:"How expensive will this be?",answer:"My goal is to keep it as cheap as possible with around $75 as the absolute max, with current setups being around $30-80. aaaa",hyper_link:"",link_description:""},{question:"How do I set up my avatar?",answer:"Check out the VR Chat face tracking wiki on our github. Keep in mind that we currently only support float parameters. ",hyper_link:"",link_description:""},{question:"What hardware does this use / How do I build?",answer:"Checkout our build guides on this site for specific information, hardware may change and evolve over time.",hyper_link:"",link_description:""},{question:"Where are the docs?",answer:"All of our documentation is located on this website, all future documentation will be found here as well.",hyper_link:"",link_description:""}]},k={class:"font-semibold text-xl"},w={class:""},q={style:{"list-style":"none"}},g={key:0},b=["href"],v={__name:"FAQ",setup(l){return(o,t)=>(a(),n("div",null,[(a(!0),n(u,null,h(f(_).faq,s=>(a(),c(d,{class:"mb-4"},{title:r(()=>[e("span",k,i(s.question),1)]),content:r(()=>[e("div",null,[e("span",w,[e("blockquote",null,[e("ul",q,[e("li",null,i(s.answer),1),s.hyper_link!=o.NULL&&s.hyper_link!=""?(a(),n("p",g,[e("a",{href:s.hyper_link,target:"_blank"},i(s.link_description),9,b)])):p("",!0)])])])])]),_:2},1024))),256))]))}},V=JSON.parse('{"title":"Frequently Asked Questions","description":"","frontmatter":{},"headers":[],"relativePath":"misc/faq.md","filePath":"misc/faq.md","lastUpdated":1676223729000}'),x={name:"misc/faq.md"},W=Object.assign(x,{setup(l){return(o,t)=>(a(),n("div",null,[t[0]||(t[0]=e("h1",{class:"text-[var(--font-accent)]",id:"frequently-asked-questions",tabindex:"-1"},[m("Frequently Asked Questions "),e("a",{class:"header-anchor",href:"#frequently-asked-questions","aria-label":'Permalink to "Frequently Asked Questions {.text-[var(--font-accent)]}"'},"")],-1)),t[1]||(t[1]=e("br",null,null,-1)),t[2]||(t[2]=e("hr",null,null,-1)),y(v)]))}});export{V as __pageData,W as default};
|
||||
1
assets/misc_jlc3dp.md.9635a32b.js
Normal file
1
assets/misc_jlc3dp.md.9635a32b.js
Normal file
@ -0,0 +1 @@
|
||||
import{_ as e,o as i,c as a,O as r}from"./chunks/framework.a4daa24a.js";const g=JSON.parse('{"title":"3D Printing Service JLC3DP","description":"","frontmatter":{},"headers":[],"relativePath":"misc/jlc3dp.md","filePath":"misc/jlc3dp.md","lastUpdated":1727916239000}'),o={name:"misc/jlc3dp.md"};function n(l,t,s,p,d,h){return i(),a("div",null,t[0]||(t[0]=[r('<h1 class="text-[var(--font-accent)]" id="_3d-printing-service-jlc3dp" tabindex="-1">3D Printing Service JLC3DP <a class="header-anchor" href="#_3d-printing-service-jlc3dp" aria-label="Permalink to "3D Printing Service JLC3DP {.text-[var(--font-accent)]}""></a></h1><h2 id="if-you-don-t-own-a-3d-printer-you-can-order-high-quality-prints-by-the-dollar-using-jlc3dp" tabindex="-1">If you don't own a 3D Printer, you can order high quality prints by the dollar using JLC3DP <a class="header-anchor" href="#if-you-don-t-own-a-3d-printer-you-can-order-high-quality-prints-by-the-dollar-using-jlc3dp" aria-label="Permalink to "If you don't own a 3D Printer, you can order high quality prints by the dollar using JLC3DP""></a></h2><p><a href="https://jlc3dp.com/3d-printing-quote" target="_blank" rel="noreferrer">https://jlc3dp.com/3d-printing-quote</a></p><h3 id="upload-your-stl-files-with-the-following-print-settings" tabindex="-1">Upload your STL files with the following print settings <a class="header-anchor" href="#upload-your-stl-files-with-the-following-print-settings" aria-label="Permalink to "Upload your STL files with the following print settings""></a></h3><p>Do note that if you are printing for a example, a lens mount, you may need to mirror it in blender, or any slicer, to get both a left and right STL and upload them separate. Do not upload them combined</p><p><img src="https://i.imgur.com/NFKoPAA.png" alt="UploadJLC"></p><h3 id="choose-a-cheaper-shipping-option-for-me-this-is-global-standard-direct-line" tabindex="-1">Choose a cheaper shipping option, for me this is global standard direct line <a class="header-anchor" href="#choose-a-cheaper-shipping-option-for-me-this-is-global-standard-direct-line" aria-label="Permalink to "Choose a cheaper shipping option, for me this is global standard direct line""></a></h3><p><img src="https://i.imgur.com/ck27eaH.png" alt="Shipping"></p><p>In the likely event you get an <a href="https://i.imgur.com/t2QmpBY.png" target="_blank" rel="noreferrer">email or alert</a> from JLC asking for consent to print as the STL has thin walls, you can agree to the print without worry.</p>',9)]))}const u=e(o,[["render",n]]);export{g as __pageData,u as default};
|
||||
1
assets/misc_jlc3dp.md.9635a32b.lean.js
Normal file
1
assets/misc_jlc3dp.md.9635a32b.lean.js
Normal file
@ -0,0 +1 @@
|
||||
import{_ as e,o as i,c as a,O as r}from"./chunks/framework.a4daa24a.js";const g=JSON.parse('{"title":"3D Printing Service JLC3DP","description":"","frontmatter":{},"headers":[],"relativePath":"misc/jlc3dp.md","filePath":"misc/jlc3dp.md","lastUpdated":1727916239000}'),o={name:"misc/jlc3dp.md"};function n(l,t,s,p,d,h){return i(),a("div",null,t[0]||(t[0]=[r('<h1 class="text-[var(--font-accent)]" id="_3d-printing-service-jlc3dp" tabindex="-1">3D Printing Service JLC3DP <a class="header-anchor" href="#_3d-printing-service-jlc3dp" aria-label="Permalink to "3D Printing Service JLC3DP {.text-[var(--font-accent)]}""></a></h1><h2 id="if-you-don-t-own-a-3d-printer-you-can-order-high-quality-prints-by-the-dollar-using-jlc3dp" tabindex="-1">If you don't own a 3D Printer, you can order high quality prints by the dollar using JLC3DP <a class="header-anchor" href="#if-you-don-t-own-a-3d-printer-you-can-order-high-quality-prints-by-the-dollar-using-jlc3dp" aria-label="Permalink to "If you don't own a 3D Printer, you can order high quality prints by the dollar using JLC3DP""></a></h2><p><a href="https://jlc3dp.com/3d-printing-quote" target="_blank" rel="noreferrer">https://jlc3dp.com/3d-printing-quote</a></p><h3 id="upload-your-stl-files-with-the-following-print-settings" tabindex="-1">Upload your STL files with the following print settings <a class="header-anchor" href="#upload-your-stl-files-with-the-following-print-settings" aria-label="Permalink to "Upload your STL files with the following print settings""></a></h3><p>Do note that if you are printing for a example, a lens mount, you may need to mirror it in blender, or any slicer, to get both a left and right STL and upload them separate. Do not upload them combined</p><p><img src="https://i.imgur.com/NFKoPAA.png" alt="UploadJLC"></p><h3 id="choose-a-cheaper-shipping-option-for-me-this-is-global-standard-direct-line" tabindex="-1">Choose a cheaper shipping option, for me this is global standard direct line <a class="header-anchor" href="#choose-a-cheaper-shipping-option-for-me-this-is-global-standard-direct-line" aria-label="Permalink to "Choose a cheaper shipping option, for me this is global standard direct line""></a></h3><p><img src="https://i.imgur.com/ck27eaH.png" alt="Shipping"></p><p>In the likely event you get an <a href="https://i.imgur.com/t2QmpBY.png" target="_blank" rel="noreferrer">email or alert</a> from JLC asking for consent to print as the STL has thin walls, you can agree to the print without worry.</p>',9)]))}const u=e(o,[["render",n]]);export{g as __pageData,u as default};
|
||||
@ -1 +1 @@
|
||||
import{_ as a,a as r}from"./chunks/index.7dc7ff16.js";import{o,c as s,k as t,a as n,O as i,E as c,w as l,l as d}from"./chunks/framework.79850ceb.js";const p={align:"center"},g=JSON.parse('{"title":"How to set up your avatar for eye tracking:","description":"","frontmatter":{},"headers":[],"relativePath":"misc/vrc_avatar_setup.md","filePath":"misc/vrc_avatar_setup.md","lastUpdated":1677196572000}'),u={name:"misc/vrc_avatar_setup.md"},v=Object.assign(u,{setup(f){return(m,e)=>(o(),s("div",null,[e[1]||(e[1]=t("h1",{class:"text-[var(--font-accent)]",id:"how-to-set-up-your-avatar-for-eye-tracking",tabindex:"-1"},[n("How to set up your avatar for eye tracking: "),t("a",{class:"header-anchor",href:"#how-to-set-up-your-avatar-for-eye-tracking","aria-label":'Permalink to "How to set up your avatar for eye tracking: {.text-[var(--font-accent)]}"'},"")],-1)),e[2]||(e[2]=t("p",null,"Here is an avatar setup video created by a contributor:",-1)),e[3]||(e[3]=t("div",{align:"center"},[t("iframe",{width:"500",height:"300",src:"https://www.youtube.com/embed/Dfm-tkaruq0",title:"Add eye tracking support to your VRChat avatar",frameborder:"1",allow:"encrypted-media;",allowfullscreen:""})],-1)),e[4]||(e[4]=i('<p>Another good resource is the <a href="https://github.com/benaclejames/VRCFaceTracking/wiki/Eye-Tracking-Setup" target="_blank" rel="noreferrer">VRC Face Tracking Wiki</a> and their <a href="https://discord.gg/Fh4FNehzKn" target="_blank" rel="noreferrer">Discord</a>.</p><h3 id="we-currently-use-the-following-paramaters" tabindex="-1">We currently use the following paramaters <a class="header-anchor" href="#we-currently-use-the-following-paramaters" aria-label="Permalink to "We currently use the following paramaters""></a></h3><p><code>LeftEyeX</code></p><p><code>RightEyeX</code></p><p><code>EyesY</code></p><p><code>LeftEyeLidExpandedSqueeze</code></p><p><code>RightEyeLidExpandedSqueeze</code></p>',7)),t("div",p,[c(a,{options:d(r).vrc_avatar_setup},{content:l(()=>e[0]||(e[0]=[t("p",null," We currently only support float parameters, please adjust your setup accordingly. ",-1)])),_:1},8,["options"])])]))}});export{g as __pageData,v as default};
|
||||
import{_ as a,a as r}from"./chunks/index.b5dd7625.js";import{o,c as s,k as t,a as n,O as i,E as c,w as l,l as d}from"./chunks/framework.a4daa24a.js";const p={align:"center"},g=JSON.parse('{"title":"How to set up your avatar for eye tracking:","description":"","frontmatter":{},"headers":[],"relativePath":"misc/vrc_avatar_setup.md","filePath":"misc/vrc_avatar_setup.md","lastUpdated":1677196572000}'),u={name:"misc/vrc_avatar_setup.md"},v=Object.assign(u,{setup(f){return(m,e)=>(o(),s("div",null,[e[1]||(e[1]=t("h1",{class:"text-[var(--font-accent)]",id:"how-to-set-up-your-avatar-for-eye-tracking",tabindex:"-1"},[n("How to set up your avatar for eye tracking: "),t("a",{class:"header-anchor",href:"#how-to-set-up-your-avatar-for-eye-tracking","aria-label":'Permalink to "How to set up your avatar for eye tracking: {.text-[var(--font-accent)]}"'},"")],-1)),e[2]||(e[2]=t("p",null,"Here is an avatar setup video created by a contributor:",-1)),e[3]||(e[3]=t("div",{align:"center"},[t("iframe",{width:"500",height:"300",src:"https://www.youtube.com/embed/Dfm-tkaruq0",title:"Add eye tracking support to your VRChat avatar",frameborder:"1",allow:"encrypted-media;",allowfullscreen:""})],-1)),e[4]||(e[4]=i('<p>Another good resource is the <a href="https://github.com/benaclejames/VRCFaceTracking/wiki/Eye-Tracking-Setup" target="_blank" rel="noreferrer">VRC Face Tracking Wiki</a> and their <a href="https://discord.gg/Fh4FNehzKn" target="_blank" rel="noreferrer">Discord</a>.</p><h3 id="we-currently-use-the-following-paramaters" tabindex="-1">We currently use the following paramaters <a class="header-anchor" href="#we-currently-use-the-following-paramaters" aria-label="Permalink to "We currently use the following paramaters""></a></h3><p><code>LeftEyeX</code></p><p><code>RightEyeX</code></p><p><code>EyesY</code></p><p><code>LeftEyeLidExpandedSqueeze</code></p><p><code>RightEyeLidExpandedSqueeze</code></p>',7)),t("div",p,[c(a,{options:d(r).vrc_avatar_setup},{content:l(()=>e[0]||(e[0]=[t("p",null," We currently only support float parameters, please adjust your setup accordingly. ",-1)])),_:1},8,["options"])])]))}});export{g as __pageData,v as default};
|
||||
@ -1 +1 @@
|
||||
import{_ as a,a as r}from"./chunks/index.7dc7ff16.js";import{o,c as s,k as t,a as n,O as i,E as c,w as l,l as d}from"./chunks/framework.79850ceb.js";const p={align:"center"},g=JSON.parse('{"title":"How to set up your avatar for eye tracking:","description":"","frontmatter":{},"headers":[],"relativePath":"misc/vrc_avatar_setup.md","filePath":"misc/vrc_avatar_setup.md","lastUpdated":1677196572000}'),u={name:"misc/vrc_avatar_setup.md"},v=Object.assign(u,{setup(f){return(m,e)=>(o(),s("div",null,[e[1]||(e[1]=t("h1",{class:"text-[var(--font-accent)]",id:"how-to-set-up-your-avatar-for-eye-tracking",tabindex:"-1"},[n("How to set up your avatar for eye tracking: "),t("a",{class:"header-anchor",href:"#how-to-set-up-your-avatar-for-eye-tracking","aria-label":'Permalink to "How to set up your avatar for eye tracking: {.text-[var(--font-accent)]}"'},"")],-1)),e[2]||(e[2]=t("p",null,"Here is an avatar setup video created by a contributor:",-1)),e[3]||(e[3]=t("div",{align:"center"},[t("iframe",{width:"500",height:"300",src:"https://www.youtube.com/embed/Dfm-tkaruq0",title:"Add eye tracking support to your VRChat avatar",frameborder:"1",allow:"encrypted-media;",allowfullscreen:""})],-1)),e[4]||(e[4]=i('<p>Another good resource is the <a href="https://github.com/benaclejames/VRCFaceTracking/wiki/Eye-Tracking-Setup" target="_blank" rel="noreferrer">VRC Face Tracking Wiki</a> and their <a href="https://discord.gg/Fh4FNehzKn" target="_blank" rel="noreferrer">Discord</a>.</p><h3 id="we-currently-use-the-following-paramaters" tabindex="-1">We currently use the following paramaters <a class="header-anchor" href="#we-currently-use-the-following-paramaters" aria-label="Permalink to "We currently use the following paramaters""></a></h3><p><code>LeftEyeX</code></p><p><code>RightEyeX</code></p><p><code>EyesY</code></p><p><code>LeftEyeLidExpandedSqueeze</code></p><p><code>RightEyeLidExpandedSqueeze</code></p>',7)),t("div",p,[c(a,{options:d(r).vrc_avatar_setup},{content:l(()=>e[0]||(e[0]=[t("p",null," We currently only support float parameters, please adjust your setup accordingly. ",-1)])),_:1},8,["options"])])]))}});export{g as __pageData,v as default};
|
||||
import{_ as a,a as r}from"./chunks/index.b5dd7625.js";import{o,c as s,k as t,a as n,O as i,E as c,w as l,l as d}from"./chunks/framework.a4daa24a.js";const p={align:"center"},g=JSON.parse('{"title":"How to set up your avatar for eye tracking:","description":"","frontmatter":{},"headers":[],"relativePath":"misc/vrc_avatar_setup.md","filePath":"misc/vrc_avatar_setup.md","lastUpdated":1677196572000}'),u={name:"misc/vrc_avatar_setup.md"},v=Object.assign(u,{setup(f){return(m,e)=>(o(),s("div",null,[e[1]||(e[1]=t("h1",{class:"text-[var(--font-accent)]",id:"how-to-set-up-your-avatar-for-eye-tracking",tabindex:"-1"},[n("How to set up your avatar for eye tracking: "),t("a",{class:"header-anchor",href:"#how-to-set-up-your-avatar-for-eye-tracking","aria-label":'Permalink to "How to set up your avatar for eye tracking: {.text-[var(--font-accent)]}"'},"")],-1)),e[2]||(e[2]=t("p",null,"Here is an avatar setup video created by a contributor:",-1)),e[3]||(e[3]=t("div",{align:"center"},[t("iframe",{width:"500",height:"300",src:"https://www.youtube.com/embed/Dfm-tkaruq0",title:"Add eye tracking support to your VRChat avatar",frameborder:"1",allow:"encrypted-media;",allowfullscreen:""})],-1)),e[4]||(e[4]=i('<p>Another good resource is the <a href="https://github.com/benaclejames/VRCFaceTracking/wiki/Eye-Tracking-Setup" target="_blank" rel="noreferrer">VRC Face Tracking Wiki</a> and their <a href="https://discord.gg/Fh4FNehzKn" target="_blank" rel="noreferrer">Discord</a>.</p><h3 id="we-currently-use-the-following-paramaters" tabindex="-1">We currently use the following paramaters <a class="header-anchor" href="#we-currently-use-the-following-paramaters" aria-label="Permalink to "We currently use the following paramaters""></a></h3><p><code>LeftEyeX</code></p><p><code>RightEyeX</code></p><p><code>EyesY</code></p><p><code>LeftEyeLidExpandedSqueeze</code></p><p><code>RightEyeLidExpandedSqueeze</code></p>',7)),t("div",p,[c(a,{options:d(r).vrc_avatar_setup},{content:l(()=>e[0]||(e[0]=[t("p",null," We currently only support float parameters, please adjust your setup accordingly. ",-1)])),_:1},8,["options"])])]))}});export{g as __pageData,v as default};
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
import{_ as n,a as l}from"./chunks/index.7dc7ff16.js";import{_ as i}from"./chunks/CheckBoxList.d118cd11.js";import{o as s,c as p,k as t,a as o,E as a,w as d,l as r,O as h}from"./chunks/framework.79850ceb.js";const u={state:!0,object:[{label:"Python 3.11.0",link:"https://www.python.org/downloads/release/python-3110/"},{label:"Poetry",link:"https://python-poetry.org/"},{label:"Windows/Linux PC",link:""}]},g=JSON.parse('{"title":"Build the app from source","description":"","frontmatter":{},"headers":[],"relativePath":"software_guide/build_software.md","filePath":"software_guide/build_software.md","lastUpdated":1700510338000}'),c={name:"software_guide/build_software.md"},P=Object.assign(c,{setup(m){return(f,e)=>(s(),p("div",null,[e[1]||(e[1]=t("h1",{class:"text-[var(--font-accent)]",id:"build-the-app-from-source",tabindex:"-1"},[o("Build the app from source "),t("a",{class:"header-anchor",href:"#build-the-app-from-source","aria-label":'Permalink to "Build the app from source {.text-[var(--font-accent)]}"'},"")],-1)),e[2]||(e[2]=t("h2",{id:"this-guide-will-show-how-to-build-the-app-from-source",tabindex:"-1"},[o("This guide will show how to build the app from source "),t("a",{class:"header-anchor",href:"#this-guide-will-show-how-to-build-the-app-from-source","aria-label":'Permalink to "This guide will show how to build the app from source"'},"")],-1)),a(n,{options:r(l).build_software_one},{content:d(()=>e[0]||(e[0]=[t("p",null," This is NOT a required step, you do not need to build the app from source. ",-1)])),_:1},8,["options"]),e[3]||(e[3]=t("h2",{id:"requirements",tabindex:"-1"},[o("Requirements "),t("a",{class:"header-anchor",href:"#requirements","aria-label":'Permalink to "Requirements"'},"")],-1)),a(i,{options:{...r(u)}},null,8,["options"]),e[4]||(e[4]=h('<h2 id="install-python" tabindex="-1">Install Python <a class="header-anchor" href="#install-python" aria-label="Permalink to "Install Python""></a></h2><p>EyeTrackVR is currently using <a href="https://www.python.org/downloads/release/python-3110/" target="_blank" rel="noreferrer">Python 3.11.0</a> Before you continue, please install it.</p><h2 id="installing-poetry" tabindex="-1">Installing Poetry <a class="header-anchor" href="#installing-poetry" aria-label="Permalink to "Installing Poetry""></a></h2><p>Starting with version <code>0.1.7</code>, EyeTrackVR uses Poetry to manage app dependencies. To build the app, you must first install Poetry to fetch the required dependencies.</p><p>To install Poetry open Windows Powershell and run the following command <code>(Invoke-WebRequest -Uri https://install.python-poetry.org -UseBasicParsing).Content | py -</code></p><p><a href="https://python-poetry.org/docs/" target="_blank" rel="noreferrer">Poetry Documentation</a></p><h2 id="install-the-required-python-modules" tabindex="-1">Install the required Python modules <a class="header-anchor" href="#install-the-required-python-modules" aria-label="Permalink to "Install the required Python modules""></a></h2><p>After cloning the project and installing Poetry, open a command prompt in the EyeTrackApp folder. Then run the command: <code>poetry install</code></p><p>This should install all of the required modules.</p><h2 id="build-the-app" tabindex="-1">Build the app <a class="header-anchor" href="#build-the-app" aria-label="Permalink to "Build the app""></a></h2><p>Now, you should be ready to build the app. With a command prompt open in the EyeTrackApp folder, run the command <code>poetry run pyinstaller eyetrackapp.spec</code></p><p>Give it time to build the app. Once done, the app should be under <code>dist/eyetrackapp</code></p>',12))]))}});export{g as __pageData,P as default};
|
||||
import{_ as n,a as l}from"./chunks/index.b5dd7625.js";import{_ as i}from"./chunks/CheckBoxList.e60898cc.js";import{o as s,c as p,k as t,a as o,E as a,w as d,l as r,O as h}from"./chunks/framework.a4daa24a.js";const u={state:!0,object:[{label:"Python 3.11.0",link:"https://www.python.org/downloads/release/python-3110/"},{label:"Poetry",link:"https://python-poetry.org/"},{label:"Windows/Linux PC",link:""}]},g=JSON.parse('{"title":"Build the app from source","description":"","frontmatter":{},"headers":[],"relativePath":"software_guide/build_software.md","filePath":"software_guide/build_software.md","lastUpdated":1700510338000}'),c={name:"software_guide/build_software.md"},P=Object.assign(c,{setup(m){return(f,e)=>(s(),p("div",null,[e[1]||(e[1]=t("h1",{class:"text-[var(--font-accent)]",id:"build-the-app-from-source",tabindex:"-1"},[o("Build the app from source "),t("a",{class:"header-anchor",href:"#build-the-app-from-source","aria-label":'Permalink to "Build the app from source {.text-[var(--font-accent)]}"'},"")],-1)),e[2]||(e[2]=t("h2",{id:"this-guide-will-show-how-to-build-the-app-from-source",tabindex:"-1"},[o("This guide will show how to build the app from source "),t("a",{class:"header-anchor",href:"#this-guide-will-show-how-to-build-the-app-from-source","aria-label":'Permalink to "This guide will show how to build the app from source"'},"")],-1)),a(n,{options:r(l).build_software_one},{content:d(()=>e[0]||(e[0]=[t("p",null," This is NOT a required step, you do not need to build the app from source. ",-1)])),_:1},8,["options"]),e[3]||(e[3]=t("h2",{id:"requirements",tabindex:"-1"},[o("Requirements "),t("a",{class:"header-anchor",href:"#requirements","aria-label":'Permalink to "Requirements"'},"")],-1)),a(i,{options:{...r(u)}},null,8,["options"]),e[4]||(e[4]=h('<h2 id="install-python" tabindex="-1">Install Python <a class="header-anchor" href="#install-python" aria-label="Permalink to "Install Python""></a></h2><p>EyeTrackVR is currently using <a href="https://www.python.org/downloads/release/python-3110/" target="_blank" rel="noreferrer">Python 3.11.0</a> Before you continue, please install it.</p><h2 id="installing-poetry" tabindex="-1">Installing Poetry <a class="header-anchor" href="#installing-poetry" aria-label="Permalink to "Installing Poetry""></a></h2><p>Starting with version <code>0.1.7</code>, EyeTrackVR uses Poetry to manage app dependencies. To build the app, you must first install Poetry to fetch the required dependencies.</p><p>To install Poetry open Windows Powershell and run the following command <code>(Invoke-WebRequest -Uri https://install.python-poetry.org -UseBasicParsing).Content | py -</code></p><p><a href="https://python-poetry.org/docs/" target="_blank" rel="noreferrer">Poetry Documentation</a></p><h2 id="install-the-required-python-modules" tabindex="-1">Install the required Python modules <a class="header-anchor" href="#install-the-required-python-modules" aria-label="Permalink to "Install the required Python modules""></a></h2><p>After cloning the project and installing Poetry, open a command prompt in the EyeTrackApp folder. Then run the command: <code>poetry install</code></p><p>This should install all of the required modules.</p><h2 id="build-the-app" tabindex="-1">Build the app <a class="header-anchor" href="#build-the-app" aria-label="Permalink to "Build the app""></a></h2><p>Now, you should be ready to build the app. With a command prompt open in the EyeTrackApp folder, run the command <code>poetry run pyinstaller eyetrackapp.spec</code></p><p>Give it time to build the app. Once done, the app should be under <code>dist/eyetrackapp</code></p>',12))]))}});export{g as __pageData,P as default};
|
||||
@ -1 +1 @@
|
||||
import{_ as n,a as l}from"./chunks/index.7dc7ff16.js";import{_ as i}from"./chunks/CheckBoxList.d118cd11.js";import{o as s,c as p,k as t,a as o,E as a,w as d,l as r,O as h}from"./chunks/framework.79850ceb.js";const u={state:!0,object:[{label:"Python 3.11.0",link:"https://www.python.org/downloads/release/python-3110/"},{label:"Poetry",link:"https://python-poetry.org/"},{label:"Windows/Linux PC",link:""}]},g=JSON.parse('{"title":"Build the app from source","description":"","frontmatter":{},"headers":[],"relativePath":"software_guide/build_software.md","filePath":"software_guide/build_software.md","lastUpdated":1700510338000}'),c={name:"software_guide/build_software.md"},P=Object.assign(c,{setup(m){return(f,e)=>(s(),p("div",null,[e[1]||(e[1]=t("h1",{class:"text-[var(--font-accent)]",id:"build-the-app-from-source",tabindex:"-1"},[o("Build the app from source "),t("a",{class:"header-anchor",href:"#build-the-app-from-source","aria-label":'Permalink to "Build the app from source {.text-[var(--font-accent)]}"'},"")],-1)),e[2]||(e[2]=t("h2",{id:"this-guide-will-show-how-to-build-the-app-from-source",tabindex:"-1"},[o("This guide will show how to build the app from source "),t("a",{class:"header-anchor",href:"#this-guide-will-show-how-to-build-the-app-from-source","aria-label":'Permalink to "This guide will show how to build the app from source"'},"")],-1)),a(n,{options:r(l).build_software_one},{content:d(()=>e[0]||(e[0]=[t("p",null," This is NOT a required step, you do not need to build the app from source. ",-1)])),_:1},8,["options"]),e[3]||(e[3]=t("h2",{id:"requirements",tabindex:"-1"},[o("Requirements "),t("a",{class:"header-anchor",href:"#requirements","aria-label":'Permalink to "Requirements"'},"")],-1)),a(i,{options:{...r(u)}},null,8,["options"]),e[4]||(e[4]=h('<h2 id="install-python" tabindex="-1">Install Python <a class="header-anchor" href="#install-python" aria-label="Permalink to "Install Python""></a></h2><p>EyeTrackVR is currently using <a href="https://www.python.org/downloads/release/python-3110/" target="_blank" rel="noreferrer">Python 3.11.0</a> Before you continue, please install it.</p><h2 id="installing-poetry" tabindex="-1">Installing Poetry <a class="header-anchor" href="#installing-poetry" aria-label="Permalink to "Installing Poetry""></a></h2><p>Starting with version <code>0.1.7</code>, EyeTrackVR uses Poetry to manage app dependencies. To build the app, you must first install Poetry to fetch the required dependencies.</p><p>To install Poetry open Windows Powershell and run the following command <code>(Invoke-WebRequest -Uri https://install.python-poetry.org -UseBasicParsing).Content | py -</code></p><p><a href="https://python-poetry.org/docs/" target="_blank" rel="noreferrer">Poetry Documentation</a></p><h2 id="install-the-required-python-modules" tabindex="-1">Install the required Python modules <a class="header-anchor" href="#install-the-required-python-modules" aria-label="Permalink to "Install the required Python modules""></a></h2><p>After cloning the project and installing Poetry, open a command prompt in the EyeTrackApp folder. Then run the command: <code>poetry install</code></p><p>This should install all of the required modules.</p><h2 id="build-the-app" tabindex="-1">Build the app <a class="header-anchor" href="#build-the-app" aria-label="Permalink to "Build the app""></a></h2><p>Now, you should be ready to build the app. With a command prompt open in the EyeTrackApp folder, run the command <code>poetry run pyinstaller eyetrackapp.spec</code></p><p>Give it time to build the app. Once done, the app should be under <code>dist/eyetrackapp</code></p>',12))]))}});export{g as __pageData,P as default};
|
||||
import{_ as n,a as l}from"./chunks/index.b5dd7625.js";import{_ as i}from"./chunks/CheckBoxList.e60898cc.js";import{o as s,c as p,k as t,a as o,E as a,w as d,l as r,O as h}from"./chunks/framework.a4daa24a.js";const u={state:!0,object:[{label:"Python 3.11.0",link:"https://www.python.org/downloads/release/python-3110/"},{label:"Poetry",link:"https://python-poetry.org/"},{label:"Windows/Linux PC",link:""}]},g=JSON.parse('{"title":"Build the app from source","description":"","frontmatter":{},"headers":[],"relativePath":"software_guide/build_software.md","filePath":"software_guide/build_software.md","lastUpdated":1700510338000}'),c={name:"software_guide/build_software.md"},P=Object.assign(c,{setup(m){return(f,e)=>(s(),p("div",null,[e[1]||(e[1]=t("h1",{class:"text-[var(--font-accent)]",id:"build-the-app-from-source",tabindex:"-1"},[o("Build the app from source "),t("a",{class:"header-anchor",href:"#build-the-app-from-source","aria-label":'Permalink to "Build the app from source {.text-[var(--font-accent)]}"'},"")],-1)),e[2]||(e[2]=t("h2",{id:"this-guide-will-show-how-to-build-the-app-from-source",tabindex:"-1"},[o("This guide will show how to build the app from source "),t("a",{class:"header-anchor",href:"#this-guide-will-show-how-to-build-the-app-from-source","aria-label":'Permalink to "This guide will show how to build the app from source"'},"")],-1)),a(n,{options:r(l).build_software_one},{content:d(()=>e[0]||(e[0]=[t("p",null," This is NOT a required step, you do not need to build the app from source. ",-1)])),_:1},8,["options"]),e[3]||(e[3]=t("h2",{id:"requirements",tabindex:"-1"},[o("Requirements "),t("a",{class:"header-anchor",href:"#requirements","aria-label":'Permalink to "Requirements"'},"")],-1)),a(i,{options:{...r(u)}},null,8,["options"]),e[4]||(e[4]=h('<h2 id="install-python" tabindex="-1">Install Python <a class="header-anchor" href="#install-python" aria-label="Permalink to "Install Python""></a></h2><p>EyeTrackVR is currently using <a href="https://www.python.org/downloads/release/python-3110/" target="_blank" rel="noreferrer">Python 3.11.0</a> Before you continue, please install it.</p><h2 id="installing-poetry" tabindex="-1">Installing Poetry <a class="header-anchor" href="#installing-poetry" aria-label="Permalink to "Installing Poetry""></a></h2><p>Starting with version <code>0.1.7</code>, EyeTrackVR uses Poetry to manage app dependencies. To build the app, you must first install Poetry to fetch the required dependencies.</p><p>To install Poetry open Windows Powershell and run the following command <code>(Invoke-WebRequest -Uri https://install.python-poetry.org -UseBasicParsing).Content | py -</code></p><p><a href="https://python-poetry.org/docs/" target="_blank" rel="noreferrer">Poetry Documentation</a></p><h2 id="install-the-required-python-modules" tabindex="-1">Install the required Python modules <a class="header-anchor" href="#install-the-required-python-modules" aria-label="Permalink to "Install the required Python modules""></a></h2><p>After cloning the project and installing Poetry, open a command prompt in the EyeTrackApp folder. Then run the command: <code>poetry install</code></p><p>This should install all of the required modules.</p><h2 id="build-the-app" tabindex="-1">Build the app <a class="header-anchor" href="#build-the-app" aria-label="Permalink to "Build the app""></a></h2><p>Now, you should be ready to build the app. With a command prompt open in the EyeTrackApp folder, run the command <code>poetry run pyinstaller eyetrackapp.spec</code></p><p>Give it time to build the app. Once done, the app should be under <code>dist/eyetrackapp</code></p>',12))]))}});export{g as __pageData,P as default};
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user