Teensy 4.0 constant reboot magics

w14a

New member
Hey:)
Stuck with troubleshooting, so appreciate your comments!
Simpliest setup: Teensy 4.0 +ST7735S + encoder with push button,
All is OK and the system runs flawlessly until the encoder or push button is actively engaged, i.e., "while" cycles (such as digitalread(PushBtnPin)==HIGH/LOW) in the loop() or anywhere else, read values, process data, serial/tft print, etc. However, if the system is idle for ~6s, it reboots. Debounce, delays do not help. pins pulled up.
Any ideas?
Have you experienced such a strange behaviour?
Thank you!
 
Hey:)
Stuck with troubleshooting, so appreciate your comments!
Simpliest setup: Teensy 4.0 +ST7735S + encoder with push button,
All is OK and the system runs flawlessly until the encoder or push button is actively engaged, i.e., "while" cycles (such as digitalread(PushBtnPin)==HIGH/LOW) in the loop() or anywhere else, read values, process data, serial/tft print, etc. However, if the system is idle for ~6s, it reboots. Debounce, delays do not help. pins pulled up.
Any ideas?
Have you experienced such a strange behaviour?
Thank you!
Please show your code and possibly a photo of setup. Almost impossible to help without that information.
 
It would be much easier to provide specific help if you would post a complete sketch. This would allow others to load & compile your sketch locally, as well as to evaluate your complete sketch for errors, etc. Without this, it is almost impossible to provide any kind of meaningful advice.

Add a line to your setup() function something like this (which will wait for a maximum of 3 seconds for the serial monitor to be connected, then proceed): while (!Serial && millis() < 3000) {}.

Then, add the following code in the setup() function, right after the while (!Serial && millis() < 3000) {} line, which will print out any crash information:

Code:
if (CrashReport) {
   Serial.print(CrashReport);
}

Note that, if a crash occurs, the crash information will be printed in the SerialMonitor. The report will include an address where the crash was recorded. Paul has also created a CrashReport() <webpage> with useful details. You can also check the entry in the unofficial Teensy wiki <here> for links to descriptions of where to find the addr2line utility for both the old (1.8.x) & new (2.3.x) Arduino IDE, as well as detailed descriptions of how to use it.

Good luck . . .

Mark J Culross
KD5RXT
 
It would be much easier to provide specific help if you would post a complete sketch. This would allow others to load & compile your sketch locally, as well as to evaluate your complete sketch for errors, etc. Without this, it is almost impossible to provide any kind of meaningful advice.

Add a line to your setup() function something like this (which will wait for a maximum of 3 seconds for the serial monitor to be connected, then proceed): while (!Serial && millis() < 3000) {}.

Then, add the following code in the setup() function, right after the while (!Serial && millis() < 3000) {} line, which will print out any crash information:

Code:
if (CrashReport) {
   Serial.print(CrashReport);
}

Note that, if a crash occurs, the crash information will be printed in the SerialMonitor. The report will include an address where the crash was recorded. Paul has also created a CrashReport() <webpage> with useful details. You can also check the entry in the unofficial Teensy wiki <here> for links to descriptions of where to find the addr2line utility for both the old (1.8.x) & new (2.3.x) Arduino IDE, as well as detailed descriptions of how to use it.

Good luck . . .

Mark J Culross
KD5RXT
Thanks a lot!. This is exactly what I missed - crash report. Did not think few lines of a scetch could help as symptoms are quite clear and hoped someone had that before. I'll get back!
 
CrashReport was empty. No more ideas... Then I took a microscope and examined the PCB. I seem to have found a problem. Due to the very narrow spaces between tiny tracks and microscopic Cu dust left after etching in some places, the resistance between tracks was too small. So after cleaning, the hardware started behaving as expected:) Left project running for the next 24h - will see...
 
Back
Top