β back to the one-click installer
The same images as the one-click installer, plus the USB update path. The right chip image is selected automatically (ESP32 / S3 / C3 / C6 / C5).
Fresh install β writes the complete image
Update existing β keeps WiFi + presets + Spotify auth
The standard buttons flash the 16 MB S3 layout. Boards with only 8 MB flash + PSRAM (e.g. Seeed XIAO ESP32S3) need this dedicated image β the standard one does not fit and the flash would fail partway through.
Fresh install (S3 8 MB) β writes the complete image
Update existing (S3 8 MB) β keeps settings
The Nxx in the module name tells the flash size:
N8β¦ = 8 MB, N16β¦ = 16 MB.
XIAO ESP32S3 / Sense = 8 MB; XIAO ESP32S3 Plus = 16 MB
(standard buttons). PSRAM is required either way.
Use the update button only for the variant the device was originally flashed
with β already-flashed devices show their layout in the Web UI status line
("ESP32-S3 8MB" / "16MB").
Manual flashing (esptool): factory @0x0 Β·
firmware @0x10000 Β·
littlefs @0x610000
The standard buttons flash the C5 image laid out for 4 MB boards. It runs on a 16 MB board too, but leaves 12 MB of flash and the entire in-package PSRAM unused. Boards with an ESP32-C5-WROOM-1-N16R8 module (16 MB flash + 8 MB PSRAM) should use this dedicated image β it uses the full flash and enables the PSRAM, which lifts the tight-memory limits of the small C5 (Spotify support, online OTA, far more headroom for many speakers).
Fresh install (C5 16 MB) β writes the complete image
Update existing (C5 16 MB) β keeps settings
Not sure which C5 you have? Use π Identify my board above β it reads the flash
size and the PSRAM eFuse off the chip and marks the right pair.
Use the update button only for the variant the device was originally flashed with β
a device running the 4 MB layout keeps using the standard update button until it is
re-installed once with this image (settings survive that switch; the storage layout of the
settings area is identical).
Manual flashing (esptool β₯ 5): factory @0x0 Β·
firmware @0x10000 Β·
littlefs @0x610000
UART appears as a CH340/CH343 serial
port and also carries the console log. The board's native USB socket works for
the complete run as well β factory flash and the βConnect device to Wi-Fiβ step β
because the image answers the provisioning handshake on both ports.
Two harmless quirks: an βError fetching current state: TIMEOUTβ in the browser console
at ~88 % of the flash (the flash completes normally), and on the native socket the console
log shares the port with the handshake, so rarely the browser reports βImprov Wi-Fi Serial
not detectedβ β retry, use the UART socket, or set up WiFi through the
SixBack-β¦ hotspot the stick opens.
http://sixback.local/ right after provisioning and switch
Auto-Migrate at Boot off before discovery finishes.
sixback.local β open
http://sixback.local/ to manage your speakers.Each target ships three artefacts:
β¦-factory.bin (full image β 0x0),
β¦-firmware.bin (app only, for OTA) and
β¦-littlefs.bin (Web UI, for FS-OTA). Example:
esptool.py --chip esp32s3 -p /dev/ttyACM0 write_flash 0x0 sixback-s3-factory.bin