Art-Net / sACN (E1.31) → DMX512 gateway for ESP32. Flash it straight from this page — no install, no command line.
Pick your board and click flash. The firmware is always the latest release.
Classic ESP32 DevKit, 30/38-pin, CH340 / CP2102. WiFi build. Needs a board with a solid 3.3 V supply (see the power note below); the ESP32-S3 has more RAM headroom.
Read the suffix on the module's own label. R8 is 8 MB octal PSRAM and
has its own image below. R2 is 2 MB quad, and there is no image for it yet:
quad and octal are a build-time choice on the ESP32-S3, so an R2 module runs the plain image
and leaves its PSRAM unused. Nothing breaks, there is just nothing gained.
Changing between them needs USB. PSRAM is brought up by the bootloader, and an over-the-air update replaces only the application — so a device moved from one variant to the other over OTA keeps the PSRAM setup it booted with, silently and with no error at all. Flash once over USB and OTA works normally again afterwards.
Not sure which you have? The plain ESP32-S3 image runs on every S3. Afterwards check
/dmx.json: psram is how many bytes were actually found.
ESP32-S3 DevKitC-1. WiFi build, and the right choice for every S3 except the ones with 8 MB octal PSRAM. A module with 2 MB quad PSRAM (the R2 suffix) runs this image fine, it just will not use the PSRAM. Use the USB-UART port, not the native USB port.
Only for modules with 8 MB octal PSRAM — the R8 suffix (WROOM-1-N8R8, N16R8). Octal and quad are fixed when the firmware is built, so this image and the one above are not interchangeable. The RDM tables, the WiFi buffers and the pixel framebuffers move to PSRAM and the internal heap stays wide open (measured: 8 MB found, 121 KB internal heap free against 57 KB without). Use the USB-UART port.
Wired LAN8720 Ethernet build. No on-board USB — needs an external USB-to-serial adapter (see note below).
Built the open-source 4-layer board? It uses the ESP32-S3 firmware — flash with the ESP32-S3 button.
View the PCB design/config page (upload a firmware.bin
or the one-click LuxDMX.org update), which only replaces the app and preserves your config.Brownout detector was triggered instead of hanging silently, if you
see that on serial, give it a solid 3.3 V supply or add a bulk capacitor
(470 µF+) across 3V3/GND near the module. The ESP32-S3 avoids this and has far more
RAM for RDM.
TXD0 / RXD0 / GND,
with IO0 pulled to GND while you tap EN to enter download mode.
If you would rather not, use the
scripted esptool method instead.
DMX-Gateway (no password).
Connect to it, pick your network in the captive portal, and save.