
I built a GUI tool to flash ESP32 firmware for factory bulk flashing
Tired of explaining esptool commands to my factory workers every time we needed to flash devices, so I built a desktop app that handles everything automatically.
What it does:
- Auto-detects Python and esptool on startup — installs esptool via pip if missing
- Auto-detects ESP32 devices by USB vendor ID (CP2102, CH340, FTDI, native USB)
- One-click flash with progress bar and live esptool output
- Factory mode — plug in a device, it flashes automatically, unplug, plug next one, repeat indefinitely
- Works on Mac and Windows
- Dark theme
Built with: Java 17 + JavaFX + jSerialComm
I'm building IoT energy monitoring devices (ESP32-C6 based) and needed something my factory floor team could use without any technical knowledge. Figured others might find it useful too.
Open source, MIT license: https://github.com/AjinkyaGokhale/esp-flasher-java
Feedback welcome — especially if you test it and find any bugs!