Device support
Start with what you see on the screen. Most connection problems can be fixed with the button on the back.
Set up a new Wi-Fi network
- While the device is starting, hold the back button for 3 seconds. You can do this even while it is trying an old network.
- When the setup code appears, scan it with your phone.
- Choose the new Wi-Fi network and enter its password.
The device keeps its identity and cards.
Find your problem
It cannot find Wi-Fi
Open Wi-Fi setup with a 3-second hold during startup. Do this if the network name or password changed.
The screen is dark, but the device is warm
The backlight may be off. Walk up to the device or press the button.
The screen is dark and the device is cold
Check the power cable and outlet. Try another cable and outlet if available.
The setup code appears every time
The Wi-Fi connection may be dropping. Move the device closer to the router or use a stronger network where it sits.
Cards look out of date
Check the Wi-Fi connection. If the content is still old after an hour, report it through the suggestion box. A single button press checks software; it does not force a card refresh.
It starts, goes dark, and starts again
Use the USB recovery guide below.
USB recovery
Use this if the device will not start or repeatedly restarts. You need a Windows computer, a USB data cable, and the CAL recovery image.
Show USB recovery steps
CAL.ino.merged.bin at 0x0.
CAL starts the device and installs the current App in the correct partition.
Do not flash App.ino.merged.bin at 0x0 on a device with CAL. That write can leave the screen dark even when the flash tool reports success.
The two merged images are not interchangeable. They are built for different partitions:
CAL.ino.merged.bincarries the bootloader and the partition table, and places CAL in the factory partition at0x10000.App.ino.merged.binexpects the App's partition,ota_0, at0x1B0000.
Writing the App image over the factory partition overwrites the recovery image, and the device then stops at
Factory app partition is not bootable on the serial output with a dark screen.
Recovering from that needs this procedure again, which is the one thing it can no longer do for itself.
1. Find esptool
The Arduino ESP32 tools include esptool.exe. On Windows, look under:
%LOCALAPPDATA%\Arduino15\packages\esp32\tools\esptool_py\<version>\esptool.exe
If the tools are not installed:
winget install ArduinoSA.CLI
arduino-cli core update-index
arduino-cli core install esp32:esp32
2. Find the COM port
Run this in PowerShell:
[System.IO.Ports.SerialPort]::GetPortNames()
You can also run arduino-cli board list. If several ports appear, unplug the device and check which one disappears. If none appears, check the data cable and USB driver.
3. Erase and flash CAL
Download CAL.ino.merged.bin. Replace COM5 with your port and run these commands from the folder containing the image:
esptool.exe --chip esp32 --port COM5 --baud 921600 erase_flash
esptool.exe --chip esp32 --port COM5 --baud 921600 write_flash 0x0 CAL.ino.merged.bin
When CAL starts, follow its setup code to connect Wi-Fi and register the device. CAL then downloads the current App.
If esptool cannot connect, hold the back button as it begins connecting and release it when Connecting... appears. If a long cable causes errors, retry at --baud 115200.
4. Check the first startup
If the screen stays dark, watch the serial output at 115200 baud. Replace COM5 with your port:
$p = New-Object System.IO.Ports.SerialPort COM5,115200,None,8,one
$p.DtrEnable = $false
$p.RtsEnable = $false
$p.Open()
while ($true) {
if ($p.BytesToRead -gt 0) {
Write-Host -NoNewline $p.ReadExisting()
}
Start-Sleep -Milliseconds 50
}
Keep both DTR and RTS set to $false. On this board, those lines can put the device into flashing mode instead of starting the display.
A monitor opened with either asserted prints DOWNLOAD_BOOT in the first line of serial output and then nothing more,
which looks exactly like firmware that hung on startup. If you see that, close the monitor and reopen it with both set to $false before suspecting the device.
Recovery files
CAL.ino.merged.bin— USB recovery image. Flash at0x0.App.ino.bin— App image for the firmware catalog and over-the-air updates.App.ino.merged.bin— bench testing on a spare board; not for CAL recovery.combined-checksums.txt— SHA-256 checksums for the release files.
Still stuck?
Write to support with what you have tried and what the screen shows. You do not need an account, and you get a copy of what you send.
Contact support