Scope

Scope of this Beta engineering release is for RDK-B community to explore and understand RDK-B running on Banana pi R4.

Frequently Asked Questions

  • Can i use this release for production - Not recommended
  • Does it cover all features - Yes
  • what release version i can use for deployment - 2025Q2 release is planned for deployment
  • Can i share this Beta release with my OEM's/Operators/SI's/SoC's - You are free to share
  • Can i contact RDKM team if i have any queries/to give any feedback - Yes
  • Is this Beta engineering release fully tested - Yes we have done End to End testing
  • Can i use Beta release for my development/New enhancements - Yes
  • Does beta release support 6.x linux kernel,If no what is the plan - Beta release support 5.4 kernel and we are planning linux kernel 6.1 upgrade with upcoming mediatek BSP release
  • Does beta release support EasyMesh/Wi-Fi 7 - No,We plan Post beta release
  • Can i expand RAM in BPI R4 - You have to do it on Hand,Please refer here https://forum.banana-pi.org/t/bpi-r4-successfully-upgraded-8gb-ram-on-bpi-r4/17882/5

Build instructions


NAND
repo init -u https://code.rdkcentral.com/r/reference/manifests -m bpi4_tags/rdkb-bpi-extsrc-2025Q1.xml -b master
repo sync -j`nproc` --no-clone-bundle
MACHINE=bananapi4-rdk-broadband source meta-cmf-bananapi/setup-environment-refboard-rdkb
bitbake rdk-generic-broadband-image

SD card

repo init -u https://code.rdkcentral.com/r/reference/manifests -m bpi4_tags/rdkb-bpi-extsrc-2025Q1.xml -b master
repo sync -j `nproc` --no-clone-bundle --no-tags 
MACHINE=bananapi4-rdk-broadband BPI_IMG_TYPE=sdmmc source meta-cmf-bananapi/setup-environment-refboard-rdkb
bitbake rdk-generic-broadband-image

Common Build Error 

  • Please follow link below to build binary if not having access to artifacts and getting below error

           https://wiki.rdkcentral.com/pages/viewpage.action?pageId=354648448

  • Copy the built binary to necessary path in meta-cmf-bananapi and change the SRC_URI to pint to the binary

ERROR: bootloader-prebuild-r0 do_fetch: Bitbake Fetcher Error: FetchError('Unable to fetch URL from any source.', 'https://artifactory.rdkcentral.com/artifactory/RDKB-Platform/BPI-R4/uboot-2024.04/bpi-r4_sdmmc_bl2.img;name=bl2')


Flashing instructions(NAND flash)

Pre-requirements: Install tftp server in you local machine and copy the image to tftp server location

Step 1: Power on the BPi board
Step 2:You will see U-Boot Boot Menu procedure (ie, startup system, upgrade firmware, ...)
Step 3:Select the second option upgrade firmware -> Run image after upgrading? (Y/n): Y
Step 4:Next on Available load methods select 0 which is TFTP client.
Step 5:Setup device network
       Input U-Boot's IP address: (same network as tftp server, eg:192.168.2.1)
       Input TFTP server's IP address: (tftp server IP address)
       Input IP netmask: 255.255.255.0
       Input file name: rdk-generic-broadband-image-bananapi4-rdk-broadband-sysupgrade.bin (BPI image in bin format)
Step 6:Then enter, image will be downloaded from tftp server to BPI and will start flashing the image to BPI device if success.

Flashing instructions(SD card)

Tested machines - Linux,MacOs

Copy wic.bz2 from build machine

MacOs

  1. Install Balena etcher and flash using it

Linux

  1. bzip2 -d <Path to ImageName.wic.bz2>

  2. sudo -E bmaptool copy --nobmap <Path to ImageName.wic> <Path to SD card device file>

Boot mode

Yocto 

Kernel & user space

  • Kernel 5.4 
  • Full 64bit (User space and kernel space)

Currently supported & working WAN technologies

Wi-Fi highlights

  • 2.4 Ghz (wifi0)
  • 5 Ghz (wifi1)
  • 6 Ghz(wifi2)
  • Does it support multiple creations - As of now we have not created any VAP's.Technically that is possible based on requirement.

Cellular Network highlights

  • Tested in North America & APAC regions


Flashing mechanism

  • Primary

    • NAND flash supported in Beta Engineering release
  • Secondary

    • SD flash supported in Beta Engineering release
    • Prerequisites:You may need to compile your own uboot and copy files to build system before build.The reason is uboot code is not fully open.as of now we are not authorized to host binaries in RDKM(SD Monolitic image build and flashing steps for BPI R4.)

Hardware & Peripherals

  • Banana Pi R4 Router Board
  • BE14 Wi-Fi 7 card & Antennas
  • Quectel EM05-G Cellular Modem
  • Power supply & Heat sinks
  • Case (Optional)
  • serial cable

How to get bananapi R4

Features supported in Beta engineering release

Validation  Status

Sanity Status 

S.NoSanity Tested onStatus
1

erouter0 interface got Wan IPv4 and IPv6

Pass
2

brlan0 interface got default LAN IP & Ipv6

Pass
3

Able to take SSH Connection

Pass
4

All CCSP process are running

Pass
5

Able to Ping www.google.com & ping -6 www.google.com in Gateway (i,e erouter0)

Pass
6

All systemd services are running

Pass
7

Able to connect LAN client

Pass
8

LAN client got IP from default pool range for Ipv6 and Ipv4

Pass
9

LAN client should open with CaptivePortal Page

Pass
10

Able to connect wireless client

Pass
11

Wireless client got IP from default pool range(i,e 2G,5G,6G) for Ipv4 and Ipv6

Pass
12

Wireless client can access the CaptivePortal Page(i,e 2G,5G,6G)

Pass
13

Internet should work on Connected clients after changing the default credentials

Pass
14

Using dmcli to check the CCSP TR-181 DataModels

Pass
15

WebUI page should be loaded on Connected clients after changing the default credentials

Pass
16

WebUI page should be loaded through erouter0IP via RM

Pass
17

wifi0, wifi1, wifi2 interfaces should be UP and RUNNING

Pass
18

All ccsp logs files should be generated in /rdklogs/logs folder

Pass
19

Factory Reset

Pass
20

Device stable

Pass

Features Status

S.NoFeatures tested onStatus
1

WebPa get and set should work, query device.

Pass
2

LogUpload/Logrotation 

Pass
3

RFC 

Pass
4

Webconfig

Pass
5

Telemetry 2

Pass
6

Usppa get and set are working through DM’s

Pass
7

Cellular Mode

Pass
8

Local WebUI

Pass
9

Firewall

Pass
10

OneWiFi Triband

Pass
11

CPU Proc Analyser

Pass
12

WAN Connectivity (i,e Ipv4)

Pass
13WAN Connectivity (i,e Ipv6)Pass
14

WiFi Connectivity

Pass
15

LAN Connectivity

Pass
16

SNMP

Pass
17

Bridge Mode 

Pass
18DACPass
19OneWifi with Single WiPhy Design Pass
20TR069

Pass

  • Connected to ACS server
  • Get/Set of few DM parameter
21eSDKPass
22PopulateSDKPass
23SelfHealPass
24Test and DiagnosticPass
25Crash UploadPass
26SD card supportPass
27Factory resetPass


List of Supported Features - User Manual's

  1. Webpa - WebPA Feature Support on BPI R4 - User Manual
  2. RFC -RFC Feature Support in RDKB BPI - User manual
  3. WebConfig -WebConfig Feature Support in RDKB BPI - User Manual
  4. Telemetry 2 - Telemetry 2.0 Feature support for RDKB BPI -User Manual
  5. Log Rotate -Log Rotation Feature Support in RDKB BPI - User manual
  6. Cellular -  Cellular Feature support in RDKB BPI - User Manual
  7. UspPa 
    1.  Including UspPa in a device
    2. TR-369/USP on RDK-B
    3. OBUSPA 8.0 User Manual(Engineering Version)
  8. CpuProcAnalyser - Cpuprocanalyzer Feature support in RDKB BPI - User Manual
  9. OneWifi - OneWifi Integration in RDKB BPI - User Manual
  10. Selfheal - Self Heal Feature in BPI - User manual
  11. TR-69 - TR069 Support for Bananapi R4
  12. SNMP - SNMP Support for BPIR4 - Preferred Program - RDK Central Wiki
  13. OneWifi with Single WiPhy support 
    1. OneWifi Integration in RDKB BPI - User Manual
    2. Single wiphy design for Onewifi/rdk-wifi-hal
  14. Crashupload - Crash Upload Feature RDK-B - RDK - RDK Central Wiki
  15. Test and Diagnostics similar to RPI- Test and Diagnostic on R-Pi
  16. Bridge Mode similar to RPI- BridgeMode Feature support in RPI
  17. DAC similar to RPI 
    1. Containerization using META DAC SDK in RDK-B RPI
    2. DAC on BPI R4 RDK-B -64 bit
    3. iperf3 application
  18. eSDK - RDKB: Extensible SDK support on (BananaPi R4) Yocto 4.0 Kirkstone build
  19. PopulateSDK : Creating Yocto SDK 
  20. SD card support - SD Monolitic image build and flashing steps for BPI R4.

Roadmap of new Features

Q4' 2024(Previous prebeta release,Oct 2024)Q1' 2025 (current beta release,Feb 05 2025 )Q2' 2025Future
  • Board bringup
  • Core RDK-B Porting
  • Ethernet WAN support
  • LAN support
  • Basic Wi-Fi bringup
  • WebPA
  • TR369
  • Telemetry 2.0
  • RFC
  • Cellular WAN support
  • DHCP(IPv4,IPv6)
  • CPU Proc Analyzer
  • Local WebUI
  • Webconfig
  • Log upload/Log rotation
  • Firewall
  • Selfheal
  • TR-69
  • SNMP
  • Onewifi with single WiPhy support(First RDK-B device with this design)
    • 2.4 Ghz
    • 5 Ghz
    • 6 Ghz
  • Crashupload
  • Test and Diagnostics
  • Bridgemode
  • SD Card Support
  • DAC
    • Bundlegen support for BPI R4
    • meta-dac-sdk support for BPI R4
  • eSDK
  • PopulateSDK
  • Factory reset
  • Configurable WAN support
  • USP 8.0 migration
  • WiFi 7
  • TelcoVoice
  • Scarthgap
  • PPPoE
  • WPS
  • Mac Filtering
  • Speedtest
  • Port Triggering
  • Firmware upgrade
  • EasyMesh Gateway
  • EasyMesh Extender




  • IoT
  • Bluetooth/BlueZ
  • WAN Over WiFI
  • RDK Generic Broadband Dev Image
  • Guest WiFi

Known issues  

  • NA

References


Reference image 

  • Can be provided to RDK-B Licenses on demand


Test results reference

  • BPI-R4 E2E Report

    Document

Additional info

For support






  • No labels

2 Comments

  1. Currently the SD card build does not work:

    ERROR: bootloader-prebuild-r0 do_fetch: Fetcher failure: Fetch command export PSEUDO_DISABLED=1; export DBUS_SESSION_BUS_ADDRESS="unix:path=/run/user/1010/bus"; export PATH="/home//build-bananapi4-rdk-broadband/tmp/sysroots-uninative/x86_64-linux/usr/bin:/home//openembedded-core/scripts:/home//build-bananapi4-rdk-broadband/tmp/work/cortexa53-rdk-linux/bootloader/prebuild-r0/recipe-sysroot-native/usr/bin/aarch64-rdk-linux:/home//build-bananapi4-rdk-broadband/tmp/work/cortexa53-rdk-linux/bootloader/prebuild-r0/recipe-sysroot/usr/bin/crossscripts:/home//build-bananapi4-rdk-broadband/tmp/work/cortexa53-rdk-linux/bootloader/prebuild-r0/recipe-sysroot-native/usr/sbin:/home//build-bananapi4-rdk-broadband/tmp/work/cortexa53-rdk-linux/bootloader/prebuild-r0/recipe-sysroot-native/usr/bin:/home//build-bananapi4-rdk-broadband/tmp/work/cortexa53-rdk-linux/bootloader/prebuild-r0/recipe-sysroot-native/sbin:/home//build-bananapi4-rdk-broadband/tmp/work/cortexa53-rdk-linux/bootloader/prebuild-r0/recipe-sysroot-native/bin:/home//openembedded-core/bitbake/bin:/home//build-bananapi4-rdk-broadband/tmp/hosttools"; export HOME="/home/"; /usr/bin/env wget -t 2 -T 30 --passive-ftp -P /home//build-bananapi4-rdk-broadband/../downloads 'https://artifactory.rdkcentral.com/artifactory/RDKB-Platform/BPI-R4/uboot-2024.04/bpi-r4_sdmmc_bl2.img' --progress=dot -v failed with exit code 6, no output
    ERROR: bootloader-prebuild-r0 do_fetch: Bitbake Fetcher Error: FetchError('Unable to fetch URL from any source.', 'https://artifactory.rdkcentral.com/artifactory/RDKB-Platform/BPI-R4/uboot-2024.04/bpi-r4_sdmmc_bl2.img;name=bl2')
    ERROR: Logfile of failure stored in: /home//build-bananapi4-rdk-broadband/tmp/work/cortexa53-rdk-linux/bootloader/prebuild-r0/temp/log.do_fetch.2267885
    ERROR: Task (/home//meta-cmf-bananapi/meta-rdk-mtk-bpir4/recipes-bsp/trusted-firmware-a/bootloader_prebuild.bb:do_fetch) failed with exit code '1' 


    1. Hi Curtis,

                         Please follow Note section in SD build instructions (https://wiki.rdkcentral.com/pages/viewpage.action?pageId=354648448)


      Thanks,

      Chandrakanth