OpenWrt Support for Banana Pi BPI-R3

You need to do what it says there: update the bootloader.
The easiest way to do so is to start again with the SD card image and re-install to SPI-NAND/SPI-NOR/eMMC. You have to backup your configuration to not lose it because everything is going to be wiped.

1 Like

do you know when these patchs will be available in the snapshots ?
https://git.openwrt.org/?p=openwrt/staging/dangole.git;a=commit;h=f1606a8360a8d707202d9608f4253e4e1f77b235

As soon as someone actually having a fan connected confirms to me that this fixes their issue. I don't have a fan for testing myself at the moment.

i'm actualy trying to compile a firmware based on your tree (that's something new to me, i've never done that before :sweat_smile: )
i mean compiling a firmware

i'm trying to follow the tutorial here

so i indicated the dangole git link (https://git.openwrt.org/openwrt/staging/dangole.git)

and i'm geting some warning when i run ./scripts/feeds install -a

WARNING: Makefile 'package/utils/busybox/Makefile' has a dependency on 'libpam', which does not exist
WARNING: Makefile 'package/utils/busybox/Makefile' has a dependency on 'libpam', which does not exist
WARNING: Makefile 'package/utils/busybox/Makefile' has a build dependency on 'libpam', which does not exist
WARNING: Makefile 'package/boot/kexec-tools/Makefile' has a dependency on 'liblzma', which does not exist
WARNING: Makefile 'package/network/services/lldpd/Makefile' has a dependency on 'libnetsnmp', which does not exist
WARNING: Makefile 'package/utils/policycoreutils/Makefile' has a dependency on 'libpam', which does not exist
WARNING: Makefile 'package/utils/policycoreutils/Makefile' has a dependency on 'libpam', which does not exist
WARNING: Makefile 'package/utils/policycoreutils/Makefile' has a build dependency on 'libpam', which does not exist

well i go ahead, lets see what happen

well so it finished compiling, and menuconfig started again at the end ?!
so i chose "save" and "exit" and no generated firmware could be found...

For the first time reading this guide and it's a bit too deep. Simply do this:

git clone https://git.openwrt.org/openwrt/openwrt.git
cd openwrt
scripts/feeds update -a
scritps/feeds install -a
make menuconfig
make -j$(nproc)
1 Like

if i add more cores in my VM, will it compile faster ? i actually have 4 cores, i can go up to 10...

Yes, that's what the -j$(nproc) parameter does: Use as many parallel Make workers as there are CPU core. So the more CPU cores, the faster. However, filesystem performance also plays a significant role, so if you have 16 GiB of RAM or more, it's worth building inside a tmpfs which speeds things up dramatically.

1 Like

well so i restarted again with your git
and once again after it finish compiling, the menuconfig start again

what should i do here ? Save + Exit ?

I assume that when menuconfig run for the first time, you selected the BPi-R3, right?

And you are not calling kernel_menuconfig (which the guide you mentioned does, you don't need though)?

So this never happened to me and should not happen. No idea what's going on. Just to confirm more details: You are using a Linux host to build and the git checkout is on a UNIX filesystem like ext4, btrfs, ... or inside a tmpfs. You are running make as a normal unprivileged user. If any of those is not true (ie. you are running WSL with NTFS or Plan9 filesystem, ...) you may have all sorts of odd problems.

YES

ouups :upside_down_face:
so i just have to run this command ? make -j$(nproc)

i'm using an ubuntu VM...

If you are using a vritual disk which is formatted as ext4 (or any other standard UNIX filesystem), things should work just fine then if you have all the prerequisites installed.

i'm geting this error message :

 make[3] -C package/system/fstools compile
 make[3] -C package/base-files compile
 make[3] -C package/boot/uboot-envtools compile
 make[3] -C package/system/procd compile
 make[3] -C package/boot/uboot-mediatek compile
 make[2] package/install
 make[2] target/install
 make[3] -C target/linux install
    ERROR: target/linux failed to build.
make -r world: build failed. Please re-run make with -j1 V=s or V=sc for a higher verbosity level to see what's going on
make: *** [/dev/shm/kiki/dangole/include/toplevel.mk:232 : world] Erreur 1
kiki@ubuntu:/dev/shm/kiki/dangole$

so now i'm doing :
make -j1 V=s

i don't know if a make clean was necessary before ?

EDIT:
OK so now i can see this :

cp: error writing '/dev/shm/kiki/dangole/build_dir/target-aarch64_cortex-a53_musl/linux-mediatek_filogic/tmp/openwrt-mediatek-filogic-bananapi_bpi-r3-initramfs-recovery.itb': No space left on device

it filed the 12GB of workspace i have in my tmpfs partition

finaly we did it ! :innocent:

so unfortunately, my SFP ONU is still not working....

root@OpenWrt:/# logread | grep 'sfp'
Sat Aug 26 06:56:05 2023 kern.info kernel: [   13.366155] sfp sfp-1: Host maximum power 3.0W
Sat Aug 26 06:56:05 2023 kern.info kernel: [   13.371283] sfp sfp-2: Host maximum power 3.0W
Sat Aug 26 06:56:06 2023 kern.info kernel: [   20.138821] mt7530-mdio mdio-bus:1f sfp2: configuring for inband/2500base-x link mode
Sat Aug 26 06:56:06 2023 kern.info kernel: [   20.148459] br-lan: port 5(sfp2) entered blocking state
Sat Aug 26 06:56:06 2023 kern.info kernel: [   20.153758] br-lan: port 5(sfp2) entered disabled state
Sat Aug 26 06:56:06 2023 kern.info kernel: [   20.161209] device sfp2 entered promiscuous mode
Sat Aug 26 06:57:02 2023 kern.info kernel: [   75.799638] sfp sfp-1: module ALCATELLUCENT    G010SP           rev 10   sn ALCLFAB44018     dc 161205
Sat Aug 26 06:57:02 2023 kern.err kernel: [   75.873995] sfp sfp-1: module transmit fault indicated
Sat Aug 26 06:57:07 2023 kern.info kernel: [   81.121230] sfp sfp-1: module transmit fault recovered
Sat Aug 26 06:57:07 2023 kern.err kernel: [   81.126396] sfp sfp-1: module persistently indicates fault, disabling

@daniel so finaly, i have my SFP ONT working with the debian image from franck-w (wiki page)

but not with openwrt, even with your snapshot tree :frowning:

@VA1DER do you have a snapshot working with a SFP ONT ?
Everything i used (RC and Snapshot) or compiled (5.15/6.1 kernels) doesn't work at all. Only wifi and Lan/Wan ports are working well. The SFP part is a complete mess...

Not an ONT, no. I use 2.5GbE modules in mine. No trouble with them - they were completely plug and play. My snapshot is a few weeks old, though, and I haven't kept up on whether there are any current issues.

Since a week I'm using the new router with OpenWrt 23.05.0-rc3.
OpenWRT is running on NAND flash and works stable.

Is it possible to mount the SD card so I can use it for a SAMBA file server?
I inserted a 128GB SD card, but the BPI-R3 can't find the disk:
image

Looks like switch D is in lower position (0) and hence the eMMC is detect. You need to put switch D in the upper position (1), so the SD card is selected. Due to the design of the board it is not possible to use both, eMMC and SD card at once. As you are booting from SPI-NAND, this is not a problem, you just won't be able to access the eMMC.

Thanks, I will try it.

Update:
Switch D changed to the upper position and the sd card is recognized now:
image

1 Like