OTA troubleshoting

The first step to ensure your device is talking to OTAdrive is to check your product's Default device group. Your device should be on the list on the first successful connection with the OTAdrive server. If your device isn't there, you should check the followings:

  • Is your device have access to Wi-Fi and the internet?
  • Did you place your own API key correctly?

If your device is listed in the device group, you should change the device state to verified. only verified devices can access the firmware or other services.

Enable serial log

To enable serial log monitor, you can do following steps in each IDE.

  • Enable Serial log monitor in Arduino IDE Go to tools/Core Debug Level menu and choose Verbose Level. Then recompile and program the ESP module. Now you can see the output logs in any serial monitor tools.

Enable ESP32 Log Level

  • Enable Serial log monitor in PlatformIO IDE Go to the platform.ini file and add the following code to the file
; for ESP32
build_flags =
  -D CORE_DEBUG_LEVEL=ARDUHAL_LOG_LEVEL_VERBOSE

; for ESP8266
build_flags =
  -D ARDUHAL_LOG_LEVEL=4

Output log in your serial tool should be something loke this:

ESP32 Serial Monitor

ESP-IDF

Check the partition

If you see the Passive OTA partition not found message during download the new firmware, Go to SDK configuration editor and change the partition like this. ESP IDF OTA Partition

Passive OTA partition not found

Make sure you have enough flash size, you should select at least 4MB flash size for normal OTA. ESP IDF Flash size