mirror of
https://github.com/EyeTrackVR/EyeTrackVR-Docs.git
synced 2025-09-26 23:09:15 +08:00
Compare commits
2 Commits
61ead96ada
...
491a38b1d5
Author | SHA1 | Date | |
---|---|---|---|
![]() |
491a38b1d5 | ||
![]() |
e2e15c6838 |
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
import{V as i,a as r,b as s,c as u}from"./chunks/theme.81520eb5.js";import{o as m,c as p,E as n,w as o,l,k as t,a}from"./chunks/framework.47aa8d5b.js";const h=[{name:"Prohurtz",avatar:"https://avatars.githubusercontent.com/u/48768484?v=4",title:"Creator / Lead Software Developer / Documentor / Hardware Developer",links:[{icon:"github",link:"https://github.com/RedHawk989"}]},{name:"Summer",avatar:"https://avatars.githubusercontent.com/u/115666235?v=4",title:"Machine Learning Engineer / Data Scientist / App Developer",links:[{icon:"github",link:"https://github.com/Summer404NotFound"}]},{name:"lorow",avatar:"https://avatars.githubusercontent.com/u/14099558?v=4",title:"Lead Firmware Developer / App Developer",links:[{icon:"github",link:"https://github.com/lorow"}]},{name:"DaOfficialWizard",avatar:"https://avatars.githubusercontent.com/u/45744329?v=4",title:"Firmware Developer / Documentation Manager / App Developer",links:[{icon:"github",link:"https://github.com/ZanzyTHEbar"}]}],b=[{name:"qdot",avatar:"https://avatars.githubusercontent.com/u/34539?v=4",links:[{icon:"github",link:"https://github.com/qdot"}]},{name:"dfgHiatus",avatar:"https://avatars.githubusercontent.com/u/51272212?v=4",links:[{icon:"github",link:"https://github.com/dfgHiatus"}]},{name:"PallasNeko",avatar:"https://avatars.githubusercontent.com/u/124042774?v=4",links:[{icon:"github",link:"https://github.com/PallasNeko"}]}],f=JSON.parse('{"title":"","description":"","frontmatter":{"layout":"page"},"headers":[],"relativePath":"about.md","filePath":"about.md","lastUpdated":1700510338000}'),d={name:"about.md"},w=Object.assign(d,{setup(c){return(g,e)=>(m(),p("div",null,[n(l(u),null,{default:o(()=>[n(l(i),null,{title:o(()=>e[0]||(e[0]=[t("div",{class:"text-[#ab5ac7]"}," Our Team ",-1)])),lead:o(()=>e[1]||(e[1]=[a(" The development of EyeTrackVR is guided by an international team, some of whom have chosen to be featured below."),t("br",null,null,-1),t("br",null,null,-1),a(" EyeTrackVR developers are a group of people who are passionate about the field of augmented and virtual reality. ")])),_:1}),n(l(r),{size:"medium",members:l(h)},null,8,["members"]),n(l(s),null,{title:o(()=>e[2]||(e[2]=[a("Contributors")])),lead:o(()=>e[3]||(e[3]=[a("Those who have actively contributed to development."),t("br",null,null,-1),a(" Community Support")])),members:o(()=>[n(l(r),{size:"small",members:l(b)},null,8,["members"])]),_:1}),n(l(s),null,{title:o(()=>e[4]||(e[4]=[a("Philosophy")])),lead:o(()=>e[5]||(e[5]=[a(" The "),t("a",{class:"custom-links",href:"/intro",target:"_blank"},"guides",-1),a(" on this website include some of our team's own notes (not all of them are polished) that we disclose for other people to use."),t("br",null,null,-1),t("br",null,null,-1),a(" Here, we hope you may find something useful to you."),t("br",null,null,-1),t("br",null,null,-1),a(" We advocate the "),t("a",{class:"custom-links",href:"https://en.wikipedia.org/wiki/Open-source_model",target:"_blank"},"Open Source model",-1),a("."),t("br",null,null,-1),t("br",null,null,-1),a(" This is why we strive to make our work open to other people for consultation, replication and reuse. ")])),_:1})]),_:1})]))}});export{f as __pageData,w as default};
|
||||
import{V as i,a as r,b as s,c as u}from"./chunks/theme.cd06fb64.js";import{o as m,c as p,E as n,w as o,l,k as t,a}from"./chunks/framework.47aa8d5b.js";const h=[{name:"Prohurtz",avatar:"https://avatars.githubusercontent.com/u/48768484?v=4",title:"Creator / Lead Software Developer / Documentor / Hardware Developer",links:[{icon:"github",link:"https://github.com/RedHawk989"}]},{name:"Summer",avatar:"https://avatars.githubusercontent.com/u/115666235?v=4",title:"Machine Learning Engineer / Data Scientist / App Developer",links:[{icon:"github",link:"https://github.com/Summer404NotFound"}]},{name:"lorow",avatar:"https://avatars.githubusercontent.com/u/14099558?v=4",title:"Lead Firmware Developer / App Developer",links:[{icon:"github",link:"https://github.com/lorow"}]},{name:"DaOfficialWizard",avatar:"https://avatars.githubusercontent.com/u/45744329?v=4",title:"Firmware Developer / Documentation Manager / App Developer",links:[{icon:"github",link:"https://github.com/ZanzyTHEbar"}]}],b=[{name:"qdot",avatar:"https://avatars.githubusercontent.com/u/34539?v=4",links:[{icon:"github",link:"https://github.com/qdot"}]},{name:"dfgHiatus",avatar:"https://avatars.githubusercontent.com/u/51272212?v=4",links:[{icon:"github",link:"https://github.com/dfgHiatus"}]},{name:"PallasNeko",avatar:"https://avatars.githubusercontent.com/u/124042774?v=4",links:[{icon:"github",link:"https://github.com/PallasNeko"}]}],f=JSON.parse('{"title":"","description":"","frontmatter":{"layout":"page"},"headers":[],"relativePath":"about.md","filePath":"about.md","lastUpdated":1700510338000}'),d={name:"about.md"},w=Object.assign(d,{setup(c){return(g,e)=>(m(),p("div",null,[n(l(u),null,{default:o(()=>[n(l(i),null,{title:o(()=>e[0]||(e[0]=[t("div",{class:"text-[#ab5ac7]"}," Our Team ",-1)])),lead:o(()=>e[1]||(e[1]=[a(" The development of EyeTrackVR is guided by an international team, some of whom have chosen to be featured below."),t("br",null,null,-1),t("br",null,null,-1),a(" EyeTrackVR developers are a group of people who are passionate about the field of augmented and virtual reality. ")])),_:1}),n(l(r),{size:"medium",members:l(h)},null,8,["members"]),n(l(s),null,{title:o(()=>e[2]||(e[2]=[a("Contributors")])),lead:o(()=>e[3]||(e[3]=[a("Those who have actively contributed to development."),t("br",null,null,-1),a(" Community Support")])),members:o(()=>[n(l(r),{size:"small",members:l(b)},null,8,["members"])]),_:1}),n(l(s),null,{title:o(()=>e[4]||(e[4]=[a("Philosophy")])),lead:o(()=>e[5]||(e[5]=[a(" The "),t("a",{class:"custom-links",href:"/intro",target:"_blank"},"guides",-1),a(" on this website include some of our team's own notes (not all of them are polished) that we disclose for other people to use."),t("br",null,null,-1),t("br",null,null,-1),a(" Here, we hope you may find something useful to you."),t("br",null,null,-1),t("br",null,null,-1),a(" We advocate the "),t("a",{class:"custom-links",href:"https://en.wikipedia.org/wiki/Open-source_model",target:"_blank"},"Open Source model",-1),a("."),t("br",null,null,-1),t("br",null,null,-1),a(" This is why we strive to make our work open to other people for consultation, replication and reuse. ")])),_:1})]),_:1})]))}});export{f as __pageData,w as default};
|
@ -1 +1 @@
|
||||
import{V as i,a as r,b as s,c as u}from"./chunks/theme.81520eb5.js";import{o as m,c as p,E as n,w as o,l,k as t,a}from"./chunks/framework.47aa8d5b.js";const h=[{name:"Prohurtz",avatar:"https://avatars.githubusercontent.com/u/48768484?v=4",title:"Creator / Lead Software Developer / Documentor / Hardware Developer",links:[{icon:"github",link:"https://github.com/RedHawk989"}]},{name:"Summer",avatar:"https://avatars.githubusercontent.com/u/115666235?v=4",title:"Machine Learning Engineer / Data Scientist / App Developer",links:[{icon:"github",link:"https://github.com/Summer404NotFound"}]},{name:"lorow",avatar:"https://avatars.githubusercontent.com/u/14099558?v=4",title:"Lead Firmware Developer / App Developer",links:[{icon:"github",link:"https://github.com/lorow"}]},{name:"DaOfficialWizard",avatar:"https://avatars.githubusercontent.com/u/45744329?v=4",title:"Firmware Developer / Documentation Manager / App Developer",links:[{icon:"github",link:"https://github.com/ZanzyTHEbar"}]}],b=[{name:"qdot",avatar:"https://avatars.githubusercontent.com/u/34539?v=4",links:[{icon:"github",link:"https://github.com/qdot"}]},{name:"dfgHiatus",avatar:"https://avatars.githubusercontent.com/u/51272212?v=4",links:[{icon:"github",link:"https://github.com/dfgHiatus"}]},{name:"PallasNeko",avatar:"https://avatars.githubusercontent.com/u/124042774?v=4",links:[{icon:"github",link:"https://github.com/PallasNeko"}]}],f=JSON.parse('{"title":"","description":"","frontmatter":{"layout":"page"},"headers":[],"relativePath":"about.md","filePath":"about.md","lastUpdated":1700510338000}'),d={name:"about.md"},w=Object.assign(d,{setup(c){return(g,e)=>(m(),p("div",null,[n(l(u),null,{default:o(()=>[n(l(i),null,{title:o(()=>e[0]||(e[0]=[t("div",{class:"text-[#ab5ac7]"}," Our Team ",-1)])),lead:o(()=>e[1]||(e[1]=[a(" The development of EyeTrackVR is guided by an international team, some of whom have chosen to be featured below."),t("br",null,null,-1),t("br",null,null,-1),a(" EyeTrackVR developers are a group of people who are passionate about the field of augmented and virtual reality. ")])),_:1}),n(l(r),{size:"medium",members:l(h)},null,8,["members"]),n(l(s),null,{title:o(()=>e[2]||(e[2]=[a("Contributors")])),lead:o(()=>e[3]||(e[3]=[a("Those who have actively contributed to development."),t("br",null,null,-1),a(" Community Support")])),members:o(()=>[n(l(r),{size:"small",members:l(b)},null,8,["members"])]),_:1}),n(l(s),null,{title:o(()=>e[4]||(e[4]=[a("Philosophy")])),lead:o(()=>e[5]||(e[5]=[a(" The "),t("a",{class:"custom-links",href:"/intro",target:"_blank"},"guides",-1),a(" on this website include some of our team's own notes (not all of them are polished) that we disclose for other people to use."),t("br",null,null,-1),t("br",null,null,-1),a(" Here, we hope you may find something useful to you."),t("br",null,null,-1),t("br",null,null,-1),a(" We advocate the "),t("a",{class:"custom-links",href:"https://en.wikipedia.org/wiki/Open-source_model",target:"_blank"},"Open Source model",-1),a("."),t("br",null,null,-1),t("br",null,null,-1),a(" This is why we strive to make our work open to other people for consultation, replication and reuse. ")])),_:1})]),_:1})]))}});export{f as __pageData,w as default};
|
||||
import{V as i,a as r,b as s,c as u}from"./chunks/theme.cd06fb64.js";import{o as m,c as p,E as n,w as o,l,k as t,a}from"./chunks/framework.47aa8d5b.js";const h=[{name:"Prohurtz",avatar:"https://avatars.githubusercontent.com/u/48768484?v=4",title:"Creator / Lead Software Developer / Documentor / Hardware Developer",links:[{icon:"github",link:"https://github.com/RedHawk989"}]},{name:"Summer",avatar:"https://avatars.githubusercontent.com/u/115666235?v=4",title:"Machine Learning Engineer / Data Scientist / App Developer",links:[{icon:"github",link:"https://github.com/Summer404NotFound"}]},{name:"lorow",avatar:"https://avatars.githubusercontent.com/u/14099558?v=4",title:"Lead Firmware Developer / App Developer",links:[{icon:"github",link:"https://github.com/lorow"}]},{name:"DaOfficialWizard",avatar:"https://avatars.githubusercontent.com/u/45744329?v=4",title:"Firmware Developer / Documentation Manager / App Developer",links:[{icon:"github",link:"https://github.com/ZanzyTHEbar"}]}],b=[{name:"qdot",avatar:"https://avatars.githubusercontent.com/u/34539?v=4",links:[{icon:"github",link:"https://github.com/qdot"}]},{name:"dfgHiatus",avatar:"https://avatars.githubusercontent.com/u/51272212?v=4",links:[{icon:"github",link:"https://github.com/dfgHiatus"}]},{name:"PallasNeko",avatar:"https://avatars.githubusercontent.com/u/124042774?v=4",links:[{icon:"github",link:"https://github.com/PallasNeko"}]}],f=JSON.parse('{"title":"","description":"","frontmatter":{"layout":"page"},"headers":[],"relativePath":"about.md","filePath":"about.md","lastUpdated":1700510338000}'),d={name:"about.md"},w=Object.assign(d,{setup(c){return(g,e)=>(m(),p("div",null,[n(l(u),null,{default:o(()=>[n(l(i),null,{title:o(()=>e[0]||(e[0]=[t("div",{class:"text-[#ab5ac7]"}," Our Team ",-1)])),lead:o(()=>e[1]||(e[1]=[a(" The development of EyeTrackVR is guided by an international team, some of whom have chosen to be featured below."),t("br",null,null,-1),t("br",null,null,-1),a(" EyeTrackVR developers are a group of people who are passionate about the field of augmented and virtual reality. ")])),_:1}),n(l(r),{size:"medium",members:l(h)},null,8,["members"]),n(l(s),null,{title:o(()=>e[2]||(e[2]=[a("Contributors")])),lead:o(()=>e[3]||(e[3]=[a("Those who have actively contributed to development."),t("br",null,null,-1),a(" Community Support")])),members:o(()=>[n(l(r),{size:"small",members:l(b)},null,8,["members"])]),_:1}),n(l(s),null,{title:o(()=>e[4]||(e[4]=[a("Philosophy")])),lead:o(()=>e[5]||(e[5]=[a(" The "),t("a",{class:"custom-links",href:"/intro",target:"_blank"},"guides",-1),a(" on this website include some of our team's own notes (not all of them are polished) that we disclose for other people to use."),t("br",null,null,-1),t("br",null,null,-1),a(" Here, we hope you may find something useful to you."),t("br",null,null,-1),t("br",null,null,-1),a(" We advocate the "),t("a",{class:"custom-links",href:"https://en.wikipedia.org/wiki/Open-source_model",target:"_blank"},"Open Source model",-1),a("."),t("br",null,null,-1),t("br",null,null,-1),a(" This is why we strive to make our work open to other people for consultation, replication and reuse. ")])),_:1})]),_:1})]))}});export{f as __pageData,w as default};
|
@ -1 +1 @@
|
||||
import{u as p,v as i,p as s,a1 as c,a2 as l,a3 as d,a4 as f,a5 as m,a6 as h,a7 as g,a8 as A,a9 as v,aa as C,S as P,d as y,j as _,ab as w,ac as T,ad as b,ae as E}from"./chunks/framework.47aa8d5b.js";import{t as R}from"./chunks/theme.81520eb5.js";const S={};const D={...R,setup(){const{lang:e}=p();i(()=>{s&&(document.cookie=`nf_lang=${e.value}; expires=Mon, 1 Jan 2024 00:00:00 UTC; path=/`)})},...S};function u(e){if(e.extends){const t=u(e.extends);return{...t,...e,async enhanceApp(a){t.enhanceApp&&await t.enhanceApp(a),e.enhanceApp&&await e.enhanceApp(a)}}}return e}const o=u(D),j=y({name:"VitePressApp",setup(){const{site:e}=p();return _(()=>{i(()=>{document.documentElement.lang=e.value.lang,document.documentElement.dir=e.value.dir})}),w(),T(),b(),o.setup&&o.setup(),()=>E(o.Layout)}});async function x(){const e=$(),t=O();t.provide(l,e);const a=d(e.route);return t.provide(f,a),t.component("Content",m),t.component("ClientOnly",h),Object.defineProperties(t.config.globalProperties,{$frontmatter:{get(){return a.frontmatter.value}},$params:{get(){return a.page.value.params}}}),o.enhanceApp&&await o.enhanceApp({app:t,router:e,siteData:g}),{app:t,router:e,data:a}}function O(){return A(j)}function $(){let e=s,t;return v(a=>{let n=C(a),r=null;return n&&(e&&(t=n),(e||t===n)&&(n=n.replace(/\.js$/,".lean.js")),r=P(()=>import(n),[])),s&&(e=!1),r},o.NotFound)}s&&x().then(({app:e,router:t,data:a})=>{t.go().then(()=>{c(t.route,a.site),e.mount("#app")})});export{x as createApp};
|
||||
import{u as p,v as i,p as s,a1 as c,a2 as l,a3 as d,a4 as f,a5 as m,a6 as h,a7 as g,a8 as A,a9 as v,aa as C,S as P,d as y,j as _,ab as w,ac as T,ad as b,ae as E}from"./chunks/framework.47aa8d5b.js";import{t as R}from"./chunks/theme.cd06fb64.js";const S={};const D={...R,setup(){const{lang:e}=p();i(()=>{s&&(document.cookie=`nf_lang=${e.value}; expires=Mon, 1 Jan 2024 00:00:00 UTC; path=/`)})},...S};function u(e){if(e.extends){const t=u(e.extends);return{...t,...e,async enhanceApp(a){t.enhanceApp&&await t.enhanceApp(a),e.enhanceApp&&await e.enhanceApp(a)}}}return e}const o=u(D),j=y({name:"VitePressApp",setup(){const{site:e}=p();return _(()=>{i(()=>{document.documentElement.lang=e.value.lang,document.documentElement.dir=e.value.dir})}),w(),T(),b(),o.setup&&o.setup(),()=>E(o.Layout)}});async function x(){const e=$(),t=O();t.provide(l,e);const a=d(e.route);return t.provide(f,a),t.component("Content",m),t.component("ClientOnly",h),Object.defineProperties(t.config.globalProperties,{$frontmatter:{get(){return a.frontmatter.value}},$params:{get(){return a.page.value.params}}}),o.enhanceApp&&await o.enhanceApp({app:t,router:e,siteData:g}),{app:t,router:e,data:a}}function O(){return A(j)}function $(){let e=s,t;return v(a=>{let n=C(a),r=null;return n&&(e&&(t=n),(e||t===n)&&(n=n.replace(/\.js$/,".lean.js")),r=P(()=>import(n),[])),s&&(e=!1),r},o.NotFound)}s&&x().then(({app:e,router:t,data:a})=>{t.go().then(()=>{c(t.route,a.site),e.mount("#app")})});export{x as createApp};
|
1
assets/chunks/@localSearchIndexroot.42785e48.js
Normal file
1
assets/chunks/@localSearchIndexroot.42785e48.js
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1,4 +1,4 @@
|
||||
import{o as a,c as s,O as n}from"./chunks/framework.47aa8d5b.js";const o=JSON.parse('{"title":"","description":"","frontmatter":{},"headers":[],"relativePath":"getting_started/led_safety.md","filePath":"getting_started/led_safety.md","lastUpdated":1745094816000}'),r={name:"getting_started/led_safety.md"},p=Object.assign(r,{setup(t){return(l,e)=>(a(),s("div",null,e[0]||(e[0]=[n(`<h2 id="near‐eye-infrared-ir-emitter-safety" tabindex="-1">Near‑Eye Infrared (IR) Emitter Safety <a class="header-anchor" href="#near‐eye-infrared-ir-emitter-safety" aria-label="Permalink to "Near‑Eye Infrared (IR) Emitter Safety""></a></h2><p><strong>Please exercise caution when messing around with IR emitters.</strong></p><p>Infrared emitters are invisible but <strong>not harmless</strong>. Excessive IR energy can heat the <strong>cornea</strong> and, over long exposures, contribute to cataract formation. At higher intensities and shorter wavelengths, the <strong>retina</strong> is also at risk due to focused thermal energy. This page explains how EyeTrackVR remains well below internationally accepted exposure limits, and how <em>you</em> can help ensure continued safety.</p><div class="danger custom-block"><p class="custom-block-title">DANGER</p><p><strong>DO NOT</strong> remove current‑limiting resistors, supply the LEDs with a different voltage, substitute emitters, or bypass firmware current caps. These modifications invalidate the safety calculations and may cause <strong>permanent eye damage</strong>.</p></div><hr><h3 id="relevant-safety-limits" tabindex="-1">Relevant Safety Limits <a class="header-anchor" href="#relevant-safety-limits" aria-label="Permalink to "Relevant Safety Limits""></a></h3><p>We design for compliance with these key international safety standards:</p><ul><li><strong>ICNIRP 2013</strong>: For exposures >1000 seconds, the <strong>anterior eye</strong> (cornea and lens) irradiance limit is<br><strong>10 mW/cm²</strong> (equivalent to 100 W/m²).</li><li><strong>IEC 62471</strong> and <strong>IEC 60825-1</strong>: For sources in the <strong>retinal hazard region</strong> (400–1400 nm), and a worst-case exposure of ≥10 s, the irradiance limit is<br><strong>4 mW/cm²</strong> (averaged over a 7 mm pupil projected cone of 11 mrad).</li></ul><p>EyeTrackVR emitters operate at <strong>850 nm</strong>, within the retinal hazard region.<br> Our calculated output is well below both thresholds:<br><strong>≤ 0.8 mW/cm²</strong> at 1 cm — <strong>5×</strong> below the retinal limit, <strong>13×</strong> below the corneal limit.</p><hr><h3 id="why-current-ma-isn-t-enough" tabindex="-1">Why Current (mA) Isn’t Enough <a class="header-anchor" href="#why-current-ma-isn-t-enough" aria-label="Permalink to "Why Current (mA) Isn’t Enough""></a></h3><p>LED current (mA) is not a direct measure of safety. <strong>Irradiance</strong> (power per unit area) determines actual eye exposure:</p><div class="language- line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#babed8;">Irradiance E = Radiant Intensity Ie / Illuminated Area A</span></span>
|
||||
import{o as a,c as s,O as n}from"./chunks/framework.47aa8d5b.js";const o=JSON.parse('{"title":"","description":"","frontmatter":{},"headers":[],"relativePath":"getting_started/led_safety.md","filePath":"getting_started/led_safety.md","lastUpdated":1746112988000}'),t={name:"getting_started/led_safety.md"},p=Object.assign(t,{setup(r){return(l,e)=>(a(),s("div",null,e[0]||(e[0]=[n(`<h2 id="near‐eye-infrared-ir-emitter-safety" tabindex="-1">Near‑Eye Infrared (IR) Emitter Safety <a class="header-anchor" href="#near‐eye-infrared-ir-emitter-safety" aria-label="Permalink to "Near‑Eye Infrared (IR) Emitter Safety""></a></h2><p><strong>Please exercise caution when messing around with IR emitters.</strong></p><p>IR can be dangerous to your eyes once at a certain power level. <strong>It is not recommended to use different emitters unless you know exactly what you are doing as it could result in harm to your eyes. If you doubt yourself or do not understand something, just do exactly what we do. Don't use different emitters, don't use different means of power, etc.</strong></p><div class="danger custom-block"><p class="custom-block-title">DANGER</p><p>It is important that you DO NOT BYPASS (OR NOT DO) ANY SAFETY FEATURES PUT IN PLACE. This can result in irreversible bodily harm.</p></div><p>The safety measures were put in place to REDUCE the potential failure risk. All further safety responsibilities are on the user. This includes visually checking with an IR camera that the brightness is correct and that you do not feel warmth, excessive eye-strain or experience short-term effects after being exposed to the IR light (symptoms such as dark spots or dry/warm feeling eyes while actively using). While we have designed EyeTrackVR to be as safe as possible, we do not hold any responsibility for damage done.</p><p><a href="https://store.eyetrackvr.dev/" target="_blank" rel="noreferrer">Our official kits</a> are made with known safe parts, undergo design testing to ensure failures are safe, and have calculated exposure nummbers below.</p><hr><h3 id="relevant-safety-limits" tabindex="-1">Relevant Safety Limits <a class="header-anchor" href="#relevant-safety-limits" aria-label="Permalink to "Relevant Safety Limits""></a></h3><p>We design for compliance with these key international safety standards:</p><ul><li><strong>ICNIRP 2013</strong>: For exposures >1000 seconds, the <strong>anterior eye</strong> (cornea and lens) irradiance limit is<br><strong>10 mW/cm²</strong> (equivalent to 100 W/m²).</li><li><strong>IEC 62471</strong> and <strong>IEC 60825-1</strong>: For sources in the <strong>retinal hazard region</strong> (400–1400 nm), and a worst-case exposure of ≥10 s, the irradiance limit is<br><strong>4 mW/cm²</strong> (averaged over a 7 mm pupil projected cone of 11 mrad).</li></ul><p>EyeTrackVR emitters operate at <strong>850 nm</strong>, within the retinal hazard region.<br> Our calculated output is well below both thresholds:<br><strong>≤ 0.8 mW/cm²</strong> at 1 cm — <strong>5×</strong> below the retinal limit, <strong>13×</strong> below the corneal limit.</p><hr><h3 id="why-current-ma-isn-t-enough" tabindex="-1">Why Current (mA) Isn’t Enough <a class="header-anchor" href="#why-current-ma-isn-t-enough" aria-label="Permalink to "Why Current (mA) Isn’t Enough""></a></h3><p>LED current (mA) is not a direct measure of safety. <strong>Irradiance</strong> (power per unit area) determines actual eye exposure:</p><div class="language- line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#babed8;">Irradiance E = Radiant Intensity Ie / Illuminated Area A</span></span>
|
||||
<span class="line"><span style="color:#babed8;">A = r² · Ω where Ω = 2π(1−cosθ)</span></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></div></div><ul><li><em>Ie</em> = radiant intensity (in <strong>mW/sr</strong>, from datasheet)</li><li><em>r</em> = distance from LED to cornea (worst-case 1 cm)</li><li><em>θ</em> = half-angle of LED emission cone (datasheet: 60°, full angle 120°)</li><li><em>Ω</em> = solid angle in <strong>steradians</strong><br> (for θ = 60° → Ω ≈ π sr)<br> → A = π cm² at 1 cm</li></ul><hr><h2 id="hardware-exposure-calculations" tabindex="-1">Hardware Exposure Calculations <a class="header-anchor" href="#hardware-exposure-calculations" aria-label="Permalink to "Hardware Exposure Calculations""></a></h2><h3 id="led-xl‐3216hirc‐850" tabindex="-1">LED: XL‑3216HIRC‑850 <a class="header-anchor" href="#led-xl‐3216hirc‐850" aria-label="Permalink to "LED: XL‑3216HIRC‑850""></a></h3><table><thead><tr><th>Datasheet Value</th><th>Symbol</th><th>Notes</th></tr></thead><tbody><tr><td>Radiant intensity @ 20 mA</td><td><em>Ie₍20ₘₐ₎</em> = 5 mW/sr</td><td>Typical max value, 60° half-angle</td></tr><tr><td>Full emission angle</td><td>120°</td><td>⇒ θ = 60°, Ω ≈ π sr</td></tr></tbody></table><p>Radiant intensity scales roughly linearly with current:</p><div class="language- line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#babed8;">Ie = Ie₍20ₘₐ₎ × (I_drive / 20 mA)</span></span></code></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br></div></div><hr><h3 id="v3-module-2-leds-3-2-ma-each" tabindex="-1">V3 Module (2 LEDs @ 3.2 mA each) <a class="header-anchor" href="#v3-module-2-leds-3-2-ma-each" aria-label="Permalink to "V3 Module (2 LEDs @ 3.2 mA each)""></a></h3><div class="language- line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#babed8;">Ie_single = 5 × (3.2 / 20) = 0.80 mW/sr</span></span>
|
||||
<span class="line"><span style="color:#babed8;">E_single = 0.80 / π = 0.25 mW/cm²</span></span>
|
||||
<span class="line"><span style="color:#babed8;">E_total = 0.25 × 2 = 0.51 mW/cm²</span></span>
|
||||
@ -11,8 +11,8 @@ import{o as a,c as s,O as n}from"./chunks/framework.47aa8d5b.js";const o=JSON.pa
|
||||
<span class="line"><span style="color:#babed8;">→ ~8.1% of ICNIRP corneal limit</span></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></div></div><h4 id="v4-max-bin-4-leds-2-4-ma" tabindex="-1">V4 Max Bin (4 LEDs @ 2.4 mA): <a class="header-anchor" href="#v4-max-bin-4-leds-2-4-ma" aria-label="Permalink to "V4 Max Bin (4 LEDs @ 2.4 mA):""></a></h4><div class="language- line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#babed8;">Ie_single = 8 × (2.4 / 20) = 0.96 mW/sr</span></span>
|
||||
<span class="line"><span style="color:#babed8;">E_single = 0.96 / π = 0.31 mW/cm²</span></span>
|
||||
<span class="line"><span style="color:#babed8;">E_total = 0.31 × 4 = 1.22 mW/cm²</span></span>
|
||||
<span class="line"><span style="color:#babed8;">→ ~12.2% of ICNIRP corneal limit</span></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></div></div><hr><h2 id="your-responsibilities" tabindex="-1">Your Responsibilities <a class="header-anchor" href="#your-responsibilities" aria-label="Permalink to "Your Responsibilities""></a></h2><ol><li><strong>Do not modify the hardware.</strong> Changing components or resistors voids all safety guarantees.</li><li><strong>Verify functionality before use.</strong> Use an IR-sensitive camera to confirm all LEDs are on and of equal brightness.</li><li><strong>Perform periodic inspections</strong> to ensure IR emitters have not damaged and remain equal brightness.</li></ol><hr><h2 id="appendix-a-–-formula-summary" tabindex="-1">Appendix A – Formula Summary <a class="header-anchor" href="#appendix-a-–-formula-summary" aria-label="Permalink to "Appendix A – Formula Summary""></a></h2><div class="language- line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#babed8;">Ω = 2π(1−cosθ) (solid angle of emission)</span></span>
|
||||
<span class="line"><span style="color:#babed8;">→ ~12.2% of ICNIRP corneal limit</span></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></div></div><hr><h2 id="your-responsibilities" tabindex="-1">Your Responsibilities <a class="header-anchor" href="#your-responsibilities" aria-label="Permalink to "Your Responsibilities""></a></h2><ol><li><strong>Do not modify the hardware.</strong> Changing components or resistors voids all safety guarantees and may lead to unsafe conditions.</li><li><strong>Verify functionality before use.</strong> Use an IR-sensitive camera to confirm all LEDs are on and of equal brightness and the view of your eye is not completely washed out.</li><li><strong>Perform periodic inspections</strong> to ensure IR emitters have not damaged and remain equal brightness.</li></ol><hr><h2 id="appendix-a-–-formula-summary" tabindex="-1">Appendix A – Formula Summary <a class="header-anchor" href="#appendix-a-–-formula-summary" aria-label="Permalink to "Appendix A – Formula Summary""></a></h2><div class="language- line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#babed8;">Ω = 2π(1−cosθ) (solid angle of emission)</span></span>
|
||||
<span class="line"><span style="color:#babed8;">A = Ω × r² (illuminated area)</span></span>
|
||||
<span class="line"><span style="color:#babed8;">Ie = Ie₍20ₘₐ₎ × I / 20 mA</span></span>
|
||||
<span class="line"><span style="color:#babed8;">E (per LED) = Ie / A</span></span>
|
||||
<span class="line"><span style="color:#babed8;">E_total = E × (# of LEDs)</span></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><hr><h2 id="appendix-b-–-quoted-guideline-icnirp-2013" tabindex="-1">Appendix B – Quoted Guideline (ICNIRP 2013) <a class="header-anchor" href="#appendix-b-–-quoted-guideline-icnirp-2013" aria-label="Permalink to "Appendix B – Quoted Guideline (ICNIRP 2013)""></a></h2><blockquote><p>“To avoid thermal injury of the cornea and possible delayed effects on the lens of the eye (cataractogenesis), infrared radiation (780 nm < λ < 3 µm) should be limited to 100 W m⁻² (10 mW cm⁻²) for lengthy exposures (> 1000 s).”</p></blockquote><blockquote><p>— <em>ICNIRP Guidelines on Limits of Exposure to Incoherent Optical Radiation (2013)</em><br><a href="https://docs.eyetrackvr.dev/safety/ICNIRP_optical_radiation.pdf" target="_blank" rel="noreferrer">PDF</a></p></blockquote><hr><p>If you have suggestions, believe these calculations are inaccurate, or wish to contribute improvements, please <a href="https://github.com/EyeTrackVR/EyetrackVR-Docs" target="_blank" rel="noreferrer">open a discussion on GitHub</a>. Your feedback helps us keep everyone safe.</p>`,45)])))}});export{o as __pageData,p as default};
|
||||
<span class="line"><span style="color:#babed8;">E_total = E × (# of LEDs)</span></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><hr><h2 id="appendix-b-–-quoted-guideline-icnirp-2013" tabindex="-1">Appendix B – Quoted Guideline (ICNIRP 2013) <a class="header-anchor" href="#appendix-b-–-quoted-guideline-icnirp-2013" aria-label="Permalink to "Appendix B – Quoted Guideline (ICNIRP 2013)""></a></h2><blockquote><p>“To avoid thermal injury of the cornea and possible delayed effects on the lens of the eye (cataractogenesis), infrared radiation (780 nm < λ < 3 µm) should be limited to 100 W m⁻² (10 mW cm⁻²) for lengthy exposures (> 1000 s).”</p></blockquote><blockquote><p>— <em>ICNIRP Guidelines on Limits of Exposure to Incoherent Optical Radiation (2013)</em><br><a href="https://docs.eyetrackvr.dev/safety/ICNIRP_optical_radiation.pdf" target="_blank" rel="noreferrer">PDF</a></p></blockquote><hr><p>If you have suggestions, believe these calculations are inaccurate, or wish to contribute improvements, please <a href="https://github.com/EyeTrackVR/EyetrackVR-Docs" target="_blank" rel="noreferrer">open a discussion on GitHub</a>. Your feedback helps us keep everyone safe.</p>`,47)])))}});export{o as __pageData,p as default};
|
@ -1,4 +1,4 @@
|
||||
import{o as a,c as s,O as n}from"./chunks/framework.47aa8d5b.js";const o=JSON.parse('{"title":"","description":"","frontmatter":{},"headers":[],"relativePath":"getting_started/led_safety.md","filePath":"getting_started/led_safety.md","lastUpdated":1745094816000}'),r={name:"getting_started/led_safety.md"},p=Object.assign(r,{setup(t){return(l,e)=>(a(),s("div",null,e[0]||(e[0]=[n(`<h2 id="near‐eye-infrared-ir-emitter-safety" tabindex="-1">Near‑Eye Infrared (IR) Emitter Safety <a class="header-anchor" href="#near‐eye-infrared-ir-emitter-safety" aria-label="Permalink to "Near‑Eye Infrared (IR) Emitter Safety""></a></h2><p><strong>Please exercise caution when messing around with IR emitters.</strong></p><p>Infrared emitters are invisible but <strong>not harmless</strong>. Excessive IR energy can heat the <strong>cornea</strong> and, over long exposures, contribute to cataract formation. At higher intensities and shorter wavelengths, the <strong>retina</strong> is also at risk due to focused thermal energy. This page explains how EyeTrackVR remains well below internationally accepted exposure limits, and how <em>you</em> can help ensure continued safety.</p><div class="danger custom-block"><p class="custom-block-title">DANGER</p><p><strong>DO NOT</strong> remove current‑limiting resistors, supply the LEDs with a different voltage, substitute emitters, or bypass firmware current caps. These modifications invalidate the safety calculations and may cause <strong>permanent eye damage</strong>.</p></div><hr><h3 id="relevant-safety-limits" tabindex="-1">Relevant Safety Limits <a class="header-anchor" href="#relevant-safety-limits" aria-label="Permalink to "Relevant Safety Limits""></a></h3><p>We design for compliance with these key international safety standards:</p><ul><li><strong>ICNIRP 2013</strong>: For exposures >1000 seconds, the <strong>anterior eye</strong> (cornea and lens) irradiance limit is<br><strong>10 mW/cm²</strong> (equivalent to 100 W/m²).</li><li><strong>IEC 62471</strong> and <strong>IEC 60825-1</strong>: For sources in the <strong>retinal hazard region</strong> (400–1400 nm), and a worst-case exposure of ≥10 s, the irradiance limit is<br><strong>4 mW/cm²</strong> (averaged over a 7 mm pupil projected cone of 11 mrad).</li></ul><p>EyeTrackVR emitters operate at <strong>850 nm</strong>, within the retinal hazard region.<br> Our calculated output is well below both thresholds:<br><strong>≤ 0.8 mW/cm²</strong> at 1 cm — <strong>5×</strong> below the retinal limit, <strong>13×</strong> below the corneal limit.</p><hr><h3 id="why-current-ma-isn-t-enough" tabindex="-1">Why Current (mA) Isn’t Enough <a class="header-anchor" href="#why-current-ma-isn-t-enough" aria-label="Permalink to "Why Current (mA) Isn’t Enough""></a></h3><p>LED current (mA) is not a direct measure of safety. <strong>Irradiance</strong> (power per unit area) determines actual eye exposure:</p><div class="language- line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#babed8;">Irradiance E = Radiant Intensity Ie / Illuminated Area A</span></span>
|
||||
import{o as a,c as s,O as n}from"./chunks/framework.47aa8d5b.js";const o=JSON.parse('{"title":"","description":"","frontmatter":{},"headers":[],"relativePath":"getting_started/led_safety.md","filePath":"getting_started/led_safety.md","lastUpdated":1746112988000}'),t={name:"getting_started/led_safety.md"},p=Object.assign(t,{setup(r){return(l,e)=>(a(),s("div",null,e[0]||(e[0]=[n(`<h2 id="near‐eye-infrared-ir-emitter-safety" tabindex="-1">Near‑Eye Infrared (IR) Emitter Safety <a class="header-anchor" href="#near‐eye-infrared-ir-emitter-safety" aria-label="Permalink to "Near‑Eye Infrared (IR) Emitter Safety""></a></h2><p><strong>Please exercise caution when messing around with IR emitters.</strong></p><p>IR can be dangerous to your eyes once at a certain power level. <strong>It is not recommended to use different emitters unless you know exactly what you are doing as it could result in harm to your eyes. If you doubt yourself or do not understand something, just do exactly what we do. Don't use different emitters, don't use different means of power, etc.</strong></p><div class="danger custom-block"><p class="custom-block-title">DANGER</p><p>It is important that you DO NOT BYPASS (OR NOT DO) ANY SAFETY FEATURES PUT IN PLACE. This can result in irreversible bodily harm.</p></div><p>The safety measures were put in place to REDUCE the potential failure risk. All further safety responsibilities are on the user. This includes visually checking with an IR camera that the brightness is correct and that you do not feel warmth, excessive eye-strain or experience short-term effects after being exposed to the IR light (symptoms such as dark spots or dry/warm feeling eyes while actively using). While we have designed EyeTrackVR to be as safe as possible, we do not hold any responsibility for damage done.</p><p><a href="https://store.eyetrackvr.dev/" target="_blank" rel="noreferrer">Our official kits</a> are made with known safe parts, undergo design testing to ensure failures are safe, and have calculated exposure nummbers below.</p><hr><h3 id="relevant-safety-limits" tabindex="-1">Relevant Safety Limits <a class="header-anchor" href="#relevant-safety-limits" aria-label="Permalink to "Relevant Safety Limits""></a></h3><p>We design for compliance with these key international safety standards:</p><ul><li><strong>ICNIRP 2013</strong>: For exposures >1000 seconds, the <strong>anterior eye</strong> (cornea and lens) irradiance limit is<br><strong>10 mW/cm²</strong> (equivalent to 100 W/m²).</li><li><strong>IEC 62471</strong> and <strong>IEC 60825-1</strong>: For sources in the <strong>retinal hazard region</strong> (400–1400 nm), and a worst-case exposure of ≥10 s, the irradiance limit is<br><strong>4 mW/cm²</strong> (averaged over a 7 mm pupil projected cone of 11 mrad).</li></ul><p>EyeTrackVR emitters operate at <strong>850 nm</strong>, within the retinal hazard region.<br> Our calculated output is well below both thresholds:<br><strong>≤ 0.8 mW/cm²</strong> at 1 cm — <strong>5×</strong> below the retinal limit, <strong>13×</strong> below the corneal limit.</p><hr><h3 id="why-current-ma-isn-t-enough" tabindex="-1">Why Current (mA) Isn’t Enough <a class="header-anchor" href="#why-current-ma-isn-t-enough" aria-label="Permalink to "Why Current (mA) Isn’t Enough""></a></h3><p>LED current (mA) is not a direct measure of safety. <strong>Irradiance</strong> (power per unit area) determines actual eye exposure:</p><div class="language- line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#babed8;">Irradiance E = Radiant Intensity Ie / Illuminated Area A</span></span>
|
||||
<span class="line"><span style="color:#babed8;">A = r² · Ω where Ω = 2π(1−cosθ)</span></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></div></div><ul><li><em>Ie</em> = radiant intensity (in <strong>mW/sr</strong>, from datasheet)</li><li><em>r</em> = distance from LED to cornea (worst-case 1 cm)</li><li><em>θ</em> = half-angle of LED emission cone (datasheet: 60°, full angle 120°)</li><li><em>Ω</em> = solid angle in <strong>steradians</strong><br> (for θ = 60° → Ω ≈ π sr)<br> → A = π cm² at 1 cm</li></ul><hr><h2 id="hardware-exposure-calculations" tabindex="-1">Hardware Exposure Calculations <a class="header-anchor" href="#hardware-exposure-calculations" aria-label="Permalink to "Hardware Exposure Calculations""></a></h2><h3 id="led-xl‐3216hirc‐850" tabindex="-1">LED: XL‑3216HIRC‑850 <a class="header-anchor" href="#led-xl‐3216hirc‐850" aria-label="Permalink to "LED: XL‑3216HIRC‑850""></a></h3><table><thead><tr><th>Datasheet Value</th><th>Symbol</th><th>Notes</th></tr></thead><tbody><tr><td>Radiant intensity @ 20 mA</td><td><em>Ie₍20ₘₐ₎</em> = 5 mW/sr</td><td>Typical max value, 60° half-angle</td></tr><tr><td>Full emission angle</td><td>120°</td><td>⇒ θ = 60°, Ω ≈ π sr</td></tr></tbody></table><p>Radiant intensity scales roughly linearly with current:</p><div class="language- line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#babed8;">Ie = Ie₍20ₘₐ₎ × (I_drive / 20 mA)</span></span></code></pre><div class="line-numbers-wrapper" aria-hidden="true"><span class="line-number">1</span><br></div></div><hr><h3 id="v3-module-2-leds-3-2-ma-each" tabindex="-1">V3 Module (2 LEDs @ 3.2 mA each) <a class="header-anchor" href="#v3-module-2-leds-3-2-ma-each" aria-label="Permalink to "V3 Module (2 LEDs @ 3.2 mA each)""></a></h3><div class="language- line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#babed8;">Ie_single = 5 × (3.2 / 20) = 0.80 mW/sr</span></span>
|
||||
<span class="line"><span style="color:#babed8;">E_single = 0.80 / π = 0.25 mW/cm²</span></span>
|
||||
<span class="line"><span style="color:#babed8;">E_total = 0.25 × 2 = 0.51 mW/cm²</span></span>
|
||||
@ -11,8 +11,8 @@ import{o as a,c as s,O as n}from"./chunks/framework.47aa8d5b.js";const o=JSON.pa
|
||||
<span class="line"><span style="color:#babed8;">→ ~8.1% of ICNIRP corneal limit</span></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></div></div><h4 id="v4-max-bin-4-leds-2-4-ma" tabindex="-1">V4 Max Bin (4 LEDs @ 2.4 mA): <a class="header-anchor" href="#v4-max-bin-4-leds-2-4-ma" aria-label="Permalink to "V4 Max Bin (4 LEDs @ 2.4 mA):""></a></h4><div class="language- line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#babed8;">Ie_single = 8 × (2.4 / 20) = 0.96 mW/sr</span></span>
|
||||
<span class="line"><span style="color:#babed8;">E_single = 0.96 / π = 0.31 mW/cm²</span></span>
|
||||
<span class="line"><span style="color:#babed8;">E_total = 0.31 × 4 = 1.22 mW/cm²</span></span>
|
||||
<span class="line"><span style="color:#babed8;">→ ~12.2% of ICNIRP corneal limit</span></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></div></div><hr><h2 id="your-responsibilities" tabindex="-1">Your Responsibilities <a class="header-anchor" href="#your-responsibilities" aria-label="Permalink to "Your Responsibilities""></a></h2><ol><li><strong>Do not modify the hardware.</strong> Changing components or resistors voids all safety guarantees.</li><li><strong>Verify functionality before use.</strong> Use an IR-sensitive camera to confirm all LEDs are on and of equal brightness.</li><li><strong>Perform periodic inspections</strong> to ensure IR emitters have not damaged and remain equal brightness.</li></ol><hr><h2 id="appendix-a-–-formula-summary" tabindex="-1">Appendix A – Formula Summary <a class="header-anchor" href="#appendix-a-–-formula-summary" aria-label="Permalink to "Appendix A – Formula Summary""></a></h2><div class="language- line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#babed8;">Ω = 2π(1−cosθ) (solid angle of emission)</span></span>
|
||||
<span class="line"><span style="color:#babed8;">→ ~12.2% of ICNIRP corneal limit</span></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></div></div><hr><h2 id="your-responsibilities" tabindex="-1">Your Responsibilities <a class="header-anchor" href="#your-responsibilities" aria-label="Permalink to "Your Responsibilities""></a></h2><ol><li><strong>Do not modify the hardware.</strong> Changing components or resistors voids all safety guarantees and may lead to unsafe conditions.</li><li><strong>Verify functionality before use.</strong> Use an IR-sensitive camera to confirm all LEDs are on and of equal brightness and the view of your eye is not completely washed out.</li><li><strong>Perform periodic inspections</strong> to ensure IR emitters have not damaged and remain equal brightness.</li></ol><hr><h2 id="appendix-a-–-formula-summary" tabindex="-1">Appendix A – Formula Summary <a class="header-anchor" href="#appendix-a-–-formula-summary" aria-label="Permalink to "Appendix A – Formula Summary""></a></h2><div class="language- line-numbers-mode"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#babed8;">Ω = 2π(1−cosθ) (solid angle of emission)</span></span>
|
||||
<span class="line"><span style="color:#babed8;">A = Ω × r² (illuminated area)</span></span>
|
||||
<span class="line"><span style="color:#babed8;">Ie = Ie₍20ₘₐ₎ × I / 20 mA</span></span>
|
||||
<span class="line"><span style="color:#babed8;">E (per LED) = Ie / A</span></span>
|
||||
<span class="line"><span style="color:#babed8;">E_total = E × (# of LEDs)</span></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><hr><h2 id="appendix-b-–-quoted-guideline-icnirp-2013" tabindex="-1">Appendix B – Quoted Guideline (ICNIRP 2013) <a class="header-anchor" href="#appendix-b-–-quoted-guideline-icnirp-2013" aria-label="Permalink to "Appendix B – Quoted Guideline (ICNIRP 2013)""></a></h2><blockquote><p>“To avoid thermal injury of the cornea and possible delayed effects on the lens of the eye (cataractogenesis), infrared radiation (780 nm < λ < 3 µm) should be limited to 100 W m⁻² (10 mW cm⁻²) for lengthy exposures (> 1000 s).”</p></blockquote><blockquote><p>— <em>ICNIRP Guidelines on Limits of Exposure to Incoherent Optical Radiation (2013)</em><br><a href="https://docs.eyetrackvr.dev/safety/ICNIRP_optical_radiation.pdf" target="_blank" rel="noreferrer">PDF</a></p></blockquote><hr><p>If you have suggestions, believe these calculations are inaccurate, or wish to contribute improvements, please <a href="https://github.com/EyeTrackVR/EyetrackVR-Docs" target="_blank" rel="noreferrer">open a discussion on GitHub</a>. Your feedback helps us keep everyone safe.</p>`,45)])))}});export{o as __pageData,p as default};
|
||||
<span class="line"><span style="color:#babed8;">E_total = E × (# of LEDs)</span></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><hr><h2 id="appendix-b-–-quoted-guideline-icnirp-2013" tabindex="-1">Appendix B – Quoted Guideline (ICNIRP 2013) <a class="header-anchor" href="#appendix-b-–-quoted-guideline-icnirp-2013" aria-label="Permalink to "Appendix B – Quoted Guideline (ICNIRP 2013)""></a></h2><blockquote><p>“To avoid thermal injury of the cornea and possible delayed effects on the lens of the eye (cataractogenesis), infrared radiation (780 nm < λ < 3 µm) should be limited to 100 W m⁻² (10 mW cm⁻²) for lengthy exposures (> 1000 s).”</p></blockquote><blockquote><p>— <em>ICNIRP Guidelines on Limits of Exposure to Incoherent Optical Radiation (2013)</em><br><a href="https://docs.eyetrackvr.dev/safety/ICNIRP_optical_radiation.pdf" target="_blank" rel="noreferrer">PDF</a></p></blockquote><hr><p>If you have suggestions, believe these calculations are inaccurate, or wish to contribute improvements, please <a href="https://github.com/EyeTrackVR/EyetrackVR-Docs" target="_blank" rel="noreferrer">open a discussion on GitHub</a>. Your feedback helps us keep everyone safe.</p>`,47)])))}});export{o as __pageData,p as default};
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
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
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
{"development_docs_pages.md":"85e22694","dev_roadmap.md":"2f96c918","how_to_build_preparing_cameras.md":"0a4aab5a","about.md":"bea4465c","firmware_guide_upload_and_update_firmware.md":"0806ea0f","getting_started_led_safety.md":"8b15f1c0","firmware_guide_setup_vscode.md":"fefbbc55","firmware_guide_update_platformio.md":"d52a99e0","firmware_guide_rest_api.md":"8a0ea54a","how_to_build_3d_printed_mounts.md":"5d2aa5cb","development_docs_dev_docs.md":"b7b0d76e","headset_guides_what_is_this.md":"60052a7d","headset_guides_valve_index.md":"891da17f","firmware_guide_flashing_tool.md":"c180a2ca","development_docs_standards.md":"f9558435","getting_started_things_to_know.md":"4cd89e47","how_to_build_full_build.md":"f324b1f6","firmware_guide_firmware.md":"6c8e1ae6","firmware_guide_mdns.md":"8a95e855","getting_started_intro.md":"d6d8f855","firmware_guide_environments.md":"6b0604e7","how_to_build_creating_your_own_mount.md":"70ac1088","how_to_build_led_setup.md":"6d99addb","how_to_build_part_list.md":"3640f4dd","index.md":"269511a8","software_guide_vrcft_tracking_module.md":"d148b9dc","contact.md":"034a53d4","archive_fox_ir_v2_build_instructions.md":"ebf3c880","software_guide_build_software.md":"b0d1c681","how_to_build_v4_full_build.md":"0dd3c5e7","how_to_build_parts_list.md":"d57cd54a","firmware_guide_configure_firmware.md":"4eb536cf","how_to_build_preparing_xiao.md":"fcacda59","software_guide_eyetrackvr_app_guide.md":"dce4a9fb","software_guide_osc_setup.md":"af1d1fce","misc_faq.md":"8d641c6c","misc_jlc3dp.md":"5e8875c4","misc_vrc_avatar_setup.md":"2d1bc492"}
|
||||
{"contact.md":"034a53d4","firmware_guide_firmware.md":"6c8e1ae6","firmware_guide_environments.md":"6b0604e7","firmware_guide_flashing_tool.md":"c180a2ca","firmware_guide_mdns.md":"8a95e855","archive_fox_ir_v2_build_instructions.md":"ebf3c880","getting_started_led_safety.md":"78277ff3","how_to_build_parts_list.md":"d57cd54a","how_to_build_creating_your_own_mount.md":"70ac1088","how_to_build_full_build.md":"f324b1f6","getting_started_intro.md":"d6d8f855","firmware_guide_rest_api.md":"8a0ea54a","getting_started_things_to_know.md":"4cd89e47","headset_guides_valve_index.md":"891da17f","headset_guides_what_is_this.md":"60052a7d","dev_roadmap.md":"2f96c918","firmware_guide_upload_and_update_firmware.md":"0806ea0f","how_to_build_3d_printed_mounts.md":"5d2aa5cb","software_guide_vrcft_tracking_module.md":"d148b9dc","software_guide_build_software.md":"b0d1c681","development_docs_pages.md":"85e22694","how_to_build_v4_full_build.md":"0dd3c5e7","misc_jlc3dp.md":"5e8875c4","development_docs_standards.md":"f9558435","development_docs_dev_docs.md":"b7b0d76e","how_to_build_part_list.md":"3640f4dd","how_to_build_preparing_cameras.md":"0a4aab5a","how_to_build_preparing_xiao.md":"fcacda59","how_to_build_led_setup.md":"6d99addb","index.md":"269511a8","misc_faq.md":"8d641c6c","misc_vrc_avatar_setup.md":"2d1bc492","about.md":"055b7111","software_guide_osc_setup.md":"af1d1fce","firmware_guide_setup_vscode.md":"fefbbc55","firmware_guide_update_platformio.md":"d52a99e0","firmware_guide_configure_firmware.md":"4eb536cf","software_guide_eyetrackvr_app_guide.md":"dce4a9fb"}
|
||||
|
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
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
File diff suppressed because one or more lines are too long
Loading…
Reference in New Issue
Block a user