[Solved] [BPI-R3] Unable to flash on eMMC

I have successfully installed the sdcard.img from OpenWrt Firmware Selector on my SD card, booted from it and selected the “Install bootloader, recovery and production to NAND” option in the boot menu via UART. The installation was successful. Booting from NAND, I can pick the “Install bootloader, recovery and production to eMMC” option in the boot menu. Upon selecting it however, I receive this message:

PARTITION_CONFIG only exists on eMMC
eMMC not detected
Press ENTER to return to menu

How can I install OpenWRT on eMMC, if it’s not possible from the boot loader? I seem to be the only person who has ever received this error.

I did not read “reboot” in your discription.

What did you use as instruction?

https://openwrt.org/toh/sinovoip/bananapi_bpi_r3_v1.0_v1.1

or

https://openwrt.org/toh/sinovoip/bananapi_bpi-r3

or

https://wiki.banana-pi.org/Getting_Started_with_BPI-R3

Use this tutorial : [OpenWrt Wiki] Sinovoip BananaPi BPi R3 V1.0, V1.1 Install Sd card → Nand , boot in nand and install on eMMC . SD card → eMMC is not possible.

I have followed the second link, in particular this section:

Installation to SPI-NAND and SPI-NOR (depending on the position of the SPI chip select switch) is possible when booting from microSD card. When booting from SPI-NAND, installation to eMMC can be selected in the bootloader menu.

I booted from the SD card and selected the “Install bootloader, recovery and production to NAND” option in the boot menu. After shutting down, changing the switches to boot from NAND, booting into SPI-NAND and selecting the “Install bootloader, recovery and production to eMMC” I received the error message above.

Apparently, it should’ve worked though, seeing as this forum user did exactly the same:

I guess I can try installing it via SSH instead of UART, although I did try installing it to eMMC from NAND, not from the SD card.

This simply means that you haven set DIP-switch D into position for eMMC. Remove power from the board, put switch D into the correct position, power on again, the board will boot from NAND and subsequent installation to eMMC will work.

1 Like

Huh, you’re right, I didn’t think this would be the solution. Thanks!

For anyone else stumbling across this in the future: Even though you can boot from NAND with switch configuration 101X, you can only install to eMMC with configuration 1010. If it is set to 1011, the eMMC partition will not be detected.

1 Like

This is because Bootloader switches A, B, & D control Boot memory while switch C only controls whether the SPI bus will be connected to NOR or NAND.

The board documentation and the board silkscreen should not state that switch C has don’t care cases, because it actually determines whether the system has access to NOR or NAND during / after boot up. I will note that I haven’t test every scenario regarding this so there might be HW limitation I’m not thinking about.

Bootloader Switch setting examples:

  • BL 1010 = NAND Boot Drive, SPI Connected to NAND
  • BL 1011 = NAND Boot Drive, SPI Connected to NAND
  • BL 0111 = eMMC Boot Drive, SPI Connected to NAND
  • BL 0101 = eMMC Boot Drive, SPI Connected to NOR

Hope this helps for others reading this thread.