One of my PicoH boards loaded with PicoMite (any version) shows the message “Error: Invalid address - resetting” when I try to run a program immediately after powering on, after soft reset it works normally. Also there is a buzzing sound when the heartbeat LED is off.
I was suspecting that the board is faulty for other reasons and now it has been permanently taken out of circulation. I was able to test with two other boards and these did not show the same error.
This is not the PicoH board that was delivered with the PicoCalc.
I’m running on the same issue w/ rp2350 and the uf2 bootloader. It failed on one of the multiple swap of the firmware and now I cannot get anything else than an infinite loop of resets.
I’ve had this happen several times too. It’s really interesting that removing the batteries somehow fixed it though! I’m not sure what to make of that as I assumed it was something getting corrupt in flash, or PicoMite failing to find something it expected to find in flash.
Just pinging @pelrun in case this provides some sort of weird clue for tracking something down.
Would you believe me if I said it actually does? The one thing pulling the batteries does that a simple reset or power-off doesn’t is that it resets the stm32.
There’ll be either a bug or a persistent state in the keyboard bios that is triggering a bug in the picomite firmware.
One of my PicoH boards loaded with PicoMite (any version) shows the message “Error: Invalid address - resetting” when I try to run a program immediately after powering on, after soft reset it works normally. Also there is a buzzing sound when the heartbeat LED is off.
PicoH = RP2040
soft reset = external.c:SoftReset()
no reboot loop.
During regression testing I found another Pico (RP2040) board with the same problem. Also another Pico (RP2040) unable to detect the SD card, I suspect that one GPIO pins is not working as expected. The current status:
2 x “Error: invalid address - resetting” after reboot
1 x “SD Card not detected”
At a later date I may try to do some testing to find what is causing these problems.
Ignore the content of that error message, it’s not accurate. PicoMite prints it for any hard fault regardless of cause or location, and on the rp2040, every hardware exception is a hard fault.
I now have three Pico1 boards with this problem. I have been digging into the code for several hours, I seem to have found where the problem occurs but I can not explain why on these three boards. What I did find is a hint that there might be a solution in V6.01.00.
The bad: I am throwing in the towel. The last weeks I have been trying to find the root cause but I have been unable to get anywhere. Tried to debug but the problems disappears after a debugger caused reset. Changed the code to trace the logic but that didn’t help either because the problem changed behavior or brought up some other disfunction.
The problem disappears after the error message is displayed due too a watchdog induced reboot. Something happens during this reboot but I do not know what, I have been unable to find a difference between a power on reboot and a watchdog reboot. It could be some marginal hardware, wear on the flash/ram or ESD damaged silicon.
The good: I have a workaround that I will be testing the next weeks and, if needed, I will try to get this workaround into the next release. Currently I have revived two Pico1 boards using the workaround, two other boards did not survive the hard treatment.