EyeTrackVR-Docs/firmware_guide/configure_firmware/index.html
RedHawk989 43960782e6 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
2023-04-30 23:25:11 +00:00

23 lines
42 KiB
HTML

<!DOCTYPE html>
<html lang="en-US">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>Configuring the firmware | 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.fe358c28.css" as="style">
<link rel="modulepreload" href="/assets/chunks/virtual_search-data.6fc1adae.js">
<link rel="modulepreload" href="/assets/chunks/index.8516fcfb.js">
<link rel="modulepreload" href="/assets/chunks/index.0fdcdf9b.js">
<link rel="modulepreload" href="/assets/app.0fb3db86.js">
<link rel="modulepreload" href="/assets/firmware_guide_configure_firmware.md.f27222de.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>
<body>
<div id="app"><div class="Layout" data-v-5aaf92e7><!--[--><!--]--><!--[--><span tabindex="-1" data-v-8ab7c6af></span><a href="#VPContent" class="VPSkipLink visually-hidden" data-v-8ab7c6af> Skip to content </a><!--]--><!----><header class="VPNav" data-v-5aaf92e7 data-v-264fabfc><div class="VPNavBar has-sidebar" data-v-264fabfc data-v-26cab421><div class="container" data-v-26cab421><div class="VPNavBarTitle has-sidebar" data-v-26cab421 data-v-092de34b><a class="title" href="/" data-v-092de34b><!--[--><!--]--><!--[--><!--[--><!--[--><img class="VPImage dark logo" src="/logo.svg" alt="EyeTrackVR Logo" data-v-74766fef><!--]--><!--[--><img class="VPImage light logo" src="/logo_light.png" alt="EyeTrackVR Logo" data-v-74766fef><!--]--><!--]--><!--]--><!--[-->EyeTrackVR Docs<!--]--><!--[--><!--]--></a></div><div class="content" data-v-26cab421><!--[--><!--]--><div class="VPNavBarSearch search" data-v-26cab421><!----><div id="docsearch"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search"><span class="DocSearch-Button-Container"><svg width="20" height="20" class="DocSearch-Search-Icon" viewBox="0 0 20 20"><path d="M14.386 14.386l4.0877 4.0877-4.0877-4.0877c-2.9418 2.9419-7.7115 2.9419-10.6533 0-2.9419-2.9418-2.9419-7.7115 0-10.6533 2.9418-2.9419 7.7115-2.9419 10.6533 0 2.9419 2.9418 2.9419 7.7115 0 10.6533z" stroke="currentColor" fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round"></path></svg><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"><span class="DocSearch-Button-Key">Meta</span><span class="DocSearch-Button-Key">K</span></span></button></div></div><nav aria-labelledby="main-nav-aria-label" class="VPNavBarMenu menu" data-v-26cab421 data-v-408d05b6><span id="main-nav-aria-label" class="visually-hidden" data-v-408d05b6>Main Navigation</span><!--[--><!--[--><div class="VPFlyout VPNavBarMenuGroup" data-v-408d05b6 data-v-01da497a><button type="button" class="button" aria-haspopup="true" aria-expanded="false" data-v-01da497a><span class="text" data-v-01da497a><!----> About <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="text-icon" data-v-01da497a><path d="M12,16c-0.3,0-0.5-0.1-0.7-0.3l-6-6c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l5.3,5.3l5.3-5.3c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-6,6C12.5,15.9,12.3,16,12,16z"></path></svg></span></button><div class="menu" data-v-01da497a><div class="VPMenu" data-v-01da497a data-v-1e25c4ce><div class="items" data-v-1e25c4ce><!--[--><!--[--><div class="VPMenuLink" data-v-1e25c4ce data-v-48adf3ca><a class="VPLink link" href="/about" data-v-48adf3ca data-v-cd683231><!--[-->About Us<!--]--><!----></a></div><!--]--><!--[--><div class="VPMenuLink" data-v-1e25c4ce data-v-48adf3ca><a class="VPLink link" href="/dev_roadmap" data-v-48adf3ca data-v-cd683231><!--[-->Development Road Map<!--]--><!----></a></div><!--]--><!--]--></div><!--[--><!--]--></div></div></div><!--]--><!--[--><a class="VPLink link VPNavBarMenuLink" href="/contact" data-v-408d05b6 data-v-45557806 data-v-cd683231><!--[-->Contact<!--]--><!----></a><!--]--><!--]--></nav><!----><div class="VPNavBarAppearance appearance" data-v-26cab421 data-v-24251c90><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" aria-label="toggle dark mode" aria-checked="false" data-v-24251c90 data-v-16a7f83e data-v-8be94668><span class="check" data-v-8be94668><span class="icon" data-v-8be94668><!--[--><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="sun" data-v-16a7f83e><path d="M12,18c-3.3,0-6-2.7-6-6s2.7-6,6-6s6,2.7,6,6S15.3,18,12,18zM12,8c-2.2,0-4,1.8-4,4c0,2.2,1.8,4,4,4c2.2,0,4-1.8,4-4C16,9.8,14.2,8,12,8z"></path><path d="M12,4c-0.6,0-1-0.4-1-1V1c0-0.6,0.4-1,1-1s1,0.4,1,1v2C13,3.6,12.6,4,12,4z"></path><path d="M12,24c-0.6,0-1-0.4-1-1v-2c0-0.6,0.4-1,1-1s1,0.4,1,1v2C13,23.6,12.6,24,12,24z"></path><path d="M5.6,6.6c-0.3,0-0.5-0.1-0.7-0.3L3.5,4.9c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l1.4,1.4c0.4,0.4,0.4,1,0,1.4C6.2,6.5,5.9,6.6,5.6,6.6z"></path><path d="M19.8,20.8c-0.3,0-0.5-0.1-0.7-0.3l-1.4-1.4c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l1.4,1.4c0.4,0.4,0.4,1,0,1.4C20.3,20.7,20,20.8,19.8,20.8z"></path><path d="M3,13H1c-0.6,0-1-0.4-1-1s0.4-1,1-1h2c0.6,0,1,0.4,1,1S3.6,13,3,13z"></path><path d="M23,13h-2c-0.6,0-1-0.4-1-1s0.4-1,1-1h2c0.6,0,1,0.4,1,1S23.6,13,23,13z"></path><path d="M4.2,20.8c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l1.4-1.4c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-1.4,1.4C4.7,20.7,4.5,20.8,4.2,20.8z"></path><path d="M18.4,6.6c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l1.4-1.4c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-1.4,1.4C18.9,6.5,18.6,6.6,18.4,6.6z"></path></svg><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="moon" data-v-16a7f83e><path d="M12.1,22c-0.3,0-0.6,0-0.9,0c-5.5-0.5-9.5-5.4-9-10.9c0.4-4.8,4.2-8.6,9-9c0.4,0,0.8,0.2,1,0.5c0.2,0.3,0.2,0.8-0.1,1.1c-2,2.7-1.4,6.4,1.3,8.4c2.1,1.6,5,1.6,7.1,0c0.3-0.2,0.7-0.3,1.1-0.1c0.3,0.2,0.5,0.6,0.5,1c-0.2,2.7-1.5,5.1-3.6,6.8C16.6,21.2,14.4,22,12.1,22zM9.3,4.4c-2.9,1-5,3.6-5.2,6.8c-0.4,4.4,2.8,8.3,7.2,8.7c2.1,0.2,4.2-0.4,5.8-1.8c1.1-0.9,1.9-2.1,2.4-3.4c-2.5,0.9-5.3,0.5-7.5-1.1C9.2,11.4,8.1,7.7,9.3,4.4z"></path></svg><!--]--></span></span></button></div><div class="VPSocialLinks VPNavBarSocialLinks social-links" data-v-26cab421 data-v-be888c46 data-v-de2bf516><!--[--><a class="VPSocialLink" href="https://github.com/RedHawk989/EyeTrackVR" target="_blank" rel="noopener" data-v-de2bf516 data-v-af939139><svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>GitHub</title><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"/></svg></a><a class="VPSocialLink" href="https://discord.gg/kkXYbVykZX" target="_blank" rel="noopener" data-v-de2bf516 data-v-af939139><svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Discord</title><path d="M20.317 4.3698a19.7913 19.7913 0 00-4.8851-1.5152.0741.0741 0 00-.0785.0371c-.211.3753-.4447.8648-.6083 1.2495-1.8447-.2762-3.68-.2762-5.4868 0-.1636-.3933-.4058-.8742-.6177-1.2495a.077.077 0 00-.0785-.037 19.7363 19.7363 0 00-4.8852 1.515.0699.0699 0 00-.0321.0277C.5334 9.0458-.319 13.5799.0992 18.0578a.0824.0824 0 00.0312.0561c2.0528 1.5076 4.0413 2.4228 5.9929 3.0294a.0777.0777 0 00.0842-.0276c.4616-.6304.8731-1.2952 1.226-1.9942a.076.076 0 00-.0416-.1057c-.6528-.2476-1.2743-.5495-1.8722-.8923a.077.077 0 01-.0076-.1277c.1258-.0943.2517-.1923.3718-.2914a.0743.0743 0 01.0776-.0105c3.9278 1.7933 8.18 1.7933 12.0614 0a.0739.0739 0 01.0785.0095c.1202.099.246.1981.3728.2924a.077.077 0 01-.0066.1276 12.2986 12.2986 0 01-1.873.8914.0766.0766 0 00-.0407.1067c.3604.698.7719 1.3628 1.225 1.9932a.076.076 0 00.0842.0286c1.961-.6067 3.9495-1.5219 6.0023-3.0294a.077.077 0 00.0313-.0552c.5004-5.177-.8382-9.6739-3.5485-13.6604a.061.061 0 00-.0312-.0286zM8.02 15.3312c-1.1825 0-2.1569-1.0857-2.1569-2.419 0-1.3332.9555-2.4189 2.157-2.4189 1.2108 0 2.1757 1.0952 2.1568 2.419 0 1.3332-.9555 2.4189-2.1569 2.4189zm7.9748 0c-1.1825 0-2.1569-1.0857-2.1569-2.419 0-1.3332.9554-2.4189 2.1569-2.4189 1.2108 0 2.1757 1.0952 2.1568 2.419 0 1.3332-.946 2.4189-2.1568 2.4189Z"/></svg></a><!--]--></div><div class="VPFlyout VPNavBarExtra extra" data-v-26cab421 data-v-7af1585b data-v-01da497a><button type="button" class="button" aria-haspopup="true" aria-expanded="false" aria-label="extra navigation" data-v-01da497a><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="icon" data-v-01da497a><circle cx="12" cy="12" r="2"></circle><circle cx="19" cy="12" r="2"></circle><circle cx="5" cy="12" r="2"></circle></svg></button><div class="menu" data-v-01da497a><div class="VPMenu" data-v-01da497a data-v-1e25c4ce><!----><!--[--><!--[--><!----><div class="group" data-v-7af1585b><div class="item appearance" data-v-7af1585b><p class="label" data-v-7af1585b>Appearance</p><div class="appearance-action" data-v-7af1585b><button class="VPSwitch VPSwitchAppearance" type="button" role="switch" aria-label="toggle dark mode" aria-checked="false" data-v-7af1585b data-v-16a7f83e data-v-8be94668><span class="check" data-v-8be94668><span class="icon" data-v-8be94668><!--[--><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="sun" data-v-16a7f83e><path d="M12,18c-3.3,0-6-2.7-6-6s2.7-6,6-6s6,2.7,6,6S15.3,18,12,18zM12,8c-2.2,0-4,1.8-4,4c0,2.2,1.8,4,4,4c2.2,0,4-1.8,4-4C16,9.8,14.2,8,12,8z"></path><path d="M12,4c-0.6,0-1-0.4-1-1V1c0-0.6,0.4-1,1-1s1,0.4,1,1v2C13,3.6,12.6,4,12,4z"></path><path d="M12,24c-0.6,0-1-0.4-1-1v-2c0-0.6,0.4-1,1-1s1,0.4,1,1v2C13,23.6,12.6,24,12,24z"></path><path d="M5.6,6.6c-0.3,0-0.5-0.1-0.7-0.3L3.5,4.9c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l1.4,1.4c0.4,0.4,0.4,1,0,1.4C6.2,6.5,5.9,6.6,5.6,6.6z"></path><path d="M19.8,20.8c-0.3,0-0.5-0.1-0.7-0.3l-1.4-1.4c-0.4-0.4-0.4-1,0-1.4s1-0.4,1.4,0l1.4,1.4c0.4,0.4,0.4,1,0,1.4C20.3,20.7,20,20.8,19.8,20.8z"></path><path d="M3,13H1c-0.6,0-1-0.4-1-1s0.4-1,1-1h2c0.6,0,1,0.4,1,1S3.6,13,3,13z"></path><path d="M23,13h-2c-0.6,0-1-0.4-1-1s0.4-1,1-1h2c0.6,0,1,0.4,1,1S23.6,13,23,13z"></path><path d="M4.2,20.8c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l1.4-1.4c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-1.4,1.4C4.7,20.7,4.5,20.8,4.2,20.8z"></path><path d="M18.4,6.6c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l1.4-1.4c0.4-0.4,1-0.4,1.4,0s0.4,1,0,1.4l-1.4,1.4C18.9,6.5,18.6,6.6,18.4,6.6z"></path></svg><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="moon" data-v-16a7f83e><path d="M12.1,22c-0.3,0-0.6,0-0.9,0c-5.5-0.5-9.5-5.4-9-10.9c0.4-4.8,4.2-8.6,9-9c0.4,0,0.8,0.2,1,0.5c0.2,0.3,0.2,0.8-0.1,1.1c-2,2.7-1.4,6.4,1.3,8.4c2.1,1.6,5,1.6,7.1,0c0.3-0.2,0.7-0.3,1.1-0.1c0.3,0.2,0.5,0.6,0.5,1c-0.2,2.7-1.5,5.1-3.6,6.8C16.6,21.2,14.4,22,12.1,22zM9.3,4.4c-2.9,1-5,3.6-5.2,6.8c-0.4,4.4,2.8,8.3,7.2,8.7c2.1,0.2,4.2-0.4,5.8-1.8c1.1-0.9,1.9-2.1,2.4-3.4c-2.5,0.9-5.3,0.5-7.5-1.1C9.2,11.4,8.1,7.7,9.3,4.4z"></path></svg><!--]--></span></span></button></div></div></div><div class="group" data-v-7af1585b><div class="item social-links" data-v-7af1585b><div class="VPSocialLinks social-links-list" data-v-7af1585b data-v-de2bf516><!--[--><a class="VPSocialLink" href="https://github.com/RedHawk989/EyeTrackVR" target="_blank" rel="noopener" data-v-de2bf516 data-v-af939139><svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>GitHub</title><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"/></svg></a><a class="VPSocialLink" href="https://discord.gg/kkXYbVykZX" target="_blank" rel="noopener" data-v-de2bf516 data-v-af939139><svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Discord</title><path d="M20.317 4.3698a19.7913 19.7913 0 00-4.8851-1.5152.0741.0741 0 00-.0785.0371c-.211.3753-.4447.8648-.6083 1.2495-1.8447-.2762-3.68-.2762-5.4868 0-.1636-.3933-.4058-.8742-.6177-1.2495a.077.077 0 00-.0785-.037 19.7363 19.7363 0 00-4.8852 1.515.0699.0699 0 00-.0321.0277C.5334 9.0458-.319 13.5799.0992 18.0578a.0824.0824 0 00.0312.0561c2.0528 1.5076 4.0413 2.4228 5.9929 3.0294a.0777.0777 0 00.0842-.0276c.4616-.6304.8731-1.2952 1.226-1.9942a.076.076 0 00-.0416-.1057c-.6528-.2476-1.2743-.5495-1.8722-.8923a.077.077 0 01-.0076-.1277c.1258-.0943.2517-.1923.3718-.2914a.0743.0743 0 01.0776-.0105c3.9278 1.7933 8.18 1.7933 12.0614 0a.0739.0739 0 01.0785.0095c.1202.099.246.1981.3728.2924a.077.077 0 01-.0066.1276 12.2986 12.2986 0 01-1.873.8914.0766.0766 0 00-.0407.1067c.3604.698.7719 1.3628 1.225 1.9932a.076.076 0 00.0842.0286c1.961-.6067 3.9495-1.5219 6.0023-3.0294a.077.077 0 00.0313-.0552c.5004-5.177-.8382-9.6739-3.5485-13.6604a.061.061 0 00-.0312-.0286zM8.02 15.3312c-1.1825 0-2.1569-1.0857-2.1569-2.419 0-1.3332.9555-2.4189 2.157-2.4189 1.2108 0 2.1757 1.0952 2.1568 2.419 0 1.3332-.9555 2.4189-2.1569 2.4189zm7.9748 0c-1.1825 0-2.1569-1.0857-2.1569-2.419 0-1.3332.9554-2.4189 2.1569-2.4189 1.2108 0 2.1757 1.0952 2.1568 2.419 0 1.3332-.946 2.4189-2.1568 2.4189Z"/></svg></a><!--]--></div></div></div><!--]--><!--]--></div></div></div><!--[--><!--]--><button type="button" class="VPNavBarHamburger hamburger" aria-label="mobile navigation" aria-expanded="false" aria-controls="VPNavScreen" data-v-26cab421 data-v-670493dd><span class="container" data-v-670493dd><span class="top" data-v-670493dd></span><span class="middle" data-v-670493dd></span><span class="bottom" data-v-670493dd></span></span></button></div></div></div><!----></header><div class="VPLocalNav" data-v-5aaf92e7 data-v-232414b9><button class="menu" aria-expanded="false" aria-controls="VPSidebarNav" data-v-232414b9><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" viewbox="0 0 24 24" class="menu-icon" data-v-232414b9><path d="M17,11H3c-0.6,0-1-0.4-1-1s0.4-1,1-1h14c0.6,0,1,0.4,1,1S17.6,11,17,11z"></path><path d="M21,7H3C2.4,7,2,6.6,2,6s0.4-1,1-1h18c0.6,0,1,0.4,1,1S21.6,7,21,7z"></path><path d="M21,15H3c-0.6,0-1-0.4-1-1s0.4-1,1-1h18c0.6,0,1,0.4,1,1S21.6,15,21,15z"></path><path d="M17,19H3c-0.6,0-1-0.4-1-1s0.4-1,1-1h14c0.6,0,1,0.4,1,1S17.6,19,17,19z"></path></svg><span class="menu-text" data-v-232414b9>Menu</span></button><a class="top-link" href="#" data-v-232414b9> Return to top </a></div><aside class="VPSidebar" data-v-5aaf92e7 data-v-21951dfa><nav class="nav" id="VPSidebarNav" aria-labelledby="sidebar-aria-label" tabindex="-1" data-v-21951dfa><span class="visually-hidden" id="sidebar-aria-label" data-v-21951dfa> Sidebar Navigation </span><!--[--><!--]--><!--[--><div class="group" data-v-21951dfa><section class="VPSidebarGroup collapsible" data-v-21951dfa data-v-6a6002da><div class="title" role="button" data-v-6a6002da><h2 class="title-text" data-v-6a6002da>Getting Started</h2><div class="action" data-v-6a6002da><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewbox="0 0 24 24" class="icon minus" data-v-6a6002da><path d="M19,2H5C3.3,2,2,3.3,2,5v14c0,1.7,1.3,3,3,3h14c1.7,0,3-1.3,3-3V5C22,3.3,20.7,2,19,2zM20,19c0,0.6-0.4,1-1,1H5c-0.6,0-1-0.4-1-1V5c0-0.6,0.4-1,1-1h14c0.6,0,1,0.4,1,1V19z"></path><path d="M16,11H8c-0.6,0-1,0.4-1,1s0.4,1,1,1h8c0.6,0,1-0.4,1-1S16.6,11,16,11z"></path></svg><svg version="1.1" xmlns="http://www.w3.org/2000/svg" viewbox="0 0 24 24" class="icon plus" data-v-6a6002da><path d="M19,2H5C3.3,2,2,3.3,2,5v14c0,1.7,1.3,3,3,3h14c1.7,0,3-1.3,3-3V5C22,3.3,20.7,2,19,2z M20,19c0,0.6-0.4,1-1,1H5c-0.6,0-1-0.4-1-1V5c0-0.6,0.4-1,1-1h14c0.6,0,1,0.4,1,1V19z"></path><path d="M16,11h-3V8c0-0.6-0.4-1-1-1s-1,0.4-1,1v3H8c-0.6,0-1,0.4-1,1s0.4,1,1,1h3v3c0,0.6,0.4,1,1,1s1-0.4,1-1v-3h3c0.6,0,1-0.4,1-1S16.6,11,16,11z"></path></svg></div></div><div class="items" data-v-6a6002da><!--[--><!--[--><a class="VPLink link link" href="/getting_started/intro" style="padding-left:0px;" tabindex="-1" data-v-9ac6cb77 data-v-cd683231><!--[--><span class="link-text" data-v-9ac6cb77>Introduction</span><!--]--><!----></a><!----><!--]--><!--[--><a class="VPLink link link" href="/getting_started/things_to_know" style="padding-left:0px;" tabindex="-1" data-v-9ac6cb77 data-v-cd683231><!--[--><span class="link-text" data-v-9ac6cb77>Things to know before you start</span><!--]--><!----></a><!----><!--]--><!--]--></div></section></div><div class="group" data-v-21951dfa><section class="VPSidebarGroup collapsible" data-v-21951dfa data-v-6a6002da><div class="title" role="button" data-v-6a6002da><h2 class="title-text" data-v-6a6002da>How to Build</h2><div class="action" data-v-6a6002da><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewbox="0 0 24 24" class="icon minus" data-v-6a6002da><path d="M19,2H5C3.3,2,2,3.3,2,5v14c0,1.7,1.3,3,3,3h14c1.7,0,3-1.3,3-3V5C22,3.3,20.7,2,19,2zM20,19c0,0.6-0.4,1-1,1H5c-0.6,0-1-0.4-1-1V5c0-0.6,0.4-1,1-1h14c0.6,0,1,0.4,1,1V19z"></path><path d="M16,11H8c-0.6,0-1,0.4-1,1s0.4,1,1,1h8c0.6,0,1-0.4,1-1S16.6,11,16,11z"></path></svg><svg version="1.1" xmlns="http://www.w3.org/2000/svg" viewbox="0 0 24 24" class="icon plus" data-v-6a6002da><path d="M19,2H5C3.3,2,2,3.3,2,5v14c0,1.7,1.3,3,3,3h14c1.7,0,3-1.3,3-3V5C22,3.3,20.7,2,19,2z M20,19c0,0.6-0.4,1-1,1H5c-0.6,0-1-0.4-1-1V5c0-0.6,0.4-1,1-1h14c0.6,0,1,0.4,1,1V19z"></path><path d="M16,11h-3V8c0-0.6-0.4-1-1-1s-1,0.4-1,1v3H8c-0.6,0-1,0.4-1,1s0.4,1,1,1h3v3c0,0.6,0.4,1,1,1s1-0.4,1-1v-3h3c0.6,0,1-0.4,1-1S16.6,11,16,11z"></path></svg></div></div><div class="items" data-v-6a6002da><!--[--><!--[--><a class="VPLink link link" href="/how_to_build/full_build" style="padding-left:0px;" tabindex="-1" data-v-9ac6cb77 data-v-cd683231><!--[--><span class="link-text" data-v-9ac6cb77>Full Build Guide</span><!--]--><!----></a><!----><!--]--><!--[--><a class="VPLink link link" href="/how_to_build/parts_list" style="padding-left:0px;" tabindex="-1" data-v-9ac6cb77 data-v-cd683231><!--[--><span class="link-text" data-v-9ac6cb77>Part List</span><!--]--><!----></a><!----><!--]--><!--[--><a class="VPLink link link" href="/how_to_build/creating_your_own_mount" style="padding-left:0px;" tabindex="-1" data-v-9ac6cb77 data-v-cd683231><!--[--><span class="link-text" data-v-9ac6cb77>How to Create your own Camera Mount</span><!--]--><!----></a><!----><!--]--><!--]--></div></section></div><div class="group" data-v-21951dfa><section class="VPSidebarGroup collapsible" data-v-21951dfa data-v-6a6002da><div class="title" role="button" data-v-6a6002da><h2 class="title-text" data-v-6a6002da>Firmware Guide</h2><div class="action" data-v-6a6002da><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewbox="0 0 24 24" class="icon minus" data-v-6a6002da><path d="M19,2H5C3.3,2,2,3.3,2,5v14c0,1.7,1.3,3,3,3h14c1.7,0,3-1.3,3-3V5C22,3.3,20.7,2,19,2zM20,19c0,0.6-0.4,1-1,1H5c-0.6,0-1-0.4-1-1V5c0-0.6,0.4-1,1-1h14c0.6,0,1,0.4,1,1V19z"></path><path d="M16,11H8c-0.6,0-1,0.4-1,1s0.4,1,1,1h8c0.6,0,1-0.4,1-1S16.6,11,16,11z"></path></svg><svg version="1.1" xmlns="http://www.w3.org/2000/svg" viewbox="0 0 24 24" class="icon plus" data-v-6a6002da><path d="M19,2H5C3.3,2,2,3.3,2,5v14c0,1.7,1.3,3,3,3h14c1.7,0,3-1.3,3-3V5C22,3.3,20.7,2,19,2z M20,19c0,0.6-0.4,1-1,1H5c-0.6,0-1-0.4-1-1V5c0-0.6,0.4-1,1-1h14c0.6,0,1,0.4,1,1V19z"></path><path d="M16,11h-3V8c0-0.6-0.4-1-1-1s-1,0.4-1,1v3H8c-0.6,0-1,0.4-1,1s0.4,1,1,1h3v3c0,0.6,0.4,1,1,1s1-0.4,1-1v-3h3c0.6,0,1-0.4,1-1S16.6,11,16,11z"></path></svg></div></div><div class="items" data-v-6a6002da><!--[--><!--[--><a class="VPLink link link" href="/firmware_guide/firmware" style="padding-left:0px;" tabindex="-1" data-v-9ac6cb77 data-v-cd683231><!--[--><span class="link-text" data-v-9ac6cb77>Introduction</span><!--]--><!----></a><!----><!--]--><!--[--><a class="VPLink link link" href="/firmware_guide/setup_vscode" style="padding-left:0px;" tabindex="-1" data-v-9ac6cb77 data-v-cd683231><!--[--><span class="link-text" data-v-9ac6cb77>Setup Visual Studio Code environment</span><!--]--><!----></a><!----><!--]--><!--[--><a class="VPLink link link active" href="/firmware_guide/configure_firmware" style="padding-left:0px;" tabindex="-1" data-v-9ac6cb77 data-v-cd683231><!--[--><span class="link-text" data-v-9ac6cb77>Configuring Firmware</span><!--]--><!----></a><!----><!--]--><!--[--><a class="VPLink link link" href="/firmware_guide/upload_and_update_firmware" style="padding-left:0px;" tabindex="-1" data-v-9ac6cb77 data-v-cd683231><!--[--><span class="link-text" data-v-9ac6cb77>Uploading and Updating the Firmware</span><!--]--><!----></a><!----><!--]--><!--[--><a class="VPLink link link" href="/firmware_guide/update_platformio" style="padding-left:0px;" tabindex="-1" data-v-9ac6cb77 data-v-cd683231><!--[--><span class="link-text" data-v-9ac6cb77>Updating PlatformIO</span><!--]--><!----></a><!----><!--]--><!--[--><a class="VPLink link link" href="/firmware_guide/environments" style="padding-left:0px;" tabindex="-1" data-v-9ac6cb77 data-v-cd683231><!--[--><span class="link-text" data-v-9ac6cb77>Firmware Environments</span><!--]--><!----></a><!----><!--]--><!--[--><a class="VPLink link link" href="/firmware_guide/mdns" style="padding-left:0px;" tabindex="-1" data-v-9ac6cb77 data-v-cd683231><!--[--><span class="link-text" data-v-9ac6cb77>MDNS</span><!--]--><!----></a><!----><!--]--><!--[--><a class="VPLink link link" href="/firmware_guide/rest_api" style="padding-left:0px;" tabindex="-1" data-v-9ac6cb77 data-v-cd683231><!--[--><span class="link-text" data-v-9ac6cb77>REST API</span><!--]--><!----></a><!----><!--]--><!--]--></div></section></div><div class="group" data-v-21951dfa><section class="VPSidebarGroup collapsible" data-v-21951dfa data-v-6a6002da><div class="title" role="button" data-v-6a6002da><h2 class="title-text" data-v-6a6002da>Software Guide</h2><div class="action" data-v-6a6002da><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewbox="0 0 24 24" class="icon minus" data-v-6a6002da><path d="M19,2H5C3.3,2,2,3.3,2,5v14c0,1.7,1.3,3,3,3h14c1.7,0,3-1.3,3-3V5C22,3.3,20.7,2,19,2zM20,19c0,0.6-0.4,1-1,1H5c-0.6,0-1-0.4-1-1V5c0-0.6,0.4-1,1-1h14c0.6,0,1,0.4,1,1V19z"></path><path d="M16,11H8c-0.6,0-1,0.4-1,1s0.4,1,1,1h8c0.6,0,1-0.4,1-1S16.6,11,16,11z"></path></svg><svg version="1.1" xmlns="http://www.w3.org/2000/svg" viewbox="0 0 24 24" class="icon plus" data-v-6a6002da><path d="M19,2H5C3.3,2,2,3.3,2,5v14c0,1.7,1.3,3,3,3h14c1.7,0,3-1.3,3-3V5C22,3.3,20.7,2,19,2z M20,19c0,0.6-0.4,1-1,1H5c-0.6,0-1-0.4-1-1V5c0-0.6,0.4-1,1-1h14c0.6,0,1,0.4,1,1V19z"></path><path d="M16,11h-3V8c0-0.6-0.4-1-1-1s-1,0.4-1,1v3H8c-0.6,0-1,0.4-1,1s0.4,1,1,1h3v3c0,0.6,0.4,1,1,1s1-0.4,1-1v-3h3c0.6,0,1-0.4,1-1S16.6,11,16,11z"></path></svg></div></div><div class="items" data-v-6a6002da><!--[--><!--[--><a class="VPLink link link" href="/software_guide/eyetrackvr_app_guide" style="padding-left:0px;" tabindex="-1" data-v-9ac6cb77 data-v-cd683231><!--[--><span class="link-text" data-v-9ac6cb77>Installing and setting up the ETVR App</span><!--]--><!----></a><!----><!--]--><!--[--><a class="VPLink link link" href="/software_guide/build_software" style="padding-left:0px;" tabindex="-1" data-v-9ac6cb77 data-v-cd683231><!--[--><span class="link-text" data-v-9ac6cb77>Building the app from source</span><!--]--><!----></a><!----><!--]--><!--]--></div></section></div><div class="group" data-v-21951dfa><section class="VPSidebarGroup collapsible" data-v-21951dfa data-v-6a6002da><div class="title" role="button" data-v-6a6002da><h2 class="title-text" data-v-6a6002da>Miscellaneous</h2><div class="action" data-v-6a6002da><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewbox="0 0 24 24" class="icon minus" data-v-6a6002da><path d="M19,2H5C3.3,2,2,3.3,2,5v14c0,1.7,1.3,3,3,3h14c1.7,0,3-1.3,3-3V5C22,3.3,20.7,2,19,2zM20,19c0,0.6-0.4,1-1,1H5c-0.6,0-1-0.4-1-1V5c0-0.6,0.4-1,1-1h14c0.6,0,1,0.4,1,1V19z"></path><path d="M16,11H8c-0.6,0-1,0.4-1,1s0.4,1,1,1h8c0.6,0,1-0.4,1-1S16.6,11,16,11z"></path></svg><svg version="1.1" xmlns="http://www.w3.org/2000/svg" viewbox="0 0 24 24" class="icon plus" data-v-6a6002da><path d="M19,2H5C3.3,2,2,3.3,2,5v14c0,1.7,1.3,3,3,3h14c1.7,0,3-1.3,3-3V5C22,3.3,20.7,2,19,2z M20,19c0,0.6-0.4,1-1,1H5c-0.6,0-1-0.4-1-1V5c0-0.6,0.4-1,1-1h14c0.6,0,1,0.4,1,1V19z"></path><path d="M16,11h-3V8c0-0.6-0.4-1-1-1s-1,0.4-1,1v3H8c-0.6,0-1,0.4-1,1s0.4,1,1,1h3v3c0,0.6,0.4,1,1,1s1-0.4,1-1v-3h3c0.6,0,1-0.4,1-1S16.6,11,16,11z"></path></svg></div></div><div class="items" data-v-6a6002da><!--[--><!--[--><a class="VPLink link link" href="/misc/vrc_avatar_setup" style="padding-left:0px;" tabindex="-1" data-v-9ac6cb77 data-v-cd683231><!--[--><span class="link-text" data-v-9ac6cb77>VR Chat Avatar Setup</span><!--]--><!----></a><!----><!--]--><!--[--><a class="VPLink link link" href="/misc/faq" style="padding-left:0px;" tabindex="-1" data-v-9ac6cb77 data-v-cd683231><!--[--><span class="link-text" data-v-9ac6cb77>FAQ</span><!--]--><!----></a><!----><!--]--><!--]--></div></section></div><div class="group" data-v-21951dfa><section class="VPSidebarGroup collapsible" data-v-21951dfa data-v-6a6002da><div class="title" role="button" data-v-6a6002da><h2 class="title-text" data-v-6a6002da>Development</h2><div class="action" data-v-6a6002da><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewbox="0 0 24 24" class="icon minus" data-v-6a6002da><path d="M19,2H5C3.3,2,2,3.3,2,5v14c0,1.7,1.3,3,3,3h14c1.7,0,3-1.3,3-3V5C22,3.3,20.7,2,19,2zM20,19c0,0.6-0.4,1-1,1H5c-0.6,0-1-0.4-1-1V5c0-0.6,0.4-1,1-1h14c0.6,0,1,0.4,1,1V19z"></path><path d="M16,11H8c-0.6,0-1,0.4-1,1s0.4,1,1,1h8c0.6,0,1-0.4,1-1S16.6,11,16,11z"></path></svg><svg version="1.1" xmlns="http://www.w3.org/2000/svg" viewbox="0 0 24 24" class="icon plus" data-v-6a6002da><path d="M19,2H5C3.3,2,2,3.3,2,5v14c0,1.7,1.3,3,3,3h14c1.7,0,3-1.3,3-3V5C22,3.3,20.7,2,19,2z M20,19c0,0.6-0.4,1-1,1H5c-0.6,0-1-0.4-1-1V5c0-0.6,0.4-1,1-1h14c0.6,0,1,0.4,1,1V19z"></path><path d="M16,11h-3V8c0-0.6-0.4-1-1-1s-1,0.4-1,1v3H8c-0.6,0-1,0.4-1,1s0.4,1,1,1h3v3c0,0.6,0.4,1,1,1s1-0.4,1-1v-3h3c0.6,0,1-0.4,1-1S16.6,11,16,11z"></path></svg></div></div><div class="items" data-v-6a6002da><!--[--><!--[--><a class="VPLink link link" href="/development/docs/dev_docs" style="padding-left:0px;" tabindex="-1" data-v-9ac6cb77 data-v-cd683231><!--[--><span class="link-text" data-v-9ac6cb77>Docs</span><!--]--><!----></a><!----><!--]--><!--[--><a class="VPLink link link" href="/development/docs/pages" style="padding-left:0px;" tabindex="-1" data-v-9ac6cb77 data-v-cd683231><!--[--><span class="link-text" data-v-9ac6cb77>Edit Docs</span><!--]--><!----></a><!----><!--]--><!--[--><a class="VPLink link link" href="/development/docs/standards" style="padding-left:0px;" tabindex="-1" data-v-9ac6cb77 data-v-cd683231><!--[--><span class="link-text" data-v-9ac6cb77>Standards</span><!--]--><!----></a><!----><!--]--><!--]--></div></section></div><div class="group" data-v-21951dfa><section class="VPSidebarGroup collapsible" data-v-21951dfa data-v-6a6002da><div class="title" role="button" data-v-6a6002da><h2 class="title-text" data-v-6a6002da>Archive</h2><div class="action" data-v-6a6002da><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewbox="0 0 24 24" class="icon minus" data-v-6a6002da><path d="M19,2H5C3.3,2,2,3.3,2,5v14c0,1.7,1.3,3,3,3h14c1.7,0,3-1.3,3-3V5C22,3.3,20.7,2,19,2zM20,19c0,0.6-0.4,1-1,1H5c-0.6,0-1-0.4-1-1V5c0-0.6,0.4-1,1-1h14c0.6,0,1,0.4,1,1V19z"></path><path d="M16,11H8c-0.6,0-1,0.4-1,1s0.4,1,1,1h8c0.6,0,1-0.4,1-1S16.6,11,16,11z"></path></svg><svg version="1.1" xmlns="http://www.w3.org/2000/svg" viewbox="0 0 24 24" class="icon plus" data-v-6a6002da><path d="M19,2H5C3.3,2,2,3.3,2,5v14c0,1.7,1.3,3,3,3h14c1.7,0,3-1.3,3-3V5C22,3.3,20.7,2,19,2z M20,19c0,0.6-0.4,1-1,1H5c-0.6,0-1-0.4-1-1V5c0-0.6,0.4-1,1-1h14c0.6,0,1,0.4,1,1V19z"></path><path d="M16,11h-3V8c0-0.6-0.4-1-1-1s-1,0.4-1,1v3H8c-0.6,0-1,0.4-1,1s0.4,1,1,1h3v3c0,0.6,0.4,1,1,1s1-0.4,1-1v-3h3c0.6,0,1-0.4,1-1S16.6,11,16,11z"></path></svg></div></div><div class="items" data-v-6a6002da><!--[--><!--[--><a class="VPLink link link" href="/archive/fox_ir_v2_build_instructions" style="padding-left:0px;" tabindex="-1" data-v-9ac6cb77 data-v-cd683231><!--[--><span class="link-text" data-v-9ac6cb77>Prepare to solder IR LED PCB V2's</span><!--]--><!----></a><!----><!--]--><!--]--></div></section></div><!--]--><!--[--><!--]--></nav></aside><div class="VPContent has-sidebar" id="VPContent" data-v-5aaf92e7 data-v-ac201f45><div class="VPDoc has-sidebar has-aside" data-v-ac201f45 data-v-317b0207><div class="container" data-v-317b0207><div class="aside" data-v-317b0207><div class="aside-curtain" data-v-317b0207></div><div class="aside-container" data-v-317b0207><div class="aside-content" data-v-317b0207><div class="VPDocAside" data-v-317b0207 data-v-39cd9708><!--[--><!--]--><!--[--><!--]--><div class="VPDocAsideOutline" data-v-39cd9708 data-v-586090b2><div class="content" data-v-586090b2><div class="outline-marker" data-v-586090b2></div><div class="outline-title" data-v-586090b2>On this page</div><nav aria-labelledby="doc-outline-aria-label" data-v-586090b2><span class="visually-hidden" id="doc-outline-aria-label" data-v-586090b2> Table of Contents for current page </span><ul class="root" data-v-586090b2 data-v-0eba5460><!--[--><!--]--></ul></nav></div></div><!--[--><!--]--><div class="spacer" data-v-39cd9708></div><!--[--><!--]--><!----><!--[--><!--]--><!--[--><!--]--></div></div></div></div><div class="content" data-v-317b0207><div class="content-container" data-v-317b0207><!--[--><!--]--><main class="main" data-v-317b0207><div style="position:relative;" class="vp-doc _firmware_guide_configure_firmware" data-v-317b0207><div><h1 class="text-[var(--font-accent)]" id="configuring-the-firmware" tabindex="-1">Configuring the firmware <a class="header-anchor" href="#configuring-the-firmware" aria-hidden="true">#</a></h1><h2 id="once-you-have-opened-the-project-you-should-see-something-on-the-left-side-like-this" tabindex="-1">Once you have opened the project, you should see something on the left side like this <a class="header-anchor" href="#once-you-have-opened-the-project-you-should-see-something-on-the-left-side-like-this" aria-hidden="true">#</a></h2><div align="center" class="mb-4"><figure><a class="no_icon" target="_blank" rel="noopener" href="https://i.imgur.com/1Ficr7f.png"><img class="docimage max-w-full h-auto rounded-lg" src="https://i.imgur.com/1Ficr7f.png" alt="&#39;img&#39;" style="max-width: 500px;"></a><!----></figure></div><h2 id="open-the-ini-user-config-ini-file" tabindex="-1">Open the <code>ini/user_config.ini</code> file <a class="header-anchor" href="#open-the-ini-user-config-ini-file" aria-hidden="true">#</a></h2><div align="center" class="mb-4"><figure><a class="no_icon" target="_blank" rel="noopener" href="https://i.imgur.com/Sq4iQJe.png"><img class="docimage max-w-full h-auto rounded-lg" src="https://i.imgur.com/Sq4iQJe.png" alt="&#39;img&#39;" style="max-width: 500px;"></a><!----></figure></div><p>Replace the placeholder text with your correct SSID (WiFi access point name), and password respectfully.</p><div class="info custom-block"><p class="custom-block-title">INFO</p><p>Special characters such as <code>!</code> and <code>@</code> are not supported. If you have a special character in your password or ssid, you will need to change it.</p><p>Spaces are not supported either. If you have a space in either, you will need to change it.</p><p>The firmware supports AP mode, but it is not recommended. If you are using AP mode, you will need to set the <code>enableadhoc</code> to <code>1</code>.</p><p>Then, you will need to set the <code>ap_ssid</code> to the name of your AP, and <code>ap_password</code> to the password of your AP.</p><p>You can choose to leave the <code>ap_ssid</code> and <code>ap_password</code> as defaults, but you will need to set the <code>enableadhoc</code> to <code>1</code>.</p><blockquote><p><strong>Note</strong>: If you are enabling AP mode for both ESPs, you will need to set the <code>ap_ssid</code> and <code>ap_password</code> to different values for both ESPs. It is best to set AP mode only for one ESP, and leave the other ESP in STA mode. Connect the other ESP to the AP of the ESP in AP mode. Then connect your computer to the AP of the ESP in AP mode. This will allow you to connect to the ESP in AP mode, and the ESP in STA mode.</p></blockquote></div><div 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"><div><span class="drop-shadow-lg"><span class="VPBadge warning" data-v-e233384c><!--[-->CAUTION<!--]--></span></span></div><div class="text-[orange] mt-2 pl-1 text-2xl font-bold tracking-tight text-slate-900"></div><p class="text-slate-500 dark:text-slate-400 mt-2 pl-1 text-sm"><!--[--><p> 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. </p><!--]--></p></div><p>Double check that you have correctly entered your WiFi credentials and that said wifi network has a 2.4GHz band.</p><h3 id="additonal-configuration" tabindex="-1">Additonal configuration <a class="header-anchor" href="#additonal-configuration" aria-hidden="true">#</a></h3><h4 id="mdns" tabindex="-1"><code>mDNS</code> <a class="header-anchor" href="#mdns" aria-hidden="true">#</a></h4><p>If you do not wish to manually keep track of the ESPs IP addresses and ports, you can enable the mDNS feature. This will allow you to connect to the ESPs using the following format: <code>http://&lt;some_name&gt;.local</code>. This will only work if you are connected to the same network as the ESPs, and if you have enabled mDNS on your computer. If you are using Windows, you can enable mDNS by following <a href="./mdns">this guide</a>.</p><h4 id="ota" tabindex="-1"><code>OTA</code> <a class="header-anchor" href="#ota" aria-hidden="true">#</a></h4><p>The firmware supports OTA updates. This means that you can update the firmware without having to connect to the ESPs. To enable OTA updates, you will need to set the <code>enableota</code> to <code>1</code>. Then, you will need to set the <code>otapassword</code> to the password you wish to use to update the firmware. You will need to use this password to update the firmware. If you do not wish to use a password, you can set the <code>otapassword</code> to nothing. This will allow you to update the firmware without a password. However, this is not recommended, as anyone on your network will be able to update the firmware.</p><p>You will also need to set the <code>otaserverip</code> to the IP address of the ESP you wish to update. This is the IP address of the ESP you wish to update. If you are using mDNS, you can use the mDNS name of the ESP you wish to update. For example, if you are updating the ESP with the dns set to <code>http://esp32.local</code>, you will need to set the <code>otaserverip</code> to <code>http://esp32.local</code>.</p><h4 id="rest-api" tabindex="-1"><code>REST API</code> <a class="header-anchor" href="#rest-api" aria-hidden="true">#</a></h4><p>The firmware also supports a fully featured REST API. This means that you can control the ESPs using a REST API. This feature is enabled by defauly, and can not be turned off.</p><p>This feature is used more for advanced users, and is not required for basic operation.</p><p>The REST API was developed to be used by our new app (still in development). However, it can be used by any REST API client, you can not send POST requests to the ESPs using a browser though, so some REST API functionality can only be used by tools like <a href="https://www.thunderclient.com/" target="_blank" rel="noreferrer">Thunder Client</a> or <a href="https://www.postman.com/" target="_blank" rel="noreferrer">Postman</a>.</p><p>The full REST API is documented <a href="/firmware_guide/rest_api.html">here</a>.</p><h4 id="environments" tabindex="-1"><code>Environments</code> <a class="header-anchor" href="#environments" aria-hidden="true">#</a></h4><p>The firmware supports multiple environments. This means that we have full support for multiple types of esps. Each ESP is configured to be in a different environment. If you are using a different ESP, you will need to change the environment to the correct one. The environments are as follows:</p><ul><li><code>esp32AIThinker</code> - This is the default environment. This is for the ESP32-AI-THINKER and generic alibaba/aliexpress/amazon esp cam boards.</li><li><code>esp32Cam</code> - This is for the special ESP32-CAM, it is unlikely that you will need to use this environment.</li><li><code>esp32M5Stack</code> - This is for ESP32M5Stack.</li><li><code>esp32WRover</code> - This is for the ESP32WRover.</li><li><code>esp-eye</code> - This is for the ESP-EYE (not the S3 variant).</li></ul><p>Each environment has a <code>debug</code> and <code>release</code> configuration. The <code>debug</code> configuration is for debugging, and the <code>release</code> configuration is for production. The <code>debug</code> configuration is not recommended for production, as it will use more memory, and will be slower. However we recommend using the <code>debug</code> configuration for initial configuration and testing, as it will be easier to debug, for you and for us. Once you are confident that the firmware is working correctly, you can switch to the <code>release</code> configuration.</p><p>The <code>debug</code> configuration will print out debug messages to the serial port. The <code>release</code> configuration will not print out debug messages to the serial port, and will only print errors. This will save memory, and will make the firmware faster.</p><p>The default configutration is <code>debug</code> for the <code>espAIThinker</code> environment. If you are using a different ESP, please follow the GIF(s) below to change the environment.</p><div class="tip custom-block"><p class="custom-block-title">Coming Soon</p><p>GIF(s) for changing the environment will be added soon.</p><p>Want to help? <a href="https://github.com/RedHawk989/EyeTrackVR-Docs" target="_blank" rel="noreferrer">Submit a PR</a> to add the GIF(s).</p></div><div class="tip custom-block"><p class="custom-block-title">Coming Soon</p><p>We are working on a new app that will allow you to configure the firmware, flash the boards, and connect to Social VR Games using a GUI. This will make it easier to configure the firmware, and will allow you to configure the firmware without having to use/download <code>VSCode</code> or our <code>platformio</code> project. We are hard at work on this, but do not currently have a release date. Please check back frequently.</p></div><h2 id="now-move-on-to-uploading-the-firmware" tabindex="-1"><a href="/firmware_guide/upload_and_update_firmware.html">Now, move on to uploading the firmware</a> <a class="header-anchor" href="#now-move-on-to-uploading-the-firmware" aria-hidden="true">#</a></h2></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-09T22:54:53.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/setup_vscode" data-v-cbbeb5ab><span class="desc" data-v-cbbeb5ab>Previous page</span><span class="title" data-v-cbbeb5ab>Setup Visual Studio Code environment</span></a></div><div class="has-prev pager" data-v-cbbeb5ab><a class="pager-link next" href="/firmware_guide/upload_and_update_firmware" data-v-cbbeb5ab><span class="desc" data-v-cbbeb5ab>Next page</span><span class="title" data-v-cbbeb5ab>Uploading and Updating the Firmware</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("{\"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>