> For the complete documentation index, see [llms.txt](https://headtracker.gitbook.io/head-tracker-v2.2/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://headtracker.gitbook.io/head-tracker-v2.2/getting-started/software-installation/flashing-firmware.md).

# Flashing Firmware

The first step to getting this working is to flash the firmware onto the Nano 33 BLE.\
From the GUI choose Firmware, Upload firmware

<figure><img src="/files/L6OeEVa4kgFfiw5Wd6Fb" alt=""><figcaption></figcaption></figure>

Pick the most recent one available from the Online Firmware source that matches the board you have. If you own the **original BLE Sense, choose the Arduino Nano 33 BLE**. The sense Rev 2 is only for the newest board from arduino.

<figure><img src="/files/N9Ip0dvryu7Do2A8C7An" alt=""><figcaption></figcaption></figure>

Click Program. Then plug the Nano into your computer with a USB cable.

![Programming](/files/-Md60q2QOFIQ9BNMbFaj)

Once you see Programming Successful, go ahead and click close. That's it.

{% hint style="info" %}
If you are unable to program and stuck on the step "**Waiting for Com Port**" Try **double tapping the reset button** on the board while on this step. Reset is the white button on the Nano33 series of boards. This will force bootloader mode on the board. The indicator led should **increase and decrease in intensity when in bootloader** mode.\
**Note**: Waiting for programming port will take longer than normal before it tries the first port found.\
\
If this still does not help, try another USB cable and/or a different USB port.\
\
If this still does not work there is probably a driver issue. Double tap the reset button, be sure the LED indicator shows it's in bootloader mode. When in this mode you should have a COM port listed on your PC. If not you will have to try using utilities such as Zadig to change the driver used.
{% endhint %}
