Board occasionally will not boot or reset

Started by thom_nic, May 26, 2023, 02:47:17 PM

Previous topic - Next topic

thom_nic

We are using the STMP1-SOM and occasionally the board will not boot.  We have LEDs that enable in u-boot and the kernel which never turn on.  Worse still the reset pin doesn't appear to have any effect.  We have had to full power cycle for the unit to come back. 

We are booting from SD card.  After the three u-boot partitions there is a /boot partition with boot.scr, kernel, dtb and initramfs which is kept readonly and the fifth partition is the rootfs.

I've occasionally also seen a device which would not boot on power cycle. Eventually I removed the SD card, inserted it in a SD reader and connected to a linux machine.  I did not mount or fsck anything on the host machine. dmesg showed the partitions enumerated correctly in the dev machine.  Then I put the SD card back into the SOM and it booted on the next power up.

I would understand if the device could not boot because it could not read the boot partition but I don't believe that is the case.

LubOlimex

When this happens here it is usually one of these two:

1. Worn out power jack connector. Since we test empirically each Olimex-made board we've noticed that power plugs that go into the power jacks are not eternal and wear out. Just the other I had a colleague complain that the board he is testing on start in 30% of the cases, the solution was to change his power jack and then he confirmed it works 50 out of 50 times.

2. Power down followed up by power up in quick succession. Doing so leaves some capacitors charged and improper voltage levels. There should be at least 5-10 seconds between power down and power up, else you are bound to have hiccups.
Technical support and documentation manager at Olimex

thom_nic

Thanks Lub.  This is a STMP1 SOM and the product has an internal AC-DC power converter so the issue is not an external power connector.

Is there any way to deal with capacitance so the unit can recover on its own?  This is an industrial product which may occasionally encounter power interruptions.  It is often inconvenient (and service interrupting) for the customer to dispatch a service call to power cycle the unit to restore normal operation.

LubOlimex

The simplest solution is to have a small Li-Po battery all the times. This would exclude sudden power loss and fix many problems related to the main power supply (glitches in supply, occasional drops, noise). Probably battery monitoring can be implemented, so when battery goes low (if main power supply is missing for long time) the board can perform a software shutdown.

Aside from that there are hardware solutions, the simplest would be placing a resistor to help discharge the capacitor faster. The main drawback from adding such resistor is that the current consumption would increase by let's say 20mA/30mA/50mA (depending on the resistor used). Of course you'd probably want to test different resistors and test empirically.

Before committing to one or other solution, it is good idea to replicate the issue at your lab. Aka confirm it is related to power down followed quickly by a power up. Just remove power and apply it almost immediately.
Technical support and documentation manager at Olimex