docs: Merge pull request #7 from lorow/feature/osc-communication

Add docs about setting up the AVI to be able to recenter/calibrate from within vrc
This commit is contained in:
RedHawk989 2023-04-30 23:25:11 +00:00
parent 5cddd9f382
commit 43960782e6
88 changed files with 341 additions and 315 deletions

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

View File

@ -1 +1 @@
import{o as i,c as r,a as n,w as a,u as o,V as u,b as e,d as s,e as l,f as c,g as t}from"./app.106a9488.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"}]}],m=[{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"}]}],d=t("div",{class:"text-[#ab5ac7]"}," Our Team ",-1),p=t("br",null,null,-1),b=t("br",null,null,-1),_=t("br",null,null,-1),g=t("a",{class:"custom-links",href:"/intro",target:"_blank"},"guides",-1),v=t("br",null,null,-1),k=t("br",null,null,-1),f=t("br",null,null,-1),w=t("br",null,null,-1),T=t("a",{class:"custom-links",href:"https://en.wikipedia.org/wiki/Open-source_model",target:"_blank"},"Open Source model",-1),y=t("br",null,null,-1),D=t("br",null,null,-1),O=JSON.parse('{"title":"","description":"","frontmatter":{"layout":"page"},"headers":[],"relativePath":"about.md","lastUpdated":1673640425000}'),P={name:"about.md"},x=Object.assign(P,{setup(V){return(S,N)=>(i(),r("div",null,[n(o(c),null,{default:a(()=>[n(o(u),null,{title:a(()=>[d]),lead:a(()=>[e(" The development of EyeTrackVR is guided by an international team, some of whom have chosen to be featured below."),p,b,e(" EyeTrackVR developers are a group of people who are passionate about the field of augmented and virtual reality. ")]),_:1}),n(o(s),{size:"medium",members:o(h)},null,8,["members"]),n(o(l),null,{title:a(()=>[e("Contributors")]),lead:a(()=>[e("Those who have actively contributed to development."),_,e(" Community Support")]),members:a(()=>[n(o(s),{size:"small",members:o(m)},null,8,["members"])]),_:1}),n(o(l),null,{title:a(()=>[e("Philosophy")]),lead:a(()=>[e(" The "),g,e(" on this website include some of our teams own notes (not all of them are polished) that we disclose for other people to use."),v,k,e(" Here, we hope you may find something useful to you."),f,w,e(" We advocate the "),T,e("."),y,D,e(" This is why we strive to make our work open to other people for consultation, replication and reuse. ")]),_:1})]),_:1})]))}});export{O as __pageData,x as default};
import{o as i,c as r,a as n,w as a,u as o,V as u,b as e,d as s,e as l,f as c,g as t}from"./app.0fb3db86.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"}]}],m=[{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"}]}],d=t("div",{class:"text-[#ab5ac7]"}," Our Team ",-1),p=t("br",null,null,-1),b=t("br",null,null,-1),_=t("br",null,null,-1),g=t("a",{class:"custom-links",href:"/intro",target:"_blank"},"guides",-1),v=t("br",null,null,-1),k=t("br",null,null,-1),f=t("br",null,null,-1),w=t("br",null,null,-1),T=t("a",{class:"custom-links",href:"https://en.wikipedia.org/wiki/Open-source_model",target:"_blank"},"Open Source model",-1),y=t("br",null,null,-1),D=t("br",null,null,-1),O=JSON.parse('{"title":"","description":"","frontmatter":{"layout":"page"},"headers":[],"relativePath":"about.md","lastUpdated":1673640425000}'),P={name:"about.md"},x=Object.assign(P,{setup(V){return(S,N)=>(i(),r("div",null,[n(o(c),null,{default:a(()=>[n(o(u),null,{title:a(()=>[d]),lead:a(()=>[e(" The development of EyeTrackVR is guided by an international team, some of whom have chosen to be featured below."),p,b,e(" EyeTrackVR developers are a group of people who are passionate about the field of augmented and virtual reality. ")]),_:1}),n(o(s),{size:"medium",members:o(h)},null,8,["members"]),n(o(l),null,{title:a(()=>[e("Contributors")]),lead:a(()=>[e("Those who have actively contributed to development."),_,e(" Community Support")]),members:a(()=>[n(o(s),{size:"small",members:o(m)},null,8,["members"])]),_:1}),n(o(l),null,{title:a(()=>[e("Philosophy")]),lead:a(()=>[e(" The "),g,e(" on this website include some of our teams own notes (not all of them are polished) that we disclose for other people to use."),v,k,e(" Here, we hope you may find something useful to you."),f,w,e(" We advocate the "),T,e("."),y,D,e(" This is why we strive to make our work open to other people for consultation, replication and reuse. ")]),_:1})]),_:1})]))}});export{O as __pageData,x as default};

View File

@ -1 +1 @@
import{o as i,c as r,a as n,w as a,u as o,V as u,b as e,d as s,e as l,f as c,g as t}from"./app.106a9488.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"}]}],m=[{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"}]}],d=t("div",{class:"text-[#ab5ac7]"}," Our Team ",-1),p=t("br",null,null,-1),b=t("br",null,null,-1),_=t("br",null,null,-1),g=t("a",{class:"custom-links",href:"/intro",target:"_blank"},"guides",-1),v=t("br",null,null,-1),k=t("br",null,null,-1),f=t("br",null,null,-1),w=t("br",null,null,-1),T=t("a",{class:"custom-links",href:"https://en.wikipedia.org/wiki/Open-source_model",target:"_blank"},"Open Source model",-1),y=t("br",null,null,-1),D=t("br",null,null,-1),O=JSON.parse('{"title":"","description":"","frontmatter":{"layout":"page"},"headers":[],"relativePath":"about.md","lastUpdated":1673640425000}'),P={name:"about.md"},x=Object.assign(P,{setup(V){return(S,N)=>(i(),r("div",null,[n(o(c),null,{default:a(()=>[n(o(u),null,{title:a(()=>[d]),lead:a(()=>[e(" The development of EyeTrackVR is guided by an international team, some of whom have chosen to be featured below."),p,b,e(" EyeTrackVR developers are a group of people who are passionate about the field of augmented and virtual reality. ")]),_:1}),n(o(s),{size:"medium",members:o(h)},null,8,["members"]),n(o(l),null,{title:a(()=>[e("Contributors")]),lead:a(()=>[e("Those who have actively contributed to development."),_,e(" Community Support")]),members:a(()=>[n(o(s),{size:"small",members:o(m)},null,8,["members"])]),_:1}),n(o(l),null,{title:a(()=>[e("Philosophy")]),lead:a(()=>[e(" The "),g,e(" on this website include some of our teams own notes (not all of them are polished) that we disclose for other people to use."),v,k,e(" Here, we hope you may find something useful to you."),f,w,e(" We advocate the "),T,e("."),y,D,e(" This is why we strive to make our work open to other people for consultation, replication and reuse. ")]),_:1})]),_:1})]))}});export{O as __pageData,x as default};
import{o as i,c as r,a as n,w as a,u as o,V as u,b as e,d as s,e as l,f as c,g as t}from"./app.0fb3db86.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"}]}],m=[{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"}]}],d=t("div",{class:"text-[#ab5ac7]"}," Our Team ",-1),p=t("br",null,null,-1),b=t("br",null,null,-1),_=t("br",null,null,-1),g=t("a",{class:"custom-links",href:"/intro",target:"_blank"},"guides",-1),v=t("br",null,null,-1),k=t("br",null,null,-1),f=t("br",null,null,-1),w=t("br",null,null,-1),T=t("a",{class:"custom-links",href:"https://en.wikipedia.org/wiki/Open-source_model",target:"_blank"},"Open Source model",-1),y=t("br",null,null,-1),D=t("br",null,null,-1),O=JSON.parse('{"title":"","description":"","frontmatter":{"layout":"page"},"headers":[],"relativePath":"about.md","lastUpdated":1673640425000}'),P={name:"about.md"},x=Object.assign(P,{setup(V){return(S,N)=>(i(),r("div",null,[n(o(c),null,{default:a(()=>[n(o(u),null,{title:a(()=>[d]),lead:a(()=>[e(" The development of EyeTrackVR is guided by an international team, some of whom have chosen to be featured below."),p,b,e(" EyeTrackVR developers are a group of people who are passionate about the field of augmented and virtual reality. ")]),_:1}),n(o(s),{size:"medium",members:o(h)},null,8,["members"]),n(o(l),null,{title:a(()=>[e("Contributors")]),lead:a(()=>[e("Those who have actively contributed to development."),_,e(" Community Support")]),members:a(()=>[n(o(s),{size:"small",members:o(m)},null,8,["members"])]),_:1}),n(o(l),null,{title:a(()=>[e("Philosophy")]),lead:a(()=>[e(" The "),g,e(" on this website include some of our teams own notes (not all of them are polished) that we disclose for other people to use."),v,k,e(" Here, we hope you may find something useful to you."),f,w,e(" We advocate the "),T,e("."),y,D,e(" This is why we strive to make our work open to other people for consultation, replication and reuse. ")]),_:1})]),_:1})]))}});export{O as __pageData,x as default};

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
import{_ as o,i as t}from"./chunks/index.150e11f2.js";import{o as r,c as l,a as s,u as i,g as e,b as n,h as d}from"./app.106a9488.js";const p=e("h1",{class:"text-[var(--font-accent)]",id:"fox-ir-v2-buil-dinstructions",tabindex:"-1"},[n("Fox IR V2 Buil dInstructions "),e("a",{class:"header-anchor",href:"#fox-ir-v2-buil-dinstructions","aria-hidden":"true"},"#")],-1),a=e("h2",{id:"step-15-prepare-to-solder-ir-led-pcb-v2s",tabindex:"-1"},[n("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-hidden":"true"},"#")],-1),_=e("p",null,"Get your magnifying glass out, it's time to solder very smol things.",-1),c=e("p",null,"Gather 4 PCBs, 4 IR LEDs, and 2 ~700ohm resistors.",-1),h=e("p",null,"Here are the PCB pin-out labels:",-1),u=e("p",null,"LED labels:",-1),f=d('<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-hidden="true">#</a></h2><p>You only need 1 PCB to have a resistor per eye.</p>',10),b=e("p",null,"Tin the resistor pads.",-1),v=e("p",null,"Hold the resistor in place.",-1),m=e("p",null,"Solder one end.",-1),g=e("p",null,"Flip to the other side of the resistor and solder it.",-1),x=e("h2",{id:"solder-leds-on-pcb-v2",tabindex:"-1"},[n("Solder LEDs on PCB V2 "),e("a",{class:"header-anchor",href:"#solder-leds-on-pcb-v2","aria-hidden":"true"},"#")],-1),P=e("p",null,"Tin the pads",-1),B=e("p",null,"Place the resistor on the pads in the correct orientation.",-1),V=e("p",null,[n("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"),n(".")],-1),C=e("h2",{id:"wire-up-the-pcbs-v2",tabindex:"-1"},[n("Wire up the PCBs V2 "),e("a",{class:"header-anchor",href:"#wire-up-the-pcbs-v2","aria-hidden":"true"},"#")],-1),S=e("p",null,"Basic full wiring diagram of IR PCBs V2.",-1),w=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),L=JSON.parse('{"title":"Fox IR V2 Buil dInstructions","description":"","frontmatter":{},"headers":[{"level":2,"title":"Step 15: Prepare to solder IR LED PCB V2s","slug":"step-15-prepare-to-solder-ir-led-pcb-v2s","link":"#step-15-prepare-to-solder-ir-led-pcb-v2s","children":[]},{"level":2,"title":"Step 17: Solder resistors on PCB V2","slug":"step-17-solder-resistors-on-pcb-v2","link":"#step-17-solder-resistors-on-pcb-v2","children":[]},{"level":2,"title":"Solder LEDs on PCB V2","slug":"solder-leds-on-pcb-v2","link":"#solder-leds-on-pcb-v2","children":[]},{"level":2,"title":"Wire up the PCBs V2","slug":"wire-up-the-pcbs-v2","link":"#wire-up-the-pcbs-v2","children":[]}],"relativePath":"archive/fox_ir_v2_build_instructions.md","lastUpdated":1676223729000}'),T={name:"archive/fox_ir_v2_build_instructions.md"},N=Object.assign(T,{setup(D){return(E,y)=>(r(),l("div",null,[p,a,_,c,s(o,{options:i(t).fox_ir_build_instructions_one},null,8,["options"]),h,s(o,{options:i(t).fox_ir_build_instructions_two},null,8,["options"]),u,s(o,{options:i(t).fox_ir_build_instructions_three},null,8,["options"]),f,s(o,{options:i(t).fox_ir_build_instructions_four},null,8,["options"]),b,s(o,{options:i(t).fox_ir_build_instructions_five},null,8,["options"]),v,s(o,{options:i(t).fox_ir_build_instructions_six},null,8,["options"]),m,s(o,{options:i(t).fox_ir_build_instructions_seven},null,8,["options"]),g,s(o,{options:i(t).fox_ir_build_instructions_eight},null,8,["options"]),x,s(o,{options:i(t).fox_ir_build_instructions_nine},null,8,["options"]),P,s(o,{options:i(t).fox_ir_build_instructions_ten},null,8,["options"]),B,s(o,{options:i(t).fox_ir_build_instructions_eleven},null,8,["options"]),V,s(o,{options:i(t).fox_ir_build_instructions_twelve},null,8,["options"]),C,S,s(o,{options:i(t).fox_ir_build_instructions_thirteen},null,8,["options"]),w]))}});export{L as __pageData,N as default};
import{_ as o,i as t}from"./chunks/index.0fdcdf9b.js";import{o as r,c as l,a as s,u as i,g as e,b as n,h as d}from"./app.0fb3db86.js";const p=e("h1",{class:"text-[var(--font-accent)]",id:"fox-ir-v2-buil-dinstructions",tabindex:"-1"},[n("Fox IR V2 Buil dInstructions "),e("a",{class:"header-anchor",href:"#fox-ir-v2-buil-dinstructions","aria-hidden":"true"},"#")],-1),a=e("h2",{id:"step-15-prepare-to-solder-ir-led-pcb-v2s",tabindex:"-1"},[n("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-hidden":"true"},"#")],-1),_=e("p",null,"Get your magnifying glass out, it's time to solder very smol things.",-1),c=e("p",null,"Gather 4 PCBs, 4 IR LEDs, and 2 ~700ohm resistors.",-1),h=e("p",null,"Here are the PCB pin-out labels:",-1),u=e("p",null,"LED labels:",-1),f=d('<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-hidden="true">#</a></h2><p>You only need 1 PCB to have a resistor per eye.</p>',10),b=e("p",null,"Tin the resistor pads.",-1),v=e("p",null,"Hold the resistor in place.",-1),m=e("p",null,"Solder one end.",-1),g=e("p",null,"Flip to the other side of the resistor and solder it.",-1),x=e("h2",{id:"solder-leds-on-pcb-v2",tabindex:"-1"},[n("Solder LEDs on PCB V2 "),e("a",{class:"header-anchor",href:"#solder-leds-on-pcb-v2","aria-hidden":"true"},"#")],-1),P=e("p",null,"Tin the pads",-1),B=e("p",null,"Place the resistor on the pads in the correct orientation.",-1),V=e("p",null,[n("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"),n(".")],-1),C=e("h2",{id:"wire-up-the-pcbs-v2",tabindex:"-1"},[n("Wire up the PCBs V2 "),e("a",{class:"header-anchor",href:"#wire-up-the-pcbs-v2","aria-hidden":"true"},"#")],-1),S=e("p",null,"Basic full wiring diagram of IR PCBs V2.",-1),w=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),L=JSON.parse('{"title":"Fox IR V2 Buil dInstructions","description":"","frontmatter":{},"headers":[{"level":2,"title":"Step 15: Prepare to solder IR LED PCB V2s","slug":"step-15-prepare-to-solder-ir-led-pcb-v2s","link":"#step-15-prepare-to-solder-ir-led-pcb-v2s","children":[]},{"level":2,"title":"Step 17: Solder resistors on PCB V2","slug":"step-17-solder-resistors-on-pcb-v2","link":"#step-17-solder-resistors-on-pcb-v2","children":[]},{"level":2,"title":"Solder LEDs on PCB V2","slug":"solder-leds-on-pcb-v2","link":"#solder-leds-on-pcb-v2","children":[]},{"level":2,"title":"Wire up the PCBs V2","slug":"wire-up-the-pcbs-v2","link":"#wire-up-the-pcbs-v2","children":[]}],"relativePath":"archive/fox_ir_v2_build_instructions.md","lastUpdated":1676223729000}'),T={name:"archive/fox_ir_v2_build_instructions.md"},N=Object.assign(T,{setup(D){return(E,y)=>(r(),l("div",null,[p,a,_,c,s(o,{options:i(t).fox_ir_build_instructions_one},null,8,["options"]),h,s(o,{options:i(t).fox_ir_build_instructions_two},null,8,["options"]),u,s(o,{options:i(t).fox_ir_build_instructions_three},null,8,["options"]),f,s(o,{options:i(t).fox_ir_build_instructions_four},null,8,["options"]),b,s(o,{options:i(t).fox_ir_build_instructions_five},null,8,["options"]),v,s(o,{options:i(t).fox_ir_build_instructions_six},null,8,["options"]),m,s(o,{options:i(t).fox_ir_build_instructions_seven},null,8,["options"]),g,s(o,{options:i(t).fox_ir_build_instructions_eight},null,8,["options"]),x,s(o,{options:i(t).fox_ir_build_instructions_nine},null,8,["options"]),P,s(o,{options:i(t).fox_ir_build_instructions_ten},null,8,["options"]),B,s(o,{options:i(t).fox_ir_build_instructions_eleven},null,8,["options"]),V,s(o,{options:i(t).fox_ir_build_instructions_twelve},null,8,["options"]),C,S,s(o,{options:i(t).fox_ir_build_instructions_thirteen},null,8,["options"]),w]))}});export{L as __pageData,N as default};

View File

@ -1 +1 @@
import{_ as o,i as t}from"./chunks/index.150e11f2.js";import{o as r,c as l,a as s,u as i,g as e,b as n,h as d}from"./app.106a9488.js";const p=e("h1",{class:"text-[var(--font-accent)]",id:"fox-ir-v2-buil-dinstructions",tabindex:"-1"},[n("Fox IR V2 Buil dInstructions "),e("a",{class:"header-anchor",href:"#fox-ir-v2-buil-dinstructions","aria-hidden":"true"},"#")],-1),a=e("h2",{id:"step-15-prepare-to-solder-ir-led-pcb-v2s",tabindex:"-1"},[n("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-hidden":"true"},"#")],-1),_=e("p",null,"Get your magnifying glass out, it's time to solder very smol things.",-1),c=e("p",null,"Gather 4 PCBs, 4 IR LEDs, and 2 ~700ohm resistors.",-1),h=e("p",null,"Here are the PCB pin-out labels:",-1),u=e("p",null,"LED labels:",-1),f=d("",10),b=e("p",null,"Tin the resistor pads.",-1),v=e("p",null,"Hold the resistor in place.",-1),m=e("p",null,"Solder one end.",-1),g=e("p",null,"Flip to the other side of the resistor and solder it.",-1),x=e("h2",{id:"solder-leds-on-pcb-v2",tabindex:"-1"},[n("Solder LEDs on PCB V2 "),e("a",{class:"header-anchor",href:"#solder-leds-on-pcb-v2","aria-hidden":"true"},"#")],-1),P=e("p",null,"Tin the pads",-1),B=e("p",null,"Place the resistor on the pads in the correct orientation.",-1),V=e("p",null,[n("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"),n(".")],-1),C=e("h2",{id:"wire-up-the-pcbs-v2",tabindex:"-1"},[n("Wire up the PCBs V2 "),e("a",{class:"header-anchor",href:"#wire-up-the-pcbs-v2","aria-hidden":"true"},"#")],-1),S=e("p",null,"Basic full wiring diagram of IR PCBs V2.",-1),w=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),L=JSON.parse('{"title":"Fox IR V2 Buil dInstructions","description":"","frontmatter":{},"headers":[{"level":2,"title":"Step 15: Prepare to solder IR LED PCB V2s","slug":"step-15-prepare-to-solder-ir-led-pcb-v2s","link":"#step-15-prepare-to-solder-ir-led-pcb-v2s","children":[]},{"level":2,"title":"Step 17: Solder resistors on PCB V2","slug":"step-17-solder-resistors-on-pcb-v2","link":"#step-17-solder-resistors-on-pcb-v2","children":[]},{"level":2,"title":"Solder LEDs on PCB V2","slug":"solder-leds-on-pcb-v2","link":"#solder-leds-on-pcb-v2","children":[]},{"level":2,"title":"Wire up the PCBs V2","slug":"wire-up-the-pcbs-v2","link":"#wire-up-the-pcbs-v2","children":[]}],"relativePath":"archive/fox_ir_v2_build_instructions.md","lastUpdated":1676223729000}'),T={name:"archive/fox_ir_v2_build_instructions.md"},N=Object.assign(T,{setup(D){return(E,y)=>(r(),l("div",null,[p,a,_,c,s(o,{options:i(t).fox_ir_build_instructions_one},null,8,["options"]),h,s(o,{options:i(t).fox_ir_build_instructions_two},null,8,["options"]),u,s(o,{options:i(t).fox_ir_build_instructions_three},null,8,["options"]),f,s(o,{options:i(t).fox_ir_build_instructions_four},null,8,["options"]),b,s(o,{options:i(t).fox_ir_build_instructions_five},null,8,["options"]),v,s(o,{options:i(t).fox_ir_build_instructions_six},null,8,["options"]),m,s(o,{options:i(t).fox_ir_build_instructions_seven},null,8,["options"]),g,s(o,{options:i(t).fox_ir_build_instructions_eight},null,8,["options"]),x,s(o,{options:i(t).fox_ir_build_instructions_nine},null,8,["options"]),P,s(o,{options:i(t).fox_ir_build_instructions_ten},null,8,["options"]),B,s(o,{options:i(t).fox_ir_build_instructions_eleven},null,8,["options"]),V,s(o,{options:i(t).fox_ir_build_instructions_twelve},null,8,["options"]),C,S,s(o,{options:i(t).fox_ir_build_instructions_thirteen},null,8,["options"]),w]))}});export{L as __pageData,N as default};
import{_ as o,i as t}from"./chunks/index.0fdcdf9b.js";import{o as r,c as l,a as s,u as i,g as e,b as n,h as d}from"./app.0fb3db86.js";const p=e("h1",{class:"text-[var(--font-accent)]",id:"fox-ir-v2-buil-dinstructions",tabindex:"-1"},[n("Fox IR V2 Buil dInstructions "),e("a",{class:"header-anchor",href:"#fox-ir-v2-buil-dinstructions","aria-hidden":"true"},"#")],-1),a=e("h2",{id:"step-15-prepare-to-solder-ir-led-pcb-v2s",tabindex:"-1"},[n("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-hidden":"true"},"#")],-1),_=e("p",null,"Get your magnifying glass out, it's time to solder very smol things.",-1),c=e("p",null,"Gather 4 PCBs, 4 IR LEDs, and 2 ~700ohm resistors.",-1),h=e("p",null,"Here are the PCB pin-out labels:",-1),u=e("p",null,"LED labels:",-1),f=d("",10),b=e("p",null,"Tin the resistor pads.",-1),v=e("p",null,"Hold the resistor in place.",-1),m=e("p",null,"Solder one end.",-1),g=e("p",null,"Flip to the other side of the resistor and solder it.",-1),x=e("h2",{id:"solder-leds-on-pcb-v2",tabindex:"-1"},[n("Solder LEDs on PCB V2 "),e("a",{class:"header-anchor",href:"#solder-leds-on-pcb-v2","aria-hidden":"true"},"#")],-1),P=e("p",null,"Tin the pads",-1),B=e("p",null,"Place the resistor on the pads in the correct orientation.",-1),V=e("p",null,[n("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"),n(".")],-1),C=e("h2",{id:"wire-up-the-pcbs-v2",tabindex:"-1"},[n("Wire up the PCBs V2 "),e("a",{class:"header-anchor",href:"#wire-up-the-pcbs-v2","aria-hidden":"true"},"#")],-1),S=e("p",null,"Basic full wiring diagram of IR PCBs V2.",-1),w=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),L=JSON.parse('{"title":"Fox IR V2 Buil dInstructions","description":"","frontmatter":{},"headers":[{"level":2,"title":"Step 15: Prepare to solder IR LED PCB V2s","slug":"step-15-prepare-to-solder-ir-led-pcb-v2s","link":"#step-15-prepare-to-solder-ir-led-pcb-v2s","children":[]},{"level":2,"title":"Step 17: Solder resistors on PCB V2","slug":"step-17-solder-resistors-on-pcb-v2","link":"#step-17-solder-resistors-on-pcb-v2","children":[]},{"level":2,"title":"Solder LEDs on PCB V2","slug":"solder-leds-on-pcb-v2","link":"#solder-leds-on-pcb-v2","children":[]},{"level":2,"title":"Wire up the PCBs V2","slug":"wire-up-the-pcbs-v2","link":"#wire-up-the-pcbs-v2","children":[]}],"relativePath":"archive/fox_ir_v2_build_instructions.md","lastUpdated":1676223729000}'),T={name:"archive/fox_ir_v2_build_instructions.md"},N=Object.assign(T,{setup(D){return(E,y)=>(r(),l("div",null,[p,a,_,c,s(o,{options:i(t).fox_ir_build_instructions_one},null,8,["options"]),h,s(o,{options:i(t).fox_ir_build_instructions_two},null,8,["options"]),u,s(o,{options:i(t).fox_ir_build_instructions_three},null,8,["options"]),f,s(o,{options:i(t).fox_ir_build_instructions_four},null,8,["options"]),b,s(o,{options:i(t).fox_ir_build_instructions_five},null,8,["options"]),v,s(o,{options:i(t).fox_ir_build_instructions_six},null,8,["options"]),m,s(o,{options:i(t).fox_ir_build_instructions_seven},null,8,["options"]),g,s(o,{options:i(t).fox_ir_build_instructions_eight},null,8,["options"]),x,s(o,{options:i(t).fox_ir_build_instructions_nine},null,8,["options"]),P,s(o,{options:i(t).fox_ir_build_instructions_ten},null,8,["options"]),B,s(o,{options:i(t).fox_ir_build_instructions_eleven},null,8,["options"]),V,s(o,{options:i(t).fox_ir_build_instructions_twelve},null,8,["options"]),C,S,s(o,{options:i(t).fox_ir_build_instructions_thirteen},null,8,["options"]),w]))}});export{L as __pageData,N as default};

View File

@ -1 +1 @@
import{_ as l,o as n,c as i,g as o,k as r,j as c,p as d,v as p}from"../app.106a9488.js";const u={data(){return{isOpen:!1}},methods:{toggleAccordion(){this.isOpen=!this.isOpen}}},_=["aria-expanded","aria-controls"],h=o("path",{d:"M15 1.2l-7 7-7-7","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},null,-1),f=[h],m=["id"];function v(e,t,w,g,s,a){return n(),i("div",null,[o("button",{onClick:t[0]||(t[0]=k=>a.toggleAccordion()),class:"flex items-center space-x-3","aria-expanded":s.isOpen,"aria-controls":`collapse${e._uid}`},[r(e.$slots,"title"),(n(),i("svg",{class:c(["w-3 transition-all duration-200 transform",{"rotate-180":s.isOpen,"rotate-0":!s.isOpen}]),fill:"none",stroke:"currentColor",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 10","aria-hidden":"true"},f,2))],8,_),d(o("div",{id:`collapse${e._uid}`},[r(e.$slots,"content")],8,m),[[p,s.isOpen]])])}const x=l(u,[["render",v]]);export{x as A};
import{_ as l,o as n,c as i,g as o,k as r,j as c,p as d,v as p}from"../app.0fb3db86.js";const u={data(){return{isOpen:!1}},methods:{toggleAccordion(){this.isOpen=!this.isOpen}}},_=["aria-expanded","aria-controls"],h=o("path",{d:"M15 1.2l-7 7-7-7","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},null,-1),f=[h],m=["id"];function v(e,t,w,g,s,a){return n(),i("div",null,[o("button",{onClick:t[0]||(t[0]=k=>a.toggleAccordion()),class:"flex items-center space-x-3","aria-expanded":s.isOpen,"aria-controls":`collapse${e._uid}`},[r(e.$slots,"title"),(n(),i("svg",{class:c(["w-3 transition-all duration-200 transform",{"rotate-180":s.isOpen,"rotate-0":!s.isOpen}]),fill:"none",stroke:"currentColor",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 10","aria-hidden":"true"},f,2))],8,_),d(o("div",{id:`collapse${e._uid}`},[r(e.$slots,"content")],8,m),[[p,s.isOpen]])])}const x=l(u,[["render",v]]);export{x as A};

View File

@ -1 +1 @@
import{o as e,c as t,g as o,F as _,r as a,t as n}from"../app.106a9488.js";const i={class:"checkboxes"},r={style:{"list-style":"none"}},h={key:0},k=o("input",{type:"checkbox",checked:""},null,-1),d={key:0},p=["href"],u={key:1},b={key:1},y=o("input",{type:"checkbox",unchecked:""},null,-1),f={key:0},x=["href"],g={key:1},L={__name:"CheckBoxList",props:["options"],setup(c){const l=c;return(B,v)=>(e(),t("div",i,[o("ul",r,[(e(!0),t(_,null,a(l.options.object,s=>(e(),t("li",null,[l.options.state?(e(),t("div",h,[k,s.link!==null||l.link!==""?(e(),t("label",d,[o("a",{href:s.link,target:"_blank"},n(s.label),9,p)])):(e(),t("label",u,n(s.label),1))])):(e(),t("div",b,[y,s.link!==null||l.link!==""?(e(),t("label",f,[o("a",{href:s.link,target:"_blank"},n(s.label),9,x)])):(e(),t("label",g,n(s.label),1))]))]))),256))])]))}};export{L as _};
import{o as e,c as t,g as o,F as _,r as a,t as n}from"../app.0fb3db86.js";const i={class:"checkboxes"},r={style:{"list-style":"none"}},h={key:0},k=o("input",{type:"checkbox",checked:""},null,-1),d={key:0},p=["href"],u={key:1},b={key:1},y=o("input",{type:"checkbox",unchecked:""},null,-1),f={key:0},x=["href"],g={key:1},L={__name:"CheckBoxList",props:["options"],setup(c){const l=c;return(B,v)=>(e(),t("div",i,[o("ul",r,[(e(!0),t(_,null,a(l.options.object,s=>(e(),t("li",null,[l.options.state?(e(),t("div",h,[k,s.link!==null||l.link!==""?(e(),t("label",d,[o("a",{href:s.link,target:"_blank"},n(s.label),9,p)])):(e(),t("label",u,n(s.label),1))])):(e(),t("div",b,[y,s.link!==null||l.link!==""?(e(),t("label",f,[o("a",{href:s.link,target:"_blank"},n(s.label),9,x)])):(e(),t("label",g,n(s.label),1))]))]))),256))])]))}};export{L as _};

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
import{o as n,c as r,g as e,a as s,t as i,j as o,k as _,l as x}from"../app.106a9488.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,g)=>{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,g as e,a as s,t as i,j as o,k as _,l as x}from"../app.0fb3db86.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,g)=>{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

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
import{_ as t,o as a,c as o,g as e,b as s}from"./app.106a9488.js";const f=JSON.parse('{"title":"","description":"","frontmatter":{},"headers":[],"relativePath":"contact.md","lastUpdated":1673564209000}'),r={name:"contact.md"},c=e("div",{align:"center",class:"rounded-md"},[e("h1",{class:"text-[#ab5ac7]"},"Contact Us"),e("br"),s(" Please join our Discord for updates and any questions. "),e("br"),e("br"),e("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),d=[c];function n(i,l,p,_,m,u){return a(),o("div",null,d)}const b=t(r,[["render",n]]);export{f as __pageData,b as default};
import{_ as t,o as a,c as o,g as e,b as s}from"./app.0fb3db86.js";const f=JSON.parse('{"title":"","description":"","frontmatter":{},"headers":[],"relativePath":"contact.md","lastUpdated":1673564209000}'),r={name:"contact.md"},c=e("div",{align:"center",class:"rounded-md"},[e("h1",{class:"text-[#ab5ac7]"},"Contact Us"),e("br"),s(" Please join our Discord for updates and any questions. "),e("br"),e("br"),e("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),d=[c];function n(i,l,p,_,m,u){return a(),o("div",null,d)}const b=t(r,[["render",n]]);export{f as __pageData,b as default};

View File

@ -1 +1 @@
import{_ as t,o as a,c as o,g as e,b as s}from"./app.106a9488.js";const f=JSON.parse('{"title":"","description":"","frontmatter":{},"headers":[],"relativePath":"contact.md","lastUpdated":1673564209000}'),r={name:"contact.md"},c=e("div",{align:"center",class:"rounded-md"},[e("h1",{class:"text-[#ab5ac7]"},"Contact Us"),e("br"),s(" Please join our Discord for updates and any questions. "),e("br"),e("br"),e("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),d=[c];function n(i,l,p,_,m,u){return a(),o("div",null,d)}const b=t(r,[["render",n]]);export{f as __pageData,b as default};
import{_ as t,o as a,c as o,g as e,b as s}from"./app.0fb3db86.js";const f=JSON.parse('{"title":"","description":"","frontmatter":{},"headers":[],"relativePath":"contact.md","lastUpdated":1673564209000}'),r={name:"contact.md"},c=e("div",{align:"center",class:"rounded-md"},[e("h1",{class:"text-[#ab5ac7]"},"Contact Us"),e("br"),s(" Please join our Discord for updates and any questions. "),e("br"),e("br"),e("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),d=[c];function n(i,l,p,_,m,u){return a(),o("div",null,d)}const b=t(r,[["render",n]]);export{f as __pageData,b as default};

View File

@ -1 +1 @@
import{_ as t}from"./chunks/CheckBoxList.2de66a28.js";import{o,c as r,a as l,u as n,g as e,b as a}from"./app.106a9488.js";const s={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"}]},i={state:!1,object:[{label:"Variable eye openness tracking"},{label:"Release of V1 to the masses"},{label:"Auto ROI cropping"},{label:"Auto threshold's"},{label:"Setup flashing of ESPs through anything other than VSC"},{label:"New GUI"},{label:"Power regulator board"},{label:"New IR LED PCB (only for the power reg board)"}]},d={state:!1,object:[{label:"Support for binary parameters"},{label:"Dynamic foveated rendering via OpenXR (not a guarantee)"},{label:"Custom ESP-CAM boards"}]},c=e("h1",{class:"text-[var(--font-accent)]",id:"eyetrackvr-development-roadmap",tabindex:"-1"},[a("EyeTrackVR Development Roadmap "),e("a",{class:"header-anchor",href:"#eyetrackvr-development-roadmap","aria-hidden":"true"},"#")],-1),p=e("p",null,"This will contain a list of features that are in progress, completed, and planned.",-1),h=e("h2",{id:"completed",tabindex:"-1"},[a("Completed "),e("a",{class:"header-anchor",href:"#completed","aria-hidden":"true"},"#")],-1),m=e("h2",{id:"in-progress",tabindex:"-1"},[a("In Progress "),e("a",{class:"header-anchor",href:"#in-progress","aria-hidden":"true"},"#")],-1),u=e("h2",{id:"planned",tabindex:"-1"},[a("Planned "),e("a",{class:"header-anchor",href:"#planned","aria-hidden":"true"},"#")],-1),k=JSON.parse('{"title":"EyeTrackVR Development Roadmap","description":"","frontmatter":{},"headers":[{"level":2,"title":"Completed","slug":"completed","link":"#completed","children":[]},{"level":2,"title":"In Progress","slug":"in-progress","link":"#in-progress","children":[]},{"level":2,"title":"Planned","slug":"planned","link":"#planned","children":[]}],"relativePath":"dev_roadmap.md","lastUpdated":1676223729000}'),b={name:"dev_roadmap.md"},y=Object.assign(b,{setup(g){return(_,f)=>(o(),r("div",null,[c,p,h,l(t,{options:{...n(s)}},null,8,["options"]),m,l(t,{options:{...n(i)}},null,8,["options"]),u,l(t,{options:{...n(d)}},null,8,["options"])]))}});export{k as __pageData,y as default};
import{_ as t}from"./chunks/CheckBoxList.2ee05eca.js";import{o,c as r,a as l,u as n,g as e,b as a}from"./app.0fb3db86.js";const s={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"}]},i={state:!1,object:[{label:"Variable eye openness tracking"},{label:"Release of V1 to the masses"},{label:"Auto ROI cropping"},{label:"Auto threshold's"},{label:"Setup flashing of ESPs through anything other than VSC"},{label:"New GUI"},{label:"Power regulator board"},{label:"New IR LED PCB (only for the power reg board)"}]},d={state:!1,object:[{label:"Support for binary parameters"},{label:"Dynamic foveated rendering via OpenXR (not a guarantee)"},{label:"Custom ESP-CAM boards"}]},c=e("h1",{class:"text-[var(--font-accent)]",id:"eyetrackvr-development-roadmap",tabindex:"-1"},[a("EyeTrackVR Development Roadmap "),e("a",{class:"header-anchor",href:"#eyetrackvr-development-roadmap","aria-hidden":"true"},"#")],-1),p=e("p",null,"This will contain a list of features that are in progress, completed, and planned.",-1),h=e("h2",{id:"completed",tabindex:"-1"},[a("Completed "),e("a",{class:"header-anchor",href:"#completed","aria-hidden":"true"},"#")],-1),m=e("h2",{id:"in-progress",tabindex:"-1"},[a("In Progress "),e("a",{class:"header-anchor",href:"#in-progress","aria-hidden":"true"},"#")],-1),u=e("h2",{id:"planned",tabindex:"-1"},[a("Planned "),e("a",{class:"header-anchor",href:"#planned","aria-hidden":"true"},"#")],-1),k=JSON.parse('{"title":"EyeTrackVR Development Roadmap","description":"","frontmatter":{},"headers":[{"level":2,"title":"Completed","slug":"completed","link":"#completed","children":[]},{"level":2,"title":"In Progress","slug":"in-progress","link":"#in-progress","children":[]},{"level":2,"title":"Planned","slug":"planned","link":"#planned","children":[]}],"relativePath":"dev_roadmap.md","lastUpdated":1676223729000}'),b={name:"dev_roadmap.md"},y=Object.assign(b,{setup(g){return(_,f)=>(o(),r("div",null,[c,p,h,l(t,{options:{...n(s)}},null,8,["options"]),m,l(t,{options:{...n(i)}},null,8,["options"]),u,l(t,{options:{...n(d)}},null,8,["options"])]))}});export{k as __pageData,y as default};

View File

@ -1 +1 @@
import{_ as t}from"./chunks/CheckBoxList.2de66a28.js";import{o,c as r,a as l,u as n,g as e,b as a}from"./app.106a9488.js";const s={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"}]},i={state:!1,object:[{label:"Variable eye openness tracking"},{label:"Release of V1 to the masses"},{label:"Auto ROI cropping"},{label:"Auto threshold's"},{label:"Setup flashing of ESPs through anything other than VSC"},{label:"New GUI"},{label:"Power regulator board"},{label:"New IR LED PCB (only for the power reg board)"}]},d={state:!1,object:[{label:"Support for binary parameters"},{label:"Dynamic foveated rendering via OpenXR (not a guarantee)"},{label:"Custom ESP-CAM boards"}]},c=e("h1",{class:"text-[var(--font-accent)]",id:"eyetrackvr-development-roadmap",tabindex:"-1"},[a("EyeTrackVR Development Roadmap "),e("a",{class:"header-anchor",href:"#eyetrackvr-development-roadmap","aria-hidden":"true"},"#")],-1),p=e("p",null,"This will contain a list of features that are in progress, completed, and planned.",-1),h=e("h2",{id:"completed",tabindex:"-1"},[a("Completed "),e("a",{class:"header-anchor",href:"#completed","aria-hidden":"true"},"#")],-1),m=e("h2",{id:"in-progress",tabindex:"-1"},[a("In Progress "),e("a",{class:"header-anchor",href:"#in-progress","aria-hidden":"true"},"#")],-1),u=e("h2",{id:"planned",tabindex:"-1"},[a("Planned "),e("a",{class:"header-anchor",href:"#planned","aria-hidden":"true"},"#")],-1),k=JSON.parse('{"title":"EyeTrackVR Development Roadmap","description":"","frontmatter":{},"headers":[{"level":2,"title":"Completed","slug":"completed","link":"#completed","children":[]},{"level":2,"title":"In Progress","slug":"in-progress","link":"#in-progress","children":[]},{"level":2,"title":"Planned","slug":"planned","link":"#planned","children":[]}],"relativePath":"dev_roadmap.md","lastUpdated":1676223729000}'),b={name:"dev_roadmap.md"},y=Object.assign(b,{setup(g){return(_,f)=>(o(),r("div",null,[c,p,h,l(t,{options:{...n(s)}},null,8,["options"]),m,l(t,{options:{...n(i)}},null,8,["options"]),u,l(t,{options:{...n(d)}},null,8,["options"])]))}});export{k as __pageData,y as default};
import{_ as t}from"./chunks/CheckBoxList.2ee05eca.js";import{o,c as r,a as l,u as n,g as e,b as a}from"./app.0fb3db86.js";const s={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"}]},i={state:!1,object:[{label:"Variable eye openness tracking"},{label:"Release of V1 to the masses"},{label:"Auto ROI cropping"},{label:"Auto threshold's"},{label:"Setup flashing of ESPs through anything other than VSC"},{label:"New GUI"},{label:"Power regulator board"},{label:"New IR LED PCB (only for the power reg board)"}]},d={state:!1,object:[{label:"Support for binary parameters"},{label:"Dynamic foveated rendering via OpenXR (not a guarantee)"},{label:"Custom ESP-CAM boards"}]},c=e("h1",{class:"text-[var(--font-accent)]",id:"eyetrackvr-development-roadmap",tabindex:"-1"},[a("EyeTrackVR Development Roadmap "),e("a",{class:"header-anchor",href:"#eyetrackvr-development-roadmap","aria-hidden":"true"},"#")],-1),p=e("p",null,"This will contain a list of features that are in progress, completed, and planned.",-1),h=e("h2",{id:"completed",tabindex:"-1"},[a("Completed "),e("a",{class:"header-anchor",href:"#completed","aria-hidden":"true"},"#")],-1),m=e("h2",{id:"in-progress",tabindex:"-1"},[a("In Progress "),e("a",{class:"header-anchor",href:"#in-progress","aria-hidden":"true"},"#")],-1),u=e("h2",{id:"planned",tabindex:"-1"},[a("Planned "),e("a",{class:"header-anchor",href:"#planned","aria-hidden":"true"},"#")],-1),k=JSON.parse('{"title":"EyeTrackVR Development Roadmap","description":"","frontmatter":{},"headers":[{"level":2,"title":"Completed","slug":"completed","link":"#completed","children":[]},{"level":2,"title":"In Progress","slug":"in-progress","link":"#in-progress","children":[]},{"level":2,"title":"Planned","slug":"planned","link":"#planned","children":[]}],"relativePath":"dev_roadmap.md","lastUpdated":1676223729000}'),b={name:"dev_roadmap.md"},y=Object.assign(b,{setup(g){return(_,f)=>(o(),r("div",null,[c,p,h,l(t,{options:{...n(s)}},null,8,["options"]),m,l(t,{options:{...n(i)}},null,8,["options"]),u,l(t,{options:{...n(d)}},null,8,["options"])]))}});export{k as __pageData,y as default};

View File

@ -1,4 +1,4 @@
import{_ as e,o as a,c as t,h as s}from"./app.106a9488.js";const m=JSON.parse('{"title":"Development Documentation for the EyeTrackVR Docs Site","description":"","frontmatter":{},"headers":[{"level":2,"title":"Getting Started","slug":"getting-started","link":"#getting-started","children":[{"level":3,"title":"Prerequisites","slug":"prerequisites","link":"#prerequisites","children":[]},{"level":3,"title":"Installation","slug":"installation","link":"#installation","children":[]}]},{"level":2,"title":"Contributing","slug":"contributing","link":"#contributing","children":[{"level":3,"title":"Project Structure","slug":"project-structure","link":"#project-structure","children":[]}]}],"relativePath":"development/docs/dev_docs.md","lastUpdated":1677868200000}'),r={name:"development/docs/dev_docs.md"},n=s(`<h1 id="development-documentation-for-the-eyetrackvr-docs-site" tabindex="-1">Development Documentation for the EyeTrackVR Docs Site <a class="header-anchor" href="#development-documentation-for-the-eyetrackvr-docs-site" aria-hidden="true">#</a></h1><p>This is the documentation for the EyeTrackVR Docs site. It is built using <a href="https://vitepress.vuejs.org/" target="_blank" rel="noreferrer">VitePress</a>.</p><h2 id="getting-started" tabindex="-1">Getting Started <a class="header-anchor" href="#getting-started" aria-hidden="true">#</a></h2><h3 id="prerequisites" tabindex="-1">Prerequisites <a class="header-anchor" href="#prerequisites" aria-hidden="true">#</a></h3><ul><li><a href="https://nodejs.org/en/" target="_blank" rel="noreferrer">Node.js</a> (v14.15.4 or higher)</li><li><a href="https://yarnpkg.com/" target="_blank" rel="noreferrer">Yarn</a> (v1.22.10 or higher)</li><li><a href="https://git-scm.com/" target="_blank" rel="noreferrer">Git</a> (v2.30.1 or higher)</li><li><a href="https://code.visualstudio.com/" target="_blank" rel="noreferrer">VSCode</a> (v1.56.2 or higher)</li></ul><h3 id="installation" tabindex="-1">Installation <a class="header-anchor" href="#installation" aria-hidden="true">#</a></h3><ol><li><p>Clone the repo</p><div class="language-sh line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">sh</span><pre class="shiki material-palenight"><code><span class="line"><span style="color:#FFCB6B;">git</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">clone</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">https://github.com/RedHawk989/EyeTrackVR-Docs.git</span></span>
import{_ as e,o as a,c as t,h as s}from"./app.0fb3db86.js";const m=JSON.parse('{"title":"Development Documentation for the EyeTrackVR Docs Site","description":"","frontmatter":{},"headers":[{"level":2,"title":"Getting Started","slug":"getting-started","link":"#getting-started","children":[{"level":3,"title":"Prerequisites","slug":"prerequisites","link":"#prerequisites","children":[]},{"level":3,"title":"Installation","slug":"installation","link":"#installation","children":[]}]},{"level":2,"title":"Contributing","slug":"contributing","link":"#contributing","children":[{"level":3,"title":"Project Structure","slug":"project-structure","link":"#project-structure","children":[]}]}],"relativePath":"development/docs/dev_docs.md","lastUpdated":1677868200000}'),r={name:"development/docs/dev_docs.md"},n=s(`<h1 id="development-documentation-for-the-eyetrackvr-docs-site" tabindex="-1">Development Documentation for the EyeTrackVR Docs Site <a class="header-anchor" href="#development-documentation-for-the-eyetrackvr-docs-site" aria-hidden="true">#</a></h1><p>This is the documentation for the EyeTrackVR Docs site. It is built using <a href="https://vitepress.vuejs.org/" target="_blank" rel="noreferrer">VitePress</a>.</p><h2 id="getting-started" tabindex="-1">Getting Started <a class="header-anchor" href="#getting-started" aria-hidden="true">#</a></h2><h3 id="prerequisites" tabindex="-1">Prerequisites <a class="header-anchor" href="#prerequisites" aria-hidden="true">#</a></h3><ul><li><a href="https://nodejs.org/en/" target="_blank" rel="noreferrer">Node.js</a> (v14.15.4 or higher)</li><li><a href="https://yarnpkg.com/" target="_blank" rel="noreferrer">Yarn</a> (v1.22.10 or higher)</li><li><a href="https://git-scm.com/" target="_blank" rel="noreferrer">Git</a> (v2.30.1 or higher)</li><li><a href="https://code.visualstudio.com/" target="_blank" rel="noreferrer">VSCode</a> (v1.56.2 or higher)</li></ul><h3 id="installation" tabindex="-1">Installation <a class="header-anchor" href="#installation" aria-hidden="true">#</a></h3><ol><li><p>Clone the repo</p><div class="language-sh line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">sh</span><pre class="shiki material-palenight"><code><span class="line"><span style="color:#FFCB6B;">git</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">clone</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">https://github.com/RedHawk989/EyeTrackVR-Docs.git</span></span>
<span class="line"></span></code></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br></div></div></li><li><p>Navigate to the <code>vitepress</code> folder</p><div class="language-sh line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">sh</span><pre class="shiki material-palenight"><code><span class="line"><span style="color:#82AAFF;">cd</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">vitepress</span></span>
<span class="line"></span></code></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br></div></div></li><li><p>Install Yarn packages</p><div class="language-sh line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">sh</span><pre class="shiki material-palenight"><code><span class="line"><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">yarn</span></span>
<span class="line"></span></code></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br></div></div></li><li><p>Start the dev server</p><div class="language-sh line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">sh</span><pre class="shiki material-palenight"><code><span class="line"><span style="color:#FFCB6B;">yarn</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">dev</span></span>

View File

@ -1 +1 @@
import{_ as e,o as a,c as t,h as s}from"./app.106a9488.js";const m=JSON.parse('{"title":"Development Documentation for the EyeTrackVR Docs Site","description":"","frontmatter":{},"headers":[{"level":2,"title":"Getting Started","slug":"getting-started","link":"#getting-started","children":[{"level":3,"title":"Prerequisites","slug":"prerequisites","link":"#prerequisites","children":[]},{"level":3,"title":"Installation","slug":"installation","link":"#installation","children":[]}]},{"level":2,"title":"Contributing","slug":"contributing","link":"#contributing","children":[{"level":3,"title":"Project Structure","slug":"project-structure","link":"#project-structure","children":[]}]}],"relativePath":"development/docs/dev_docs.md","lastUpdated":1677868200000}'),r={name:"development/docs/dev_docs.md"},n=s("",12),i=[n];function l(o,c,d,p,h,u){return a(),t("div",null,i)}const v=e(r,[["render",l]]);export{m as __pageData,v as default};
import{_ as e,o as a,c as t,h as s}from"./app.0fb3db86.js";const m=JSON.parse('{"title":"Development Documentation for the EyeTrackVR Docs Site","description":"","frontmatter":{},"headers":[{"level":2,"title":"Getting Started","slug":"getting-started","link":"#getting-started","children":[{"level":3,"title":"Prerequisites","slug":"prerequisites","link":"#prerequisites","children":[]},{"level":3,"title":"Installation","slug":"installation","link":"#installation","children":[]}]},{"level":2,"title":"Contributing","slug":"contributing","link":"#contributing","children":[{"level":3,"title":"Project Structure","slug":"project-structure","link":"#project-structure","children":[]}]}],"relativePath":"development/docs/dev_docs.md","lastUpdated":1677868200000}'),r={name:"development/docs/dev_docs.md"},n=s("",12),i=[n];function l(o,c,d,p,h,u){return a(),t("div",null,i)}const v=e(r,[["render",l]]);export{m as __pageData,v as default};

View File

@ -1,4 +1,4 @@
import{_ as e,o as s,c as a,h as n}from"./app.106a9488.js";const u=JSON.parse('{"title":"Pages","description":"","frontmatter":{},"headers":[{"level":2,"title":"Adding a Page","slug":"adding-a-page","link":"#adding-a-page","children":[{"level":3,"title":"Sub-directories","slug":"sub-directories","link":"#sub-directories","children":[]},{"level":3,"title":"Adding a Page to the Sidebar","slug":"adding-a-page-to-the-sidebar","link":"#adding-a-page-to-the-sidebar","children":[]},{"level":3,"title":"Title Style","slug":"title-style","link":"#title-style","children":[]}]},{"level":2,"title":"Editing a Page","slug":"editing-a-page","link":"#editing-a-page","children":[]}],"relativePath":"development/docs/pages.md","lastUpdated":1677868200000}'),o={name:"development/docs/pages.md"},l=n(`<h1 class="text-[var(--font-accent)]" id="pages" tabindex="-1">Pages <a class="header-anchor" href="#pages" aria-hidden="true">#</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-hidden="true">#</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-hidden="true">#</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-hidden="true">#</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-palenight"><code><span class="line"><span style="color:#89DDFF;">{</span></span>
import{_ as e,o as s,c as a,h as n}from"./app.0fb3db86.js";const u=JSON.parse('{"title":"Pages","description":"","frontmatter":{},"headers":[{"level":2,"title":"Adding a Page","slug":"adding-a-page","link":"#adding-a-page","children":[{"level":3,"title":"Sub-directories","slug":"sub-directories","link":"#sub-directories","children":[]},{"level":3,"title":"Adding a Page to the Sidebar","slug":"adding-a-page-to-the-sidebar","link":"#adding-a-page-to-the-sidebar","children":[]},{"level":3,"title":"Title Style","slug":"title-style","link":"#title-style","children":[]}]},{"level":2,"title":"Editing a Page","slug":"editing-a-page","link":"#editing-a-page","children":[]}],"relativePath":"development/docs/pages.md","lastUpdated":1677868200000}'),o={name:"development/docs/pages.md"},l=n(`<h1 class="text-[var(--font-accent)]" id="pages" tabindex="-1">Pages <a class="header-anchor" href="#pages" aria-hidden="true">#</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-hidden="true">#</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-hidden="true">#</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-hidden="true">#</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-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;">&quot;</span><span style="color:#C3E88D;">Getting Started</span><span style="color:#89DDFF;">&quot;</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>

View File

@ -1 +1 @@
import{_ as e,o as s,c as a,h as n}from"./app.106a9488.js";const u=JSON.parse('{"title":"Pages","description":"","frontmatter":{},"headers":[{"level":2,"title":"Adding a Page","slug":"adding-a-page","link":"#adding-a-page","children":[{"level":3,"title":"Sub-directories","slug":"sub-directories","link":"#sub-directories","children":[]},{"level":3,"title":"Adding a Page to the Sidebar","slug":"adding-a-page-to-the-sidebar","link":"#adding-a-page-to-the-sidebar","children":[]},{"level":3,"title":"Title Style","slug":"title-style","link":"#title-style","children":[]}]},{"level":2,"title":"Editing a Page","slug":"editing-a-page","link":"#editing-a-page","children":[]}],"relativePath":"development/docs/pages.md","lastUpdated":1677868200000}'),o={name:"development/docs/pages.md"},l=n("",24),t=[l];function p(c,r,i,d,y,F){return s(),a("div",null,t)}const D=e(o,[["render",p]]);export{u as __pageData,D as default};
import{_ as e,o as s,c as a,h as n}from"./app.0fb3db86.js";const u=JSON.parse('{"title":"Pages","description":"","frontmatter":{},"headers":[{"level":2,"title":"Adding a Page","slug":"adding-a-page","link":"#adding-a-page","children":[{"level":3,"title":"Sub-directories","slug":"sub-directories","link":"#sub-directories","children":[]},{"level":3,"title":"Adding a Page to the Sidebar","slug":"adding-a-page-to-the-sidebar","link":"#adding-a-page-to-the-sidebar","children":[]},{"level":3,"title":"Title Style","slug":"title-style","link":"#title-style","children":[]}]},{"level":2,"title":"Editing a Page","slug":"editing-a-page","link":"#editing-a-page","children":[]}],"relativePath":"development/docs/pages.md","lastUpdated":1677868200000}'),o={name:"development/docs/pages.md"},l=n("",24),t=[l];function p(c,r,i,d,y,F){return s(),a("div",null,t)}const D=e(o,[["render",p]]);export{u as __pageData,D as default};

View File

@ -1,4 +1,4 @@
import{_ as e,o as s,c as a,h as n}from"./app.106a9488.js";const y=JSON.parse('{"title":"Standards Guide","description":"","frontmatter":{},"headers":[{"level":2,"title":"Code Standards","slug":"code-standards","link":"#code-standards","children":[{"level":3,"title":"General","slug":"general","link":"#general","children":[]},{"level":3,"title":"Git Commit Style","slug":"git-commit-style","link":"#git-commit-style","children":[]}]}],"relativePath":"development/docs/standards.md","lastUpdated":1677868200000}'),t={name:"development/docs/standards.md"},o=n(`<h1 id="standards-guide" tabindex="-1">Standards Guide <a class="header-anchor" href="#standards-guide" aria-hidden="true">#</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-hidden="true">#</a></h2><h3 id="general" tabindex="-1">General <a class="header-anchor" href="#general" aria-hidden="true">#</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-hidden="true">#</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-palenight"><code><span class="line"><span style="color:#89DDFF;">&lt;</span><span style="color:#A6ACCD;">type</span><span style="color:#89DDFF;">&gt;[</span><span style="color:#A6ACCD;">optional scope</span><span style="color:#89DDFF;">]</span><span style="color:#A6ACCD;">: </span><span style="color:#89DDFF;">&lt;</span><span style="color:#A6ACCD;">description</span><span style="color:#89DDFF;">&gt;</span></span>
import{_ as e,o as s,c as a,h as n}from"./app.0fb3db86.js";const y=JSON.parse('{"title":"Standards Guide","description":"","frontmatter":{},"headers":[{"level":2,"title":"Code Standards","slug":"code-standards","link":"#code-standards","children":[{"level":3,"title":"General","slug":"general","link":"#general","children":[]},{"level":3,"title":"Git Commit Style","slug":"git-commit-style","link":"#git-commit-style","children":[]}]}],"relativePath":"development/docs/standards.md","lastUpdated":1677868200000}'),t={name:"development/docs/standards.md"},o=n(`<h1 id="standards-guide" tabindex="-1">Standards Guide <a class="header-anchor" href="#standards-guide" aria-hidden="true">#</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-hidden="true">#</a></h2><h3 id="general" tabindex="-1">General <a class="header-anchor" href="#general" aria-hidden="true">#</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-hidden="true">#</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-palenight"><code><span class="line"><span style="color:#89DDFF;">&lt;</span><span style="color:#A6ACCD;">type</span><span style="color:#89DDFF;">&gt;[</span><span style="color:#A6ACCD;">optional scope</span><span style="color:#89DDFF;">]</span><span style="color:#A6ACCD;">: </span><span style="color:#89DDFF;">&lt;</span><span style="color:#A6ACCD;">description</span><span style="color:#89DDFF;">&gt;</span></span>
<span class="line"></span>
<span class="line"><span style="color:#89DDFF;">[</span><span style="color:#A6ACCD;">optional body</span><span style="color:#89DDFF;">]</span></span>
<span class="line"></span>

View File

@ -1 +1 @@
import{_ as e,o as s,c as a,h as n}from"./app.106a9488.js";const y=JSON.parse('{"title":"Standards Guide","description":"","frontmatter":{},"headers":[{"level":2,"title":"Code Standards","slug":"code-standards","link":"#code-standards","children":[{"level":3,"title":"General","slug":"general","link":"#general","children":[]},{"level":3,"title":"Git Commit Style","slug":"git-commit-style","link":"#git-commit-style","children":[]}]}],"relativePath":"development/docs/standards.md","lastUpdated":1677868200000}'),t={name:"development/docs/standards.md"},o=n("",18),l=[o];function i(r,c,p,d,h,m){return s(),a("div",null,l)}const C=e(t,[["render",i]]);export{y as __pageData,C as default};
import{_ as e,o as s,c as a,h as n}from"./app.0fb3db86.js";const y=JSON.parse('{"title":"Standards Guide","description":"","frontmatter":{},"headers":[{"level":2,"title":"Code Standards","slug":"code-standards","link":"#code-standards","children":[{"level":3,"title":"General","slug":"general","link":"#general","children":[]},{"level":3,"title":"Git Commit Style","slug":"git-commit-style","link":"#git-commit-style","children":[]}]}],"relativePath":"development/docs/standards.md","lastUpdated":1677868200000}'),t={name:"development/docs/standards.md"},o=n("",18),l=[o];function i(r,c,p,d,h,m){return s(),a("div",null,l)}const C=e(t,[["render",i]]);export{y as __pageData,C as default};

View File

@ -1 +1 @@
import{_ as s,a as d}from"./chunks/index.e989031f.js";import{_ as i,i as n}from"./chunks/index.150e11f2.js";import{o as h,c,a as t,u as a,w as l,g as e,b as o,h as r}from"./app.106a9488.js";const u=e("h1",{class:"text-[var(--font-accent)]",id:"configuring-the-firmware",tabindex:"-1"},[o("Configuring the firmware "),e("a",{class:"header-anchor",href:"#configuring-the-firmware","aria-hidden":"true"},"#")],-1),p=e("h2",{id:"once-you-have-opened-the-project-you-should-see-something-on-the-left-side-like-this",tabindex:"-1"},[o("Once you have opened the project, you should see something on the left side like this "),e("a",{class:"header-anchor",href:"#once-you-have-opened-the-project-you-should-see-something-on-the-left-side-like-this","aria-hidden":"true"},"#")],-1),f=e("h2",{id:"open-the-ini-user-config-ini-file",tabindex:"-1"},[o("Open the "),e("code",null,"ini/user_config.ini"),o(" file "),e("a",{class:"header-anchor",href:"#open-the-ini-user-config-ini-file","aria-hidden":"true"},"#")],-1),m=r("",2),w=e("p",null," Make sure your wifi router has a 2.4 GHz band. While most do, this is not always the case. Setting each band (5GHz, and 2.4GHz) to different SSIDs is recommended, though not required. ",-1),g=r("",21),k=JSON.parse('{"title":"Configuring the firmware","description":"","frontmatter":{},"headers":[{"level":2,"title":"Once you have opened the project, you should see something on the left side like this","slug":"once-you-have-opened-the-project-you-should-see-something-on-the-left-side-like-this","link":"#once-you-have-opened-the-project-you-should-see-something-on-the-left-side-like-this","children":[]},{"level":2,"title":"Open the ini/user_config.ini file","slug":"open-the-ini-user-config-ini-file","link":"#open-the-ini-user-config-ini-file","children":[{"level":3,"title":"Additonal configuration","slug":"additonal-configuration","link":"#additonal-configuration","children":[]}]},{"level":2,"title":"Now, move on to uploading the firmware","slug":"now-move-on-to-uploading-the-firmware","link":"#now-move-on-to-uploading-the-firmware","children":[]}],"relativePath":"firmware_guide/configure_firmware.md","lastUpdated":1678402493000}'),y={name:"firmware_guide/configure_firmware.md"},E=Object.assign(y,{setup(_){return(b,S)=>(h(),c("div",null,[u,p,t(i,{options:a(n).configure_firmware_one},null,8,["options"]),f,t(i,{options:a(n).configure_firmware_two},null,8,["options"]),m,t(s,{options:a(d).parts_list_one},{content:l(()=>[w]),_:1},8,["options"]),g]))}});export{k as __pageData,E as default};
import{_ as s,a as d}from"./chunks/index.8516fcfb.js";import{_ as i,i as n}from"./chunks/index.0fdcdf9b.js";import{o as h,c,a as t,u as a,w as l,g as e,b as o,h as r}from"./app.0fb3db86.js";const u=e("h1",{class:"text-[var(--font-accent)]",id:"configuring-the-firmware",tabindex:"-1"},[o("Configuring the firmware "),e("a",{class:"header-anchor",href:"#configuring-the-firmware","aria-hidden":"true"},"#")],-1),p=e("h2",{id:"once-you-have-opened-the-project-you-should-see-something-on-the-left-side-like-this",tabindex:"-1"},[o("Once you have opened the project, you should see something on the left side like this "),e("a",{class:"header-anchor",href:"#once-you-have-opened-the-project-you-should-see-something-on-the-left-side-like-this","aria-hidden":"true"},"#")],-1),f=e("h2",{id:"open-the-ini-user-config-ini-file",tabindex:"-1"},[o("Open the "),e("code",null,"ini/user_config.ini"),o(" file "),e("a",{class:"header-anchor",href:"#open-the-ini-user-config-ini-file","aria-hidden":"true"},"#")],-1),m=r("",2),w=e("p",null," Make sure your wifi router has a 2.4 GHz band. While most do, this is not always the case. Setting each band (5GHz, and 2.4GHz) to different SSIDs is recommended, though not required. ",-1),g=r("",21),k=JSON.parse('{"title":"Configuring the firmware","description":"","frontmatter":{},"headers":[{"level":2,"title":"Once you have opened the project, you should see something on the left side like this","slug":"once-you-have-opened-the-project-you-should-see-something-on-the-left-side-like-this","link":"#once-you-have-opened-the-project-you-should-see-something-on-the-left-side-like-this","children":[]},{"level":2,"title":"Open the ini/user_config.ini file","slug":"open-the-ini-user-config-ini-file","link":"#open-the-ini-user-config-ini-file","children":[{"level":3,"title":"Additonal configuration","slug":"additonal-configuration","link":"#additonal-configuration","children":[]}]},{"level":2,"title":"Now, move on to uploading the firmware","slug":"now-move-on-to-uploading-the-firmware","link":"#now-move-on-to-uploading-the-firmware","children":[]}],"relativePath":"firmware_guide/configure_firmware.md","lastUpdated":1678402493000}'),y={name:"firmware_guide/configure_firmware.md"},E=Object.assign(y,{setup(_){return(b,S)=>(h(),c("div",null,[u,p,t(i,{options:a(n).configure_firmware_one},null,8,["options"]),f,t(i,{options:a(n).configure_firmware_two},null,8,["options"]),m,t(s,{options:a(d).parts_list_one},{content:l(()=>[w]),_:1},8,["options"]),g]))}});export{k as __pageData,E as default};

View File

@ -1 +1 @@
import{_ as e,o,c as t,h as i}from"./app.106a9488.js";const f=JSON.parse('{"title":"Firmware Environments","description":"","frontmatter":{},"headers":[{"level":2,"title":"What is it?","slug":"what-is-it","link":"#what-is-it","children":[]},{"level":2,"title":"Build Types","slug":"build-types","link":"#build-types","children":[]},{"level":2,"title":"Board Types","slug":"board-types","link":"#board-types","children":[]}],"relativePath":"firmware_guide/environments.md","lastUpdated":1678402493000}'),n={name:"firmware_guide/environments.md"},a=i('<h1 class="text-[var(--font-accent)]" id="firmware-environments" tabindex="-1">Firmware Environments <a class="header-anchor" href="#firmware-environments" aria-hidden="true">#</a></h1><h2 id="what-is-it" tabindex="-1">What is it? <a class="header-anchor" href="#what-is-it" aria-hidden="true">#</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-hidden="true">#</a></h2><p>We now have a couple of options letting us decide how we want to build the firmaware.</p><ul><li><code>Debug</code> - Has a lot of logging, useful for getting everything setup for the first time and to see what is going on.</li></ul><p>The debug environment is the default environment, so you don&#39;t need to specify it when building.</p><p>All debug environments are the default board environments, only <code>OTA</code> and <code>release</code> are specified in the name.</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.</p></div><ul><li><p><code>Release</code> - Has a lot less debugging, may also be missing some things availible only in debug for debug purposes, this should be flashed when everything is working.</p></li><li><p><code>OTA</code> - Just like release, but it will upload your firmware to your esp wirelessly.</p></li></ul><div class="warning custom-block"><p class="custom-block-title">Warning</p><p>You need to change the IP to which board we should upload to, the setting is called the <code>otaserverip</code> and can be found in the <code>user_config.ini</code> file.</p><p>The <code>otaserverip</code> setting supports both <code>IPv4</code> and <code>mDNS</code> names, as long as the <code>mDNS</code> name is resolvable on your network (i.e: you have bonjour installed on your computer).</p><p>You can also change the port and password, but it&#39;s not recommended.</p></div><h2 id="board-types" tabindex="-1">Board Types <a class="header-anchor" href="#board-types" aria-hidden="true">#</a></h2><p>We currently support a few 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, and will work for the vast majority of users. Do not switch your environment unless you know what you are doing, and have tested the default environment first, and verified that it does not work for you.</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> - The ESP32 Ai Thinker.</li><li><code>esp32cam</code> - The ESP32 Camera.</li><li><code>esp_eye</code> - The Non-Esp32S3 version of the ESP-EYE camera.</li><li><code>esp32M5Stack</code> - The ESP32 M5Stack camera.</li><li><code>wrover</code> - The ESP32 WRover (Non-ESP32-S3 variant).</li></ul><div class="tip custom-block"><p class="custom-block-title">Coming Soon</p><ul><li><code>esp32s3cam</code> - The ESP32-S3 Camera boards.</li></ul></div>',20),s=[a];function r(d,c,l,h,p,u){return o(),t("div",null,s)}const v=e(n,[["render",r]]);export{f as __pageData,v as default};
import{_ as e,o,c as t,h as i}from"./app.0fb3db86.js";const f=JSON.parse('{"title":"Firmware Environments","description":"","frontmatter":{},"headers":[{"level":2,"title":"What is it?","slug":"what-is-it","link":"#what-is-it","children":[]},{"level":2,"title":"Build Types","slug":"build-types","link":"#build-types","children":[]},{"level":2,"title":"Board Types","slug":"board-types","link":"#board-types","children":[]}],"relativePath":"firmware_guide/environments.md","lastUpdated":1678402493000}'),n={name:"firmware_guide/environments.md"},a=i('<h1 class="text-[var(--font-accent)]" id="firmware-environments" tabindex="-1">Firmware Environments <a class="header-anchor" href="#firmware-environments" aria-hidden="true">#</a></h1><h2 id="what-is-it" tabindex="-1">What is it? <a class="header-anchor" href="#what-is-it" aria-hidden="true">#</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-hidden="true">#</a></h2><p>We now have a couple of options letting us decide how we want to build the firmaware.</p><ul><li><code>Debug</code> - Has a lot of logging, useful for getting everything setup for the first time and to see what is going on.</li></ul><p>The debug environment is the default environment, so you don&#39;t need to specify it when building.</p><p>All debug environments are the default board environments, only <code>OTA</code> and <code>release</code> are specified in the name.</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.</p></div><ul><li><p><code>Release</code> - Has a lot less debugging, may also be missing some things availible only in debug for debug purposes, this should be flashed when everything is working.</p></li><li><p><code>OTA</code> - Just like release, but it will upload your firmware to your esp wirelessly.</p></li></ul><div class="warning custom-block"><p class="custom-block-title">Warning</p><p>You need to change the IP to which board we should upload to, the setting is called the <code>otaserverip</code> and can be found in the <code>user_config.ini</code> file.</p><p>The <code>otaserverip</code> setting supports both <code>IPv4</code> and <code>mDNS</code> names, as long as the <code>mDNS</code> name is resolvable on your network (i.e: you have bonjour installed on your computer).</p><p>You can also change the port and password, but it&#39;s not recommended.</p></div><h2 id="board-types" tabindex="-1">Board Types <a class="header-anchor" href="#board-types" aria-hidden="true">#</a></h2><p>We currently support a few 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, and will work for the vast majority of users. Do not switch your environment unless you know what you are doing, and have tested the default environment first, and verified that it does not work for you.</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> - The ESP32 Ai Thinker.</li><li><code>esp32cam</code> - The ESP32 Camera.</li><li><code>esp_eye</code> - The Non-Esp32S3 version of the ESP-EYE camera.</li><li><code>esp32M5Stack</code> - The ESP32 M5Stack camera.</li><li><code>wrover</code> - The ESP32 WRover (Non-ESP32-S3 variant).</li></ul><div class="tip custom-block"><p class="custom-block-title">Coming Soon</p><ul><li><code>esp32s3cam</code> - The ESP32-S3 Camera boards.</li></ul></div>',20),s=[a];function r(d,c,l,h,p,u){return o(),t("div",null,s)}const v=e(n,[["render",r]]);export{f as __pageData,v as default};

View File

@ -1 +1 @@
import{_ as e,o,c as t,h as i}from"./app.106a9488.js";const f=JSON.parse('{"title":"Firmware Environments","description":"","frontmatter":{},"headers":[{"level":2,"title":"What is it?","slug":"what-is-it","link":"#what-is-it","children":[]},{"level":2,"title":"Build Types","slug":"build-types","link":"#build-types","children":[]},{"level":2,"title":"Board Types","slug":"board-types","link":"#board-types","children":[]}],"relativePath":"firmware_guide/environments.md","lastUpdated":1678402493000}'),n={name:"firmware_guide/environments.md"},a=i("",20),s=[a];function r(d,c,l,h,p,u){return o(),t("div",null,s)}const v=e(n,[["render",r]]);export{f as __pageData,v as default};
import{_ as e,o,c as t,h as i}from"./app.0fb3db86.js";const f=JSON.parse('{"title":"Firmware Environments","description":"","frontmatter":{},"headers":[{"level":2,"title":"What is it?","slug":"what-is-it","link":"#what-is-it","children":[]},{"level":2,"title":"Build Types","slug":"build-types","link":"#build-types","children":[]},{"level":2,"title":"Board Types","slug":"board-types","link":"#board-types","children":[]}],"relativePath":"firmware_guide/environments.md","lastUpdated":1678402493000}'),n={name:"firmware_guide/environments.md"},a=i("",20),s=[a];function r(d,c,l,h,p,u){return o(),t("div",null,s)}const v=e(n,[["render",r]]);export{f as __pageData,v as default};

View File

@ -1 +1 @@
import{_ as e,o as a,c as t,h as o}from"./app.106a9488.js";const u=JSON.parse('{"title":"What is this?","description":"","frontmatter":{},"headers":[{"level":2,"title":"What should I download and where?","slug":"what-should-i-download-and-where","link":"#what-should-i-download-and-where","children":[]},{"level":2,"title":"How do download this?","slug":"how-do-download-this","link":"#how-do-download-this","children":[]}],"relativePath":"firmware_guide/firmware.md","lastUpdated":1676590091000}'),d={name:"firmware_guide/firmware.md"},r=o('<h1 class="text-[var(--font-accent)]" id="what-is-this" tabindex="-1">What is this? <a class="header-anchor" href="#what-is-this" aria-hidden="true">#</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.</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-hidden="true">#</a></h2><p>Current testing has been on our own solution called OpenIris, <a href="https://github.com/lorow/OpenIris" target="_blank" rel="noreferrer">found here</a>. To check the status of the project, please visit the <a href="/dev_roadmap">Development Road Map</a></p><h2 id="how-do-download-this" tabindex="-1">How do download this? <a class="header-anchor" href="#how-do-download-this" aria-hidden="true">#</a></h2><p><a href="./setup_vscode">Follow the steps described here</a></p>',6),h=[r];function s(i,n,l,c,w,_){return a(),t("div",null,h)}const f=e(d,[["render",s]]);export{u as __pageData,f as default};
import{_ as e,o as a,c as t,h as o}from"./app.0fb3db86.js";const u=JSON.parse('{"title":"What is this?","description":"","frontmatter":{},"headers":[{"level":2,"title":"What should I download and where?","slug":"what-should-i-download-and-where","link":"#what-should-i-download-and-where","children":[]},{"level":2,"title":"How do download this?","slug":"how-do-download-this","link":"#how-do-download-this","children":[]}],"relativePath":"firmware_guide/firmware.md","lastUpdated":1676590091000}'),d={name:"firmware_guide/firmware.md"},r=o('<h1 class="text-[var(--font-accent)]" id="what-is-this" tabindex="-1">What is this? <a class="header-anchor" href="#what-is-this" aria-hidden="true">#</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.</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-hidden="true">#</a></h2><p>Current testing has been on our own solution called OpenIris, <a href="https://github.com/lorow/OpenIris" target="_blank" rel="noreferrer">found here</a>. To check the status of the project, please visit the <a href="/dev_roadmap">Development Road Map</a></p><h2 id="how-do-download-this" tabindex="-1">How do download this? <a class="header-anchor" href="#how-do-download-this" aria-hidden="true">#</a></h2><p><a href="./setup_vscode">Follow the steps described here</a></p>',6),h=[r];function s(i,n,l,c,w,_){return a(),t("div",null,h)}const f=e(d,[["render",s]]);export{u as __pageData,f as default};

View File

@ -1 +1 @@
import{_ as e,o as a,c as t,h as o}from"./app.106a9488.js";const u=JSON.parse('{"title":"What is this?","description":"","frontmatter":{},"headers":[{"level":2,"title":"What should I download and where?","slug":"what-should-i-download-and-where","link":"#what-should-i-download-and-where","children":[]},{"level":2,"title":"How do download this?","slug":"how-do-download-this","link":"#how-do-download-this","children":[]}],"relativePath":"firmware_guide/firmware.md","lastUpdated":1676590091000}'),d={name:"firmware_guide/firmware.md"},r=o("",6),h=[r];function s(i,n,l,c,w,_){return a(),t("div",null,h)}const f=e(d,[["render",s]]);export{u as __pageData,f as default};
import{_ as e,o as a,c as t,h as o}from"./app.0fb3db86.js";const u=JSON.parse('{"title":"What is this?","description":"","frontmatter":{},"headers":[{"level":2,"title":"What should I download and where?","slug":"what-should-i-download-and-where","link":"#what-should-i-download-and-where","children":[]},{"level":2,"title":"How do download this?","slug":"how-do-download-this","link":"#how-do-download-this","children":[]}],"relativePath":"firmware_guide/firmware.md","lastUpdated":1676590091000}'),d={name:"firmware_guide/firmware.md"},r=o("",6),h=[r];function s(i,n,l,c,w,_){return a(),t("div",null,h)}const f=e(d,[["render",s]]);export{u as __pageData,f as default};

View File

@ -1,2 +1,2 @@
import{_ as e,o as t,c as o,h as n}from"./app.106a9488.js";const m=JSON.parse('{"title":"MDNS","description":"","frontmatter":{},"headers":[{"level":2,"title":"What is it?","slug":"what-is-it","link":"#what-is-it","children":[]},{"level":2,"title":"How to use it","slug":"how-to-use-it","link":"#how-to-use-it","children":[{"level":3,"title":"Enable mDNS","slug":"enable-mdns","link":"#enable-mdns","children":[]},{"level":3,"title":"Connect to the device","slug":"connect-to-the-device","link":"#connect-to-the-device","children":[]}]},{"level":2,"title":"Prerequisites Bonjour","slug":"prerequisites-bonjour","link":"#prerequisites-bonjour","children":[]},{"level":2,"title":"Troubleshooting","slug":"troubleshooting","link":"#troubleshooting","children":[{"level":3,"title":"Can not connect to the device","slug":"can-not-connect-to-the-device","link":"#can-not-connect-to-the-device","children":[]}]}],"relativePath":"firmware_guide/mdns.md","lastUpdated":1676223729000}'),a={name:"firmware_guide/mdns.md"},i=n(`<h1 class="text-[var(--font-accent)]" id="mdns" tabindex="-1">MDNS <a class="header-anchor" href="#mdns" aria-hidden="true">#</a></h1><h2 id="what-is-it" tabindex="-1">What is it? <a class="header-anchor" href="#what-is-it" aria-hidden="true">#</a></h2><p><code>mDNS</code> is a protocol that allows you to connect to a device using a name instead of an IP address. This is useful if you do not know the IP address of the device, or if you do not want to keep track of the IP address of the device. This is also useful if you are using a device that does not have a static IP address.</p><p>In the <code>mDNS</code> protocol the IP address of the device can change, but the name of the device will always be the same. This means that you can connect to the device using the name of the device, even if the IP address of the device changes.</p><h2 id="how-to-use-it" tabindex="-1">How to use it <a class="header-anchor" href="#how-to-use-it" aria-hidden="true">#</a></h2><h3 id="enable-mdns" tabindex="-1">Enable mDNS <a class="header-anchor" href="#enable-mdns" aria-hidden="true">#</a></h3><p>The <code>mDNS</code> is enabled by default on the new firmware, and can not be disabled.</p><p>To use it, all you need to do is set the name of the device in the firmware config file.</p><p>This setting can be located under the <code>[wifi]</code> section of the <code>ini/user_config.ini</code> file.</p><div class="language-ini line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">ini</span><pre class="shiki material-palenight"><code><span class="line"><span style="color:#F07178;">mdnsname</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">=</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">&quot;</span><span style="color:#C3E88D;">openiristracker</span><span style="color:#89DDFF;">&quot;</span><span style="color:#A6ACCD;"> </span><span style="color:#676E95;font-style:italic;"># do not add .local</span></span>
import{_ as e,o as t,c as o,h as n}from"./app.0fb3db86.js";const m=JSON.parse('{"title":"MDNS","description":"","frontmatter":{},"headers":[{"level":2,"title":"What is it?","slug":"what-is-it","link":"#what-is-it","children":[]},{"level":2,"title":"How to use it","slug":"how-to-use-it","link":"#how-to-use-it","children":[{"level":3,"title":"Enable mDNS","slug":"enable-mdns","link":"#enable-mdns","children":[]},{"level":3,"title":"Connect to the device","slug":"connect-to-the-device","link":"#connect-to-the-device","children":[]}]},{"level":2,"title":"Prerequisites Bonjour","slug":"prerequisites-bonjour","link":"#prerequisites-bonjour","children":[]},{"level":2,"title":"Troubleshooting","slug":"troubleshooting","link":"#troubleshooting","children":[{"level":3,"title":"Can not connect to the device","slug":"can-not-connect-to-the-device","link":"#can-not-connect-to-the-device","children":[]}]}],"relativePath":"firmware_guide/mdns.md","lastUpdated":1676223729000}'),a={name:"firmware_guide/mdns.md"},i=n(`<h1 class="text-[var(--font-accent)]" id="mdns" tabindex="-1">MDNS <a class="header-anchor" href="#mdns" aria-hidden="true">#</a></h1><h2 id="what-is-it" tabindex="-1">What is it? <a class="header-anchor" href="#what-is-it" aria-hidden="true">#</a></h2><p><code>mDNS</code> is a protocol that allows you to connect to a device using a name instead of an IP address. This is useful if you do not know the IP address of the device, or if you do not want to keep track of the IP address of the device. This is also useful if you are using a device that does not have a static IP address.</p><p>In the <code>mDNS</code> protocol the IP address of the device can change, but the name of the device will always be the same. This means that you can connect to the device using the name of the device, even if the IP address of the device changes.</p><h2 id="how-to-use-it" tabindex="-1">How to use it <a class="header-anchor" href="#how-to-use-it" aria-hidden="true">#</a></h2><h3 id="enable-mdns" tabindex="-1">Enable mDNS <a class="header-anchor" href="#enable-mdns" aria-hidden="true">#</a></h3><p>The <code>mDNS</code> is enabled by default on the new firmware, and can not be disabled.</p><p>To use it, all you need to do is set the name of the device in the firmware config file.</p><p>This setting can be located under the <code>[wifi]</code> section of the <code>ini/user_config.ini</code> file.</p><div class="language-ini line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">ini</span><pre class="shiki material-palenight"><code><span class="line"><span style="color:#F07178;">mdnsname</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">=</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">&quot;</span><span style="color:#C3E88D;">openiristracker</span><span style="color:#89DDFF;">&quot;</span><span style="color:#A6ACCD;"> </span><span style="color:#676E95;font-style:italic;"># do not add .local</span></span>
<span class="line"></span></code></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br></div></div><p>By default, the name of the device is <code>openiristracker</code>, however you can change it to whatever you want.</p><div class="warning custom-block"><p class="custom-block-title">Change the name</p><p>Since you have two ESP32 devices, you need to make sure that the name of the device is different for each device. If you do not change the name of the device, you will not be able to connect to both devices at the same time.</p></div><h3 id="connect-to-the-device" tabindex="-1">Connect to the device <a class="header-anchor" href="#connect-to-the-device" aria-hidden="true">#</a></h3><p>To connect to the device, you need to use the name of the device followed by <code>.local</code>. For example, if the name of the device is <code>esp32</code>, you can connect to the device using <code>http://esp32.local</code>.</p><h2 id="prerequisites-bonjour" tabindex="-1">Prerequisites <code>Bonjour</code> <a class="header-anchor" href="#prerequisites-bonjour" aria-hidden="true">#</a></h2><p><code>Bonjour</code> is required to use the <code>mDNS</code> protocol <em>for windows and mac only</em>. If you are using Windows, you can download Bonjour from <a href="https://support.apple.com/kb/DL999?locale=en_US" target="_blank" rel="noreferrer">here</a>. If you are using macOS, Bonjour is already installed.</p><p>You can also get the fully tested Bonjour package from us <a href="https://github.com/RedHawk989/EyeTrackVR/tree/GUI/GUI/assets/3rdParty" target="_blank" rel="noreferrer">here</a> (for Windows only).</p><h2 id="troubleshooting" tabindex="-1">Troubleshooting <a class="header-anchor" href="#troubleshooting" aria-hidden="true">#</a></h2><h3 id="can-not-connect-to-the-device" tabindex="-1">Can not connect to the device <a class="header-anchor" href="#can-not-connect-to-the-device" aria-hidden="true">#</a></h3><p>If you can not connect to the device, make sure that the name of the device is correct. If the name of the device is correct, make sure that the device is connected to the network.</p><p>If the device is connected to the network, try to restart the device. If the device is still not connected, try to restart the router.</p>`,21),s=[i];function c(d,r,h,l,u,p){return t(),o("div",null,s)}const v=e(a,[["render",c]]);export{m as __pageData,v as default};

View File

@ -1 +1 @@
import{_ as e,o as t,c as o,h as n}from"./app.106a9488.js";const m=JSON.parse('{"title":"MDNS","description":"","frontmatter":{},"headers":[{"level":2,"title":"What is it?","slug":"what-is-it","link":"#what-is-it","children":[]},{"level":2,"title":"How to use it","slug":"how-to-use-it","link":"#how-to-use-it","children":[{"level":3,"title":"Enable mDNS","slug":"enable-mdns","link":"#enable-mdns","children":[]},{"level":3,"title":"Connect to the device","slug":"connect-to-the-device","link":"#connect-to-the-device","children":[]}]},{"level":2,"title":"Prerequisites Bonjour","slug":"prerequisites-bonjour","link":"#prerequisites-bonjour","children":[]},{"level":2,"title":"Troubleshooting","slug":"troubleshooting","link":"#troubleshooting","children":[{"level":3,"title":"Can not connect to the device","slug":"can-not-connect-to-the-device","link":"#can-not-connect-to-the-device","children":[]}]}],"relativePath":"firmware_guide/mdns.md","lastUpdated":1676223729000}'),a={name:"firmware_guide/mdns.md"},i=n("",21),s=[i];function c(d,r,h,l,u,p){return t(),o("div",null,s)}const v=e(a,[["render",c]]);export{m as __pageData,v as default};
import{_ as e,o as t,c as o,h as n}from"./app.0fb3db86.js";const m=JSON.parse('{"title":"MDNS","description":"","frontmatter":{},"headers":[{"level":2,"title":"What is it?","slug":"what-is-it","link":"#what-is-it","children":[]},{"level":2,"title":"How to use it","slug":"how-to-use-it","link":"#how-to-use-it","children":[{"level":3,"title":"Enable mDNS","slug":"enable-mdns","link":"#enable-mdns","children":[]},{"level":3,"title":"Connect to the device","slug":"connect-to-the-device","link":"#connect-to-the-device","children":[]}]},{"level":2,"title":"Prerequisites Bonjour","slug":"prerequisites-bonjour","link":"#prerequisites-bonjour","children":[]},{"level":2,"title":"Troubleshooting","slug":"troubleshooting","link":"#troubleshooting","children":[{"level":3,"title":"Can not connect to the device","slug":"can-not-connect-to-the-device","link":"#can-not-connect-to-the-device","children":[]}]}],"relativePath":"firmware_guide/mdns.md","lastUpdated":1676223729000}'),a={name:"firmware_guide/mdns.md"},i=n("",21),s=[i];function c(d,r,h,l,u,p){return t(),o("div",null,s)}const v=e(a,[["render",c]]);export{m as __pageData,v as default};

View File

@ -1 +1 @@
import{_ as s,o as e,c as t,h as n}from"./app.106a9488.js";const m=JSON.parse('{"title":"REST API","description":"","frontmatter":{},"headers":[{"level":2,"title":"What is it?","slug":"what-is-it","link":"#what-is-it","children":[]},{"level":2,"title":"How to use it","slug":"how-to-use-it","link":"#how-to-use-it","children":[{"level":3,"title":"REST API Client","slug":"rest-api-client","link":"#rest-api-client","children":[]},{"level":3,"title":"Standard","slug":"standard","link":"#standard","children":[]},{"level":3,"title":"Endpoints","slug":"endpoints","link":"#endpoints","children":[]},{"level":3,"title":"Params","slug":"params","link":"#params","children":[]},{"level":3,"title":"Camera Params","slug":"camera-params","link":"#camera-params","children":[]}]}],"relativePath":"firmware_guide/rest_api.md","lastUpdated":1676223729000}'),a={name:"firmware_guide/rest_api.md"},l=n("",33),o=[l];function p(r,c,i,d,y,h){return e(),t("div",null,o)}const u=s(a,[["render",p]]);export{m as __pageData,u as default};
import{_ as s,o as e,c as t,h as n}from"./app.0fb3db86.js";const m=JSON.parse('{"title":"REST API","description":"","frontmatter":{},"headers":[{"level":2,"title":"What is it?","slug":"what-is-it","link":"#what-is-it","children":[]},{"level":2,"title":"How to use it","slug":"how-to-use-it","link":"#how-to-use-it","children":[{"level":3,"title":"REST API Client","slug":"rest-api-client","link":"#rest-api-client","children":[]},{"level":3,"title":"Standard","slug":"standard","link":"#standard","children":[]},{"level":3,"title":"Endpoints","slug":"endpoints","link":"#endpoints","children":[]},{"level":3,"title":"Params","slug":"params","link":"#params","children":[]},{"level":3,"title":"Camera Params","slug":"camera-params","link":"#camera-params","children":[]}]}],"relativePath":"firmware_guide/rest_api.md","lastUpdated":1676223729000}'),a={name:"firmware_guide/rest_api.md"},l=n("",33),o=[l];function p(r,c,i,d,y,h){return e(),t("div",null,o)}const u=s(a,[["render",p]]);export{m as __pageData,u as default};

View File

@ -1 +1 @@
import{_ as o,i as l}from"./chunks/index.150e11f2.js";import{o as r,c as s,a as n,u as a,h as i,g as e,b as t}from"./app.106a9488.js";const d=i('<h1 class="text-[var(--font-accent)]" id="setting-up-the-environment" tabindex="-1">Setting up the environment <a class="header-anchor" href="#setting-up-the-environment" aria-hidden="true">#</a></h1><p>This procedure will show how to prepare your system for uploading the firmware to your tracker.</p><h2 id="_1-install-visual-studio-code" tabindex="-1">1. Install Visual Studio Code <a class="header-anchor" href="#_1-install-visual-studio-code" aria-hidden="true">#</a></h2><p>Download the <a href="https://code.visualstudio.com/download" target="_blank" rel="noreferrer">latest Visual Studio Code</a> and install it.</p><h3 id="download" tabindex="-1">Download <a class="header-anchor" href="#download" aria-hidden="true">#</a></h3><br>',6),h=e("h3",{id:"install",tabindex:"-1"},[t("Install "),e("a",{class:"header-anchor",href:"#install","aria-hidden":"true"},"#")],-1),c=e("br",null,null,-1),p=e("h2",{id:"_2-install-platformio-ide",tabindex:"-1"},[t("2. Install PlatformIO IDE "),e("a",{class:"header-anchor",href:"#_2-install-platformio-ide","aria-hidden":"true"},"#")],-1),_=e("p",null,[t("Once Visual Studio Code is installed, open it and install "),e("a",{href:"https://marketplace.visualstudio.com/items?itemName=platformio.platformio-ide",target:"_blank",rel:"noreferrer"},"PlatformIO IDE for VSCode"),t(", an extension that will allow you to connect to the tracker, build and upload the firmware.")],-1),u=i('<h2 id="_3-clone-the-firmware-project" tabindex="-1">3. Clone the firmware project <a class="header-anchor" href="#_3-clone-the-firmware-project" aria-hidden="true">#</a></h2><p>Make sure you close any current projects you have open or open a new window before moving forward with these steps.</p><ol><li>Go to <a href="https://github.com/lorow/OpenIris" target="_blank" rel="noreferrer">https://github.com/lorow/OpenIris</a> and <code>clone</code> the latest version from the <code>main</code> branch. <ol><li><p>If you do not have <code>git</code> installed please install it from <a href="https://git-scm.com/download/win" target="_blank" rel="noreferrer">here</a>.</p></li><li><p>Open Git Bash.</p></li></ol></li></ol>',3),m=e("ol",null,[e("li",null,[t("Change the directory to the directory that you want the firmware to be cloned. Ex: "),e("code",null,"cd C:/")])],-1),f=e("ol",null,[e("li",null,[t("Clone the repository by entering the command: "),e("code",null,"git clone https://github.com/lorow/OpenIris.git")])],-1),g=e("p",null,[t("For more info about cloning please refer to "),e("a",{href:"https://docs.github.com/en/repositories/creating-and-managing-repositories/cloning-a-repository",target:"_blank",rel:"noreferrer"},"this documentation")],-1),w=e("p",null,[e("em",null,[e("strong",null,"Do not download as a zip")]),t(" - please only properly clone the project, take note of the path you run the clone command in, this is where the files will be downloaded. When we open it in PlatformIO later, this path will be needed.")],-1),v=e("ol",null,[e("li",null,[t("Open the firmware in VSCode by going to PlatformIO, selecting open, then navigating to "),e("code",null,"OpenIris/ESP"),t(" folder and opening it.")])],-1),b=e("p",null,[e("em",null,[t("This is an adaptation from SlimeVR. Some Credit goes to the SlimeVR team "),e("a",{href:"https://docs.slimevr.dev/firmware/setup-and-install.html",target:"_blank",rel:"noreferrer"},"adapted from here")])],-1),T=JSON.parse('{"title":"Setting up the environment","description":"","frontmatter":{},"headers":[{"level":2,"title":"1. Install Visual Studio Code","slug":"_1-install-visual-studio-code","link":"#_1-install-visual-studio-code","children":[{"level":3,"title":"Download","slug":"download","link":"#download","children":[]},{"level":3,"title":"Install","slug":"install","link":"#install","children":[]}]},{"level":2,"title":"2. Install PlatformIO IDE","slug":"_2-install-platformio-ide","link":"#_2-install-platformio-ide","children":[]},{"level":2,"title":"3. Clone the firmware project","slug":"_3-clone-the-firmware-project","link":"#_3-clone-the-firmware-project","children":[]}],"relativePath":"firmware_guide/setup_vscode.md","lastUpdated":1681507268000}'),I={name:"firmware_guide/setup_vscode.md"},O=Object.assign(I,{setup(S){return(k,y)=>(r(),s("div",null,[d,n(o,{options:a(l).setup_vscode_image_one},null,8,["options"]),h,c,n(o,{options:a(l).setup_vscode_image_two},null,8,["options"]),p,_,n(o,{options:a(l).setup_vscode_image_three},null,8,["options"]),u,n(o,{options:a(l).setup_vscode_image_four},null,8,["options"]),m,n(o,{options:a(l).setup_vscode_image_five},null,8,["options"]),f,n(o,{options:a(l).setup_vscode_image_six},null,8,["options"]),g,w,v,n(o,{options:a(l).setup_vscode_image_seven},null,8,["options"]),b]))}});export{T as __pageData,O as default};
import{_ as o,i as l}from"./chunks/index.0fdcdf9b.js";import{o as r,c as s,a as n,u as a,h as i,g as e,b as t}from"./app.0fb3db86.js";const d=i('<h1 class="text-[var(--font-accent)]" id="setting-up-the-environment" tabindex="-1">Setting up the environment <a class="header-anchor" href="#setting-up-the-environment" aria-hidden="true">#</a></h1><p>This procedure will show how to prepare your system for uploading the firmware to your tracker.</p><h2 id="_1-install-visual-studio-code" tabindex="-1">1. Install Visual Studio Code <a class="header-anchor" href="#_1-install-visual-studio-code" aria-hidden="true">#</a></h2><p>Download the <a href="https://code.visualstudio.com/download" target="_blank" rel="noreferrer">latest Visual Studio Code</a> and install it.</p><h3 id="download" tabindex="-1">Download <a class="header-anchor" href="#download" aria-hidden="true">#</a></h3><br>',6),h=e("h3",{id:"install",tabindex:"-1"},[t("Install "),e("a",{class:"header-anchor",href:"#install","aria-hidden":"true"},"#")],-1),c=e("br",null,null,-1),p=e("h2",{id:"_2-install-platformio-ide",tabindex:"-1"},[t("2. Install PlatformIO IDE "),e("a",{class:"header-anchor",href:"#_2-install-platformio-ide","aria-hidden":"true"},"#")],-1),_=e("p",null,[t("Once Visual Studio Code is installed, open it and install "),e("a",{href:"https://marketplace.visualstudio.com/items?itemName=platformio.platformio-ide",target:"_blank",rel:"noreferrer"},"PlatformIO IDE for VSCode"),t(", an extension that will allow you to connect to the tracker, build and upload the firmware.")],-1),u=i('<h2 id="_3-clone-the-firmware-project" tabindex="-1">3. Clone the firmware project <a class="header-anchor" href="#_3-clone-the-firmware-project" aria-hidden="true">#</a></h2><p>Make sure you close any current projects you have open or open a new window before moving forward with these steps.</p><ol><li>Go to <a href="https://github.com/lorow/OpenIris" target="_blank" rel="noreferrer">https://github.com/lorow/OpenIris</a> and <code>clone</code> the latest version from the <code>main</code> branch. <ol><li><p>If you do not have <code>git</code> installed please install it from <a href="https://git-scm.com/download/win" target="_blank" rel="noreferrer">here</a>.</p></li><li><p>Open Git Bash.</p></li></ol></li></ol>',3),m=e("ol",null,[e("li",null,[t("Change the directory to the directory that you want the firmware to be cloned. Ex: "),e("code",null,"cd C:/")])],-1),f=e("ol",null,[e("li",null,[t("Clone the repository by entering the command: "),e("code",null,"git clone https://github.com/lorow/OpenIris.git")])],-1),g=e("p",null,[t("For more info about cloning please refer to "),e("a",{href:"https://docs.github.com/en/repositories/creating-and-managing-repositories/cloning-a-repository",target:"_blank",rel:"noreferrer"},"this documentation")],-1),w=e("p",null,[e("em",null,[e("strong",null,"Do not download as a zip")]),t(" - please only properly clone the project, take note of the path you run the clone command in, this is where the files will be downloaded. When we open it in PlatformIO later, this path will be needed.")],-1),v=e("ol",null,[e("li",null,[t("Open the firmware in VSCode by going to PlatformIO, selecting open, then navigating to "),e("code",null,"OpenIris/ESP"),t(" folder and opening it.")])],-1),b=e("p",null,[e("em",null,[t("This is an adaptation from SlimeVR. Some Credit goes to the SlimeVR team "),e("a",{href:"https://docs.slimevr.dev/firmware/setup-and-install.html",target:"_blank",rel:"noreferrer"},"adapted from here")])],-1),T=JSON.parse('{"title":"Setting up the environment","description":"","frontmatter":{},"headers":[{"level":2,"title":"1. Install Visual Studio Code","slug":"_1-install-visual-studio-code","link":"#_1-install-visual-studio-code","children":[{"level":3,"title":"Download","slug":"download","link":"#download","children":[]},{"level":3,"title":"Install","slug":"install","link":"#install","children":[]}]},{"level":2,"title":"2. Install PlatformIO IDE","slug":"_2-install-platformio-ide","link":"#_2-install-platformio-ide","children":[]},{"level":2,"title":"3. Clone the firmware project","slug":"_3-clone-the-firmware-project","link":"#_3-clone-the-firmware-project","children":[]}],"relativePath":"firmware_guide/setup_vscode.md","lastUpdated":1681507268000}'),I={name:"firmware_guide/setup_vscode.md"},O=Object.assign(I,{setup(S){return(k,y)=>(r(),s("div",null,[d,n(o,{options:a(l).setup_vscode_image_one},null,8,["options"]),h,c,n(o,{options:a(l).setup_vscode_image_two},null,8,["options"]),p,_,n(o,{options:a(l).setup_vscode_image_three},null,8,["options"]),u,n(o,{options:a(l).setup_vscode_image_four},null,8,["options"]),m,n(o,{options:a(l).setup_vscode_image_five},null,8,["options"]),f,n(o,{options:a(l).setup_vscode_image_six},null,8,["options"]),g,w,v,n(o,{options:a(l).setup_vscode_image_seven},null,8,["options"]),b]))}});export{T as __pageData,O as default};

View File

@ -1 +1 @@
import{_ as o,i as l}from"./chunks/index.150e11f2.js";import{o as r,c as s,a as n,u as a,h as i,g as e,b as t}from"./app.106a9488.js";const d=i("",6),h=e("h3",{id:"install",tabindex:"-1"},[t("Install "),e("a",{class:"header-anchor",href:"#install","aria-hidden":"true"},"#")],-1),c=e("br",null,null,-1),p=e("h2",{id:"_2-install-platformio-ide",tabindex:"-1"},[t("2. Install PlatformIO IDE "),e("a",{class:"header-anchor",href:"#_2-install-platformio-ide","aria-hidden":"true"},"#")],-1),_=e("p",null,[t("Once Visual Studio Code is installed, open it and install "),e("a",{href:"https://marketplace.visualstudio.com/items?itemName=platformio.platformio-ide",target:"_blank",rel:"noreferrer"},"PlatformIO IDE for VSCode"),t(", an extension that will allow you to connect to the tracker, build and upload the firmware.")],-1),u=i("",3),m=e("ol",null,[e("li",null,[t("Change the directory to the directory that you want the firmware to be cloned. Ex: "),e("code",null,"cd C:/")])],-1),f=e("ol",null,[e("li",null,[t("Clone the repository by entering the command: "),e("code",null,"git clone https://github.com/lorow/OpenIris.git")])],-1),g=e("p",null,[t("For more info about cloning please refer to "),e("a",{href:"https://docs.github.com/en/repositories/creating-and-managing-repositories/cloning-a-repository",target:"_blank",rel:"noreferrer"},"this documentation")],-1),w=e("p",null,[e("em",null,[e("strong",null,"Do not download as a zip")]),t(" - please only properly clone the project, take note of the path you run the clone command in, this is where the files will be downloaded. When we open it in PlatformIO later, this path will be needed.")],-1),v=e("ol",null,[e("li",null,[t("Open the firmware in VSCode by going to PlatformIO, selecting open, then navigating to "),e("code",null,"OpenIris/ESP"),t(" folder and opening it.")])],-1),b=e("p",null,[e("em",null,[t("This is an adaptation from SlimeVR. Some Credit goes to the SlimeVR team "),e("a",{href:"https://docs.slimevr.dev/firmware/setup-and-install.html",target:"_blank",rel:"noreferrer"},"adapted from here")])],-1),T=JSON.parse('{"title":"Setting up the environment","description":"","frontmatter":{},"headers":[{"level":2,"title":"1. Install Visual Studio Code","slug":"_1-install-visual-studio-code","link":"#_1-install-visual-studio-code","children":[{"level":3,"title":"Download","slug":"download","link":"#download","children":[]},{"level":3,"title":"Install","slug":"install","link":"#install","children":[]}]},{"level":2,"title":"2. Install PlatformIO IDE","slug":"_2-install-platformio-ide","link":"#_2-install-platformio-ide","children":[]},{"level":2,"title":"3. Clone the firmware project","slug":"_3-clone-the-firmware-project","link":"#_3-clone-the-firmware-project","children":[]}],"relativePath":"firmware_guide/setup_vscode.md","lastUpdated":1681507268000}'),I={name:"firmware_guide/setup_vscode.md"},O=Object.assign(I,{setup(S){return(k,y)=>(r(),s("div",null,[d,n(o,{options:a(l).setup_vscode_image_one},null,8,["options"]),h,c,n(o,{options:a(l).setup_vscode_image_two},null,8,["options"]),p,_,n(o,{options:a(l).setup_vscode_image_three},null,8,["options"]),u,n(o,{options:a(l).setup_vscode_image_four},null,8,["options"]),m,n(o,{options:a(l).setup_vscode_image_five},null,8,["options"]),f,n(o,{options:a(l).setup_vscode_image_six},null,8,["options"]),g,w,v,n(o,{options:a(l).setup_vscode_image_seven},null,8,["options"]),b]))}});export{T as __pageData,O as default};
import{_ as o,i as l}from"./chunks/index.0fdcdf9b.js";import{o as r,c as s,a as n,u as a,h as i,g as e,b as t}from"./app.0fb3db86.js";const d=i("",6),h=e("h3",{id:"install",tabindex:"-1"},[t("Install "),e("a",{class:"header-anchor",href:"#install","aria-hidden":"true"},"#")],-1),c=e("br",null,null,-1),p=e("h2",{id:"_2-install-platformio-ide",tabindex:"-1"},[t("2. Install PlatformIO IDE "),e("a",{class:"header-anchor",href:"#_2-install-platformio-ide","aria-hidden":"true"},"#")],-1),_=e("p",null,[t("Once Visual Studio Code is installed, open it and install "),e("a",{href:"https://marketplace.visualstudio.com/items?itemName=platformio.platformio-ide",target:"_blank",rel:"noreferrer"},"PlatformIO IDE for VSCode"),t(", an extension that will allow you to connect to the tracker, build and upload the firmware.")],-1),u=i("",3),m=e("ol",null,[e("li",null,[t("Change the directory to the directory that you want the firmware to be cloned. Ex: "),e("code",null,"cd C:/")])],-1),f=e("ol",null,[e("li",null,[t("Clone the repository by entering the command: "),e("code",null,"git clone https://github.com/lorow/OpenIris.git")])],-1),g=e("p",null,[t("For more info about cloning please refer to "),e("a",{href:"https://docs.github.com/en/repositories/creating-and-managing-repositories/cloning-a-repository",target:"_blank",rel:"noreferrer"},"this documentation")],-1),w=e("p",null,[e("em",null,[e("strong",null,"Do not download as a zip")]),t(" - please only properly clone the project, take note of the path you run the clone command in, this is where the files will be downloaded. When we open it in PlatformIO later, this path will be needed.")],-1),v=e("ol",null,[e("li",null,[t("Open the firmware in VSCode by going to PlatformIO, selecting open, then navigating to "),e("code",null,"OpenIris/ESP"),t(" folder and opening it.")])],-1),b=e("p",null,[e("em",null,[t("This is an adaptation from SlimeVR. Some Credit goes to the SlimeVR team "),e("a",{href:"https://docs.slimevr.dev/firmware/setup-and-install.html",target:"_blank",rel:"noreferrer"},"adapted from here")])],-1),T=JSON.parse('{"title":"Setting up the environment","description":"","frontmatter":{},"headers":[{"level":2,"title":"1. Install Visual Studio Code","slug":"_1-install-visual-studio-code","link":"#_1-install-visual-studio-code","children":[{"level":3,"title":"Download","slug":"download","link":"#download","children":[]},{"level":3,"title":"Install","slug":"install","link":"#install","children":[]}]},{"level":2,"title":"2. Install PlatformIO IDE","slug":"_2-install-platformio-ide","link":"#_2-install-platformio-ide","children":[]},{"level":2,"title":"3. Clone the firmware project","slug":"_3-clone-the-firmware-project","link":"#_3-clone-the-firmware-project","children":[]}],"relativePath":"firmware_guide/setup_vscode.md","lastUpdated":1681507268000}'),I={name:"firmware_guide/setup_vscode.md"},O=Object.assign(I,{setup(S){return(k,y)=>(r(),s("div",null,[d,n(o,{options:a(l).setup_vscode_image_one},null,8,["options"]),h,c,n(o,{options:a(l).setup_vscode_image_two},null,8,["options"]),p,_,n(o,{options:a(l).setup_vscode_image_three},null,8,["options"]),u,n(o,{options:a(l).setup_vscode_image_four},null,8,["options"]),m,n(o,{options:a(l).setup_vscode_image_five},null,8,["options"]),f,n(o,{options:a(l).setup_vscode_image_six},null,8,["options"]),g,w,v,n(o,{options:a(l).setup_vscode_image_seven},null,8,["options"]),b]))}});export{T as __pageData,O as default};

View File

@ -1 +1 @@
import{_ as o,i as t}from"./chunks/index.150e11f2.js";import{o as s,c as d,a,u as l,h as n,g as i,b as e}from"./app.106a9488.js";const r=n('<h1 class="text-[var(--font-accent)]" id="updating-platformio" tabindex="-1">Updating Platformio <a class="header-anchor" href="#updating-platformio" aria-hidden="true">#</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&#39;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-hidden="true">#</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-hidden="true">#</a></h3><p>You can update it easily by simply typing in one command into your terminal.</p>',7),c=n('<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-hidden="true">#</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),p=i("ol",{start:"3"},[i("li",null,[e("A side panel will open, there will be a couple of sections, one of them called "),i("code",null,"Quick Access"),e(", open it.")])],-1),u=i("ol",{start:"4"},[i("li",null,[e("In "),i("code",null,"Quick Access"),e(" section, click on the "),i("code",null,"Miscelleneous"),e(" tab")])],-1),h=i("ol",{start:"5"},[i("li",null,[e("Then, click on the "),i("code",null,"Upgrade PlatformIO Core")])],-1),_=n('<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-hidden="true">#</a></h2><p>You&#39;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-hidden="true">#</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),m=i("ol",{start:"3"},[i("li",null,[e("This will open a window for PlatformIO dashboard, in there, click on a "),i("code",null,"Platforms"),e(" button on the sidebar")])],-1),f=i("ol",{start:"4"},[i("li",null,[e("Once there, you should see a couple of tabs next to the side bard, things like "),i("code",null,"Installed"),e(" or "),i("code",null,"Embedded"),e(". Click on "),i("code",null,"Updates")])],-1),g=i("ol",{start:"5"},[i("li",null,[e("Locate a platform called "),i("code",null,"Espressif 32"),e(" and click on "),i("code",null,"Update to <version>")])],-1),v=i("ol",{start:"6"},[i("li",null,"Wait until it is done and that's it!")],-1),P=JSON.parse('{"title":"Updating Platformio","description":"","frontmatter":{},"headers":[{"level":2,"title":"Updating PlatformIO itself","slug":"updating-platformio-itself","link":"#updating-platformio-itself","children":[{"level":3,"title":"Via CLI","slug":"via-cli","link":"#via-cli","children":[]},{"level":3,"title":"Via PlatformIO in Visual Studio Code","slug":"via-platformio-in-visual-studio-code","link":"#via-platformio-in-visual-studio-code","children":[]}]},{"level":2,"title":"Upgrading the SDK","slug":"upgrading-the-sdk","link":"#upgrading-the-sdk","children":[{"level":3,"title":"Upgrading the SDK via VSC","slug":"upgrading-the-sdk-via-vsc","link":"#upgrading-the-sdk-via-vsc","children":[]}]}],"relativePath":"firmware_guide/update_platformio.md","lastUpdated":1678402493000}'),k={name:"firmware_guide/update_platformio.md"},w=Object.assign(k,{setup(b){return(S,T)=>(s(),d("div",null,[r,a(o,{options:l(t).pio_upgrade_command},null,8,["options"]),c,a(o,{options:l(t).ant_logo_platformio},null,8,["options"]),p,a(o,{options:l(t).platformio_quick_access},null,8,["options"]),u,a(o,{options:l(t).platformio_quick_access_miscellaneous},null,8,["options"]),h,a(o,{options:l(t).platformio_quick_access_upgrade_core},null,8,["options"]),_,a(o,{options:l(t).platformio_pio_home},null,8,["options"]),m,a(o,{options:l(t).platformio_pio_sidebar_platforms},null,8,["options"]),f,a(o,{options:l(t).platformio_pio_sidebar_platforms_updates},null,8,["options"]),g,a(o,{options:l(t).platformio_pio_espressif32},null,8,["options"]),v]))}});export{P as __pageData,w as default};
import{_ as o,i as t}from"./chunks/index.0fdcdf9b.js";import{o as s,c as d,a,u as l,h as n,g as i,b as e}from"./app.0fb3db86.js";const r=n('<h1 class="text-[var(--font-accent)]" id="updating-platformio" tabindex="-1">Updating Platformio <a class="header-anchor" href="#updating-platformio" aria-hidden="true">#</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&#39;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-hidden="true">#</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-hidden="true">#</a></h3><p>You can update it easily by simply typing in one command into your terminal.</p>',7),c=n('<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-hidden="true">#</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),p=i("ol",{start:"3"},[i("li",null,[e("A side panel will open, there will be a couple of sections, one of them called "),i("code",null,"Quick Access"),e(", open it.")])],-1),u=i("ol",{start:"4"},[i("li",null,[e("In "),i("code",null,"Quick Access"),e(" section, click on the "),i("code",null,"Miscelleneous"),e(" tab")])],-1),h=i("ol",{start:"5"},[i("li",null,[e("Then, click on the "),i("code",null,"Upgrade PlatformIO Core")])],-1),_=n('<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-hidden="true">#</a></h2><p>You&#39;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-hidden="true">#</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),m=i("ol",{start:"3"},[i("li",null,[e("This will open a window for PlatformIO dashboard, in there, click on a "),i("code",null,"Platforms"),e(" button on the sidebar")])],-1),f=i("ol",{start:"4"},[i("li",null,[e("Once there, you should see a couple of tabs next to the side bard, things like "),i("code",null,"Installed"),e(" or "),i("code",null,"Embedded"),e(". Click on "),i("code",null,"Updates")])],-1),g=i("ol",{start:"5"},[i("li",null,[e("Locate a platform called "),i("code",null,"Espressif 32"),e(" and click on "),i("code",null,"Update to <version>")])],-1),v=i("ol",{start:"6"},[i("li",null,"Wait until it is done and that's it!")],-1),P=JSON.parse('{"title":"Updating Platformio","description":"","frontmatter":{},"headers":[{"level":2,"title":"Updating PlatformIO itself","slug":"updating-platformio-itself","link":"#updating-platformio-itself","children":[{"level":3,"title":"Via CLI","slug":"via-cli","link":"#via-cli","children":[]},{"level":3,"title":"Via PlatformIO in Visual Studio Code","slug":"via-platformio-in-visual-studio-code","link":"#via-platformio-in-visual-studio-code","children":[]}]},{"level":2,"title":"Upgrading the SDK","slug":"upgrading-the-sdk","link":"#upgrading-the-sdk","children":[{"level":3,"title":"Upgrading the SDK via VSC","slug":"upgrading-the-sdk-via-vsc","link":"#upgrading-the-sdk-via-vsc","children":[]}]}],"relativePath":"firmware_guide/update_platformio.md","lastUpdated":1678402493000}'),k={name:"firmware_guide/update_platformio.md"},w=Object.assign(k,{setup(b){return(S,T)=>(s(),d("div",null,[r,a(o,{options:l(t).pio_upgrade_command},null,8,["options"]),c,a(o,{options:l(t).ant_logo_platformio},null,8,["options"]),p,a(o,{options:l(t).platformio_quick_access},null,8,["options"]),u,a(o,{options:l(t).platformio_quick_access_miscellaneous},null,8,["options"]),h,a(o,{options:l(t).platformio_quick_access_upgrade_core},null,8,["options"]),_,a(o,{options:l(t).platformio_pio_home},null,8,["options"]),m,a(o,{options:l(t).platformio_pio_sidebar_platforms},null,8,["options"]),f,a(o,{options:l(t).platformio_pio_sidebar_platforms_updates},null,8,["options"]),g,a(o,{options:l(t).platformio_pio_espressif32},null,8,["options"]),v]))}});export{P as __pageData,w as default};

View File

@ -1 +1 @@
import{_ as o,i as t}from"./chunks/index.150e11f2.js";import{o as s,c as d,a,u as l,h as n,g as i,b as e}from"./app.106a9488.js";const r=n("",7),c=n("",4),p=i("ol",{start:"3"},[i("li",null,[e("A side panel will open, there will be a couple of sections, one of them called "),i("code",null,"Quick Access"),e(", open it.")])],-1),u=i("ol",{start:"4"},[i("li",null,[e("In "),i("code",null,"Quick Access"),e(" section, click on the "),i("code",null,"Miscelleneous"),e(" tab")])],-1),h=i("ol",{start:"5"},[i("li",null,[e("Then, click on the "),i("code",null,"Upgrade PlatformIO Core")])],-1),_=n("",5),m=i("ol",{start:"3"},[i("li",null,[e("This will open a window for PlatformIO dashboard, in there, click on a "),i("code",null,"Platforms"),e(" button on the sidebar")])],-1),f=i("ol",{start:"4"},[i("li",null,[e("Once there, you should see a couple of tabs next to the side bard, things like "),i("code",null,"Installed"),e(" or "),i("code",null,"Embedded"),e(". Click on "),i("code",null,"Updates")])],-1),g=i("ol",{start:"5"},[i("li",null,[e("Locate a platform called "),i("code",null,"Espressif 32"),e(" and click on "),i("code",null,"Update to <version>")])],-1),v=i("ol",{start:"6"},[i("li",null,"Wait until it is done and that's it!")],-1),P=JSON.parse('{"title":"Updating Platformio","description":"","frontmatter":{},"headers":[{"level":2,"title":"Updating PlatformIO itself","slug":"updating-platformio-itself","link":"#updating-platformio-itself","children":[{"level":3,"title":"Via CLI","slug":"via-cli","link":"#via-cli","children":[]},{"level":3,"title":"Via PlatformIO in Visual Studio Code","slug":"via-platformio-in-visual-studio-code","link":"#via-platformio-in-visual-studio-code","children":[]}]},{"level":2,"title":"Upgrading the SDK","slug":"upgrading-the-sdk","link":"#upgrading-the-sdk","children":[{"level":3,"title":"Upgrading the SDK via VSC","slug":"upgrading-the-sdk-via-vsc","link":"#upgrading-the-sdk-via-vsc","children":[]}]}],"relativePath":"firmware_guide/update_platformio.md","lastUpdated":1678402493000}'),k={name:"firmware_guide/update_platformio.md"},w=Object.assign(k,{setup(b){return(S,T)=>(s(),d("div",null,[r,a(o,{options:l(t).pio_upgrade_command},null,8,["options"]),c,a(o,{options:l(t).ant_logo_platformio},null,8,["options"]),p,a(o,{options:l(t).platformio_quick_access},null,8,["options"]),u,a(o,{options:l(t).platformio_quick_access_miscellaneous},null,8,["options"]),h,a(o,{options:l(t).platformio_quick_access_upgrade_core},null,8,["options"]),_,a(o,{options:l(t).platformio_pio_home},null,8,["options"]),m,a(o,{options:l(t).platformio_pio_sidebar_platforms},null,8,["options"]),f,a(o,{options:l(t).platformio_pio_sidebar_platforms_updates},null,8,["options"]),g,a(o,{options:l(t).platformio_pio_espressif32},null,8,["options"]),v]))}});export{P as __pageData,w as default};
import{_ as o,i as t}from"./chunks/index.0fdcdf9b.js";import{o as s,c as d,a,u as l,h as n,g as i,b as e}from"./app.0fb3db86.js";const r=n("",7),c=n("",4),p=i("ol",{start:"3"},[i("li",null,[e("A side panel will open, there will be a couple of sections, one of them called "),i("code",null,"Quick Access"),e(", open it.")])],-1),u=i("ol",{start:"4"},[i("li",null,[e("In "),i("code",null,"Quick Access"),e(" section, click on the "),i("code",null,"Miscelleneous"),e(" tab")])],-1),h=i("ol",{start:"5"},[i("li",null,[e("Then, click on the "),i("code",null,"Upgrade PlatformIO Core")])],-1),_=n("",5),m=i("ol",{start:"3"},[i("li",null,[e("This will open a window for PlatformIO dashboard, in there, click on a "),i("code",null,"Platforms"),e(" button on the sidebar")])],-1),f=i("ol",{start:"4"},[i("li",null,[e("Once there, you should see a couple of tabs next to the side bard, things like "),i("code",null,"Installed"),e(" or "),i("code",null,"Embedded"),e(". Click on "),i("code",null,"Updates")])],-1),g=i("ol",{start:"5"},[i("li",null,[e("Locate a platform called "),i("code",null,"Espressif 32"),e(" and click on "),i("code",null,"Update to <version>")])],-1),v=i("ol",{start:"6"},[i("li",null,"Wait until it is done and that's it!")],-1),P=JSON.parse('{"title":"Updating Platformio","description":"","frontmatter":{},"headers":[{"level":2,"title":"Updating PlatformIO itself","slug":"updating-platformio-itself","link":"#updating-platformio-itself","children":[{"level":3,"title":"Via CLI","slug":"via-cli","link":"#via-cli","children":[]},{"level":3,"title":"Via PlatformIO in Visual Studio Code","slug":"via-platformio-in-visual-studio-code","link":"#via-platformio-in-visual-studio-code","children":[]}]},{"level":2,"title":"Upgrading the SDK","slug":"upgrading-the-sdk","link":"#upgrading-the-sdk","children":[{"level":3,"title":"Upgrading the SDK via VSC","slug":"upgrading-the-sdk-via-vsc","link":"#upgrading-the-sdk-via-vsc","children":[]}]}],"relativePath":"firmware_guide/update_platformio.md","lastUpdated":1678402493000}'),k={name:"firmware_guide/update_platformio.md"},w=Object.assign(k,{setup(b){return(S,T)=>(s(),d("div",null,[r,a(o,{options:l(t).pio_upgrade_command},null,8,["options"]),c,a(o,{options:l(t).ant_logo_platformio},null,8,["options"]),p,a(o,{options:l(t).platformio_quick_access},null,8,["options"]),u,a(o,{options:l(t).platformio_quick_access_miscellaneous},null,8,["options"]),h,a(o,{options:l(t).platformio_quick_access_upgrade_core},null,8,["options"]),_,a(o,{options:l(t).platformio_pio_home},null,8,["options"]),m,a(o,{options:l(t).platformio_pio_sidebar_platforms},null,8,["options"]),f,a(o,{options:l(t).platformio_pio_sidebar_platforms_updates},null,8,["options"]),g,a(o,{options:l(t).platformio_pio_espressif32},null,8,["options"]),v]))}});export{P as __pageData,w as default};

View File

@ -1 +1 @@
import{_ as s,a as l}from"./chunks/index.e989031f.js";import{_ as a,i as r}from"./chunks/index.150e11f2.js";import{o as d,c as u,a as o,w as p,u as t,h as n,g as e,b as i}from"./app.106a9488.js";const h=n("",11),c=e("p",null," The MB board does the resetting for you. If you're using the FTDI programmer, follow the guide linked above (the one from randomnerdtutorials) ",-1),m=n("",14),f=e("p",null," You don't have to have the trackers connected to your pc for any of these steps, just powered on and connected to the Wi-Fi. ",-1),_=e("ol",null,[e("li",null,[i("Build the firmware using your current environment, if you've switched to an OTA env in the past - repeat those steps but select the environment without the "),e("code",null,"_OTA"),i(" suffix. Next, press the checkmark button to build it without uploading.")])],-1),g=n("",3),y=e("p",null,[i("Click on the select file button, and navigate to where you cloned the project and then to the "),e("code",null,"ESP/"),i(" directory.")],-1),w=e("p",null,[i("Once there, open "),e("code",null,".pio\\build\\your-environment"),i(" like so:")],-1),b=e("blockquote",null,[e("p",null,[i("By default, windows treats files and directories with a dot in front of their name as hidden. To change that - "),e("a",{href:"https://support.microsoft.com/en-us/windows/view-hidden-files-and-folders-in-windows-97fbc472-c603-9d90-91d0-1166d1d9f4b5",target:"_blank",rel:"noreferrer"},"see here")])],-1),v=e("p",null,[i("You'll find a couple files in there, select the one named "),e("code",null,"your-environment-vVersion-feature"),i(".")],-1),k=e("p",null,"like this one:",-1),T=e("ol",{start:"5"},[e("li",null,"Press upload and wait for it to finish. Done!")],-1),C=n("",8),A=e("p",null,"This will open a list of all available environments, select the one that matches your board and has a _OTA suffix",-1),S=n("",3),D=e("p",null,"Now, press the restart button on the esp itself. watch the monitor for output like this:",-1),I=n("",5),P=e("p",null," Skip this step if the update message denotes that the config had changed. If it does so, retype your credentials in the updated files. ",-1),F=n("",6),U=JSON.parse('{"title":"Building and uploading the firmware manually","description":"","frontmatter":{},"headers":[{"level":2,"title":"1. Connect your tracker to your PC via the programmer","slug":"_1-connect-your-tracker-to-your-pc-via-the-programmer","link":"#_1-connect-your-tracker-to-your-pc-via-the-programmer","children":[]},{"level":2,"title":"2. Build your firmware","slug":"_2-build-your-firmware","link":"#_2-build-your-firmware","children":[]},{"level":2,"title":"3. Upload your firmware","slug":"_3-upload-your-firmware","link":"#_3-upload-your-firmware","children":[]},{"level":2,"title":"Uploading via OTA","slug":"uploading-via-ota","link":"#uploading-via-ota","children":[{"level":3,"title":"What is it?","slug":"what-is-it","link":"#what-is-it","children":[]},{"level":3,"title":"How do I use it?","slug":"how-do-i-use-it","link":"#how-do-i-use-it","children":[]}]},{"level":2,"title":"Finding the IP address of your tracker","slug":"finding-the-ip-address-of-your-tracker","link":"#finding-the-ip-address-of-your-tracker","children":[]},{"level":2,"title":"Troubleshooting","slug":"troubleshooting","link":"#troubleshooting","children":[]}],"relativePath":"firmware_guide/upload_and_update_firmware.md","lastUpdated":1681507539000}'),O={name:"firmware_guide/upload_and_update_firmware.md"},q=Object.assign(O,{setup(V){return(x,E)=>(d(),u("div",null,[h,o(s,{options:t(l).upload_firmware_one},{content:p(()=>[c]),_:1},8,["options"]),m,o(s,{options:t(l).upload_firmware_one},{content:p(()=>[f]),_:1},8,["options"]),_,o(a,{options:t(r).upload_firmware_build_button},null,8,["options"]),g,o(a,{options:t(r).upload_firmware_webpage},null,8,["options"]),y,w,b,o(a,{options:t(r).upload_firmware_webpage_directory},null,8,["options"]),v,k,o(a,{options:t(r).upload_firmware_webpage_directory_file},null,8,["options"]),T,o(a,{options:t(r).upload_firmware_webpage_upload_finished},null,8,["options"]),C,o(a,{options:t(r).upload_firmware_select_env},null,8,["options"]),A,o(a,{options:t(r).upload_firmware_select_env_dropdown},null,8,["options"]),S,o(a,{options:t(r).upload_firmware_image_one},null,8,["options"]),D,o(a,{options:t(r).upload_firmware_image_two},null,8,["options"]),I,o(s,{options:t(l).user_warning},{content:p(()=>[P]),_:1},8,["options"]),F]))}});export{U as __pageData,q as default};
import{_ as s,a as l}from"./chunks/index.8516fcfb.js";import{_ as a,i as r}from"./chunks/index.0fdcdf9b.js";import{o as d,c as u,a as o,w as p,u as t,h as n,g as e,b as i}from"./app.0fb3db86.js";const h=n("",11),c=e("p",null," The MB board does the resetting for you. If you're using the FTDI programmer, follow the guide linked above (the one from randomnerdtutorials) ",-1),m=n("",14),f=e("p",null," You don't have to have the trackers connected to your pc for any of these steps, just powered on and connected to the Wi-Fi. ",-1),_=e("ol",null,[e("li",null,[i("Build the firmware using your current environment, if you've switched to an OTA env in the past - repeat those steps but select the environment without the "),e("code",null,"_OTA"),i(" suffix. Next, press the checkmark button to build it without uploading.")])],-1),g=n("",3),y=e("p",null,[i("Click on the select file button, and navigate to where you cloned the project and then to the "),e("code",null,"ESP/"),i(" directory.")],-1),w=e("p",null,[i("Once there, open "),e("code",null,".pio\\build\\your-environment"),i(" like so:")],-1),b=e("blockquote",null,[e("p",null,[i("By default, windows treats files and directories with a dot in front of their name as hidden. To change that - "),e("a",{href:"https://support.microsoft.com/en-us/windows/view-hidden-files-and-folders-in-windows-97fbc472-c603-9d90-91d0-1166d1d9f4b5",target:"_blank",rel:"noreferrer"},"see here")])],-1),v=e("p",null,[i("You'll find a couple files in there, select the one named "),e("code",null,"your-environment-vVersion-feature"),i(".")],-1),k=e("p",null,"like this one:",-1),T=e("ol",{start:"5"},[e("li",null,"Press upload and wait for it to finish. Done!")],-1),C=n("",8),A=e("p",null,"This will open a list of all available environments, select the one that matches your board and has a _OTA suffix",-1),S=n("",3),D=e("p",null,"Now, press the restart button on the esp itself. watch the monitor for output like this:",-1),I=n("",5),P=e("p",null," Skip this step if the update message denotes that the config had changed. If it does so, retype your credentials in the updated files. ",-1),F=n("",6),U=JSON.parse('{"title":"Building and uploading the firmware manually","description":"","frontmatter":{},"headers":[{"level":2,"title":"1. Connect your tracker to your PC via the programmer","slug":"_1-connect-your-tracker-to-your-pc-via-the-programmer","link":"#_1-connect-your-tracker-to-your-pc-via-the-programmer","children":[]},{"level":2,"title":"2. Build your firmware","slug":"_2-build-your-firmware","link":"#_2-build-your-firmware","children":[]},{"level":2,"title":"3. Upload your firmware","slug":"_3-upload-your-firmware","link":"#_3-upload-your-firmware","children":[]},{"level":2,"title":"Uploading via OTA","slug":"uploading-via-ota","link":"#uploading-via-ota","children":[{"level":3,"title":"What is it?","slug":"what-is-it","link":"#what-is-it","children":[]},{"level":3,"title":"How do I use it?","slug":"how-do-i-use-it","link":"#how-do-i-use-it","children":[]}]},{"level":2,"title":"Finding the IP address of your tracker","slug":"finding-the-ip-address-of-your-tracker","link":"#finding-the-ip-address-of-your-tracker","children":[]},{"level":2,"title":"Troubleshooting","slug":"troubleshooting","link":"#troubleshooting","children":[]}],"relativePath":"firmware_guide/upload_and_update_firmware.md","lastUpdated":1681507539000}'),O={name:"firmware_guide/upload_and_update_firmware.md"},q=Object.assign(O,{setup(V){return(x,E)=>(d(),u("div",null,[h,o(s,{options:t(l).upload_firmware_one},{content:p(()=>[c]),_:1},8,["options"]),m,o(s,{options:t(l).upload_firmware_one},{content:p(()=>[f]),_:1},8,["options"]),_,o(a,{options:t(r).upload_firmware_build_button},null,8,["options"]),g,o(a,{options:t(r).upload_firmware_webpage},null,8,["options"]),y,w,b,o(a,{options:t(r).upload_firmware_webpage_directory},null,8,["options"]),v,k,o(a,{options:t(r).upload_firmware_webpage_directory_file},null,8,["options"]),T,o(a,{options:t(r).upload_firmware_webpage_upload_finished},null,8,["options"]),C,o(a,{options:t(r).upload_firmware_select_env},null,8,["options"]),A,o(a,{options:t(r).upload_firmware_select_env_dropdown},null,8,["options"]),S,o(a,{options:t(r).upload_firmware_image_one},null,8,["options"]),D,o(a,{options:t(r).upload_firmware_image_two},null,8,["options"]),I,o(s,{options:t(l).user_warning},{content:p(()=>[P]),_:1},8,["options"]),F]))}});export{U as __pageData,q as default};

View File

@ -1 +1 @@
import{_ as i,a as s}from"./chunks/index.e989031f.js";import{_ as l,i as d}from"./chunks/index.150e11f2.js";import{o as c,c as h,a,w as n,u as r,h as t,g as e,b as o}from"./app.106a9488.js";const u=t("",4),_=e("p",null," This project is in active development. However, it is working for most users. ",-1),p=t("",5),f=e("p",null,[o(" Make sure you are using "),e("ins",{class:"text-red-400 dark:text-red-500"},"non-focused"),o(" emitters and at around "),e("ins",{class:"font-bold"},"5ma"),o(" total power. ")],-1),m=t("",9),g=t("",3),E=JSON.parse('{"title":"EyeTrackVR","description":"","frontmatter":{},"headers":[{"level":3,"title":"Welcome to the EyetrackVR documentation website. Here you will find all avalable documentation regauding building, development, and other resources related to this project.","slug":"welcome-to-the-eyetrackvr-documentation-website-here-you-will-find-all-avalable-documentation-regauding-building-development-and-other-resources-related-to-this-project","link":"#welcome-to-the-eyetrackvr-documentation-website-here-you-will-find-all-avalable-documentation-regauding-building-development-and-other-resources-related-to-this-project","children":[]},{"level":2,"title":"About IR Emitter Safety","slug":"about-ir-emitter-safety","link":"#about-ir-emitter-safety","children":[]},{"level":2,"title":"Hardware","slug":"hardware","link":"#hardware","children":[]},{"level":2,"title":"Firmware","slug":"firmware","link":"#firmware","children":[]},{"level":2,"title":"Headset support","slug":"headset-support","link":"#headset-support","children":[]}],"relativePath":"getting_started/intro.md","lastUpdated":1681430214000}'),b={name:"getting_started/intro.md"},A=Object.assign(b,{setup(y){return(w,k)=>(c(),h("div",null,[u,a(i,{options:r(s).user_warning},{content:n(()=>[_]),_:1},8,["options"]),p,a(i,{options:r(s).led_power_warning},{content:n(()=>[f]),_:1},8,["options"]),m,a(l,{options:r(d).discord_content},null,8,["options"]),g]))}});export{E as __pageData,A as default};
import{_ as i,a as s}from"./chunks/index.8516fcfb.js";import{_ as l,i as d}from"./chunks/index.0fdcdf9b.js";import{o as c,c as h,a,w as n,u as r,h as t,g as e,b as o}from"./app.0fb3db86.js";const u=t("",4),_=e("p",null," This project is in active development. However, it is working for most users. ",-1),p=t("",5),f=e("p",null,[o(" Make sure you are using "),e("ins",{class:"text-red-400 dark:text-red-500"},"non-focused"),o(" emitters and at around "),e("ins",{class:"font-bold"},"5ma"),o(" total power. ")],-1),m=t("",9),g=t("",3),E=JSON.parse('{"title":"EyeTrackVR","description":"","frontmatter":{},"headers":[{"level":3,"title":"Welcome to the EyetrackVR documentation website. Here you will find all avalable documentation regauding building, development, and other resources related to this project.","slug":"welcome-to-the-eyetrackvr-documentation-website-here-you-will-find-all-avalable-documentation-regauding-building-development-and-other-resources-related-to-this-project","link":"#welcome-to-the-eyetrackvr-documentation-website-here-you-will-find-all-avalable-documentation-regauding-building-development-and-other-resources-related-to-this-project","children":[]},{"level":2,"title":"About IR Emitter Safety","slug":"about-ir-emitter-safety","link":"#about-ir-emitter-safety","children":[]},{"level":2,"title":"Hardware","slug":"hardware","link":"#hardware","children":[]},{"level":2,"title":"Firmware","slug":"firmware","link":"#firmware","children":[]},{"level":2,"title":"Headset support","slug":"headset-support","link":"#headset-support","children":[]}],"relativePath":"getting_started/intro.md","lastUpdated":1681430214000}'),b={name:"getting_started/intro.md"},A=Object.assign(b,{setup(y){return(w,k)=>(c(),h("div",null,[u,a(i,{options:r(s).user_warning},{content:n(()=>[_]),_:1},8,["options"]),p,a(i,{options:r(s).led_power_warning},{content:n(()=>[f]),_:1},8,["options"]),m,a(l,{options:r(d).discord_content},null,8,["options"]),g]))}});export{E as __pageData,A as default};

View File

@ -1 +1 @@
import{_ as e,o as t,c as a,h as o}from"./app.106a9488.js";const w=JSON.parse('{"title":"Things To Know Before You Start","description":"","frontmatter":{},"headers":[{"level":2,"title":"This page will be an overview of things to know and understand before you start this project","slug":"this-page-will-be-an-overview-of-things-to-know-and-understand-before-you-start-this-project","link":"#this-page-will-be-an-overview-of-things-to-know-and-understand-before-you-start-this-project","children":[{"level":3,"title":"Software is not final","slug":"software-is-not-final","link":"#software-is-not-final","children":[]},{"level":3,"title":"Firmware may have user difficulties","slug":"firmware-may-have-user-difficulties","link":"#firmware-may-have-user-difficulties","children":[]},{"level":3,"title":"IR emitters are dangerous","slug":"ir-emitters-are-dangerous","link":"#ir-emitters-are-dangerous","children":[]},{"level":3,"title":"Documentation may be incomplete","slug":"documentation-may-be-incomplete","link":"#documentation-may-be-incomplete","children":[]},{"level":3,"title":"You will need to set up your avatar to use this","slug":"you-will-need-to-set-up-your-avatar-to-use-this","link":"#you-will-need-to-set-up-your-avatar-to-use-this","children":[]},{"level":3,"title":"Once you have acknowledged the items above, move on to the Full Build Guide","slug":"once-you-have-acknowledged-the-items-above-move-on-to-the-full-build-guide","link":"#once-you-have-acknowledged-the-items-above-move-on-to-the-full-build-guide","children":[]}]}],"relativePath":"getting_started/things_to_know.md","lastUpdated":1681430214000}'),i={name:"getting_started/things_to_know.md"},n=o('<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-hidden="true">#</a></h1><h2 id="this-page-will-be-an-overview-of-things-to-know-and-understand-before-you-start-this-project" tabindex="-1">This page will be an overview of things to know and understand before you start this project <a class="header-anchor" href="#this-page-will-be-an-overview-of-things-to-know-and-understand-before-you-start-this-project" aria-hidden="true">#</a></h2><h3 id="software-is-not-final" tabindex="-1">Software is not final <a class="header-anchor" href="#software-is-not-final" aria-hidden="true">#</a></h3><p>Bugs can and will occur which may hinder the experience or useability 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-hidden="true">#</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-hidden="true">#</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 damaged 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-hidden="true">#</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-hidden="true">#</a></h3><p>This will require some basic Unity knowledge and owning your own 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="https://docs.eyetrackvr.dev/how_to_build/full_build" target="_blank" rel="noreferrer">Full Build Guide</a> <a class="header-anchor" href="#once-you-have-acknowledged-the-items-above-move-on-to-the-full-build-guide" aria-hidden="true">#</a></h3>',13),r=[n];function s(l,d,u,h,c,f){return t(),a("div",null,r)}const p=e(i,[["render",s]]);export{w as __pageData,p as default};
import{_ as e,o as t,c as a,h as o}from"./app.0fb3db86.js";const w=JSON.parse('{"title":"Things To Know Before You Start","description":"","frontmatter":{},"headers":[{"level":2,"title":"This page will be an overview of things to know and understand before you start this project","slug":"this-page-will-be-an-overview-of-things-to-know-and-understand-before-you-start-this-project","link":"#this-page-will-be-an-overview-of-things-to-know-and-understand-before-you-start-this-project","children":[{"level":3,"title":"Software is not final","slug":"software-is-not-final","link":"#software-is-not-final","children":[]},{"level":3,"title":"Firmware may have user difficulties","slug":"firmware-may-have-user-difficulties","link":"#firmware-may-have-user-difficulties","children":[]},{"level":3,"title":"IR emitters are dangerous","slug":"ir-emitters-are-dangerous","link":"#ir-emitters-are-dangerous","children":[]},{"level":3,"title":"Documentation may be incomplete","slug":"documentation-may-be-incomplete","link":"#documentation-may-be-incomplete","children":[]},{"level":3,"title":"You will need to set up your avatar to use this","slug":"you-will-need-to-set-up-your-avatar-to-use-this","link":"#you-will-need-to-set-up-your-avatar-to-use-this","children":[]},{"level":3,"title":"Once you have acknowledged the items above, move on to the Full Build Guide","slug":"once-you-have-acknowledged-the-items-above-move-on-to-the-full-build-guide","link":"#once-you-have-acknowledged-the-items-above-move-on-to-the-full-build-guide","children":[]}]}],"relativePath":"getting_started/things_to_know.md","lastUpdated":1681430214000}'),i={name:"getting_started/things_to_know.md"},n=o('<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-hidden="true">#</a></h1><h2 id="this-page-will-be-an-overview-of-things-to-know-and-understand-before-you-start-this-project" tabindex="-1">This page will be an overview of things to know and understand before you start this project <a class="header-anchor" href="#this-page-will-be-an-overview-of-things-to-know-and-understand-before-you-start-this-project" aria-hidden="true">#</a></h2><h3 id="software-is-not-final" tabindex="-1">Software is not final <a class="header-anchor" href="#software-is-not-final" aria-hidden="true">#</a></h3><p>Bugs can and will occur which may hinder the experience or useability 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-hidden="true">#</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-hidden="true">#</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 damaged 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-hidden="true">#</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-hidden="true">#</a></h3><p>This will require some basic Unity knowledge and owning your own 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="https://docs.eyetrackvr.dev/how_to_build/full_build" target="_blank" rel="noreferrer">Full Build Guide</a> <a class="header-anchor" href="#once-you-have-acknowledged-the-items-above-move-on-to-the-full-build-guide" aria-hidden="true">#</a></h3>',13),r=[n];function s(l,d,u,h,c,f){return t(),a("div",null,r)}const p=e(i,[["render",s]]);export{w as __pageData,p as default};

View File

@ -1 +1 @@
import{_ as e,o as t,c as a,h as o}from"./app.106a9488.js";const w=JSON.parse('{"title":"Things To Know Before You Start","description":"","frontmatter":{},"headers":[{"level":2,"title":"This page will be an overview of things to know and understand before you start this project","slug":"this-page-will-be-an-overview-of-things-to-know-and-understand-before-you-start-this-project","link":"#this-page-will-be-an-overview-of-things-to-know-and-understand-before-you-start-this-project","children":[{"level":3,"title":"Software is not final","slug":"software-is-not-final","link":"#software-is-not-final","children":[]},{"level":3,"title":"Firmware may have user difficulties","slug":"firmware-may-have-user-difficulties","link":"#firmware-may-have-user-difficulties","children":[]},{"level":3,"title":"IR emitters are dangerous","slug":"ir-emitters-are-dangerous","link":"#ir-emitters-are-dangerous","children":[]},{"level":3,"title":"Documentation may be incomplete","slug":"documentation-may-be-incomplete","link":"#documentation-may-be-incomplete","children":[]},{"level":3,"title":"You will need to set up your avatar to use this","slug":"you-will-need-to-set-up-your-avatar-to-use-this","link":"#you-will-need-to-set-up-your-avatar-to-use-this","children":[]},{"level":3,"title":"Once you have acknowledged the items above, move on to the Full Build Guide","slug":"once-you-have-acknowledged-the-items-above-move-on-to-the-full-build-guide","link":"#once-you-have-acknowledged-the-items-above-move-on-to-the-full-build-guide","children":[]}]}],"relativePath":"getting_started/things_to_know.md","lastUpdated":1681430214000}'),i={name:"getting_started/things_to_know.md"},n=o("",13),r=[n];function s(l,d,u,h,c,f){return t(),a("div",null,r)}const p=e(i,[["render",s]]);export{w as __pageData,p as default};
import{_ as e,o as t,c as a,h as o}from"./app.0fb3db86.js";const w=JSON.parse('{"title":"Things To Know Before You Start","description":"","frontmatter":{},"headers":[{"level":2,"title":"This page will be an overview of things to know and understand before you start this project","slug":"this-page-will-be-an-overview-of-things-to-know-and-understand-before-you-start-this-project","link":"#this-page-will-be-an-overview-of-things-to-know-and-understand-before-you-start-this-project","children":[{"level":3,"title":"Software is not final","slug":"software-is-not-final","link":"#software-is-not-final","children":[]},{"level":3,"title":"Firmware may have user difficulties","slug":"firmware-may-have-user-difficulties","link":"#firmware-may-have-user-difficulties","children":[]},{"level":3,"title":"IR emitters are dangerous","slug":"ir-emitters-are-dangerous","link":"#ir-emitters-are-dangerous","children":[]},{"level":3,"title":"Documentation may be incomplete","slug":"documentation-may-be-incomplete","link":"#documentation-may-be-incomplete","children":[]},{"level":3,"title":"You will need to set up your avatar to use this","slug":"you-will-need-to-set-up-your-avatar-to-use-this","link":"#you-will-need-to-set-up-your-avatar-to-use-this","children":[]},{"level":3,"title":"Once you have acknowledged the items above, move on to the Full Build Guide","slug":"once-you-have-acknowledged-the-items-above-move-on-to-the-full-build-guide","link":"#once-you-have-acknowledged-the-items-above-move-on-to-the-full-build-guide","children":[]}]}],"relativePath":"getting_started/things_to_know.md","lastUpdated":1681430214000}'),i={name:"getting_started/things_to_know.md"},n=o("",13),r=[n];function s(l,d,u,h,c,f){return t(),a("div",null,r)}const p=e(i,[["render",s]]);export{w as __pageData,p as default};

View File

@ -1 +1 @@
import{_ as e,o as t,c as a,h as o}from"./app.106a9488.js";const g=JSON.parse('{"title":"Creating Your Own Mount","description":"","frontmatter":{},"headers":[{"level":2,"title":"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","slug":"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","link":"#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","children":[]},{"level":2,"title":"Step 1: Find a way to mount to your headsets lens","slug":"step-1-find-a-way-to-mount-to-your-headsets-lens","link":"#step-1-find-a-way-to-mount-to-your-headsets-lens","children":[]},{"level":2,"title":"Step 2: Find a camera mount","slug":"step-2-find-a-camera-mount","link":"#step-2-find-a-camera-mount","children":[]},{"level":2,"title":"Step 3: Place the camera mount where it will give a good camera angle","slug":"step-3-place-the-camera-mount-where-it-will-give-a-good-camera-angle","link":"#step-3-place-the-camera-mount-where-it-will-give-a-good-camera-angle","children":[]},{"level":2,"title":"Step 4: Mount your LEDs","slug":"step-4-mount-your-leds","link":"#step-4-mount-your-leds","children":[]},{"level":2,"title":"Step 5: Test everything","slug":"step-5-test-everything","link":"#step-5-test-everything","children":[]},{"level":2,"title":"Step 6: Get your mounts listed","slug":"step-6-get-your-mounts-listed","link":"#step-6-get-your-mounts-listed","children":[]}],"relativePath":"how_to_build/creating_your_own_mount.md","lastUpdated":1676223729000}'),n={name:"how_to_build/creating_your_own_mount.md"},r=o("",18),i=[r];function s(h,u,l,d,c,m){return t(),a("div",null,i)}const w=e(n,[["render",s]]);export{g as __pageData,w as default};
import{_ as e,o as t,c as a,h as o}from"./app.0fb3db86.js";const g=JSON.parse('{"title":"Creating Your Own Mount","description":"","frontmatter":{},"headers":[{"level":2,"title":"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","slug":"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","link":"#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","children":[]},{"level":2,"title":"Step 1: Find a way to mount to your headsets lens","slug":"step-1-find-a-way-to-mount-to-your-headsets-lens","link":"#step-1-find-a-way-to-mount-to-your-headsets-lens","children":[]},{"level":2,"title":"Step 2: Find a camera mount","slug":"step-2-find-a-camera-mount","link":"#step-2-find-a-camera-mount","children":[]},{"level":2,"title":"Step 3: Place the camera mount where it will give a good camera angle","slug":"step-3-place-the-camera-mount-where-it-will-give-a-good-camera-angle","link":"#step-3-place-the-camera-mount-where-it-will-give-a-good-camera-angle","children":[]},{"level":2,"title":"Step 4: Mount your LEDs","slug":"step-4-mount-your-leds","link":"#step-4-mount-your-leds","children":[]},{"level":2,"title":"Step 5: Test everything","slug":"step-5-test-everything","link":"#step-5-test-everything","children":[]},{"level":2,"title":"Step 6: Get your mounts listed","slug":"step-6-get-your-mounts-listed","link":"#step-6-get-your-mounts-listed","children":[]}],"relativePath":"how_to_build/creating_your_own_mount.md","lastUpdated":1676223729000}'),n={name:"how_to_build/creating_your_own_mount.md"},r=o("",18),i=[r];function s(h,u,l,d,c,m){return t(),a("div",null,i)}const w=e(n,[["render",s]]);export{g as __pageData,w as default};

View File

@ -1 +1 @@
import{_ as e,o as t,c as o}from"./app.106a9488.js";const u=JSON.parse('{"title":"","description":"","frontmatter":{"layout":"home","hero":{"name":"EyeTrackVR Docs","text":"Opensource and affordable VR eye tracking.","image":{"src":"/logo_light.png","alt":"ETRVR 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/RedHawk989/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","lastUpdated":1674229165000}'),a={name:"index.md"};function n(i,l,r,s,c,d){return t(),o("div")}const m=e(a,[["render",n]]);export{u as __pageData,m as default};
import{_ as e,o as t,c as o}from"./app.0fb3db86.js";const u=JSON.parse('{"title":"","description":"","frontmatter":{"layout":"home","hero":{"name":"EyeTrackVR Docs","text":"Opensource and affordable VR eye tracking.","image":{"src":"/logo_light.png","alt":"ETRVR 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/RedHawk989/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","lastUpdated":1674229165000}'),a={name:"index.md"};function n(i,l,r,s,c,d){return t(),o("div")}const m=e(a,[["render",n]]);export{u as __pageData,m as default};

View File

@ -1 +1 @@
import{_ as e,o as t,c as o}from"./app.106a9488.js";const u=JSON.parse('{"title":"","description":"","frontmatter":{"layout":"home","hero":{"name":"EyeTrackVR Docs","text":"Opensource and affordable VR eye tracking.","image":{"src":"/logo_light.png","alt":"ETRVR 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/RedHawk989/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","lastUpdated":1674229165000}'),a={name:"index.md"};function n(i,l,r,s,c,d){return t(),o("div")}const m=e(a,[["render",n]]);export{u as __pageData,m as default};
import{_ as e,o as t,c as o}from"./app.0fb3db86.js";const u=JSON.parse('{"title":"","description":"","frontmatter":{"layout":"home","hero":{"name":"EyeTrackVR Docs","text":"Opensource and affordable VR eye tracking.","image":{"src":"/logo_light.png","alt":"ETRVR 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/RedHawk989/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","lastUpdated":1674229165000}'),a={name:"index.md"};function n(i,l,r,s,c,d){return t(),o("div")}const m=e(a,[["render",n]]);export{u as __pageData,m as default};

View File

@ -1 +1 @@
import{A as d}from"./chunks/Accordion.d909cfeb.js";import{o as s,c as a,F as c,r as h,m as u,w as o,g as e,t as n,i as p,u as f,a as _,b as y}from"./app.106a9488.js";const m={faq:[{question:"What is the goal of this project?",answer:"To provide an open source, affordable VR eyetracker for Socail games like VRChat as well as provide an open eyetracking 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 $25-40. 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:"Testing is still being done to validate our current hardware choice, no hardware has been fully confirmed therefore I cannot recommend you buy parts and assemble one yourself unless you are good with losing money and are going to be actively contributing to the project. This stands true still as of 5/3.",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:""}]},w={class:"font-semibold text-xl"},k={class:""},g={style:{"list-style":"none"}},b={key:0},q=["href"],v={__name:"FAQ",setup(r){return(i,l)=>(s(),a("div",null,[(s(!0),a(c,null,h(f(m).faq,t=>(s(),u(d,{class:"mb-4"},{title:o(()=>[e("span",w,n(t.question),1)]),content:o(()=>[e("div",null,[e("span",k,[e("blockquote",null,[e("ul",g,[e("li",null,n(t.answer),1),t.hyper_link!=i.NULL&&t.hyper_link!=""?(s(),a("p",b,[e("a",{href:t.hyper_link,target:"_blank"},n(t.link_description),9,q)])):p("",!0)])])])])]),_:2},1024))),256))]))}},x=e("h1",{class:"text-[var(--font-accent)]",id:"frequently-asked-questions",tabindex:"-1"},[y("Frequently Asked Questions "),e("a",{class:"header-anchor",href:"#frequently-asked-questions","aria-hidden":"true"},"#")],-1),A=e("br",null,null,-1),C=e("hr",null,null,-1),N=JSON.parse('{"title":"Frequently Asked Questions","description":"","frontmatter":{},"headers":[],"relativePath":"misc/faq.md","lastUpdated":1676223729000}'),V={name:"misc/faq.md"},R=Object.assign(V,{setup(r){return(i,l)=>(s(),a("div",null,[x,A,C,_(v)]))}});export{N as __pageData,R as default};
import{A as d}from"./chunks/Accordion.81f2f94e.js";import{o as s,c as a,F as c,r as h,m as u,w as o,g as e,t as n,i as p,u as f,a as _,b as y}from"./app.0fb3db86.js";const m={faq:[{question:"What is the goal of this project?",answer:"To provide an open source, affordable VR eyetracker for Socail games like VRChat as well as provide an open eyetracking 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 $25-40. 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:"Testing is still being done to validate our current hardware choice, no hardware has been fully confirmed therefore I cannot recommend you buy parts and assemble one yourself unless you are good with losing money and are going to be actively contributing to the project. This stands true still as of 5/3.",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:""}]},w={class:"font-semibold text-xl"},k={class:""},g={style:{"list-style":"none"}},b={key:0},q=["href"],v={__name:"FAQ",setup(r){return(i,l)=>(s(),a("div",null,[(s(!0),a(c,null,h(f(m).faq,t=>(s(),u(d,{class:"mb-4"},{title:o(()=>[e("span",w,n(t.question),1)]),content:o(()=>[e("div",null,[e("span",k,[e("blockquote",null,[e("ul",g,[e("li",null,n(t.answer),1),t.hyper_link!=i.NULL&&t.hyper_link!=""?(s(),a("p",b,[e("a",{href:t.hyper_link,target:"_blank"},n(t.link_description),9,q)])):p("",!0)])])])])]),_:2},1024))),256))]))}},x=e("h1",{class:"text-[var(--font-accent)]",id:"frequently-asked-questions",tabindex:"-1"},[y("Frequently Asked Questions "),e("a",{class:"header-anchor",href:"#frequently-asked-questions","aria-hidden":"true"},"#")],-1),A=e("br",null,null,-1),C=e("hr",null,null,-1),N=JSON.parse('{"title":"Frequently Asked Questions","description":"","frontmatter":{},"headers":[],"relativePath":"misc/faq.md","lastUpdated":1676223729000}'),V={name:"misc/faq.md"},R=Object.assign(V,{setup(r){return(i,l)=>(s(),a("div",null,[x,A,C,_(v)]))}});export{N as __pageData,R as default};

View File

@ -1 +1 @@
import{A as d}from"./chunks/Accordion.d909cfeb.js";import{o as s,c as a,F as c,r as h,m as u,w as o,g as e,t as n,i as p,u as f,a as _,b as y}from"./app.106a9488.js";const m={faq:[{question:"What is the goal of this project?",answer:"To provide an open source, affordable VR eyetracker for Socail games like VRChat as well as provide an open eyetracking 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 $25-40. 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:"Testing is still being done to validate our current hardware choice, no hardware has been fully confirmed therefore I cannot recommend you buy parts and assemble one yourself unless you are good with losing money and are going to be actively contributing to the project. This stands true still as of 5/3.",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:""}]},w={class:"font-semibold text-xl"},k={class:""},g={style:{"list-style":"none"}},b={key:0},q=["href"],v={__name:"FAQ",setup(r){return(i,l)=>(s(),a("div",null,[(s(!0),a(c,null,h(f(m).faq,t=>(s(),u(d,{class:"mb-4"},{title:o(()=>[e("span",w,n(t.question),1)]),content:o(()=>[e("div",null,[e("span",k,[e("blockquote",null,[e("ul",g,[e("li",null,n(t.answer),1),t.hyper_link!=i.NULL&&t.hyper_link!=""?(s(),a("p",b,[e("a",{href:t.hyper_link,target:"_blank"},n(t.link_description),9,q)])):p("",!0)])])])])]),_:2},1024))),256))]))}},x=e("h1",{class:"text-[var(--font-accent)]",id:"frequently-asked-questions",tabindex:"-1"},[y("Frequently Asked Questions "),e("a",{class:"header-anchor",href:"#frequently-asked-questions","aria-hidden":"true"},"#")],-1),A=e("br",null,null,-1),C=e("hr",null,null,-1),N=JSON.parse('{"title":"Frequently Asked Questions","description":"","frontmatter":{},"headers":[],"relativePath":"misc/faq.md","lastUpdated":1676223729000}'),V={name:"misc/faq.md"},R=Object.assign(V,{setup(r){return(i,l)=>(s(),a("div",null,[x,A,C,_(v)]))}});export{N as __pageData,R as default};
import{A as d}from"./chunks/Accordion.81f2f94e.js";import{o as s,c as a,F as c,r as h,m as u,w as o,g as e,t as n,i as p,u as f,a as _,b as y}from"./app.0fb3db86.js";const m={faq:[{question:"What is the goal of this project?",answer:"To provide an open source, affordable VR eyetracker for Socail games like VRChat as well as provide an open eyetracking 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 $25-40. 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:"Testing is still being done to validate our current hardware choice, no hardware has been fully confirmed therefore I cannot recommend you buy parts and assemble one yourself unless you are good with losing money and are going to be actively contributing to the project. This stands true still as of 5/3.",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:""}]},w={class:"font-semibold text-xl"},k={class:""},g={style:{"list-style":"none"}},b={key:0},q=["href"],v={__name:"FAQ",setup(r){return(i,l)=>(s(),a("div",null,[(s(!0),a(c,null,h(f(m).faq,t=>(s(),u(d,{class:"mb-4"},{title:o(()=>[e("span",w,n(t.question),1)]),content:o(()=>[e("div",null,[e("span",k,[e("blockquote",null,[e("ul",g,[e("li",null,n(t.answer),1),t.hyper_link!=i.NULL&&t.hyper_link!=""?(s(),a("p",b,[e("a",{href:t.hyper_link,target:"_blank"},n(t.link_description),9,q)])):p("",!0)])])])])]),_:2},1024))),256))]))}},x=e("h1",{class:"text-[var(--font-accent)]",id:"frequently-asked-questions",tabindex:"-1"},[y("Frequently Asked Questions "),e("a",{class:"header-anchor",href:"#frequently-asked-questions","aria-hidden":"true"},"#")],-1),A=e("br",null,null,-1),C=e("hr",null,null,-1),N=JSON.parse('{"title":"Frequently Asked Questions","description":"","frontmatter":{},"headers":[],"relativePath":"misc/faq.md","lastUpdated":1676223729000}'),V={name:"misc/faq.md"},R=Object.assign(V,{setup(r){return(i,l)=>(s(),a("div",null,[x,A,C,_(v)]))}});export{N as __pageData,R as default};

View File

@ -1 +1 @@
import{_ as t,a}from"./chunks/index.e989031f.js";import{o as r,c as o,g as e,a as s,w as c,u as n,b as i,h as d}from"./app.106a9488.js";const l=e("h1",{class:"text-[var(--font-accent)]",id:"how-to-set-up-your-avatar-for-eye-tracking",tabindex:"-1"},[i("How to set up your avatar for eye tracking: "),e("a",{class:"header-anchor",href:"#how-to-set-up-your-avatar-for-eye-tracking","aria-hidden":"true"},"#")],-1),p=e("p",null,"Here is an avatar setup video created by a contributor:",-1),u=e("div",{align:"center"},[e("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),h=d('<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-hidden="true">#</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),_={align:"center"},f=e("p",null," We currently only support float parameters, please adjust your setup accordingly. ",-1),b=JSON.parse('{"title":"How to set up your avatar for eye tracking:","description":"","frontmatter":{},"headers":[{"level":3,"title":"We currently use the following paramaters","slug":"we-currently-use-the-following-paramaters","link":"#we-currently-use-the-following-paramaters","children":[]}],"relativePath":"misc/vrc_avatar_setup.md","lastUpdated":1677196572000}'),g={name:"misc/vrc_avatar_setup.md"},E=Object.assign(g,{setup(y){return(m,w)=>(r(),o("div",null,[l,p,u,h,e("div",_,[s(t,{options:n(a).vrc_avatar_setup},{content:c(()=>[f]),_:1},8,["options"])])]))}});export{b as __pageData,E as default};
import{_ as t,a}from"./chunks/index.8516fcfb.js";import{o as r,c as o,g as e,a as s,w as c,u as n,b as i,h as d}from"./app.0fb3db86.js";const l=e("h1",{class:"text-[var(--font-accent)]",id:"how-to-set-up-your-avatar-for-eye-tracking",tabindex:"-1"},[i("How to set up your avatar for eye tracking: "),e("a",{class:"header-anchor",href:"#how-to-set-up-your-avatar-for-eye-tracking","aria-hidden":"true"},"#")],-1),p=e("p",null,"Here is an avatar setup video created by a contributor:",-1),u=e("div",{align:"center"},[e("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),h=d('<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-hidden="true">#</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),_={align:"center"},f=e("p",null," We currently only support float parameters, please adjust your setup accordingly. ",-1),b=JSON.parse('{"title":"How to set up your avatar for eye tracking:","description":"","frontmatter":{},"headers":[{"level":3,"title":"We currently use the following paramaters","slug":"we-currently-use-the-following-paramaters","link":"#we-currently-use-the-following-paramaters","children":[]}],"relativePath":"misc/vrc_avatar_setup.md","lastUpdated":1677196572000}'),g={name:"misc/vrc_avatar_setup.md"},E=Object.assign(g,{setup(y){return(m,w)=>(r(),o("div",null,[l,p,u,h,e("div",_,[s(t,{options:n(a).vrc_avatar_setup},{content:c(()=>[f]),_:1},8,["options"])])]))}});export{b as __pageData,E as default};

View File

@ -1 +1 @@
import{_ as t,a}from"./chunks/index.e989031f.js";import{o as r,c as o,g as e,a as s,w as c,u as n,b as i,h as d}from"./app.106a9488.js";const l=e("h1",{class:"text-[var(--font-accent)]",id:"how-to-set-up-your-avatar-for-eye-tracking",tabindex:"-1"},[i("How to set up your avatar for eye tracking: "),e("a",{class:"header-anchor",href:"#how-to-set-up-your-avatar-for-eye-tracking","aria-hidden":"true"},"#")],-1),p=e("p",null,"Here is an avatar setup video created by a contributor:",-1),u=e("div",{align:"center"},[e("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),h=d("",7),_={align:"center"},f=e("p",null," We currently only support float parameters, please adjust your setup accordingly. ",-1),b=JSON.parse('{"title":"How to set up your avatar for eye tracking:","description":"","frontmatter":{},"headers":[{"level":3,"title":"We currently use the following paramaters","slug":"we-currently-use-the-following-paramaters","link":"#we-currently-use-the-following-paramaters","children":[]}],"relativePath":"misc/vrc_avatar_setup.md","lastUpdated":1677196572000}'),g={name:"misc/vrc_avatar_setup.md"},E=Object.assign(g,{setup(y){return(m,w)=>(r(),o("div",null,[l,p,u,h,e("div",_,[s(t,{options:n(a).vrc_avatar_setup},{content:c(()=>[f]),_:1},8,["options"])])]))}});export{b as __pageData,E as default};
import{_ as t,a}from"./chunks/index.8516fcfb.js";import{o as r,c as o,g as e,a as s,w as c,u as n,b as i,h as d}from"./app.0fb3db86.js";const l=e("h1",{class:"text-[var(--font-accent)]",id:"how-to-set-up-your-avatar-for-eye-tracking",tabindex:"-1"},[i("How to set up your avatar for eye tracking: "),e("a",{class:"header-anchor",href:"#how-to-set-up-your-avatar-for-eye-tracking","aria-hidden":"true"},"#")],-1),p=e("p",null,"Here is an avatar setup video created by a contributor:",-1),u=e("div",{align:"center"},[e("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),h=d("",7),_={align:"center"},f=e("p",null," We currently only support float parameters, please adjust your setup accordingly. ",-1),b=JSON.parse('{"title":"How to set up your avatar for eye tracking:","description":"","frontmatter":{},"headers":[{"level":3,"title":"We currently use the following paramaters","slug":"we-currently-use-the-following-paramaters","link":"#we-currently-use-the-following-paramaters","children":[]}],"relativePath":"misc/vrc_avatar_setup.md","lastUpdated":1677196572000}'),g={name:"misc/vrc_avatar_setup.md"},E=Object.assign(g,{setup(y){return(m,w)=>(r(),o("div",null,[l,p,u,h,e("div",_,[s(t,{options:n(a).vrc_avatar_setup},{content:c(()=>[f]),_:1},8,["options"])])]))}});export{b as __pageData,E as default};

View File

@ -1 +1 @@
import{_ as r,a as i}from"./chunks/index.e989031f.js";import{_ as l}from"./chunks/CheckBoxList.2de66a28.js";import{o as n,c as s,a as o,w as h,u as a,g as e,b as t,h as d}from"./app.106a9488.js";const p={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:""}]},u=e("h1",{class:"text-[var(--font-accent)]",id:"build-the-app-from-source",tabindex:"-1"},[t("Build the app from source "),e("a",{class:"header-anchor",href:"#build-the-app-from-source","aria-hidden":"true"},"#")],-1),c=e("h2",{id:"this-guide-will-show-how-to-build-the-app-from-source",tabindex:"-1"},[t("This guide will show how to build the app from source "),e("a",{class:"header-anchor",href:"#this-guide-will-show-how-to-build-the-app-from-source","aria-hidden":"true"},"#")],-1),m=e("p",null," This is NOT a required step, you do not need to build the app from source. ",-1),y=e("h2",{id:"requirements",tabindex:"-1"},[t("Requirements "),e("a",{class:"header-anchor",href:"#requirements","aria-hidden":"true"},"#")],-1),_=d('<h2 id="install-python" tabindex="-1">Install Python <a class="header-anchor" href="#install-python" aria-hidden="true">#</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-hidden="true">#</a></h2><p>Since version <code>0.1.7</code> of EyeTrackVR, we have been using 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-hidden="true">#</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-hidden="true">#</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),q=JSON.parse('{"title":"Build the app from source","description":"","frontmatter":{},"headers":[{"level":2,"title":"This guide will show how to build the app from source","slug":"this-guide-will-show-how-to-build-the-app-from-source","link":"#this-guide-will-show-how-to-build-the-app-from-source","children":[]},{"level":2,"title":"Requirements","slug":"requirements","link":"#requirements","children":[]},{"level":2,"title":"Install Python","slug":"install-python","link":"#install-python","children":[]},{"level":2,"title":"Installing Poetry","slug":"installing-poetry","link":"#installing-poetry","children":[]},{"level":2,"title":"Install the required Python modules","slug":"install-the-required-python-modules","link":"#install-the-required-python-modules","children":[]},{"level":2,"title":"Build the app","slug":"build-the-app","link":"#build-the-app","children":[]}],"relativePath":"software_guide/build_software.md","lastUpdated":1676223729000}'),f={name:"software_guide/build_software.md"},v=Object.assign(f,{setup(w){return(b,g)=>(n(),s("div",null,[u,c,o(r,{options:a(i).build_software_one},{content:h(()=>[m]),_:1},8,["options"]),y,o(l,{options:{...a(p)}},null,8,["options"]),_]))}});export{q as __pageData,v as default};
import{_ as r,a as i}from"./chunks/index.8516fcfb.js";import{_ as l}from"./chunks/CheckBoxList.2ee05eca.js";import{o as n,c as s,a as o,w as h,u as a,g as e,b as t,h as d}from"./app.0fb3db86.js";const p={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:""}]},u=e("h1",{class:"text-[var(--font-accent)]",id:"build-the-app-from-source",tabindex:"-1"},[t("Build the app from source "),e("a",{class:"header-anchor",href:"#build-the-app-from-source","aria-hidden":"true"},"#")],-1),c=e("h2",{id:"this-guide-will-show-how-to-build-the-app-from-source",tabindex:"-1"},[t("This guide will show how to build the app from source "),e("a",{class:"header-anchor",href:"#this-guide-will-show-how-to-build-the-app-from-source","aria-hidden":"true"},"#")],-1),m=e("p",null," This is NOT a required step, you do not need to build the app from source. ",-1),y=e("h2",{id:"requirements",tabindex:"-1"},[t("Requirements "),e("a",{class:"header-anchor",href:"#requirements","aria-hidden":"true"},"#")],-1),_=d('<h2 id="install-python" tabindex="-1">Install Python <a class="header-anchor" href="#install-python" aria-hidden="true">#</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-hidden="true">#</a></h2><p>Since version <code>0.1.7</code> of EyeTrackVR, we have been using 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-hidden="true">#</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-hidden="true">#</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),q=JSON.parse('{"title":"Build the app from source","description":"","frontmatter":{},"headers":[{"level":2,"title":"This guide will show how to build the app from source","slug":"this-guide-will-show-how-to-build-the-app-from-source","link":"#this-guide-will-show-how-to-build-the-app-from-source","children":[]},{"level":2,"title":"Requirements","slug":"requirements","link":"#requirements","children":[]},{"level":2,"title":"Install Python","slug":"install-python","link":"#install-python","children":[]},{"level":2,"title":"Installing Poetry","slug":"installing-poetry","link":"#installing-poetry","children":[]},{"level":2,"title":"Install the required Python modules","slug":"install-the-required-python-modules","link":"#install-the-required-python-modules","children":[]},{"level":2,"title":"Build the app","slug":"build-the-app","link":"#build-the-app","children":[]}],"relativePath":"software_guide/build_software.md","lastUpdated":1676223729000}'),f={name:"software_guide/build_software.md"},v=Object.assign(f,{setup(w){return(b,g)=>(n(),s("div",null,[u,c,o(r,{options:a(i).build_software_one},{content:h(()=>[m]),_:1},8,["options"]),y,o(l,{options:{...a(p)}},null,8,["options"]),_]))}});export{q as __pageData,v as default};

View File

@ -1 +1 @@
import{_ as r,a as i}from"./chunks/index.e989031f.js";import{_ as l}from"./chunks/CheckBoxList.2de66a28.js";import{o as n,c as s,a as o,w as h,u as a,g as e,b as t,h as d}from"./app.106a9488.js";const p={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:""}]},u=e("h1",{class:"text-[var(--font-accent)]",id:"build-the-app-from-source",tabindex:"-1"},[t("Build the app from source "),e("a",{class:"header-anchor",href:"#build-the-app-from-source","aria-hidden":"true"},"#")],-1),c=e("h2",{id:"this-guide-will-show-how-to-build-the-app-from-source",tabindex:"-1"},[t("This guide will show how to build the app from source "),e("a",{class:"header-anchor",href:"#this-guide-will-show-how-to-build-the-app-from-source","aria-hidden":"true"},"#")],-1),m=e("p",null," This is NOT a required step, you do not need to build the app from source. ",-1),y=e("h2",{id:"requirements",tabindex:"-1"},[t("Requirements "),e("a",{class:"header-anchor",href:"#requirements","aria-hidden":"true"},"#")],-1),_=d("",12),q=JSON.parse('{"title":"Build the app from source","description":"","frontmatter":{},"headers":[{"level":2,"title":"This guide will show how to build the app from source","slug":"this-guide-will-show-how-to-build-the-app-from-source","link":"#this-guide-will-show-how-to-build-the-app-from-source","children":[]},{"level":2,"title":"Requirements","slug":"requirements","link":"#requirements","children":[]},{"level":2,"title":"Install Python","slug":"install-python","link":"#install-python","children":[]},{"level":2,"title":"Installing Poetry","slug":"installing-poetry","link":"#installing-poetry","children":[]},{"level":2,"title":"Install the required Python modules","slug":"install-the-required-python-modules","link":"#install-the-required-python-modules","children":[]},{"level":2,"title":"Build the app","slug":"build-the-app","link":"#build-the-app","children":[]}],"relativePath":"software_guide/build_software.md","lastUpdated":1676223729000}'),f={name:"software_guide/build_software.md"},v=Object.assign(f,{setup(w){return(b,g)=>(n(),s("div",null,[u,c,o(r,{options:a(i).build_software_one},{content:h(()=>[m]),_:1},8,["options"]),y,o(l,{options:{...a(p)}},null,8,["options"]),_]))}});export{q as __pageData,v as default};
import{_ as r,a as i}from"./chunks/index.8516fcfb.js";import{_ as l}from"./chunks/CheckBoxList.2ee05eca.js";import{o as n,c as s,a as o,w as h,u as a,g as e,b as t,h as d}from"./app.0fb3db86.js";const p={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:""}]},u=e("h1",{class:"text-[var(--font-accent)]",id:"build-the-app-from-source",tabindex:"-1"},[t("Build the app from source "),e("a",{class:"header-anchor",href:"#build-the-app-from-source","aria-hidden":"true"},"#")],-1),c=e("h2",{id:"this-guide-will-show-how-to-build-the-app-from-source",tabindex:"-1"},[t("This guide will show how to build the app from source "),e("a",{class:"header-anchor",href:"#this-guide-will-show-how-to-build-the-app-from-source","aria-hidden":"true"},"#")],-1),m=e("p",null," This is NOT a required step, you do not need to build the app from source. ",-1),y=e("h2",{id:"requirements",tabindex:"-1"},[t("Requirements "),e("a",{class:"header-anchor",href:"#requirements","aria-hidden":"true"},"#")],-1),_=d("",12),q=JSON.parse('{"title":"Build the app from source","description":"","frontmatter":{},"headers":[{"level":2,"title":"This guide will show how to build the app from source","slug":"this-guide-will-show-how-to-build-the-app-from-source","link":"#this-guide-will-show-how-to-build-the-app-from-source","children":[]},{"level":2,"title":"Requirements","slug":"requirements","link":"#requirements","children":[]},{"level":2,"title":"Install Python","slug":"install-python","link":"#install-python","children":[]},{"level":2,"title":"Installing Poetry","slug":"installing-poetry","link":"#installing-poetry","children":[]},{"level":2,"title":"Install the required Python modules","slug":"install-the-required-python-modules","link":"#install-the-required-python-modules","children":[]},{"level":2,"title":"Build the app","slug":"build-the-app","link":"#build-the-app","children":[]}],"relativePath":"software_guide/build_software.md","lastUpdated":1676223729000}'),f={name:"software_guide/build_software.md"},v=Object.assign(f,{setup(w){return(b,g)=>(n(),s("div",null,[u,c,o(r,{options:a(i).build_software_one},{content:h(()=>[m]),_:1},8,["options"]),y,o(l,{options:{...a(p)}},null,8,["options"]),_]))}});export{q as __pageData,v as default};

View File

@ -1 +1 @@
import{_ as s,a as d}from"./chunks/index.e989031f.js";import{_ as o,i as r}from"./chunks/index.150e11f2.js";import{o as l,c as h,a as t,u as a,w as c,h as n,g as e,b as i}from"./app.106a9488.js";const p=n("",7),u=n("",28),y=e("p",null,[i("Now press the "),e("code",null,"Cropping Mode"),i(" button. You should see a feed of your camera.")],-1),g=e("p",null,"Put your headset on and use an application to see your desktop. (Virtual desktop, SteamVR desktop, etc.)",-1),_=e("p",null,"You should see something like this:",-1),f=e("p",null,"Now, Draw a rectangle that selects your eye.",-1),k=e("p",null,"A good example of an ROI",-1),m=e("p",null,[i("Head back over to the "),e("code",null,"Tracking mode"),i(".")],-1),w=e("p",null,[i("We will now adjust our rotation by moving the "),e("code",null,"Rotation"),i(" slider.")],-1),b=e("p",null,"From this:",-1),v=e("p",null,"To this:",-1),T=e("p",null,"Now we will adjust our threshold.",-1),R=e("p",null,"Continuing with your headset on, move the slider all the way up. start slowly backing it off until mainly only your pupil is being visualized in the threshold viewer.",-1),S=e("p",null,"Example of a threshold being too low:",-1),x=e("p",null,"Example of too high of a threshold:",-1),C=e("p",null,"Example of a good threshold:",-1),E=n("",8),V=e("p",null," To best center both eyes, look at one spot and hit the 'Recenter Eye' button for each eye without moving your eyes. ",-1),I=e("h2",{id:"see-anything-outdated-on-this-guide-let-me-know-prohurtz-0001",tabindex:"-1"},[i("See anything outdated on this guide? Let me know! "),e("code",null,"Prohurtz#0001"),i(),e("a",{class:"header-anchor",href:"#see-anything-outdated-on-this-guide-let-me-know-prohurtz-0001","aria-hidden":"true"},"#")],-1),L=JSON.parse('{"title":"How to install, run and adjust the EyeTrackVR app.","description":"","frontmatter":{},"headers":[{"level":3,"title":"Step 1: Download the EyeTrackVR Installer and install the EyeTrackVR app","slug":"step-1-download-the-eyetrackvr-installer-and-install-the-eyetrackvr-app","link":"#step-1-download-the-eyetrackvr-installer-and-install-the-eyetrackvr-app","children":[]},{"level":2,"title":"Step 2: Run the EyeTrackVR app","slug":"step-2-run-the-eyetrackvr-app","link":"#step-2-run-the-eyetrackvr-app","children":[]},{"level":2,"title":"Step 3: Getting familiar with settings and terminology","slug":"step-3-getting-familiar-with-settings-and-terminology","link":"#step-3-getting-familiar-with-settings-and-terminology","children":[{"level":3,"title":"Right eye","slug":"right-eye","link":"#right-eye","children":[]},{"level":3,"title":"Left eye","slug":"left-eye","link":"#left-eye","children":[]},{"level":3,"title":"Both eyes","slug":"both-eyes","link":"#both-eyes","children":[]},{"level":3,"title":"Camera Address","slug":"camera-address","link":"#camera-address","children":[]},{"level":3,"title":"Tracking Mode","slug":"tracking-mode","link":"#tracking-mode","children":[]},{"level":3,"title":"Cropping Mode","slug":"cropping-mode","link":"#cropping-mode","children":[]},{"level":3,"title":"Threshold","slug":"threshold","link":"#threshold","children":[]},{"level":3,"title":"Rotation","slug":"rotation","link":"#rotation","children":[]},{"level":3,"title":"Restart Calibrationn","slug":"restart-calibrationn","link":"#restart-calibrationn","children":[]},{"level":3,"title":"Recenter Eye","slug":"recenter-eye","link":"#recenter-eye","children":[]}]},{"level":2,"title":"Step 4: Adding your cameras to the software and configuring them","slug":"step-4-adding-your-cameras-to-the-software-and-configuring-them","link":"#step-4-adding-your-cameras-to-the-software-and-configuring-them","children":[]},{"level":2,"title":"Step 5: Calibrating your eyes","slug":"step-5-calibrating-your-eyes","link":"#step-5-calibrating-your-eyes","children":[]},{"level":2,"title":"See anything outdated on this guide? Let me know! Prohurtz#0001","slug":"see-anything-outdated-on-this-guide-let-me-know-prohurtz-0001","link":"#see-anything-outdated-on-this-guide-let-me-know-prohurtz-0001","children":[]}],"relativePath":"software_guide/eyetrackvr_app_guide.md","lastUpdated":1679521850000}'),P={name:"software_guide/eyetrackvr_app_guide.md"},M=Object.assign(P,{setup(A){return(N,D)=>(l(),h("div",null,[p,t(o,{options:a(r).eyetrack_vr_guide_three},null,8,["options"]),u,t(o,{options:a(r).eyetrack_vr_guide_four},null,8,["options"]),y,g,_,t(o,{options:a(r).eyetrack_vr_guide_five},null,8,["options"]),f,k,t(o,{options:a(r).eyetrack_vr_guide_six},null,8,["options"]),m,w,b,t(o,{options:a(r).eyetrack_vr_guide_seven},null,8,["options"]),v,t(o,{options:a(r).eyetrack_vr_guide_eight},null,8,["options"]),T,R,S,t(o,{options:a(r).eyetrack_vr_guide_nine},null,8,["options"]),x,t(o,{options:a(r).eyetrack_vr_guide_ten},null,8,["options"]),C,t(o,{options:a(r).eyetrack_vr_guide_eleven},null,8,["options"]),E,t(s,{options:a(d).eyetrack_vr_guide_two},{content:c(()=>[V]),_:1},8,["options"]),I]))}});export{L as __pageData,M as default};
import{_ as s,a as d}from"./chunks/index.8516fcfb.js";import{_ as o,i as r}from"./chunks/index.0fdcdf9b.js";import{o as l,c as h,a as t,u as a,w as c,h as n,g as e,b as i}from"./app.0fb3db86.js";const p=n("",7),u=n("",28),y=e("p",null,[i("Now press the "),e("code",null,"Cropping Mode"),i(" button. You should see a feed of your camera.")],-1),g=e("p",null,"Put your headset on and use an application to see your desktop. (Virtual desktop, SteamVR desktop, etc.)",-1),_=e("p",null,"You should see something like this:",-1),f=e("p",null,"Now, Draw a rectangle that selects your eye.",-1),k=e("p",null,"A good example of an ROI",-1),m=e("p",null,[i("Head back over to the "),e("code",null,"Tracking mode"),i(".")],-1),w=e("p",null,[i("We will now adjust our rotation by moving the "),e("code",null,"Rotation"),i(" slider.")],-1),b=e("p",null,"From this:",-1),v=e("p",null,"To this:",-1),T=e("p",null,"Now we will adjust our threshold.",-1),R=e("p",null,"Continuing with your headset on, move the slider all the way up. start slowly backing it off until mainly only your pupil is being visualized in the threshold viewer.",-1),S=e("p",null,"Example of a threshold being too low:",-1),x=e("p",null,"Example of too high of a threshold:",-1),C=e("p",null,"Example of a good threshold:",-1),E=n("",8),V=e("p",null," To best center both eyes, look at one spot and hit the 'Recenter Eye' button for each eye without moving your eyes. ",-1),I=e("h2",{id:"see-anything-outdated-on-this-guide-let-me-know-prohurtz-0001",tabindex:"-1"},[i("See anything outdated on this guide? Let me know! "),e("code",null,"Prohurtz#0001"),i(),e("a",{class:"header-anchor",href:"#see-anything-outdated-on-this-guide-let-me-know-prohurtz-0001","aria-hidden":"true"},"#")],-1),L=JSON.parse('{"title":"How to install, run and adjust the EyeTrackVR app.","description":"","frontmatter":{},"headers":[{"level":3,"title":"Step 1: Download the EyeTrackVR Installer and install the EyeTrackVR app","slug":"step-1-download-the-eyetrackvr-installer-and-install-the-eyetrackvr-app","link":"#step-1-download-the-eyetrackvr-installer-and-install-the-eyetrackvr-app","children":[]},{"level":2,"title":"Step 2: Run the EyeTrackVR app","slug":"step-2-run-the-eyetrackvr-app","link":"#step-2-run-the-eyetrackvr-app","children":[]},{"level":2,"title":"Step 3: Getting familiar with settings and terminology","slug":"step-3-getting-familiar-with-settings-and-terminology","link":"#step-3-getting-familiar-with-settings-and-terminology","children":[{"level":3,"title":"Right eye","slug":"right-eye","link":"#right-eye","children":[]},{"level":3,"title":"Left eye","slug":"left-eye","link":"#left-eye","children":[]},{"level":3,"title":"Both eyes","slug":"both-eyes","link":"#both-eyes","children":[]},{"level":3,"title":"Camera Address","slug":"camera-address","link":"#camera-address","children":[]},{"level":3,"title":"Tracking Mode","slug":"tracking-mode","link":"#tracking-mode","children":[]},{"level":3,"title":"Cropping Mode","slug":"cropping-mode","link":"#cropping-mode","children":[]},{"level":3,"title":"Threshold","slug":"threshold","link":"#threshold","children":[]},{"level":3,"title":"Rotation","slug":"rotation","link":"#rotation","children":[]},{"level":3,"title":"Restart Calibrationn","slug":"restart-calibrationn","link":"#restart-calibrationn","children":[]},{"level":3,"title":"Recenter Eye","slug":"recenter-eye","link":"#recenter-eye","children":[]}]},{"level":2,"title":"Step 4: Adding your cameras to the software and configuring them","slug":"step-4-adding-your-cameras-to-the-software-and-configuring-them","link":"#step-4-adding-your-cameras-to-the-software-and-configuring-them","children":[]},{"level":2,"title":"Step 5: Calibrating your eyes","slug":"step-5-calibrating-your-eyes","link":"#step-5-calibrating-your-eyes","children":[]},{"level":2,"title":"See anything outdated on this guide? Let me know! Prohurtz#0001","slug":"see-anything-outdated-on-this-guide-let-me-know-prohurtz-0001","link":"#see-anything-outdated-on-this-guide-let-me-know-prohurtz-0001","children":[]}],"relativePath":"software_guide/eyetrackvr_app_guide.md","lastUpdated":1679521850000}'),P={name:"software_guide/eyetrackvr_app_guide.md"},M=Object.assign(P,{setup(A){return(N,D)=>(l(),h("div",null,[p,t(o,{options:a(r).eyetrack_vr_guide_three},null,8,["options"]),u,t(o,{options:a(r).eyetrack_vr_guide_four},null,8,["options"]),y,g,_,t(o,{options:a(r).eyetrack_vr_guide_five},null,8,["options"]),f,k,t(o,{options:a(r).eyetrack_vr_guide_six},null,8,["options"]),m,w,b,t(o,{options:a(r).eyetrack_vr_guide_seven},null,8,["options"]),v,t(o,{options:a(r).eyetrack_vr_guide_eight},null,8,["options"]),T,R,S,t(o,{options:a(r).eyetrack_vr_guide_nine},null,8,["options"]),x,t(o,{options:a(r).eyetrack_vr_guide_ten},null,8,["options"]),C,t(o,{options:a(r).eyetrack_vr_guide_eleven},null,8,["options"]),E,t(s,{options:a(d).eyetrack_vr_guide_two},{content:c(()=>[V]),_:1},8,["options"]),I]))}});export{L as __pageData,M as default};

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
import{_ as r,a as d}from"./chunks/index.8516fcfb.js";import{_ as n,i as a}from"./chunks/index.0fdcdf9b.js";import{o as l,c,a as t,w as h,u as o,g as e,b as i,h as s}from"./app.0fb3db86.js";const p=e("h1",{id:"setting-up-recalibration-and-recentering-from-vrchat",tabindex:"-1"},[i("Setting up recalibration and recentering from VRChat. "),e("a",{class:"header-anchor",href:"#setting-up-recalibration-and-recentering-from-vrchat","aria-hidden":"true"},"#")],-1),u=e("p",null,"ETVR has a mechanism that allows you to recalibrate and recenter your tracking without the need to interact with the app directly, here's how to setup your avatar to make use of OSC to trigger this from within VRC itself.",-1),m=e("p",null," Note, while this page explains how to do it from the point of view of vrchat, it can be done in Neos and CVR too, all the app listens to are two OSC messages. ",-1),_=s("",6),g=e("p",null,[i("Clicking on it will highligh the associated asset in the asset browser, click on the highlighted file to get its content to show in the inspector panel. Now, in the inspector click on the "),e("code",null,"Add"),i(" button to add the parameters mentioned above, both of them need to be of type Bool, they don't need to be synced nor saved.")],-1),f=e("p",null,"That's it for the parameters.",-1),y=e("h3",{id:"adding-buttons-to-the-menu",tabindex:"-1"},[i("Adding buttons to the menu "),e("a",{class:"header-anchor",href:"#adding-buttons-to-the-menu","aria-hidden":"true"},"#")],-1),b=e("p",null,"Now, you will need to add actual buttons for them in your gesture menu.",-1),v=e("p",null,"The expressions section mentioned above also contains the menu, you can use that to either add the buttons there directly or create a small submenu to make it less cluttered, here we will add them directly.",-1),w=e("p",null,'Once you have the menu file opened in the inspector, click on the "add control" button. This will add an empty action slot, expand it.',-1),k=e("p",null,`You'll see a bunch of fields, like name, icon, type and parameter. Firstly, let's give it a friendly name like "recalibrate eyes" or "recenter tracking" depending on the action you want to assign to them.`,-1),C=e("p",null,"Leave the type as is - as a button, it's more convenient as it bounces back into the off state by itself.",-1),T=e("p",null,[i("Now, in the parameter section, click on the "),e("code",null,"[None]"),i(" and select one of the parameters you have created in the previous section.")],-1),x=s("",14),P=JSON.parse(`{"title":"Setting up recalibration and recentering from VRChat.","description":"","frontmatter":{},"headers":[{"level":2,"title":"Setting up your parameters","slug":"setting-up-your-parameters","link":"#setting-up-your-parameters","children":[{"level":3,"title":"Adding parameters","slug":"adding-parameters","link":"#adding-parameters","children":[]},{"level":3,"title":"Adding buttons to the menu","slug":"adding-buttons-to-the-menu","link":"#adding-buttons-to-the-menu","children":[]}]},{"level":2,"title":"Reseting the OSC config in case the parameters don't work","slug":"reseting-the-osc-config-in-case-the-parameters-don-t-work","link":"#reseting-the-osc-config-in-case-the-parameters-don-t-work","children":[]},{"level":2,"title":"Other platforms","slug":"other-platforms","link":"#other-platforms","children":[]}],"relativePath":"software_guide/osc_setup.md","lastUpdated":1682887355000}`),S={name:"software_guide/osc_setup.md"},D=Object.assign(S,{setup(V){return(A,R)=>(l(),c("div",null,[p,u,t(r,{options:o(d).parts_list_two},{content:h(()=>[m]),_:1},8,["options"]),_,t(n,{options:o(a).unity_vrc_expressions},null,8,["options"]),g,t(n,{options:o(a).unity_vrc_expressions_add_fields},null,8,["options"]),t(n,{options:o(a).unity_vrc_expressions_fields},null,8,["options"]),f,y,b,v,t(n,{options:o(a).unity_vrc_expressions},null,8,["options"]),w,t(n,{options:o(a).unity_vrc_empty_control},null,8,["options"]),k,C,T,t(n,{options:o(a).unity_vrc_control_setup},null,8,["options"]),x]))}});export{P as __pageData,D 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

View File

@ -5,10 +5,10 @@
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>Development Documentation for the EyeTrackVR Docs Site | EyeTrackVR Docs</title>
<meta name="description" content="Official documentation for EyeTrackVR. Fully opensource and affordable VR eye tracking platform.">
<link rel="preload stylesheet" href="/assets/style.7df1d8e2.css" as="style">
<link rel="modulepreload" href="/assets/chunks/virtual_search-data.01f04ffb.js">
<link rel="modulepreload" href="/assets/app.106a9488.js">
<link rel="modulepreload" href="/assets/development_docs_dev_docs.md.1c7099a1.lean.js">
<link rel="preload stylesheet" href="/assets/style.fe358c28.css" as="style">
<link rel="modulepreload" href="/assets/chunks/virtual_search-data.6fc1adae.js">
<link rel="modulepreload" href="/assets/app.0fb3db86.js">
<link rel="modulepreload" href="/assets/development_docs_dev_docs.md.28477c22.lean.js">
<script id="check-dark-light">(()=>{const e=localStorage.getItem("vitepress-theme-appearance")||"",a=window.matchMedia("(prefers-color-scheme: dark)").matches;(!e||e==="auto"?a:e==="dark")&&document.documentElement.classList.add("dark")})();</script>
</head>
@ -18,8 +18,8 @@
<span class="line"></span></code></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br></div></div></li><li><p>Install Yarn packages</p><div class="language-sh line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">sh</span><pre class="shiki material-palenight"><code><span class="line"><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">yarn</span></span>
<span class="line"></span></code></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br></div></div></li><li><p>Start the dev server</p><div class="language-sh line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">sh</span><pre class="shiki material-palenight"><code><span class="line"><span style="color:#FFCB6B;">yarn</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">dev</span></span>
<span class="line"></span></code></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br></div></div></li><li><p>Open the site in your browser</p></li></ol><h2 id="contributing" tabindex="-1">Contributing <a class="header-anchor" href="#contributing" aria-hidden="true">#</a></h2><h3 id="project-structure" tabindex="-1">Project Structure <a class="header-anchor" href="#project-structure" aria-hidden="true">#</a></h3><ol><li>Familiarize yourself with the <a href="https://vitepress.vuejs.org/" target="_blank" rel="noreferrer">VitePress documentation</a>.</li><li>Then, move on to our project specific documentation below.</li></ol><h4 id="standards" tabindex="-1">Standards <a class="header-anchor" href="#standards" aria-hidden="true">#</a></h4><ul><li>All documentation should be written in Markdown or Vue components.</li><li>All file names are snake case <em>and</em> lowercase letters.</li><li>Do not make naming changes to the <code>vitepress</code> folder.</li><li>Do not make major changes to the <code>vitepress</code> folder structure without proir consultation of team members.</li><li>For Vue componentes, follow the <a href="https://vuejs.org/guide/introduction.html" target="_blank" rel="noreferrer">Vue3 docs</a>.</li></ul></div></div></main><!--[--><!--]--><footer class="VPDocFooter" data-v-317b0207 data-v-cbbeb5ab><div class="edit-info" data-v-cbbeb5ab><!----><div class="last-updated" data-v-cbbeb5ab><p class="VPLastUpdated" data-v-cbbeb5ab data-v-cc1176cb>Last updated: <time datetime="2023-03-03T18:30:00.000Z" data-v-cc1176cb></time></p></div></div><div class="prev-next" data-v-cbbeb5ab><div class="pager" data-v-cbbeb5ab><a class="pager-link prev" href="/misc/faq" data-v-cbbeb5ab><span class="desc" data-v-cbbeb5ab>Previous page</span><span class="title" data-v-cbbeb5ab>FAQ</span></a></div><div class="has-prev pager" data-v-cbbeb5ab><a class="pager-link next" href="/development/docs/pages" data-v-cbbeb5ab><span class="desc" data-v-cbbeb5ab>Next page</span><span class="title" data-v-cbbeb5ab>Edit Docs</span></a></div></div></footer><!--[--><!--]--></div></div></div></div></div><footer class="VPFooter has-sidebar" data-v-5aaf92e7 data-v-1a0cce0c><div class="container" data-v-1a0cce0c><p class="message" data-v-1a0cce0c>Released under the MIT License.</p><p class="copyright" data-v-1a0cce0c>Copyright © 2022-present ETVR</p></div></footer><!--[--><!--]--></div></div>
<script>__VP_HASH_MAP__ = JSON.parse("{\"about.md\":\"67558f22\",\"dev_roadmap.md\":\"59bac4c2\",\"development_docs_dev_docs.md\":\"1c7099a1\",\"development_docs_pages.md\":\"e3ea318f\",\"development_docs_standards.md\":\"c022dc66\",\"firmware_guide_configure_firmware.md\":\"ad3a7a27\",\"firmware_guide_environments.md\":\"35702a84\",\"firmware_guide_firmware.md\":\"3ff987da\",\"firmware_guide_mdns.md\":\"f7cf7152\",\"firmware_guide_rest_api.md\":\"c031cbdb\",\"firmware_guide_setup_vscode.md\":\"5c098e1b\",\"firmware_guide_update_platformio.md\":\"f77a6333\",\"firmware_guide_upload_and_update_firmware.md\":\"6b6412b0\",\"getting_started_intro.md\":\"66aa4f59\",\"getting_started_things_to_know.md\":\"36842c3c\",\"how_to_build_creating_your_own_mount.md\":\"ac844386\",\"contact.md\":\"2a8274c7\",\"how_to_build_parts_list.md\":\"a0e01995\",\"index.md\":\"c15589ce\",\"misc_faq.md\":\"557dde35\",\"misc_vrc_avatar_setup.md\":\"ffcc0d92\",\"software_guide_eyetrackvr_app_guide.md\":\"139d2041\",\"software_guide_build_software.md\":\"a667b707\",\"how_to_build_full_build.md\":\"955d0e98\",\"archive_fox_ir_v2_build_instructions.md\":\"818f52c9\"}")</script>
<script type="module" async src="/assets/app.106a9488.js"></script>
<script>__VP_HASH_MAP__ = JSON.parse("{\"archive_fox_ir_v2_build_instructions.md\":\"89c43779\",\"contact.md\":\"53432f78\",\"dev_roadmap.md\":\"f2fec1c7\",\"how_to_build_parts_list.md\":\"ad638071\",\"development_docs_pages.md\":\"be2d37ec\",\"development_docs_standards.md\":\"a2be9daf\",\"firmware_guide_configure_firmware.md\":\"f27222de\",\"firmware_guide_firmware.md\":\"7a5e6b1e\",\"firmware_guide_mdns.md\":\"72d45ef8\",\"firmware_guide_setup_vscode.md\":\"e78bb834\",\"firmware_guide_update_platformio.md\":\"38d2582a\",\"firmware_guide_upload_and_update_firmware.md\":\"88108846\",\"getting_started_intro.md\":\"d3a44242\",\"getting_started_things_to_know.md\":\"37d66f97\",\"how_to_build_creating_your_own_mount.md\":\"71378630\",\"how_to_build_full_build.md\":\"bd3d0660\",\"firmware_guide_rest_api.md\":\"3ce98ee0\",\"development_docs_dev_docs.md\":\"28477c22\",\"misc_vrc_avatar_setup.md\":\"d93d9376\",\"software_guide_eyetrackvr_app_guide.md\":\"b2c7f431\",\"firmware_guide_environments.md\":\"1eea445c\",\"about.md\":\"2981868b\",\"index.md\":\"bef266a8\",\"software_guide_build_software.md\":\"72507f43\",\"software_guide_osc_setup.md\":\"54359d43\",\"misc_faq.md\":\"47487d3a\"}")</script>
<script type="module" async src="/assets/app.0fb3db86.js"></script>
</body>
</html>

View File

@ -5,10 +5,10 @@
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>Pages | EyeTrackVR Docs</title>
<meta name="description" content="Official documentation for EyeTrackVR. Fully opensource and affordable VR eye tracking platform.">
<link rel="preload stylesheet" href="/assets/style.7df1d8e2.css" as="style">
<link rel="modulepreload" href="/assets/chunks/virtual_search-data.01f04ffb.js">
<link rel="modulepreload" href="/assets/app.106a9488.js">
<link rel="modulepreload" href="/assets/development_docs_pages.md.e3ea318f.lean.js">
<link rel="preload stylesheet" href="/assets/style.fe358c28.css" as="style">
<link rel="modulepreload" href="/assets/chunks/virtual_search-data.6fc1adae.js">
<link rel="modulepreload" href="/assets/app.0fb3db86.js">
<link rel="modulepreload" href="/assets/development_docs_pages.md.be2d37ec.lean.js">
<script id="check-dark-light">(()=>{const e=localStorage.getItem("vitepress-theme-appearance")||"",a=window.matchMedia("(prefers-color-scheme: dark)").matches;(!e||e==="auto"?a:e==="dark")&&document.documentElement.classList.add("dark")})();</script>
</head>
@ -25,8 +25,8 @@
<span class="line"></span></code></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br><span class="line-number">2</span><br><span class="line-number">3</span><br><span class="line-number">4</span><br><span class="line-number">5</span><br><span class="line-number">6</span><br><span class="line-number">7</span><br><span class="line-number">8</span><br><span class="line-number">9</span><br></div></div><div class="info custom-block"><p class="custom-block-title">Note</p><p>The <code>link</code> property does not require a file extension. Please do not add it.</p></div><h3 class="text-[var(--font-accent)]" id="title-style" tabindex="-1">Title Style <a class="header-anchor" href="#title-style" aria-hidden="true">#</a></h3><p>The title style is the style of the title that appears at the top of the page.</p><p>We like to keep this cohesive, so please use the following style:</p><div class="language-md line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">md</span><pre class="shiki material-palenight"><code><span class="line"><span style="color:#89DDFF;"># </span><span style="color:#FFCB6B;">My Page {.text-</span><span style="color:#89DDFF;">[</span><span style="color:#C3E88D;">var(--font-accent)</span><span style="color:#89DDFF;">]</span><span style="color:#FFCB6B;">}</span></span>
<span class="line"></span></code></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br></div></div><p>This will give the title a nice orange colour.</p><p>The <code>{}</code> are required, and the <code>.text-[#e67e22]</code> is the colour using <code>TailWindCSS</code> classes. You can also use our built in CSS variables <code>{.text-[var(--font-accent)]}</code>. You will find these in the <code>src/styles/theme.css</code> file. You can change this to any colour you like, but please keep it consistent with the rest of the site.</p><div class="tip custom-block"><p class="custom-block-title">Tip</p><p>This entire site supports <code>TailWindCSS</code> classes. You can find the documentation <a href="https://tailwindcss.com/docs" target="_blank" rel="noreferrer">here</a>.</p><p>All classes you wish to add, must be prefaced with a <code>.</code> when inside of the <code>{}</code>.</p><p>When using classes on <code>HTML</code> elements, you can use the <code>class</code> attribute. For example:</p><div class="language-html line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang">html</span><pre class="shiki material-palenight"><code><span class="line"><span style="color:#89DDFF;">&lt;</span><span style="color:#F07178;">h1</span><span style="color:#89DDFF;"> </span><span style="color:#C792EA;">class</span><span style="color:#89DDFF;">=</span><span style="color:#89DDFF;">&quot;</span><span style="color:#C3E88D;">text-[#e67e22]</span><span style="color:#89DDFF;">&quot;</span><span style="color:#89DDFF;">&gt;</span><span style="color:#A6ACCD;">My Page</span><span style="color:#89DDFF;">&lt;/</span><span style="color:#F07178;">h1</span><span style="color:#89DDFF;">&gt;</span></span>
<span class="line"></span></code></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br></div></div></div><h2 id="editing-a-page" tabindex="-1">Editing a Page <a class="header-anchor" href="#editing-a-page" aria-hidden="true">#</a></h2><p>To edit a page, you will need to edit the Markdown file in the <code>vitepress/docs/src/pages</code> folder.</p></div></div></main><!--[--><!--]--><footer class="VPDocFooter" data-v-317b0207 data-v-cbbeb5ab><div class="edit-info" data-v-cbbeb5ab><!----><div class="last-updated" data-v-cbbeb5ab><p class="VPLastUpdated" data-v-cbbeb5ab data-v-cc1176cb>Last updated: <time datetime="2023-03-03T18:30:00.000Z" data-v-cc1176cb></time></p></div></div><div class="prev-next" data-v-cbbeb5ab><div class="pager" data-v-cbbeb5ab><a class="pager-link prev" href="/development/docs/dev_docs" data-v-cbbeb5ab><span class="desc" data-v-cbbeb5ab>Previous page</span><span class="title" data-v-cbbeb5ab>Docs</span></a></div><div class="has-prev pager" data-v-cbbeb5ab><a class="pager-link next" href="/development/docs/standards" data-v-cbbeb5ab><span class="desc" data-v-cbbeb5ab>Next page</span><span class="title" data-v-cbbeb5ab>Standards</span></a></div></div></footer><!--[--><!--]--></div></div></div></div></div><footer class="VPFooter has-sidebar" data-v-5aaf92e7 data-v-1a0cce0c><div class="container" data-v-1a0cce0c><p class="message" data-v-1a0cce0c>Released under the MIT License.</p><p class="copyright" data-v-1a0cce0c>Copyright © 2022-present ETVR</p></div></footer><!--[--><!--]--></div></div>
<script>__VP_HASH_MAP__ = JSON.parse("{\"about.md\":\"67558f22\",\"dev_roadmap.md\":\"59bac4c2\",\"development_docs_dev_docs.md\":\"1c7099a1\",\"development_docs_pages.md\":\"e3ea318f\",\"development_docs_standards.md\":\"c022dc66\",\"firmware_guide_configure_firmware.md\":\"ad3a7a27\",\"firmware_guide_environments.md\":\"35702a84\",\"firmware_guide_firmware.md\":\"3ff987da\",\"firmware_guide_mdns.md\":\"f7cf7152\",\"firmware_guide_rest_api.md\":\"c031cbdb\",\"firmware_guide_setup_vscode.md\":\"5c098e1b\",\"firmware_guide_update_platformio.md\":\"f77a6333\",\"firmware_guide_upload_and_update_firmware.md\":\"6b6412b0\",\"getting_started_intro.md\":\"66aa4f59\",\"getting_started_things_to_know.md\":\"36842c3c\",\"how_to_build_creating_your_own_mount.md\":\"ac844386\",\"contact.md\":\"2a8274c7\",\"how_to_build_parts_list.md\":\"a0e01995\",\"index.md\":\"c15589ce\",\"misc_faq.md\":\"557dde35\",\"misc_vrc_avatar_setup.md\":\"ffcc0d92\",\"software_guide_eyetrackvr_app_guide.md\":\"139d2041\",\"software_guide_build_software.md\":\"a667b707\",\"how_to_build_full_build.md\":\"955d0e98\",\"archive_fox_ir_v2_build_instructions.md\":\"818f52c9\"}")</script>
<script type="module" async src="/assets/app.106a9488.js"></script>
<script>__VP_HASH_MAP__ = JSON.parse("{\"archive_fox_ir_v2_build_instructions.md\":\"89c43779\",\"contact.md\":\"53432f78\",\"dev_roadmap.md\":\"f2fec1c7\",\"how_to_build_parts_list.md\":\"ad638071\",\"development_docs_pages.md\":\"be2d37ec\",\"development_docs_standards.md\":\"a2be9daf\",\"firmware_guide_configure_firmware.md\":\"f27222de\",\"firmware_guide_firmware.md\":\"7a5e6b1e\",\"firmware_guide_mdns.md\":\"72d45ef8\",\"firmware_guide_setup_vscode.md\":\"e78bb834\",\"firmware_guide_update_platformio.md\":\"38d2582a\",\"firmware_guide_upload_and_update_firmware.md\":\"88108846\",\"getting_started_intro.md\":\"d3a44242\",\"getting_started_things_to_know.md\":\"37d66f97\",\"how_to_build_creating_your_own_mount.md\":\"71378630\",\"how_to_build_full_build.md\":\"bd3d0660\",\"firmware_guide_rest_api.md\":\"3ce98ee0\",\"development_docs_dev_docs.md\":\"28477c22\",\"misc_vrc_avatar_setup.md\":\"d93d9376\",\"software_guide_eyetrackvr_app_guide.md\":\"b2c7f431\",\"firmware_guide_environments.md\":\"1eea445c\",\"about.md\":\"2981868b\",\"index.md\":\"bef266a8\",\"software_guide_build_software.md\":\"72507f43\",\"software_guide_osc_setup.md\":\"54359d43\",\"misc_faq.md\":\"47487d3a\"}")</script>
<script type="module" async src="/assets/app.0fb3db86.js"></script>
</body>
</html>

View File

@ -5,10 +5,10 @@
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>Standards Guide | EyeTrackVR Docs</title>
<meta name="description" content="Official documentation for EyeTrackVR. Fully opensource and affordable VR eye tracking platform.">
<link rel="preload stylesheet" href="/assets/style.7df1d8e2.css" as="style">
<link rel="modulepreload" href="/assets/chunks/virtual_search-data.01f04ffb.js">
<link rel="modulepreload" href="/assets/app.106a9488.js">
<link rel="modulepreload" href="/assets/development_docs_standards.md.c022dc66.lean.js">
<link rel="preload stylesheet" href="/assets/style.fe358c28.css" as="style">
<link rel="modulepreload" href="/assets/chunks/virtual_search-data.6fc1adae.js">
<link rel="modulepreload" href="/assets/app.0fb3db86.js">
<link rel="modulepreload" href="/assets/development_docs_standards.md.a2be9daf.lean.js">
<script id="check-dark-light">(()=>{const e=localStorage.getItem("vitepress-theme-appearance")||"",a=window.matchMedia("(prefers-color-scheme: dark)").matches;(!e||e==="auto"?a:e==="dark")&&document.documentElement.classList.add("dark")})();</script>
</head>
@ -24,8 +24,8 @@
<span class="line"></span>
<span class="line"><span style="color:#FFCB6B;">BREAKING</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">CHANGE:</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">this</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">is</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">a</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">breaking</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">change</span><span style="color:#A6ACCD;"> </span><span style="color:#676E95;font-style:italic;">#this line is optionaland only used if needed</span></span>
<span class="line"></span></code></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br><span class="line-number">2</span><br><span class="line-number">3</span><br><span class="line-number">4</span><br><span class="line-number">5</span><br></div></div></div></div></main><!--[--><!--]--><footer class="VPDocFooter" data-v-317b0207 data-v-cbbeb5ab><div class="edit-info" data-v-cbbeb5ab><!----><div class="last-updated" data-v-cbbeb5ab><p class="VPLastUpdated" data-v-cbbeb5ab data-v-cc1176cb>Last updated: <time datetime="2023-03-03T18:30:00.000Z" data-v-cc1176cb></time></p></div></div><div class="prev-next" data-v-cbbeb5ab><div class="pager" data-v-cbbeb5ab><a class="pager-link prev" href="/development/docs/pages" data-v-cbbeb5ab><span class="desc" data-v-cbbeb5ab>Previous page</span><span class="title" data-v-cbbeb5ab>Edit Docs</span></a></div><div class="has-prev pager" data-v-cbbeb5ab><a class="pager-link next" href="/archive/fox_ir_v2_build_instructions" data-v-cbbeb5ab><span class="desc" data-v-cbbeb5ab>Next page</span><span class="title" data-v-cbbeb5ab>Prepare to solder IR LED PCB V2's</span></a></div></div></footer><!--[--><!--]--></div></div></div></div></div><footer class="VPFooter has-sidebar" data-v-5aaf92e7 data-v-1a0cce0c><div class="container" data-v-1a0cce0c><p class="message" data-v-1a0cce0c>Released under the MIT License.</p><p class="copyright" data-v-1a0cce0c>Copyright © 2022-present ETVR</p></div></footer><!--[--><!--]--></div></div>
<script>__VP_HASH_MAP__ = JSON.parse("{\"about.md\":\"67558f22\",\"dev_roadmap.md\":\"59bac4c2\",\"development_docs_dev_docs.md\":\"1c7099a1\",\"development_docs_pages.md\":\"e3ea318f\",\"development_docs_standards.md\":\"c022dc66\",\"firmware_guide_configure_firmware.md\":\"ad3a7a27\",\"firmware_guide_environments.md\":\"35702a84\",\"firmware_guide_firmware.md\":\"3ff987da\",\"firmware_guide_mdns.md\":\"f7cf7152\",\"firmware_guide_rest_api.md\":\"c031cbdb\",\"firmware_guide_setup_vscode.md\":\"5c098e1b\",\"firmware_guide_update_platformio.md\":\"f77a6333\",\"firmware_guide_upload_and_update_firmware.md\":\"6b6412b0\",\"getting_started_intro.md\":\"66aa4f59\",\"getting_started_things_to_know.md\":\"36842c3c\",\"how_to_build_creating_your_own_mount.md\":\"ac844386\",\"contact.md\":\"2a8274c7\",\"how_to_build_parts_list.md\":\"a0e01995\",\"index.md\":\"c15589ce\",\"misc_faq.md\":\"557dde35\",\"misc_vrc_avatar_setup.md\":\"ffcc0d92\",\"software_guide_eyetrackvr_app_guide.md\":\"139d2041\",\"software_guide_build_software.md\":\"a667b707\",\"how_to_build_full_build.md\":\"955d0e98\",\"archive_fox_ir_v2_build_instructions.md\":\"818f52c9\"}")</script>
<script type="module" async src="/assets/app.106a9488.js"></script>
<script>__VP_HASH_MAP__ = JSON.parse("{\"archive_fox_ir_v2_build_instructions.md\":\"89c43779\",\"contact.md\":\"53432f78\",\"dev_roadmap.md\":\"f2fec1c7\",\"how_to_build_parts_list.md\":\"ad638071\",\"development_docs_pages.md\":\"be2d37ec\",\"development_docs_standards.md\":\"a2be9daf\",\"firmware_guide_configure_firmware.md\":\"f27222de\",\"firmware_guide_firmware.md\":\"7a5e6b1e\",\"firmware_guide_mdns.md\":\"72d45ef8\",\"firmware_guide_setup_vscode.md\":\"e78bb834\",\"firmware_guide_update_platformio.md\":\"38d2582a\",\"firmware_guide_upload_and_update_firmware.md\":\"88108846\",\"getting_started_intro.md\":\"d3a44242\",\"getting_started_things_to_know.md\":\"37d66f97\",\"how_to_build_creating_your_own_mount.md\":\"71378630\",\"how_to_build_full_build.md\":\"bd3d0660\",\"firmware_guide_rest_api.md\":\"3ce98ee0\",\"development_docs_dev_docs.md\":\"28477c22\",\"misc_vrc_avatar_setup.md\":\"d93d9376\",\"software_guide_eyetrackvr_app_guide.md\":\"b2c7f431\",\"firmware_guide_environments.md\":\"1eea445c\",\"about.md\":\"2981868b\",\"index.md\":\"bef266a8\",\"software_guide_build_software.md\":\"72507f43\",\"software_guide_osc_setup.md\":\"54359d43\",\"misc_faq.md\":\"47487d3a\"}")</script>
<script type="module" async src="/assets/app.0fb3db86.js"></script>
</body>
</html>

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

View File

@ -5,10 +5,10 @@
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>REST API | EyeTrackVR Docs</title>
<meta name="description" content="Official documentation for EyeTrackVR. Fully opensource and affordable VR eye tracking platform.">
<link rel="preload stylesheet" href="/assets/style.7df1d8e2.css" as="style">
<link rel="modulepreload" href="/assets/chunks/virtual_search-data.01f04ffb.js">
<link rel="modulepreload" href="/assets/app.106a9488.js">
<link rel="modulepreload" href="/assets/firmware_guide_rest_api.md.c031cbdb.lean.js">
<link rel="preload stylesheet" href="/assets/style.fe358c28.css" as="style">
<link rel="modulepreload" href="/assets/chunks/virtual_search-data.6fc1adae.js">
<link rel="modulepreload" href="/assets/app.0fb3db86.js">
<link rel="modulepreload" href="/assets/firmware_guide_rest_api.md.3ce98ee0.lean.js">
<script id="check-dark-light">(()=>{const e=localStorage.getItem("vitepress-theme-appearance")||"",a=window.matchMedia("(prefers-color-scheme: dark)").matches;(!e||e==="auto"?a:e==="dark")&&document.documentElement.classList.add("dark")})();</script>
</head>
@ -43,8 +43,8 @@
<span class="line"><span style="color:#F07178;"> </span><span style="color:#A6ACCD;">WIFI_POWER_MINUS_1dBm</span><span style="color:#F07178;"> </span><span style="color:#89DDFF;">=</span><span style="color:#F07178;"> </span><span style="color:#89DDFF;">-</span><span style="color:#F78C6C;">4</span><span style="color:#676E95;font-style:italic;">// -1dBm</span></span>
<span class="line"><span style="color:#89DDFF;">}</span><span style="color:#F07178;"> </span><span style="color:#FFCB6B;">wifi_power_t</span><span style="color:#89DDFF;">;</span></span>
<span class="line"></span></code></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br><span class="line-number">2</span><br><span class="line-number">3</span><br><span class="line-number">4</span><br><span class="line-number">5</span><br><span class="line-number">6</span><br><span class="line-number">7</span><br><span class="line-number">8</span><br><span class="line-number">9</span><br><span class="line-number">10</span><br><span class="line-number">11</span><br><span class="line-number">12</span><br><span class="line-number">13</span><br><span class="line-number">14</span><br></div></div></div><table><thead><tr><th style="text-align:center;">Param</th><th style="text-align:center;">Description</th></tr></thead><tbody><tr><td style="text-align:center;"><code>txPower</code></td><td style="text-align:center;">The power level to set.</td></tr></tbody></table><h3 id="camera-params" tabindex="-1">Camera Params <a class="header-anchor" href="#camera-params" aria-hidden="true">#</a></h3><div class="tip custom-block"><p class="custom-block-title">Coming Soon</p><p>We are currently working on this section of documentation.</p></div></div></div></main><!--[--><!--]--><footer class="VPDocFooter" data-v-317b0207 data-v-cbbeb5ab><div class="edit-info" data-v-cbbeb5ab><!----><div class="last-updated" data-v-cbbeb5ab><p class="VPLastUpdated" data-v-cbbeb5ab data-v-cc1176cb>Last updated: <time datetime="2023-02-12T17:42:09.000Z" data-v-cc1176cb></time></p></div></div><div class="prev-next" data-v-cbbeb5ab><div class="pager" data-v-cbbeb5ab><a class="pager-link prev" href="/firmware_guide/mdns" data-v-cbbeb5ab><span class="desc" data-v-cbbeb5ab>Previous page</span><span class="title" data-v-cbbeb5ab>MDNS</span></a></div><div class="has-prev pager" data-v-cbbeb5ab><a class="pager-link next" href="/software_guide/eyetrackvr_app_guide" data-v-cbbeb5ab><span class="desc" data-v-cbbeb5ab>Next page</span><span class="title" data-v-cbbeb5ab>Installing and setting up the ETVR App</span></a></div></div></footer><!--[--><!--]--></div></div></div></div></div><footer class="VPFooter has-sidebar" data-v-5aaf92e7 data-v-1a0cce0c><div class="container" data-v-1a0cce0c><p class="message" data-v-1a0cce0c>Released under the MIT License.</p><p class="copyright" data-v-1a0cce0c>Copyright © 2022-present ETVR</p></div></footer><!--[--><!--]--></div></div>
<script>__VP_HASH_MAP__ = JSON.parse("{\"about.md\":\"67558f22\",\"dev_roadmap.md\":\"59bac4c2\",\"development_docs_dev_docs.md\":\"1c7099a1\",\"development_docs_pages.md\":\"e3ea318f\",\"development_docs_standards.md\":\"c022dc66\",\"firmware_guide_configure_firmware.md\":\"ad3a7a27\",\"firmware_guide_environments.md\":\"35702a84\",\"firmware_guide_firmware.md\":\"3ff987da\",\"firmware_guide_mdns.md\":\"f7cf7152\",\"firmware_guide_rest_api.md\":\"c031cbdb\",\"firmware_guide_setup_vscode.md\":\"5c098e1b\",\"firmware_guide_update_platformio.md\":\"f77a6333\",\"firmware_guide_upload_and_update_firmware.md\":\"6b6412b0\",\"getting_started_intro.md\":\"66aa4f59\",\"getting_started_things_to_know.md\":\"36842c3c\",\"how_to_build_creating_your_own_mount.md\":\"ac844386\",\"contact.md\":\"2a8274c7\",\"how_to_build_parts_list.md\":\"a0e01995\",\"index.md\":\"c15589ce\",\"misc_faq.md\":\"557dde35\",\"misc_vrc_avatar_setup.md\":\"ffcc0d92\",\"software_guide_eyetrackvr_app_guide.md\":\"139d2041\",\"software_guide_build_software.md\":\"a667b707\",\"how_to_build_full_build.md\":\"955d0e98\",\"archive_fox_ir_v2_build_instructions.md\":\"818f52c9\"}")</script>
<script type="module" async src="/assets/app.106a9488.js"></script>
<script>__VP_HASH_MAP__ = JSON.parse("{\"archive_fox_ir_v2_build_instructions.md\":\"89c43779\",\"contact.md\":\"53432f78\",\"dev_roadmap.md\":\"f2fec1c7\",\"how_to_build_parts_list.md\":\"ad638071\",\"development_docs_pages.md\":\"be2d37ec\",\"development_docs_standards.md\":\"a2be9daf\",\"firmware_guide_configure_firmware.md\":\"f27222de\",\"firmware_guide_firmware.md\":\"7a5e6b1e\",\"firmware_guide_mdns.md\":\"72d45ef8\",\"firmware_guide_setup_vscode.md\":\"e78bb834\",\"firmware_guide_update_platformio.md\":\"38d2582a\",\"firmware_guide_upload_and_update_firmware.md\":\"88108846\",\"getting_started_intro.md\":\"d3a44242\",\"getting_started_things_to_know.md\":\"37d66f97\",\"how_to_build_creating_your_own_mount.md\":\"71378630\",\"how_to_build_full_build.md\":\"bd3d0660\",\"firmware_guide_rest_api.md\":\"3ce98ee0\",\"development_docs_dev_docs.md\":\"28477c22\",\"misc_vrc_avatar_setup.md\":\"d93d9376\",\"software_guide_eyetrackvr_app_guide.md\":\"b2c7f431\",\"firmware_guide_environments.md\":\"1eea445c\",\"about.md\":\"2981868b\",\"index.md\":\"bef266a8\",\"software_guide_build_software.md\":\"72507f43\",\"software_guide_osc_setup.md\":\"54359d43\",\"misc_faq.md\":\"47487d3a\"}")</script>
<script type="module" async src="/assets/app.0fb3db86.js"></script>
</body>
</html>

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

View File

@ -1 +1 @@
{"about.md":"67558f22","dev_roadmap.md":"59bac4c2","development_docs_dev_docs.md":"1c7099a1","development_docs_pages.md":"e3ea318f","development_docs_standards.md":"c022dc66","firmware_guide_configure_firmware.md":"ad3a7a27","firmware_guide_environments.md":"35702a84","firmware_guide_firmware.md":"3ff987da","firmware_guide_mdns.md":"f7cf7152","firmware_guide_rest_api.md":"c031cbdb","firmware_guide_setup_vscode.md":"5c098e1b","firmware_guide_update_platformio.md":"f77a6333","firmware_guide_upload_and_update_firmware.md":"6b6412b0","getting_started_intro.md":"66aa4f59","getting_started_things_to_know.md":"36842c3c","how_to_build_creating_your_own_mount.md":"ac844386","contact.md":"2a8274c7","how_to_build_parts_list.md":"a0e01995","index.md":"c15589ce","misc_faq.md":"557dde35","misc_vrc_avatar_setup.md":"ffcc0d92","software_guide_eyetrackvr_app_guide.md":"139d2041","software_guide_build_software.md":"a667b707","how_to_build_full_build.md":"955d0e98","archive_fox_ir_v2_build_instructions.md":"818f52c9"}
{"archive_fox_ir_v2_build_instructions.md":"89c43779","contact.md":"53432f78","dev_roadmap.md":"f2fec1c7","how_to_build_parts_list.md":"ad638071","development_docs_pages.md":"be2d37ec","development_docs_standards.md":"a2be9daf","firmware_guide_configure_firmware.md":"f27222de","firmware_guide_firmware.md":"7a5e6b1e","firmware_guide_mdns.md":"72d45ef8","firmware_guide_setup_vscode.md":"e78bb834","firmware_guide_update_platformio.md":"38d2582a","firmware_guide_upload_and_update_firmware.md":"88108846","getting_started_intro.md":"d3a44242","getting_started_things_to_know.md":"37d66f97","how_to_build_creating_your_own_mount.md":"71378630","how_to_build_full_build.md":"bd3d0660","firmware_guide_rest_api.md":"3ce98ee0","development_docs_dev_docs.md":"28477c22","misc_vrc_avatar_setup.md":"d93d9376","software_guide_eyetrackvr_app_guide.md":"b2c7f431","firmware_guide_environments.md":"1eea445c","about.md":"2981868b","index.md":"bef266a8","software_guide_build_software.md":"72507f43","software_guide_osc_setup.md":"54359d43","misc_faq.md":"47487d3a"}

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

File diff suppressed because one or more lines are too long