Closed MedadRufus closed 2 years ago
On the other tracker with suspected faulty crystal, the code runs around half speed.
The code running was commit ada63af147ea638ade7f7e273604b91ddbc73322
Issue still present when low power disabled.
Symptoms:
Possible sources of error:
its not boot0 is pulled up. Could be LSE crystal failure. But its a mystery to me why the first program runs, but not the second.
Switching to running only on LSI does not fix it.
Could somehow, boot0 be pulled up by a soldering error??
Consider sending Steve a few firmware images, and let him load and check if they run. Try to divide and conquer.
All the info I have from Steve:
run_only_once.hex
works. Blinks and eventually goes solid. This code only wipes the EEPROM and goes into an infinite loop doing nothing. Code size is smaller(67748
bytes)
[build] text data bss dec hex filename
[build] 63700 720 3328 67748 108a4 LoRaMac-periodic-uplink-lpp
[build] text data bss dec hex filename
[build] 168496 1328 8860 178684 2b9fc LoRaMac-periodic-uplink-lpp
[build] text data bss dec hex filename
[build] 168504 1328 8860 178692 2ba04 LoRaMac-periodic-uplink-lpp
Could somehow, the MCU on Steve's tracker have a smaller flash space due to different variant of processor? I have the STM32L082CZ variant in testing. But I think the processor on Steve's tracker was from another batch of ABZ modules, from Richard.
The ABZ module variants are:
Note that Steve's tracker could handle the old picotracker lora code(compiled with keil). I don't know that code size. Maybe check what size that was.
Compiling the old picotracker code(commit 90b6139331d7e5baef461a63c06570be112ad7e4), I see that it compiles to 99708 bytes:
.\mlm32l07x01\Picotracker_lora.axf: error: L6050U: The code size of this image (99708 bytes) exceeds the maximum allowed for this version of the linker.
So maybe somehow, the MCU on Steve's tracker is a 128kb flash version, not 192 kb flash. 66kb and 99kb sized images load and run OK, but not 178 kb images.
Something to think about: could somehow, a soldering error be causing the tracker to use only the first flash bank? I know setting the boot0 and boot1 pins will make a difference.
uploading
flight_code_17_Dec_2021.hex
occasionally does not allow it to startup. Steps to reproduce:Symptoms: you will be able to connect and program it again. Serial output looks like this:![image](https://user-images.githubusercontent.com/26815217/146818972-e5c68c40-a9e3-46a8-afe5-78dea9e58d37.png)