-
Notifications
You must be signed in to change notification settings - Fork 57
Description
SparkFun RTK Surveyor. With RTK_Surveyor_Firmware_v2_0.bin loaded a firmware upgrade of RTK_Surveyor_Firmware_v2_2.bin from the SD card fails because there is no room on the partition:
[04:41:56:678] Menu: Update Firmware Menu␍␊
[04:41:56:678] 1) Load RTK_Surveyor_Firmware_v2_2.bin␊
[04:41:56:684] ␍x) Exit␍␊
[04:41:58:799] 1␍␊
[04:41:58:799] WiFi Stopped␍␊
[04:41:59:013] Bluetooth turned off␍␊
[04:41:59:013] Loading RTK_Surveyor_Firmware_v2_2.bin␊
[04:41:59:017] ␍Update begin failed. Not enough partition space available.␍␊
Note the startup sequence for v2.0:
[04:48:42:472] rst:0xc (SW_CPU_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)␍␊
[04:48:42:478] configsip: 0, SPIWP:0xee␍␊
[04:48:42:481] clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00␍␊
[04:48:42:486] mode:DIO, clock div:1␍␊
[04:48:42:489] load:0x3fff0018,len:4␍␊
[04:48:42:492] load:0x3fff001c,len:1216␍␊
[04:48:42:492] ho 0 tail 12 room 4␍␊
[04:48:42:494] load:0x40078000,len:9720␍␊
[04:48:42:497] ho 0 tail 12 room 4␍␊
[04:48:42:500] load:0x40080400,len:6352␍␊
[04:48:42:500] entry 0x400806b8␍␊
[04:48:43:187] ZED-F9P firmware: HPG 1.32␊
[04:48:43:187] ␍LittleFS Started␍␊
[04:48:43:189] SparkFun RTK Surveyor v2.0-May 26 2022␍␊
[04:48:43:198] Reset reason: ESP_RST_SW␍␊
[04:48:43:198] Display not detected␍␊
[04:48:43:215] microSD online␍␊
[04:48:43:222] Warning: Settings size is 4048 but current firmware expects 4432. Attempting to use settings from file.␍␊
[04:48:43:640] Profile 'Profile1' loaded␊
[04:48:43:640] ␍MAX17048 configuration complete␍␊
[04:48:43:642] Batt (98%): Voltage: 4.18V Charging: 1.46%/hr Green␊
[04:48:43:649] ␍GNSS configuration complete␍␊
[04:48:45:106] No GNSS date/time available for system RTC.␍␊
[04:48:48:059] Bluetooth broadcasting as: Surveyor Rover-0D1A␍␊
[04:48:48:247] State: Rover - No Fix␍␊
[04:48:48:247] Batt (98%): Voltage: 4.18V Charging: 1.46%/hr Green␊
[04:48:48:253] ␍No GNSS date/time available for system RTC.␍␊
[04:48:49:254] No GNSS date/time available for system RTC.␍␊
So, going for the command line method, the automatic download mode does not seem to work and esptool times out waiting for the device. I then manually put the ESP32 into download mode by shorting IO0 (pin 25 per datasheet) to GND and cycling the on/off switch, and verified with esptool (git 65f86142 from today 20th-June-2022) and its chip_id command; That seems to be working:
user@host:~/path/esptool.git$ python3 esptool.py --chip esp32 --port /dev/ttyUSB0 --baud 921600 --before default_reset --after hard_reset chip_id
esptool.py v4.2-dev
Serial port /dev/ttyUSB0
Connecting....
Chip is ESP32-D0WDQ6 (revision 1)
Features: WiFi, BT, Dual Core, 240MHz, VRef calibration in efuse, Coding Scheme None
Crystal is 40MHz
MAC: ac:67:b2:1b:0d:18
Uploading stub...
Running stub...
Stub running...
Changing baud rate to 921600
Changed.
Warning: ESP32 has no Chip ID. Reading MAC instead.
MAC: ac:67:b2:1b:0d:18
Hard resetting via RTS pin...
I then ran:
user@host:~/path/esptool.git$ python3 esptool.py --chip esp32 --port /dev/ttyUSB0 --baud 921600 --before default_reset --after hard_reset write_flash -z --flash_mode dio --flash_freq 80m --flash_size detect 0x1000 ../SparkFun_RTK_Firmware.git/Binaries/bin/RTK_Surveyor.ino.bootloader.bin 0x8000 ../SparkFun_RTK_Firmware.git/Binaries/bin/RTK_Surveyor.ino.partitions.bin 0xe000 ../SparkFun_RTK_Firmware.git/Binaries/bin/boot_app0.bin 0x10000 ../SparkFun_RTK_Firmware.git/Binaries/RTK_Surveyor_Firmware_v2_2.bin
esptool.py v4.2-dev
Serial port /dev/ttyUSB0
Connecting....
Chip is ESP32-D0WDQ6 (revision 1)
Features: WiFi, BT, Dual Core, 240MHz, VRef calibration in efuse, Coding Scheme None
Crystal is 40MHz
MAC: ac:67:b2:1b:0d:18
Uploading stub...
Running stub...
Stub running...
Changing baud rate to 921600
Changed.
Configuring flash size...
Auto-detected Flash size: 4MB
Flash will be erased from 0x00001000 to 0x00005fff...
Flash will be erased from 0x00008000 to 0x00008fff...
Flash will be erased from 0x0000e000 to 0x0000ffff...
Flash will be erased from 0x00010000 to 0x001f1fff...
Compressed 17984 bytes to 12318...
Wrote 17984 bytes (12318 compressed) at 0x00001000 in 0.4 seconds (effective 360.4 kbit/s)...
Hash of data verified.
Compressed 3072 bytes to 129...
Wrote 3072 bytes (129 compressed) at 0x00008000 in 0.0 seconds (effective 552.3 kbit/s)...
Hash of data verified.
Compressed 8192 bytes to 47...
Wrote 8192 bytes (47 compressed) at 0x0000e000 in 0.1 seconds (effective 736.3 kbit/s)...
Hash of data verified.
Compressed 1971904 bytes to 1244381...
Wrote 1971904 bytes (1244381 compressed) at 0x00010000 in 21.3 seconds (effective 741.1 kbit/s)...
Hash of data verified.
Leaving...
Hard resetting via RTS pin...
Unfortunately the RTK Surveyor is now not working correctly the ESP32 never makes it to the firmware:
[06:57:14:381] rst:0x3 (SW_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)␍␊
[06:57:14:386] configsip: 0, SPIWP:0xee␍␊
[06:57:14:389] clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00␍␊
[06:57:14:394] mode:DIO, clock div:1␍␊
[06:57:14:397] load:0x3fff0030,len:1240␍␊
[06:57:14:400] load:0x40078000,len:13012␍␊
[06:57:14:400] load:0x40080400,len:3648␍␊
[06:57:14:403] entry 0x400805f8␍␊
[06:57:14:409] ets Jun 8 2016 00:22:57␍␊
[06:57:14:409] ␍␊
[06:57:14:409] rst:0x3 (SW_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)␍␊
[06:57:14:414] configsip: 0, SPIWP:0xee␍␊
[06:57:14:417] clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00␍␊
[06:57:14:423] mode:DIO, clock div:1␍␊
[06:57:14:425] load:0x3fff0030,len:1240␍␊
[06:57:14:428] load:0x40078000,len:13012␍␊
[06:57:14:428] load:0x40080400,len:3648␍␊
[06:57:14:431] entry 0x400805f8␍␊
[06:57:14:437] ets Jun 8 2016 00:22:57␍␊
[06:57:14:437] ␍␊
and so on.
What went wrong? How to fix this?