← Back to main page

Firmware Flash – Setup

Flash firmware to the scent dispenser using a browser-based tool — no installation required.

Step 1 — Connect the UPDI Programmer

Firmware flashing uses a UPDI Friend programmer connected to the 3-pin header on the PCB — not the USB-C port (that is only for log download).

UPDI Friend programmer with wires
UPDI Friend programmer
Scent dispenser PCB
Scent dispenser PCB
WireConnects toNotes
RED3V3Power
WHITERESET / UPDIData line
BLACKGNDGround
Before connecting USB: double-check wiring order and confirm the switch on the UPDI Friend is in the 3V position (not 5V).
Windows Users — USB Drivers

Windows requires drivers to communicate with the USB devices. These are installed once and do not need to be reinstalled. Administrator access is required to install. If you lack admin rights, ask your IT department.

DriverUsed forDownload
CH340 UPDI programmer (firmware flash) wch-ic.com ↗
FTDI VCP USB-C log port (log download) ftdichip.com ↗
If you are unsure whether drivers are installed, connect the device and check Device Manager for any yellow warning icons. Try unplugging and re-plugging the USB cable after installing a driver.
Step 2 — Flash Firmware with WebUPDI

WebUPDI is a free browser-based flashing tool — no installation or Python required. It works on both Mac and Windows in Chrome or Edge.

  1. Open manuelkasper.github.io/webupdi in Chrome or Edge.
  2. With the UPDI programmer connected (Step 1 above), click Connect. Select the CH340 / USB Serial port from the browser dialog when prompted.
  3. Under Device Configuration, select attiny3217 from the dropdown. Device memory details will appear confirming the selection.
  4. Under Programming Operations, click Choose File and select your .hex firmware file. Confirm Target Memory is set to Flash Memory.
  5. Click Program File. The operation log on the right will show progress and confirm when complete.
WebUPDI interface showing attiny3217 selected and ScentDispenser firmware loaded
When flashing multiple PCBs:
Always click Disconnect before unplugging the programmer. Simply unplugging without disconnecting can cause connection issues with the next board and may require unplugging and re-plugging the USB cable.

There is also a known bug: after flashing one board and connecting the next, you may see a "No file loaded" error. To fix it, click Choose File, select any file, then immediately choose the correct .hex file again. This reloads it properly.