Page 1 of 1

ESP32-Pico-V3

Posted: Tue Oct 10, 2023 6:47 pm
by argusr
I'm on my first design using this ESP32, but I'm having trouble to make it work. On the hardware side, I used the reference existing in the ESP32-Pico-V3 Datasheet, just connecting the IOs that I needed. In any case, the circuit is the following:
Image

I'm using a Raspberry Pi to burn the firmware, esptool.py script, so I'm probably having issues here.
When I use the following:

Code: Select all

esptool.py -p /dev/serial0 -b 460800 --before default_reset --after hard_reset --chip esp32  write_flash --flash_mode dio --flash_size detect --flash_freq 40m 0x1000 $1.bootloader.bin 0x8000 $1.partition-table.bin 0x10000 $1.bin
where $1 is the name of the sketch that I'm trying to burn, in this case BasicOTA.

This is the looping output:

Code: Select all

rst:0x10 (RTCWDT_RTC_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
configsip: 271414342, SPIWP:0xe
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_dr:0x00,wp_drv:0x00
mode:DIO, clock div:1
load:x3f400020,len:81204
ets Jul 29 2019 12:21:46
If I try to burn without indicating bootloader or partition:

Code: Select all

esptool.py -p /dev/serial0 -b 460800 --before default_reset --after hard_reset --chip esp32  write_flash --force -z 0x1000 $1
This is the looping output:

Code: Select all

rst:0x10 (RTCWDT_RTC_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
invalid header: 0x6970675f
invalid header: 0x6970675f
invalid header: 0x6970675f
invalid header: 0x6970675f
invalid header: 0x6970675f
invalid header: 0x6970675f
invalid header: 0x6970675f
invalid header: 0x6970675f
ets Jul 29 2019 12:21:46
Any suggestions?

Re: ESP32-Pico-V3

Posted: Wed Oct 11, 2023 3:41 am
by ESP_Sprite
Could be that the locations you flash the binaries to is wrong... I don't know how to get the correct info out of the Arduino environment you seem to use, though.

Re: ESP32-Pico-V3

Posted: Sat Oct 14, 2023 11:36 am
by argusr
Thank you for your reply.
When Arduino compiles it gives me a partition.cvs as well, here is the output in this case:
# Name Type SubType Offset Size
nvs data nvs 0x9000 0x5000
otadata data ota 0xe000 0x2000
app0 app ota_0 0x10000 0x140000
app1 app ota_1 0x150000 0x140000
spiffs data spiffs 0x290000 0x160000
coredump data coredump 0x3F0000 0x10000

Does this help?

Re: ESP32-Pico-V3

Posted: Thu Oct 19, 2023 7:46 pm
by argusr
Well, looks like I was missing 0xe000 boot_app0.bin in the command to burn the firmware, which seems to have been fixed.

Code: Select all

esptool.py --chip esp32 --port /dev/serial0 -b 460800  write_flash -z --flash_mode dio --flash_freq 80m --flash_size detect 0x1000 $1.ino.bootloader.bin 0x8000 $1.ino.partitions.bin 0xe000 boot_app0.bin 0x10000 $1.ino.bin
Now I need to learn how to port my codes from esp8266 to esp32, but that is another case. My hardware seems to be correct, including the wifi that has connected with the OTA example.

I will do some tests if I will need to always burn all these bin files together, but the reason for this ticket is solved.

Thanks.

Re: ESP32-Pico-V3

Posted: Sun Oct 22, 2023 12:15 pm
by argusr
Just to confirm, after the first time that bootloader, partitions, and boot_app0 bins are burned they don't seem to require reflashing. Since I'm making small changes to the code, I can just update the main bin file:

Code: Select all

esptool.py --chip esp32 --port /dev/serial0 -b 460800  write_flash -z --flash_mode dio --flash_freq keep --flash_size detect 0x10000 $1
Thanks