Flashing
There are three ways to put an image on a board.
From a browser
Open flashmon in a Chromium-based browser (desktop Chrome, Edge, Brave or Opera), plug your board in over USB, and click through. It auto-detects which board you have, flashes the matching image (or a generic one), and drops into a serial monitor — no toolchain, no build to pick, and no install.
After it boots
The device starts a WiFi access point whose name starts with reticulous_.
Connect to it and open https://reticulous.local for the web interface. A
board with a screen also shows a phone-like UI on the LCD.
To put the device on your own WiFi instead, type net add <ssid> <password>
in the serial monitor (quote the password if it has spaces). You can, and
should, set a password for the web interface from your browser at
https://reticulous.local or by typing passwd in the serial monitor. Setting
a password also lets you log in to the device command line with
ssh admin@reticulous.local.
flashmon keeps a serial monitor open in the tab it flashed from; in a
workspace, spangap monitor <port> does the same in a terminal. Once the
device is on a network you can also reach its command line from the web UI or
over ssh.
From a workspace
If you have already installed spangap to
build for yourself, that same workspace
flashes:
spangap build reticulous/reticulous --with spangap/hw-lilygo-tdeck
spangap flash
By hand, with esptool
Download an image zip from the
catalogue and unpack it. Inside is a
reticulous.esptool argfile naming every binary and the offset it belongs at,
so the whole flash is one esptool invocation:
unzip reticulous_hw-lilygo-tdeck_<stamp>.zip -d image
cd image
esptool.py --port /dev/ttyACM0 write_flash @reticulous.esptool
Use this on a machine without a Chromium browser, or from a CI job.
Building it yourself is the more interesting path.