Flashing pre-built esp32 binary

Thanks for the awesome project.

I’m trying to flash an esp32 with the pre-built binaries provided with the 0.9.2 release. I’ve tried two different esp32 dev boards and both enter a boot loop once flashed:

configsip: 0, SPIWP:0xee
mode:DIO, clock div:2
ets Jun 8 2016 00:22:57

The bin file I’ve downloaded is ESP32_OpenMQTTGateway_V092_BLE.zip.

The esptool.py command I’m using is:

esptool.py --port /dev/cu.SLAB_USBtoUART write_flash -z 0x1000 ESP32_OpenMQTTGateway_V092_BLE.bin

Am I doing something wrong?

I’m able to reproduce the same behaviour. This seems due to the fact that we are not providing the min spiffs partition table when flashing. The issue is that for the moment, I don’t know how to provide it except by using platformio and the normal build process.

Note this special partition table is needed due to the big size of ble library.

If we analyse what the arduino IDE is doing when uploading a binary:
C:\Users\Florian\AppData\Local\Arduino15\packages\esp32\tools\esptool_py\2.6.1/esptool.exe --chip esp32 --port COM4 --baud 921600 --before default_reset --after hard_reset write_flash -z --flash_mode dio --flash_freq 80m --flash_size detect 0xe000 C:\Users\Florian\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.2/tools/partitions/boot_app0.bin 0x1000 C:\Users\Florian\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.2/tools/sdk/bin/bootloader_dio_80m.bin 0x10000 C:\Users\Florian\AppData\Local\Temp\arduino_build_47342/main.ino.bin 0x8000 C:\Users\Florian\AppData\Local\Temp\arduino_build_47342/main.ino.partitions.bin

We can see that it flash several binaries:

  • boot_app0.bin 0xe000
  • bootloader_dio_80m.bin 0x1000
  • main.ino.bin 0x10000
  • main.ino.partitions.bin 0x8000

If we use the flash download tool from espressif:

And set the parameters used by arduino IDE, we are able to upload to ESP32 a binary file containing OpenMQTTGateway.

Once done yo should see the followig scree:

Note that I have uploaded the required binaries in the zip file.


Instrutions added to the wik: