Step 1 of 5
Connect the screen
Pass the display's flat cable through the slot, open the connector on the back, insert the flat cable and lock it. Then stick the screen into its frame.
The RomHack 2026 badge is a pocket-sized ESP32-S3 computer inspired by the iconic Sony Walkman WM-22. Packed with a color screen, built-in audio, tactile buttons, and a rechargeable battery, it's built for hands-on hacking.
Follow these five simple steps to assemble your badge, connect it, and flash your first firmware, all directly from this page.
Step 1 of 5
Pass the display's flat cable through the slot, open the connector on the back, insert the flat cable and lock it. Then stick the screen into its frame.
Step 2 of 5
The speaker cable sits right where the battery cable needs to go. Lift the speaker wires slightly and route the battery cable under them. The double-sided tape for the battery is supplied separately.
Step 3 of 5
Connect the badge to your computer with a USB-C data cable. Use the port on the left edge of the back of the badge.
Step 4 of 5
Make sure the badge is turned on by using the ON/OFF switch. Hold the BOOT button, tap RESET, then release BOOT. The badge stops running its current program and waits for new firmware. This also breaks a bootloop, where the badge keeps restarting.
Step 5 of 5
If you are using Linux, please make sure that your user has the right permissions over the serial port.
ls /dev/ttyACM* /dev/ttyUSB*dialout.ls -l /dev/ttyACM0sudo usermod -aG dialout $USERudevadm info --attribute-walk --name=/dev/ttyACM0Create /etc/udev/rules.d/99-romhack-badge.rules with this content, replacing VID and PID:
SUBSYSTEM=="tty", ATTRS{idVendor}=="VID", ATTRS{idProduct}=="PID", MODE="0660", GROUP="dialout"sudo udevadm control --reload-rulessudo udevadm triggerWith the badge connected via USB and in bootloader mode, press the button below and choose it. The latest firmware from this repository is written to address 0x0.
Download firmware.bin, install esptool (pip install esptool) and, with the badge in bootloader mode, run:
esptool.py --chip esp32s3 --port PORT --baud 921600 write_flash 0x0 firmware.bin
Replace PORT with the badge's serial port: COM3 on Windows, /dev/ttyACM0 on Linux, /dev/cu.usbmodem* on macOS. Newer esptool versions also accept esptool and write-flash.