BPI-F3 not booting

Hi, I have just received a new BPI-F3 and I tried to follow the instructions to flash it.

First, I used “dd” on Linux to write the bianbu*.img image to the SD card, then I’ve put the card into the reader and restarted the board. I’m also connected to the serial and all I see is:

  sys: 0x2
  try sd...
  bm:3
  j...
  U-Boot SPL 2022.10spacemit (May 25 2024 - 04:01:33 +0000)

The red and green LEDs are on and there is no signal on HDMI.

Then I tried to flash the eMMC via Titantools using the bianbu-23.10-nas-k1-v1.0rc3-release-20240525131412.zip image. I’ve put the board in flashing mode by pressing the FDL button at startup. The tool seems to work initial, but then it times out with error:

  [info] ---》开始刷机
  [info] 执行 fastboot getvar version-brom
  [info] 1.0
  [info] 执行 fastboot stage factory/FSBL.bin
  [info] 002cae0
  [info] 执行 fastboot continue
  [info] 执行 fastboot stage u-boot.itb
  [info] 刷机失败! 
  [error] 【错误码】 20007
  [error] 【错误原因】Fastboot执行失败
  [error] 【详细原因】Fastboot Exception Could not send data to [5, 2, 1, 3] (timeout 30000ms): LIBUSB_ERROR_TIMEOUT [-7]

The serial shows:

  fastboot_handle_command: version-brom
  usb_tx_bytes : len= 65 pBuf= 0xc083fe88 
  usb_rx_bytes : len= 4096 pBuf= 0xc0838720
  SETUP: 0x80 0x6 0x300 
  SETUP: 0x80 0x6 0x30a 
  fastboot_handle_command: 0002cae0
  Starting download of 183008 bytes
  usb_tx_bytes : len= 65 pBuf= 0xc083fe88 
  usb_rx_bytes : len= 183008 pBuf= 0xc0800000
  usb_tx_bytes : len= 65 pBuf= 0xc083fe88 
  usb_rx_bytes : len= 4096 pBuf= 0xc0838720
  SETUP: 0x80 0x6 0x300 
  SETUP: 0x80 0x6 0x30a 
  fastboot_handle_command: continue
  usb_tx_bytes : len= 65 pBuf= 0xc083fe88 
  j...
  U-Boot SPL 2022.10spacemit (May 25 2024 - 04:01:33 +0000)

Anybody knows what is the problem?

Have you another SD card ?

I’ve had different results burning images. Try using Balena Etcher and let it do the verify after write.

Had a lot of issues with SD cards, they were really my fault they were so old they were on their way out. I bough some new ones and have not had a problem.

Also had issues burning with the raspberry pi imager compared to Balena. With my new SD cards I don’t have issues now.

Franco

Beside checking the sd card is not corrupted, maybe make sure you are powering the board with 12V. I used many SD and never had problems, but I’m using a 18W and 30W PD hub/charger.

I tried two different SD cards, one of which is new, and I get the same result with both.

About the power, I’ve tried both with a 12V/2A power supply and with a USB cable connected to the docking station. I’ll try to see if I can find something better.

BTW, I noticed that the “Getting started” page has a section “Solution for 2G DDR version unable to start” where it suggests to update the “ddr_cs_num” value to 1 in the eeprom via titantools. Mine is a 2GB version and so probably it needs the change. However, I haven’t been able to set the value until now, as the tool always reports a timeout.

Hi, When you do your DD command do you put a status=progress at the end? Have you tried with Balena Etcher?

Franco

Thanks to all for the suggestions, I have made some progress finally.

I’ve used a real Windows 11 machine (instead of a Windows VM on Linux with USB passthrough) and I was able to change the “ddr_cs_num” eeprom value to 1 via titan tools (as my board has only 2GB of RAM). I was also able to flash the bianbu image on the eMMC and now it boots properly.

I’m still not able to boot from the SD, as u-boot reports that no card is inserted (I tried two different cards):

=> mmc info
MMC: no card present
mmc_init: -123, time 1

I tried flashing both with Balena Etcher and dd (with status=progress), but it seems the board isn’t even detecting the card. I will investigate more.

Hi,

What you could try since you have access to the debug console is to boot via TFTP. I already have the commands written out so you can just copy and paste them in to your console.

Change the IP addresses obviously for your system.

setenv ipaddr 192.168.0.5 setenv serverip 192.168.0.2 setenv gatewayip 192.168.0.1 setenv netmask 255.255.252.0 tftpboot uImage bootm 0x80600000 bootm 0x80200000 0x82200000 0x82200000 setenv ipaddr 10.196.157.189 setenv serverip 10.11.143.218 setenv gatewayip 10.196.156.1 setenv netmask 255.255.252.0 enx4865ee115d98 sudo screen -L /dev/ttyUSB1 115200

You can find more info on my github here. BPI-F3/notes/ubootcommands at main · rcman/BPI-F3 · GitHub

Franco

here is the finished bootloader boot-20240727.tar.xz and here is the recording.
Also env_k1-x.txt

Okay let’s step back. Where are you downloading the image and which image are you issuing?

You should be downloading it from the link below.

Once you burn it to micro sd card it should boot. Make sure you download the name with img in the name.

Franco

there is a ready-made image with everything configured. there is a build system
here are the settings: one, two

Hi, after all the suggestion, the SD is not working yet. I am going to send the board back because it seems a HW problem.

Hi, Sorry to hear that, stupid question. When you insert the Micro SD card is does click when pushed in and bounce back from the spring?

Sorry I have to ask that question. Franco