Banana Pi F3 with 16 GB RAM constantly freezing [SOLVED]

EDIT: New bianbu images were uploaded on the 9th of August (release 20240802) which solved the freezing issues.

I received my BPi F3 with 16 GB RAM yesterday. Unfortunately, the device constantly freezes without any error message or anything. The board just becomes unresponsive and sometimes the display (HDMI connected) garbles and turns red. I have tested with and without NVMe ssd connected (2 different ones). The CPU has a heat sink and fan connected. CPU Temperatures never seem to above 50°C. My power meter connected between mains and the power supply never reads more than 5-7 Watt. Generally, the board boots up properly but as soon as one does anything with it it freezes after a short time. Opening the browser, going to youtube and click the search box always freezes. Updating bianbu OS freezes during download of the packages. Writing a few hundred MB to the NVMe ssd: freeze.

Things I tested:

  • Power supplies: DC in with 12V 5A, 12V 2A, 12V 2.5A , USBC 12V 3A, 5V 4A, and various other ones.
  • sdcard: 4 different ones. some are known to work on the visionFIVE 2 and some are brand new.
  • emmc: I burnt the bianbu image to the emmc and booted from there
  • I tested Armbian ubuntu, Armbian Debian and bianbu desktop image. The all had the same freezes

No matter what I changed, the freezes occurred after some time. I connected a serial debugger and looked at the dmesg logs during a freeze. No log entry. It really looks like this board is not working correctly. A colleague of mine who received their 16GB board a day earlier has the exact same freezes. Does anyone else have similar experience with the newer BPi F3 boards?

(I also posted the same thing over in the riscv subreddit in the hopes someone has a solution)

H,

Did you try reset it with the instructions they use on their page?

  • Method 1: The device is not powered on. Press and hold the DOWNLOAAO (FEL) button, plug in the type-c, and then release the button. (If you are worried about insufficient USB power, you can first plug in the power, then release the button, and then plug in the USB cable)
  • Method 2: The device is powered on. Press and hold the DOWNLOAD (FEL) button, then press the Reset button, and then plug in the USB cable.

Franco

Thanks for the suggestion. If I understand you correctly this is a part of the instruction for flashing the bianbu image to emmc. I did that for running bianbu off the emmc. It did not change anything. Freezes still happened afterwards.

I have the same issues with my BPI-F3 16GB RAM. I can reliably reproduce the error by installing fio apt install fio and running fio --randrepeat=1 --ioengine=libaio --direct=1 --gtod_reduce=1 \ --name=test --filename=test --bs=4k --iodepth=64 \ --size=1G --readwrite=randrw --rwmixread=75. It freezes immediately.

Hi. Having worked on my BPI-F3 for a while now I know I have run in to a few small issues.

  • I find Balena-Ethcher works better
  • When burning the image to micro SD do you let it verify the image
  • are you running this command and wiping anything that might be on the board Command: echo 0 | sudo tee /sys/block/mmcblk2boot0/force_ro
  • and writing these to the proper locations. sudo dd if=bootinfo_emmc.bin of=/dev/mmcblk2boot0 sudo dd if=FSBL.bin of=/dev/mmcblk2boot0 seek=512 bs=1 sync Sorry one more question. Are you connected to the debug console to see what’s going on?

Sorry I have to ask, trying to understand your steps.

Franco

This seems to be an issue only on the 16GB RAM variant, not the other ones. I did everything right from the perspective of installing the OS and so on. @Franco_Gaetan do you have the 16GB variant to compare results?

Thanks for your questions. There is very often something one can overlook.

  1. I used balena etcher for burning the OS on the microsd card.
  2. I let it verify every time.
  3. I guess the emmc was empty when I got it and I only burnt bianbu to the emmc once after testing various images from the Banana Pi F3 website on 4 different sd cards. Flashing the emmc was the last thing I did regarding flashing and I did not use sd cards afterwards anymore.
  4. I used the titan flasher tool from their website to burn to emmc. I could boot into bianbu OS, so I would guess it did everything correctly.
  5. I used a serial debugger and monitored dmesg -w during a freeze. There was no output at all. No kernel panic, no power issue mention, no peripherals dying shortly before. Just silence.

My current hypothesis is that the 16 GB RAM board I have gotten as well as the one @lazyprogrammerio has are faulty. The question just is if this is a general issue of the 16 GB RAM boards or if we both have been unlucky. Timing wise we might be among the first ones who have gotten these new boards so we will see if more of these issues are mentioned here in the coming days.

Yes, it could be anything. Do you notice that it freezes in the same time frame? Here’s another question. do you have a fan on the CPU?

The reason I’m asking is because I didn’t realize how hot mine was getting until I put a large cooling fan on it.

Franco

In my impression the freezes are related to certain actions. Not time passed since restart.

It have a heatsink and a small 5V fan attached to the board. The temperatures tested by hand were never really high and the readouts I did were never above 50°C.

The freezes also did not happen at times of extreme CPU stress or anything, so it would not get very hot at all shortly before a freeze.

Same here, I have a huge heatsink and an active cooler to dissipate heat. I have done alot of CPU stress tests for more than 30 minutes with all 8 threads 100%, no issues seen, CPU temp at around 50-60C tops. My concern is something wrong with the SOC, maybe the actual issue could be a RAM firmware issue / kernel issue or a bus issue. I cannot exclude an instruction being called that halts the CPU. Unfortunately, without any dmesg/journalctl/serial console log, the issue is still elusive.

I just did a memtest run sudo memtester 10 1 the first number indicates how much RAM to allocate in MB. If I increase that number to somwhere around 700-800 I get a freeze. Could it be that we got a faulty RAM batch?

could reproduce the issue more reliably using @haurog suggestion.

sudo mkdir -p /tmp/tmpfs && sudo mount -o size=12G -t tmpfs none /tmp/tmpfs && sudo dd of=/tmp/tmpfs/test if=/dev/random bs=1M count=8000 status=progress → it freezes at 2x the 650/750 MB mark ~1.4GB.

I wanted to mention a couple things. I just bought a Sipeed Lichee pi 4A with 16gigs of ram. I did notice there’s a different file for the EMMC, one that takes in to consideration 16 Gigs of RAM.

I found that odd so I thought I would mention it. One thing you can do is stop the boot from the console and run ‘printenv’ and see what it says.

The other option is you use my method, burn Ubuntu 24.04 Server edition to M.2 and Boot from SD card. All you need to do is replace the initrd with mine. I’m going to upload that tonight to my githib.

Franco

I tried yesterday with GitHub - rcman/BPI-F3: Working with my banana-pi F3 board and figuring it out instructions and reached the same issue Ubuntu load stuck at ldo5:disabling status · Issue #1 · rcman/BPI-F3 · GitHub.

The actual init is in my files directory with-in bpi-f3, I burned the server image to the m.2 and mine boots just fine. I will double check, the image you need to download which is linked there is the one you’re supposed to use.

So another question. Have you completely deleted boot flashes and emmc and only boot from SD card?

Franco

I have only SD card booting enabled, as I never flashed the EMMC (because I could not with dd, as it freezed when trying). I think your how to has some missing bits and typos, and maybe some chmods required, but I think I did a good job filling in the gaps. It might be the case as you said, that this version of 16GB RAM needs some other workflow.

I was thinking of doing a live stream on Youtube both my RISC machines. I need to do that soon.

At least let people they’re not alone in their quest. Franco

1 Like

checked, it loads, doesn’t freeze, 16 GB of memory available

@mara can you try running sudo mkdir -p /tmp/tmpfs && sudo mount -o size=12G -t tmpfs none /tmp/tmpfs && sudo dd of=/tmp/tmpfs/test if=/dev/random bs=1M count=8000 status=progress?

yes, it freezes when running.