Banana Pi R3 booting from SD statistically stuck on boot

Hey, looking for some help on a statistic problem that I have on my Banana PI R3:

have a Banana Pi R3 with self-compiled firmware flashed to the SD card.

The firmware I am using is a self-compiled openwrt in which I add all of the programs I want (e.g. Docker, Wireguard, Adblock)

I noticed that if the device loses power there is about 50% chance that it will be stuck while rebooting.

If you look at the LEDs when booting, when “a good boot” happens there is a green LED that is blinking (I think that it means that it is reading from the SD, not sure).

In case there is a problem, after a few seconds that the red on, the green is turned on for a fraction of a second, and almost immediately turns off. Then there is a blue LED that is turned on, and the device is stuck.

I tried a few times to understand what happens when I am connected with an FTDI serial adapter, but when I do the problem never occurs again.

I asked about it in openwrt forum in December and someone answered that the only way to fix it is to move from SD card to EMMC:

Still didn’t do that, but will be glad to hear if there is any other workaround because 8GB of emmc isn’t enough for my usage, and as far as I understand I can’t use the SD card when emmc is enabled.

In case you want me to provide logs, let me know. I can get logs from openwrt or from the bootloader by using serial. just let me know which commands to run.

Important to mention: I’ve never caught the problem while connected with serial adapter, but it seems like something statistic / a race condition that could be affected by that.

Any ideas?

It is a known issue that r3 is sometimes stuck in uboot not detecting mmc (sdcard) on reboot…but we have not found rootcause as we cannot safely reproduce it.

Thanks frank. In case I will burn my image to the integrated eMMC the problem should disappear?

afair we had it only with sdcard, so emmc may help

1 Like

and another question, I saw that you maintain a bootloader repo for banana pi and you have some new features such as NVME support. It this bootloader shipped with Openwrt? Do I need to install it separately? Any chance that my problem will be resolved by upgrading to a newer bootloader?

my uboot is not compatible with the openwrt bootflow as they load kernel differently and imho put fip in ubifs…but you can add patches to your openwrt source (e.g. the pcie patch from john) and adding options to the defconfigs…but loading kernel from nvme needs a bit more work…i also send a first version of pcie driver to upstream to have it there soon

1 Like

Thanks for the explanation. appreciated!