mirror of
https://github.com/EyeTrackVR/EyeTrackVR-Docs.git
synced 2025-11-04 14:49:44 +08:00
update: finish firmware section
This commit is contained in:
parent
a353ecb751
commit
792e699fcf
@ -1,24 +1,30 @@
|
||||
---
|
||||
layout: page
|
||||
title: Configuring firmware
|
||||
permalink: /configure-firmware/
|
||||
nav_order: 2
|
||||
parent: Firmware Guide
|
||||
---
|
||||
<script setup>
|
||||
import Alerts from '../../vue/alerts/Alerts.vue'
|
||||
import ImageCard from '../../vue/images/ImageComponent.vue'
|
||||
import { image_settings } from '../../static/image_settings'
|
||||
import { alerts } from '../../static/alerts'
|
||||
</script>
|
||||
|
||||
# Configuring the firmware {.text-[#ab5ac7]}
|
||||
|
||||
## Once you have opened the project, you should see something on the left side like this.
|
||||
## Once you have opened the project, you should see something on the left side like this
|
||||
|
||||
{% include custom/images/image_2.html url="https://i.imgur.com/VZeI39I.png" max-width="500" caption="" alt="" %}
|
||||
<ImageCard :options="image_settings.configure_firmware_one"/>
|
||||
|
||||
## Open the `platformio.ini` file
|
||||
|
||||
## Open the `platformio.ini` file.
|
||||
{% include custom/images/image_2.html url="https://i.imgur.com/ySzUMPO.png" max-width="500" caption="" alt="" %}
|
||||
<ImageCard :options="image_settings.configure_firmware_two"/>
|
||||
|
||||
On lines 17 and 18 replace the placeholder text with your correct SSID (WiFi access point name), and password respectfully.
|
||||
|
||||
{% include custom/alerts/Note.html content="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." %}
|
||||
<Alerts :options="alerts.parts_list_one">
|
||||
<template v-slot:content>
|
||||
<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>
|
||||
</template>
|
||||
</Alerts>
|
||||
|
||||
Double check that you have correctly entered your WiFi credentials and that said wifi network has a 2.4GHz band.
|
||||
|
||||
## [Now, move on to uploading the firmware](https://redhawk989.github.io/EyeTrackVR/building-and-flashing-firmware-manually/)
|
||||
## [Now, move on to uploading the firmware](/firmware_guide/upload_firmware.html)
|
||||
|
||||
@ -1,36 +1,11 @@
|
||||
---
|
||||
layout: default
|
||||
title: Firmware Guide
|
||||
nav_order: 9
|
||||
has_children: true
|
||||
permalink: /setting-up-firmware/
|
||||
---
|
||||
|
||||
# What is this?
|
||||
# What is this? {.text-[#ab5ac7]}
|
||||
|
||||
Firmware is the second part of the equation to get your trackers going. It lives on the ESP32 chip, and is responsible for streaming video data from the tracker.
|
||||
|
||||
# What should I download and where?
|
||||
## What should I download and where?
|
||||
|
||||
Current testing has been on our own solution called OpenIris, [found here](https://github.com/lorow/OpenIris). So far we have:
|
||||
Current testing has been on our own solution called OpenIris, [found here](https://github.com/lorow/OpenIris). To check the status of the project, please visit the [Development Road Map](/dev_roadmap)
|
||||
|
||||
### Working right now
|
||||
## How do download this?
|
||||
|
||||
- [x] Basic stream in 60FPS at 248x248px in MJPEG in greyscale
|
||||
- [x] A basic HTTP server with API, which allows for better control of the stream and the camera settings
|
||||
- [x] Health checks - we know when something goes wrong and we can react to it
|
||||
- [x] OTA updates - we can update the firmware on the fly
|
||||
- [x] ROI selection for eye area - this feature hasn't been tested all that much yet.
|
||||
- [x] MDNS - so that the server itself will detect and communicate with the tracker without you doing anything.
|
||||
|
||||
### In development are
|
||||
|
||||
- [ ] Persistent storage for storing your settings on the device itself, this will also allow for saving multiple wifi networks!
|
||||
- [ ] LED status patterns - so that you know what's going on without plugging the tracker in to the PC
|
||||
- [ ] FEC encoding with packet injection for even faster streams!
|
||||
- [ ] Better OTA so that updates can be downloaded from github and pushed by the server to the tracker
|
||||
- [ ] CI/CD with github actions - so we can more seamlessly update the trackers
|
||||
|
||||
# How do download this?
|
||||
|
||||
[Follow the steps described here](https://docs.github.com/en/repositories/creating-and-managing-repositories/cloning-a-repository)
|
||||
[Follow the steps described here](/firmware_guide/setup_vscode)
|
||||
|
||||
@ -1,12 +1,9 @@
|
||||
---
|
||||
layout: page
|
||||
title: Setup Visual Studio Code environment
|
||||
nav_order: 1
|
||||
permalink: /setting-up-firmware-enviroment/
|
||||
parent: Firmware Guide
|
||||
---
|
||||
<script setup>
|
||||
import ImageCard from '../../vue/images/ImageComponent.vue'
|
||||
import { image_settings } from '../../static/image_settings'
|
||||
</script>
|
||||
|
||||
# Setting up the environment
|
||||
# Setting up the environment {.text-[#ab5ac7]}
|
||||
|
||||
This procedure will show how to prepare your system for uploading the firmware to your tracker.
|
||||
|
||||
@ -16,17 +13,19 @@ Download the [latest Visual Studio Code](https://code.visualstudio.com/download)
|
||||
|
||||
### Download
|
||||
|
||||
{% include custom/images/image_2.html url="https://i.imgur.com/jXPXIFz.gif" max-width="500" caption="" alt="" %}
|
||||
<br>
|
||||
<ImageCard :options="image_settings.setup_vscode_image_one"/>
|
||||
|
||||
### Install
|
||||
|
||||
{% include custom/images/image_2.html url="https://i.imgur.com/hAm3Zu0.gif" max-width="500" caption="" alt="" %}
|
||||
<br>
|
||||
<ImageCard :options="image_settings.setup_vscode_image_two"/>
|
||||
|
||||
## 2. Install PlatformIO IDE
|
||||
|
||||
Once Visual Studio Code is installed, open it and install [PlatformIO IDE for VSCode](https://marketplace.visualstudio.com/items?itemName=platformio.platformio-ide), an extension that will allow you to connect to the tracker, build and upload the firmware.
|
||||
|
||||
{% include custom/images/image_2.html url="https://i.imgur.com/ebV0IgT.gif" max-width="500" caption="" alt="" %}
|
||||
<ImageCard :options="image_settings.setup_vscode_image_three"/>
|
||||
|
||||
## 3. Clone the firmware project
|
||||
|
||||
@ -36,21 +35,22 @@ Make sure you close any current projects you have open or open a new window befo
|
||||
1. If you do not have `git` installed please install it from [here](https://git-scm.com/download/win).
|
||||
|
||||
2. Open Git Bash.
|
||||
{% include custom/images/image_2.html url="https://i.imgur.com/DWO5vkE.png" max-width="500" caption="" alt="" %}
|
||||
<ImageCard :options="image_settings.setup_vscode_image_four"/>
|
||||
|
||||
3. Change the directory to the directory that you want the firmware to be cloned. Ex: `cd C:\`
|
||||
{% include custom/images/image_2.html url="https://i.imgur.com/mWAVxtF.png" max-width="500" caption="" alt="" %}
|
||||
1. Change the directory to the directory that you want the firmware to be cloned. Ex: `cd C:\`
|
||||
|
||||
4. Clone the repository by entering the command: `git clone https://github.com/lorow/OpenIris.git`
|
||||
{% include custom/images/image_2.html url="https://i.imgur.com/YbXpX7t.png" max-width="500" caption="" alt="" %}
|
||||
|
||||
<ImageCard :options="image_settings.setup_vscode_image_five"/>
|
||||
|
||||
1. Clone the repository by entering the command: `git clone https://github.com/lorow/OpenIris.git`
|
||||
|
||||
<ImageCard :options="image_settings.setup_vscode_image_six"/>
|
||||
|
||||
For more info about cloning please refer to [this documentation](https://docs.github.com/en/repositories/creating-and-managing-repositories/cloning-a-repository)
|
||||
|
||||
_**Do not download as a zip**_ - please only properly clone the project, take note of the path you run the clone command in, this is where the files will be downloaded. When we open it in PlatformIO later, this path will be needed.
|
||||
|
||||
2. Open the firmware in VSCode by going to PlatformIO, selecting open, then navigating to `OpenIris/ESP` folder and opening it.
|
||||
1. Open the firmware in VSCode by going to PlatformIO, selecting open, then navigating to `OpenIris/ESP` folder and opening it.
|
||||
|
||||
{% include custom/images/image_2.html url="https://i.imgur.com/c61Cpaz.gif" max-width="500" caption="" alt="" %}
|
||||
<ImageCard :options="image_settings.setup_vscode_image_seven"/>
|
||||
|
||||
_This is an adaptation from SlimeVR. Credit goes to the SlimeVR team [adapted from here](https://docs.slimevr.dev/firmware/setup-and-install.html)_
|
||||
_This is an adaptation from SlimeVR. Some Credit goes to the SlimeVR team [adapted from here](https://docs.slimevr.dev/firmware/setup-and-install.html)_
|
||||
|
||||
@ -1,16 +1,15 @@
|
||||
---
|
||||
layout: page
|
||||
title: Building and uploading the firmware manually
|
||||
permalink: /building-and-flashing-firmware-manually/
|
||||
nav_order: 3
|
||||
parent: Firmware Guide
|
||||
---
|
||||
<script setup>
|
||||
import Alerts from '../../vue/alerts/Alerts.vue'
|
||||
import ImageCard from '../../vue/images/ImageComponent.vue'
|
||||
import { image_settings } from '../../static/image_settings'
|
||||
import { alerts } from '../../static/alerts'
|
||||
</script>
|
||||
|
||||
# Building and uploading the firmware manually
|
||||
# Building and uploading the firmware manually {.text-[#ab5ac7]}
|
||||
|
||||
Uploading your firmware must initially be done over cable. Once you have the tracker connected to your WiFi after your first firmware update, you can opt to use OTA in the future.
|
||||
|
||||
## 1. Connect your tracker to your PC via the programmer.
|
||||
## 1. Connect your tracker to your PC via the programmer
|
||||
|
||||
First, connect your ESP32-Cam to your programmer. In the case of the ESP32-Cam-MB board, it's as simple as sticking it into the socket the way it came in the package and then connecting it to your PC with a micro-USB cable. In some cases, there is a button labeled IOO on the programmer. If that button exists make sure to hold it in while you plug the programmer into your pc, once plugged in you can release the button.
|
||||
|
||||
@ -33,7 +32,13 @@ In the case of an FTDI programmer, the steps aren't as easy, so grab [this guide
|
||||
This sends the firmware to the ESP.
|
||||

|
||||
|
||||
{% include custom/alerts/Note.html content="The MB board does the resetting for you, so if you're using the FTDI programmer, follow the guide linked above (the one from randomnerdtutorials)" %}
|
||||
<Alerts :options="alerts.upload_firmware_one">
|
||||
<template v-slot:content>
|
||||
<p>
|
||||
The MB board does the resetting for you. If you're using the FTDI programmer, follow the guide linked above (the one from randomnerdtutorials)
|
||||
</p>
|
||||
</template>
|
||||
</Alerts>
|
||||
|
||||
- If the upload is successful, you should get an output that looks like this:
|
||||
|
||||
@ -71,23 +76,23 @@ Once you have successfully connected your trackers to your WiFi, you can use OTA
|
||||
|
||||
## Finding the IP address of your tracker
|
||||
|
||||
Connect your tracker to your PC and then open a serial monitor in VSC by pressing the "plug" icon.
|
||||
{% include custom/images/image_2.html url="https://i.imgur.com/dSPSpkY.png" max-width="500" caption="" alt="img" %}
|
||||
Connect your tracker to your PC and then open a serial monitor in VSC by pressing the `plug` icon.
|
||||
|
||||
<ImageCard :options="image_settings.upload_firmware_image_one" />
|
||||
|
||||
Now, press the restart button on the esp itself.
|
||||
watch the monitor for output like this:
|
||||
|
||||
{% include custom/images/image_2.html url="https://i.imgur.com/PoHP3NC.png" max-width="600" caption="" alt="img" %}
|
||||
<ImageCard :options="image_settings.upload_firmware_image_two" />
|
||||
|
||||
The text, highlighted in green for demonstration, is the stream address of the camera. Take note of this for input into the software.
|
||||
|
||||
Keep in mind while testing and getting set up, the ESP can only have one client, to use the camera in the app, make sure you close the browser tab you tested it in.
|
||||
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
If you encountered an issue while following these steps check the [FAQ.](https://redhawk989.github.io/EyeTrackVR/faq/)
|
||||
If you encountered an issue while following these steps check the [FAQ.](/misc/faq/)
|
||||
|
||||
If you don't find an answer to your question there ask in **#questions** channel in [the discord](https://discord.gg/kkXYbVykZX), we will be happy to help.
|
||||
|
||||
*Adapted from the SlimeVR docs, Credit goes to the SlimeVR team [here](https://docs.slimevr.dev/firmware/setup-and-install.html)*
|
||||
*Adapted from the SlimeVR docs, Some Credit goes to the SlimeVR team [here](https://docs.slimevr.dev/firmware/setup-and-install.html)*
|
||||
|
||||
@ -55,6 +55,20 @@ const alerts = {
|
||||
text_color: 'text-slate-500 dark:text-slate-400',
|
||||
badge_content: 'TIP',
|
||||
},
|
||||
upload_firmware_one: {
|
||||
type: 'info',
|
||||
title: '',
|
||||
title_color: 'text-[blue]',
|
||||
text_color: 'text-slate-500 dark:text-slate-400',
|
||||
badge_content: 'NOTE',
|
||||
},
|
||||
configure_firmware_one: {
|
||||
type: 'info',
|
||||
title: '',
|
||||
title_color: 'text-[blue]',
|
||||
text_color: 'text-slate-500 dark:text-slate-400',
|
||||
badge_content: 'NOTE',
|
||||
},
|
||||
}
|
||||
|
||||
export { alerts }
|
||||
@ -37,6 +37,61 @@ const image_settings = {
|
||||
alt: "'img of camera cable'",
|
||||
max_width: "max-width: 400px;"
|
||||
},
|
||||
upload_firmware_image_one: {
|
||||
url: "https://i.imgur.com/dSPSpkY.png",
|
||||
alt: "'platformio serial monitor button'",
|
||||
max_width: "max-width: 500px;"
|
||||
},
|
||||
upload_firmware_image_two: {
|
||||
url: "https://i.imgur.com/PoHP3NC.png",
|
||||
alt: "'img of platformio serial monitor'",
|
||||
max_width: "max-width: 600px;"
|
||||
},
|
||||
setup_vscode_image_one: {
|
||||
url: "https://i.imgur.com/jXPXIFz.gif",
|
||||
alt: "'img'",
|
||||
max_width: "max-width: 500px;"
|
||||
},
|
||||
setup_vscode_image_two: {
|
||||
url: "https://i.imgur.com/hAm3Zu0.gif",
|
||||
alt: "'img'",
|
||||
max_width: "max-width: 500px;"
|
||||
},
|
||||
setup_vscode_image_three: {
|
||||
url: "https://i.imgur.com/ebV0IgT.gif",
|
||||
alt: "'img'",
|
||||
max_width: "max-width: 500px;"
|
||||
},
|
||||
setup_vscode_image_four: {
|
||||
url: "https://i.imgur.com/DWO5vkE.png",
|
||||
alt: "'img'",
|
||||
max_width: "max-width: 500px;"
|
||||
},
|
||||
setup_vscode_image_five: {
|
||||
url: "https://i.imgur.com/mWAVxtF.png",
|
||||
alt: "'img'",
|
||||
max_width: "max-width: 500px;"
|
||||
},
|
||||
setup_vscode_image_six: {
|
||||
url: "https://i.imgur.com/YbXpX7t.png",
|
||||
alt: "'img'",
|
||||
max_width: "max-width: 500px;"
|
||||
},
|
||||
setup_vscode_image_seven: {
|
||||
url: "https://i.imgur.com/c61Cpaz.gif",
|
||||
alt: "'img'",
|
||||
max_width: "max-width: 500px;"
|
||||
},
|
||||
configure_firmware_one: {
|
||||
url: "https://i.imgur.com/VZeI39I.png",
|
||||
alt: "'img'",
|
||||
max_width: "max-width: 500px;"
|
||||
},
|
||||
configure_firmware_two: {
|
||||
url: "https://i.imgur.com/ySzUMPO.png",
|
||||
alt: "'img'",
|
||||
max_width: "max-width: 500px;"
|
||||
},
|
||||
};
|
||||
|
||||
export { image_settings }
|
||||
@ -26,6 +26,8 @@ export default {
|
||||
},
|
||||
methods: {
|
||||
toggleAccordion() {
|
||||
// TODO: toggle the accodrian with a smooth transition
|
||||
|
||||
this.isOpen = !this.isOpen;
|
||||
},
|
||||
},
|
||||
|
||||
Loading…
Reference in New Issue
Block a user