Flash First
ESP1
NRF Worker · JR.IO Engine · RF Scanner
NRF #1HSPI · SCK=14 MISO=12 MOSI=13 CS=15 CE=16
NRF #2VSPI · SCK=18 MISO=19 MOSI=23 CS=21 CE=22
SwitchSlide switch GPIO33 — JR.IO mode
UARTTX=17 → ESP2 · RX=32 ← ESP2
✗ Use Chrome or Edge browser
✗ Connect ESP32 via USB first

After flashing, open Serial Monitor at 115200 baud. Confirm HP Started !!! and SP Started !!! appear.

Flash Second
ESP2
UI Controller · OLED Display · Buttons
OLEDSDA=GPIO4 · SCL=GPIO5 (I2C 4-pin)
Button UPGPIO25 → GND
Button DNGPIO27 → GND
Button MIDGPIO26 → GND
UARTTX=32 → ESP1 · RX=17 ← ESP1
✗ Use Chrome or Edge browser
✗ Connect ESP32 via USB first

After flashing the OLED shows the NUKRAX animation then the main menu. JR.IO is at the top. UP/DOWN to navigate, MIDDLE to select.

How to add your compiled firmware
01
Open Arduino IDE with esp1_worker.ino. Set board to ESP32 Dev Module. Set partition to Huge APP (3MB No OTA).
02
Click Sketch → Export Compiled Binary. Find the file ending in .merged.bin in your sketch folder. Rename it to esp1_worker.bin.
03
Repeat for esp2_controller.ino. No special partition needed. Export → rename to esp2_controller.bin.
04
Upload both .bin files to the flash/firmware/ folder in your GitHub repo. The flash buttons above will work immediately.