Banana Pi BPI-R3 OpenWRT image

Needs new bootloader. Either do that or redo from scratch with the SD Card image and write to nand nor etc.

Started from scratch. I hope this is not frequently needed :wink:

Openwrt 23.05.0-rc2 : https://downloads.openwrt.org/releases/23.05.0-rc2/targets/mediatek/filogic/

1 Like

Just wanted to say I’ve spent several days testing OpenWRT 23.05 RC2 using two devices connected by 2.5Gbit optical transceiver in their SFP cages, and I have found no issue. Both cages deliver 2.36Gbps sustained according to iperf. Latency is about 200 microseconds.

In NAND boot mode, I expanded the overlay partition on eMMC to 1Gb so I could install lots more packages, then had autopart create a LVM partition for the remaining 6Gb of space on eMMC, and both devices now boot from eMMC. I’ve set the 6Gb store up as a Samba share on the network, and it works well, eMMC on these boards appears to perform at 150Mb/sec so it’s no slouch. I’ll be using the Samba store for sensor logging, it’ll be very handy.

They’re finally about to go into the field at long last, I bought them last year but I was waiting for the stable OpenWRT release before deploying them as once deployed, they’ll be hassle to fix any issues with them.

Here’s hoping that reboot after a few hours problem others mentioned on here isn’t a problem for me!

Anyway I wanted to thank all those who brought this OpenWRT release to these devices. For the money, I can’t think of anything with comparable spec with a high quality port of OpenWRT on them (which for me is a non-negotiable). If these two units work out in the field over time, I expect to be buying a bunch more also using 2.5 Gbps fibre as the backhaul to implement a high quality Wifi 6 solution to a large building with 802.11r fast roaming. Thanks for making that possible for a relatively affordable price!

1 Like

To make the information complete, could you please also provide the information to flash the emmc from linux?

i tried the bootloader update in openWRT Wiki:

You can also perform a bootloader update manually from inside OpenWrt, the procedure differs depending on the boot media Assuming all relevant files have been uploaded via SCP to /tmp on the device, you can update U-Boot by writing the correct *-bl31-uboot.fip in a media-specific way and clearing the bootloader environment, so it is re-created by the updated loader on first boot.

dd if=/tmp/*bananapi_bpi-r3-emmc-bl31-uboot.fip of=/dev/mmcblk0p3

clear environment

dd if=/dev/zero bs=65536 count=1 of=/dev/mmcblk0p1

Still got the error:

image

Tried to force upgrade… but that didn’t work. So i used the MicroSD Method and restored a backup afterwards.

Hello,

My BPI-R3 is working great with the, openwrt-23.05.0-rc3-92a7d087de39-mediatek-filogic-bananapi_bpi-r3-sdcard.img Many thanks to those who has made this happen.

Though, I do note a problem…

In menu item Status, Channel Analysis, there is no update, and in a short time, I get Session timeout, it logs me out, and I have to relogin.

Hmm, I just got flash to eMMC working, and, walla, this graph is now working. Shrug…

Hello, I got my device yesterday and had it working till I gave it a bad backup openwrt file. I have since attempted to boot from sdcard and all it does is say this?

U-Boot 2023.07.02-OpenWrt-r24084-3aef61060e (Oct 04 2023 - 22:56:57 +0000)

CPU:   MediaTek MT7986
Model: BananaPi BPi-R3
DRAM:  2 GiB
Core:  53 devices, 24 uclasses, devicetree: embed
jedec_spi_nor spi_nor@0: unrecognized JEDEC id bytes: ff, ef, aa
MMC:   mmc@11230000: 0
Loading Environment from MMC... mmc fail to send stop cmd
mmc fail to send stop cmd
mmc fail to send stop cmd
mmc fail to send stop cmd
mmc fail to send stop cmd
mmc fail to send stop cmd
mmc fail to send stop cmd
mmc fail to send stop cmd
mmc fail to send stop cmd
mmc fail to send stop cmd
mmc fail to send stop cmd
mmc fail to send stop cmd
mmc fail to send stop cmd
mmc fail to send stop cmd
mmc fail to send stop cmd
mmc fail to send stop cmd
mmc fail to send stop cmd
mmc fail to send stop cmd
mmc fail to send stop cmd
spi-nand: spi_nand spi_nand@1: Winbond SPI NAND was found.
spi-nand: spi_nand spi_nand@1: 128 MiB, block size: 128 KiB, page size: 2048, OOB size: 64
jedec_spi_nor spi_nor@0: unrecognized JEDEC id bytes: 00, ef, aa
'spi-nand0' is now active device
* spi-nand0
  - device: spi_nand@1
  - parent: spi@1100a000
  - driver: spi_nand
  - type: NAND flash
  - block size:        0x20000 bytes
  - page size:         0x800 bytes
  - OOB size:          64 bytes
  - OOB available:     24 bytes
  - 0x000000000000-0x000008000000 : "spi-nand0"
          - 0x000000000000-0x000000080000 : "bl2"
          - 0x000000080000-0x000000380000 : "factory"
          - 0x000000380000-0x000000580000 : "fip"
          - 0x000000580000-0x000008000000 : "ubi"
mmc fail to send stop cmd
Press ENTER to return to menu 

If I say install to nand then it says this

U-Boot 2023.07.02-OpenWrt-r24084-3aef61060e (Oct 04 2023 - 22:56:57 +0000)

CPU:   MediaTek MT7986
Model: BananaPi BPi-R3
DRAM:  2 GiB
Core:  53 devices, 24 uclasses, devicetree: embed
jedec_spi_nor spi_nor@0: unrecognized JEDEC id bytes: ff, ef, aa
MMC:   mmc@11230000: 0
Loading Environment from MMC... mmc fail to send stop cmd
mmc fail to send stop cmd
mmc fail to send stop cmd
mmc fail to send stop cmd
mmc fail to send stop cmd
mmc fail to send stop cmd
mmc fail to send stop cmd
mmc fail to send stop cmd
mmc fail to send stop cmd
mmc fail to send stop cmd
mmc fail to send stop cmd
mmc fail to send stop cmd
mmc fail to send stop cmd
mmc fail to send stop cmd
mmc fail to send stop cmd
mmc fail to send stop cmd
mmc fail to send stop cmd
mmc fail to send stop cmd
mmc fail to send stop cmd
* spi-nand0
  - device: spi_nand@1
  - parent: spi@1100a000
  - driver: spi_nand
  - type: NAND flash
  - block size:        0x20000 bytes
  - page size:         0x800 bytes
  - OOB size:          64 bytes
  - OOB available:     24 bytes
  - 0x000000000000-0x000008000000 : "spi-nand0"
          - 0x000000000000-0x000000080000 : "bl2"
          - 0x000000080000-0x000000380000 : "factory"
          - 0x000000380000-0x000000580000 : "fip"
          - 0x000000580000-0x000008000000 : "ubi"
mmc fail to send stop cmd
Press ENTER to return to menu 

I have tried to also reset all settings with option a. and that seems to do nothing.

which sd-card vendor/model do you use? we have seen some sporadic mmc-issues in uboot on R3, but have not nailed down to root cause as they do not happen always.

I have a samsung evo plus 32GB sdcard.

Can you try another model?

I did. It worked with a team32 GB Class 10 sdcard. Thank you for the help!!

I can boot from sd card and flash and boot from NOR following the instructions here: https://openwrt.org/toh/sinovoip/bananapi_bpi_r3_v1.0_v1.1#installation

But flashing to NAND or EMMC is not working. NAND will boot cycle but when switching over will then just boot to the shipping firmware. EMMC does not flash nor boot at all. When looking at /dev/mmcblk0 I can see no partition table exists. Can anyone offer some advise of how to debug/fix or will I need to get a serial console running to see uboot debug output?

Serial console is needed to determine what exactly goes wrong…all other is speculative

Hi everyone, I’ve just received my Banana Pi r3 and just getting started with it, serial console is ready and connected, sd card burnt is ready with latest Snapshot from official openwrt Just to confirm, i should boot from sd card and install to nand in bootloader menu? After it’s done, power off device, switch boot switch to boot from nand? That’s it?

Few questions

  1. Latest Snapshot is good to go?
  2. Will it update my bootloader as well?
  3. Nand vs nor , anyone using it on nor , what’s performance difference? What’s preferred
  4. Please mention any additional steps needed for process above?

Thanks everyone

Congratulation for choosing the R3!!! :+1:

As you can see, it can be tricky to install openwrt on BPI-R3:

But you can always fresh start from sd card again.

The 23.05.3 for R3 is some days out (2024-03-23). Do what you want, but I would not prefer the snapshot!

The questions you have are good! I’m also interested in …

1 Like

If you want to use the device in production right away and not be bothered with (rare) bugs in snapshot images, I’d recommend to use the OpenWrt 23.05.3 release instead which is known to be stable and work well on this device.

Yes, choosing to install via the bootloader menu will write the bootloader to the target media (and this is needed. you cannot run vanilla OpenWrt with SinoVoip’s loader which lacks features for uImage.FIT and device-tree overlays).

It’s important to mention that most problems users have been reporting with the installation process were due to faulty or bad microSD cards. If anything doesn’t work, try with a different microSD card.

Also be aware that all 4 dip switches for choosing the boot device (A, B) and chip-select on SPI (C) and MMC (D) bus need to be in the correct position for each step of the installation:

So “Don’t care” isn’t really true, you do need to care also about those.

1 Like