Hello everyone,
I’m working on a project that involves capturing soil moisture from a kiwi plantation using 8 LoRa boards, which then send the data to another board for aggregation and transmission via MQTT to my local server.
I have a total of 9 Heltec LoRa V3 boards, and recently, I noticed that the senders are experiencing boot problems.
To ensure that the issue wasn’t with my sketches, I uploaded the following sketches to the boards for testing:
LoRaSender: Link
LoRaReceiver: Link
After uploading to two test boards, the LoRaSender version is encountering the following errors in the serial monitor:
ESP-ROM:esp32s3-20210327
Build:Mar 27 2021
rst:0x1 (POWERON),boot:0x8 (SPI_FAST_FLASH_BOOT)
SPIWP:0xee
mode:DIO, clock div:1
load:0x3fce3808,len:0x43c
load:0x403c9700,len:0xbec
load:0x403cc700,len:0x2a3c
SHA-256 comparison failed:
Calculated: dcde8d8a4817d9bf5d5d69a7247667264e4e10ac7493514868b61f5aa6146539
Expected: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
Attempting to boot anyway...
entry 0x403c98d8
sending packet "Hello world number 0.01" , length 23
ESP-ROM:esp32s3-20210327
Build:Mar 27 2021
rst:0x7 (TG0WDT_SYS_RST),boot:0x8 (SPI_FAST_FLASH_BOOT)
Saved PC:0x4037d272
SPIWP:0xee
mode:DIO, clock div:1
load:0x3fce3808,len:0x43c
load:0x403c9700,len:0xbec
load:0x403cc700,len:0x2a3c
SHA-256 comparison failed:
Calculated: dcde8d8a4817d9bf5d5d69a7247667264e4e10ac7493514868b61f5aa6146539
Expected: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
Attempting to boot anyway...
entry 0x403c98d8
sending packet "Hello world number 0.01" , length 23
Guru Meditation Error: Core 0 panic'ed (Interrupt wdt timeout on CPU0).
Guru Meditation Error: Core 0 panic'ed (Unhandled debug exception).
Debug exception reason: Stack canary watchpoint triggered (IDLE)
Core 0 register dump:
PC : 0x40056f60 PS : 0x00060036 A0 : 0x8200f87e A1 : 0x3fcf4990
A2 : 0x3fcf49a0 A3 : 0x3c034694 A4 : 0x00000060 A5 : 0x3fcf49c0
A6 : 0x3c0345e3 A7 : 0x3c0345ec A8 : 0x00000000 A9 : 0x00000000
A10 : 0x00000001 A11 : 0x00000001 A12 : 0x00040025 A13 : 0x3fcf4b50
A14 : 0x00060134 A15 : 0x00040024 SAR : 0x0000000a EXCCAUSE: 0x00000001
EXCVADDR: 0x00000000 LBEG : 0x40056f5c LEND : 0x40056f72 LCOUNT : 0x00000003
Backtrace:0x40056f5d:0x3fcf4990 |<-CORRUPTED
Core 1 register dump:
PC : 0x4037d0ee PS : 0x00060034 A0 : 0x8037beba A1 : 0x3fc92d50
A2 : 0x00000001 A3 : 0x00000001 A4 : 0x8037b180 A5 : 0x3fce2e20
A6 : 0x3fc94dc4 A7 : 0x00000000 A8 : 0x40001c38 A9 : 0x00000001
A10 : 0x00060021 A11 : 0x3fc94bd8 A12 : 0x00000001 A13 : 0x3fce2e10
A14 : 0x00060023 A15 : 0x00000000 SAR : 0x0000000e EXCCAUSE: 0x00000005
EXCVADDR: 0x00000000 LBEG : 0x400570e8 LEND : 0x400570f3 LCOUNT : 0xffffffff
Backtrace:0x4037d0eb:0x3fc92d500x4037beb7:0x3fc92d70 0x4037aca3:0x3fc92d90 0x40378aa0:0x3fc92db0 0x403788c5:0x3fc92dd0 0x42004ef9:0x3fce2ed0 0x420056ce:0x3fce2ef0
ELF file SHA256: 0000000000000000
Rebooting...
The only change I made in both sketches was the LoRa settings to the following:
// ----------------------------------------------------------------------------
// LoRa Configs
// ----------------------------------------------------------------------------
#define RF_FREQUENCY 433000000 // Hz
#define TX_OUTPUT_POWER 17 // dBm
#define LORA_BANDWIDTH 0 // [0: 125 kHz, 1: 250 kHz, 2: 500 kHz, 3: Reserved]
#define LORA_SPREADING_FACTOR 9 // [SF7..SF12]
#define LORA_CODINGRATE 4 // [1: 4/5, 2: 4/6, 3: 4/7, 4: 4/8]
#define LORA_PREAMBLE_LENGTH 8 // Same for Tx and Rx
#define LORA_SYMBOL_TIMEOUT 0 // Symbols
#define LORA_FIX_LENGTH_PAYLOAD_ON false
#define LORA_IQ_INVERSION_ON false
#define RX_TIMEOUT_VALUE 1000
#define BUFFER_SIZE 30 // Define the payload size here
I’m using Windows 10, Arduino 1.8.19, and for the Board Manager, I’m using version 0.0.9 as mentioned here: Link
Any help would be greatly appreciated. Thank you.