Skip to content

Commit

Permalink
docs: Merge pull request #20 from luckmer/flashing-tool-docs-update
Browse files Browse the repository at this point in the history
Flashing tool readme
  • Loading branch information
RedHawk989 authored Sep 22, 2024
2 parents 7101df2 + 9a4837b commit c09e911
Show file tree
Hide file tree
Showing 2 changed files with 136 additions and 35 deletions.
127 changes: 99 additions & 28 deletions vitepress/docs/src/pages/firmware_guide/flashing_tool.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,52 +5,123 @@ import { image_settings } from '../../static/image_settings'

# Firmware Flashing Tool {.text-[var(--font-accent)]}

## `What is this?`
## Before we proceed

The Firmware Flashing Tool allows you to flash the firmware to your ESPs without requiring VScode. It is a GUI tool that is built using [Tauri](https://tauri.app/) and [SolidJS](https://www.solidjs.com/).
::: info Note

- Ensure you have a **data transfer cable** ready, as it is necessary for the flashing process.
- Ensure that your camera is set up correctly [How to prepare a Seeed Studio XIAO Sense ESP32](../how_to_build/preparing_xiao).

:::

##

### Step 1: Download and Install the Firmware Flashing Tool

- Download the Firmware Flashing Tool Installer from the latest [GitHub release](https://github.com/EyeTrackVR/FirmwareFlashingTool/releases).
- Run the installer and follow the on-screen instructions to complete the installation of the Firmware Flashing Tool app.

##

### Step 2: Run the Firmware Flashing Tool app

After the installation is complete, you should see an icon on your desktop. To open the application, double-click the icon.

You then should be greeted with a GUI that looks like this:

<ImageCard :options="image_settings.flashing_tool_1"/>

##

### Step 3: Select board.

We now have a couple of options letting us decide how we want to build the firmware.

- `Debug`<br/>
This is the default environment and does not need to be explicitly chosen. It includes extensive logging, making it ideal for initial setup and troubleshooting, as it provides comprehensive visibility into the system’s operation.

- `_release`<br/>
Has a lot less debugging, may also be missing some things available only in debug for debug purposes, this should be flashed when everything is working.

Press left click on the `Select Board` dropdown, then choose your desired board from the list.
Once you've selected your board, click **Confirm** to move on to the next step.

Features include:
<ImageCard :options="image_settings.flashing_tool_select_board"/>

- download pre-built firmware binaries
- configure firmware settings
- flash firmware to ESPs
- open a serial monitor to view the ESPs output for debugging
##

### Step 4: Flash firmware.

Once you're ready, hold down the **B** or **IO0** button on your board and connect it to your PC. (The button may be small, but it's there).
Next, click **Install OpenIris** and select the port corresponding to your board to complete the installation.

<ImageCard :options="image_settings.flashing_tool_flash_firmware"/>

##

### Step 5: That's it!.

Installation complete! Everything is set up and ready to go.<br/>
Click **Show Logs** to view the results.

<ImageCard :options="image_settings.flashing_tool_flash_firmware_success"/>

##

### Step 6: Logs.

If you choose the wired option, the correct logs should appear as follows.
<br/>
If the logs don't look right, ensure that your camera is properly connected to the board.

<ImageCard :options="image_settings.flashing_tool_logs"/>

## How to configure wifi.

::: info Note
This tool is currently in beta, and we are working on adding support for OTA and configuring network settings. If you have any issues, please let us know by opening an issue on the repository.

- Please note that 5GHz networks are not supported by the hardware, so you will need to use a 2.4GHz network.

:::

## `How To Use`
##

### `Download the tool`
### Step 1: Select board

You can download the tool from the [releases page](https://github.com/EyeTrackVR/FirmwareFlashingTool/releases).
Ensure that the selected board has a **wireless mode** checkmark below it.

### `Flash the firmware`
<ImageCard :options="image_settings.flashing_tool_select_board"/>

1. Connect your ESP to your computer
2. Open the tool
3. Select the correct firmware for your board and setup.
4. Download the firmware
5. Connect to the Esp
6. Flash the firmware
##

For the USB version, this is all you need to do! Well done.
### Step 2: Configure wifi network

<ImageCard :options="image_settings.flashing_tool"/>
You'll need to provide information about the network you're planning to connect to.

### `WiFi Setup`
`SSID`<br/>
The SSID is your Wi-Fi name, make sure it doesn't contain any `special characters`.

<ImageCard :options="image_settings.flashing_tool_1"/>
`Password`<br/>
You'll need to provide the password used to connect to the selected Wi-Fi network.

<ImageCard :options="image_settings.configure_wifi_network"/>

##

### Step 3: Send wifi credentials.

Once the installation is complete, unplug your board, then reconnect it to the PC without pressing any buttons and press **Send credentials**.

If you are using the WiFi version, you will need to configure the WiFi settings. After you have flashed the firmware you will need to connect to the ESPs WiFi network. The network name will be `EyeTrackVR`. The password will be `12345678`. Once you have connected to the network, you can open the Firmware Flashing tool and configure the WiFi settings. You will need to enter the SSID and password for your WiFi network. Once you have done this, you can click the `Save` button to save the settings to the ESP. The ESP will then restart and connect to your WiFi network. You can then connect to the ESPs IP address to view the web interface.
<ImageCard :options="image_settings.send_wifi_credentials"/>

To find the ESP's IP address you can either use the serial monitor or look at your routers list of connected devices.
##

To open the serial monitor, you will need to connect to the esp, just as you did for flashing. Once you have connected, you can click the `Monitor` button to open the serial monitor. You should then see the ESPs output in the serial monitor.
### Step 4: Get working stream.

## `Environments`
After sending is complete, disconnect your board, then reconnect it to the PC without pressing any buttons, and click **Show logs**.
<br/>
Scroll down to find the text labeled **`IP: 192.168.XXX.XXX`**.

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.
<ImageCard :options="image_settings.flasher_camera_preview"/>

Please reference the [Firmware Environments Page](../firmware_guide/environments) for more information.
This IP can then be entered into the app or a web browser like: `http://192.168.XXX.XXX`
44 changes: 37 additions & 7 deletions vitepress/docs/src/static/image_settings/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -754,15 +754,45 @@ const image_settings = {
alt: "GIF showing a switch of board environments.",
max_width: "max-width: 600px;",
},
flashing_tool: {
url: "https://docs.eyetrackvr.dev/imgs/flashingtool.png",
alt: "Flashing Tool ui",
max_width: "max-width: 600px;",
},
flashing_tool_1: {
url: "https://docs.eyetrackvr.dev/imgs/flashingtool_1.png",
url: "https://imgur.com/vnjGE0x.png",
alt: "Flashing Tool ui lower half",
max_width: "max-width: 600px;",
max_width: "max-width: 600px; width:100%",
},
flashing_tool_select_board: {
url: "https://imgur.com/oBJc8F9.png",
alt: "preview of manage boards",
max_width: "max-width: 600px; width:100%",
},
flashing_tool_flash_firmware: {
url: "https://imgur.com/3Oq2nQf.png",
alt: "preview of how to install openiris",
max_width: "max-width: 600px; width:100%",
},
flashing_tool_flash_firmware_success: {
url: "https://imgur.com/mjEvTwn.png",
alt: "preview of flashing success",
max_width: "max-width: 600px; width:100%",
},
flashing_tool_logs: {
url: "https://imgur.com/Dqi98qn.png",
alt: "logs",
max_width: "max-width: 600px; width:100%",
},
configure_wifi_network: {
url: "https://imgur.com/5RkjWTJ.png",
alt: "How to send wifi",
max_width: "max-width: 600px; width:100%",
},
send_wifi_credentials: {
url: "https://imgur.com/5pyIBgD.png",
alt: "how to setup credentials",
max_width: "max-width: 600px; width:100%",
},
flasher_camera_preview: {
url: "https://imgur.com/wfdSomX.png",
alt: "camera preview",
max_width: "max-width: 600px; width:100%",
},
vrcft_etvr_module_registry: {
url: "https://i.imgur.com/AKsgEyy.png",
Expand Down

0 comments on commit c09e911

Please sign in to comment.