Radxa ZERO 3E support

Radxa ZERO 3E is a small SBC device based on Rockchip RK3566 SoC with is a single Gigabit Ethernet port

Tech Specs

  • SoC: Rockchip RK3566
  • CPU: Quad‑core Arm® Cortex®‑A55 (ARMv8) 64‑bit @ 1.6GHz
  • GPU: Arm® Mali™‑G52‑2EE (Supports OpenGL® ES1.1 / 2.0 / 3.0 / 3.1 / 3.2 / Vulkan® 1.1, OpenCL™ 2.0)
  • RAM: 1GB / 2GB / 4GB / 8GB LPDDR4
  • Storage: 1 x Micro SD Card Slot
  • Ethernet: 1x Gigabit Ethernet with Power over Ethernet (PoE) support, powered by PoE with an additional PoE HAT required
  • USB: 1x USB 2.0 Type C OTG, 1x USB 3.0 Type C Host
  • Display: 1x Micro HDMI support 1080P@60fps
  • Connectivity: 40 x color user GPIO supporting various interface options (up to 5 x UART, 1 x SPI bus, up to 2 x I2C bus, 1 x PCM/I2S, up to 6 x PWM, up to 28 x GPIO, 2 x 5V DC power in, 2 x 3.3V power pin)
  • Dimensions: 72 mm × 30 mm
  • Price: ~20$

It seems like an ideal candidate for a DNS server or VPN gateway.

Given that some other Radxa boards with Rockchip RK3566 already have OpenWrt images in snapshot, is it possible to add support for this one too?

References:

If you own one, you tell us.

https://openwrt.org/docs/guide-developer/adding_new_device
https://openwrt.org/docs/guide-developer/add.new.device

I want to get 3-4 modules for a project, so I could help with this. I have no experience in the embedded area (at least this kind of embedded) so I would like to try and contribute with some guidance.

Is it supported upstream? If you ship a board to me I can help adding support for it.

Edit. Upstream support planned for 6.11 - https://forum.radxa.com/t/radxa-zero-3-news/21183 but we can work with this.

1 Like

Fantastic! (I didn't think of searching the radxa forums about this)
I'm gonna order a few pieces and when they arrive I'll write back again here for some guidance!

Hi, @maurer

This is Tom from Radxa, we are happy to ship you a board to add openWRT support for it. Please send me a PM or email tom at radxa.com .

6 Likes

sent via pm

this is just to let everyone know that I've received the board from @hipboi and I will start working on support for it asap

5 Likes

Amazing! When you have some prototype ready, tell me to beta test it!

some small update - one good and one bad news:
the good part is that it boots but the bad one is that the network fails using the patchset Re: [PATCH v6 0/2] arm64: dts: rockchip: Add Radxa ZERO 3W/3E - Heiko Stuebner (kernel.org)

Sat Jun 22 16:43:13 2024 kern.info kernel: [    0.247708] rk_gmac-dwmac fe010000.ethernet: IRQ eth_lpi not found
Sat Jun 22 16:43:13 2024 kern.info kernel: [    0.817727] rk_gmac-dwmac fe010000.ethernet: IRQ eth_lpi not found
Sat Jun 22 16:43:13 2024 kern.info kernel: [    0.825009] rk_gmac-dwmac fe010000.ethernet: clock input or output? (output).
Sat Jun 22 16:43:13 2024 kern.info kernel: [    0.833212] rk_gmac-dwmac fe010000.ethernet: TX delay(0x47).
Sat Jun 22 16:43:13 2024 kern.info kernel: [    0.839636] rk_gmac-dwmac fe010000.ethernet: RX delay(0x27).
Sat Jun 22 16:43:13 2024 kern.info kernel: [    0.846108] rk_gmac-dwmac fe010000.ethernet: integrated PHY? (no).
Sat Jun 22 16:43:13 2024 kern.info kernel: [    0.858089] rk_gmac-dwmac fe010000.ethernet: init for RGMII
Sat Jun 22 16:43:13 2024 kern.info kernel: [    0.864583] rk_gmac-dwmac fe010000.ethernet: User ID: 0x30, Synopsys ID: 0x51
Sat Jun 22 16:43:13 2024 kern.info kernel: [    0.872602] rk_gmac-dwmac fe010000.ethernet:      DWMAC4/5
Sat Jun 22 16:43:13 2024 kern.info kernel: [    0.878380] rk_gmac-dwmac fe010000.ethernet: DMA HW capability register supported
Sat Jun 22 16:43:13 2024 kern.info kernel: [    0.886797] rk_gmac-dwmac fe010000.ethernet: RX Checksum Offload Engine supported
Sat Jun 22 16:43:13 2024 kern.info kernel: [    0.895169] rk_gmac-dwmac fe010000.ethernet: TX Checksum insertion supported
Sat Jun 22 16:43:13 2024 kern.info kernel: [    0.903086] rk_gmac-dwmac fe010000.ethernet: Wake-Up On Lan supported
Sat Jun 22 16:43:13 2024 kern.info kernel: [    0.910454] rk_gmac-dwmac fe010000.ethernet: TSO supported
Sat Jun 22 16:43:13 2024 kern.info kernel: [    0.916614] rk_gmac-dwmac fe010000.ethernet: Enable RX Mitigation via HW Watchdog Timer
Sat Jun 22 16:43:13 2024 kern.info kernel: [    0.925570] rk_gmac-dwmac fe010000.ethernet: Enabled RFS Flow TC (entries=10)
Sat Jun 22 16:43:13 2024 kern.info kernel: [    0.933568] rk_gmac-dwmac fe010000.ethernet: TSO feature enabled
Sat Jun 22 16:43:13 2024 kern.info kernel: [    0.940300] rk_gmac-dwmac fe010000.ethernet: Using 32/32 bits DMA host/device width
Sat Jun 22 16:43:13 2024 kern.info kernel: [    2.002217] rk_gmac-dwmac fe010000.ethernet eth0: Register MEM_TYPE_PAGE_POOL RxQ-0
Sat Jun 22 16:43:13 2024 kern.err kernel: [    2.011532] rk_gmac-dwmac fe010000.ethernet eth0: __stmmac_open: Cannot attach to PHY (error: -19)
Sat Jun 22 16:43:15 2024 kern.info kernel: [   13.633628] rk_gmac-dwmac fe010000.ethernet eth0: Register MEM_TYPE_PAGE_POOL RxQ-0
Sat Jun 22 16:43:15 2024 kern.err kernel: [   13.643520] rk_gmac-dwmac fe010000.ethernet eth0: __stmmac_open: Cannot attach to PHY (error: -19)
Sat Jun 22 16:43:15 2024 kern.info kernel: [   13.667882] rk_gmac-dwmac fe010000.ethernet eth0: entered allmulticast mode
Sat Jun 22 16:43:15 2024 kern.info kernel: [   13.675948] rk_gmac-dwmac fe010000.ethernet eth0: entered promiscuous mode

anyone any idea?

EDIT - my tree https://github.com/maurerr/openwrt/tree/radxa-zero3e
EDIT2 - nevermind - my last commit fixed it
@agorgl here's a working build if you want to test it - https://oshi.at/tPRZ (90days link) - I will compile all kernel modules and do a proper github release next week

Can you do some network perf benchmarks (iperf3, wireguard)? I'm really curious how this little device performs on network operations

Nope. Not really possible as I have the device in my home office and there I only have an underpowered ancient pc used for remote access to my cloud rig.

At least local wireguard performance? A Wireguard comparison DB

Will look into it from Monday

Thank you!

1 Like

done here A Wireguard comparison DB - Hardware Questions and Recommendations - OpenWrt Forum

EDIT:
so a "proper release" is on maurerr.github.io/radxa-zero3e with kernel modules and update to distfeeds.conf for those
for openwrt mainline we need u-boot support so I'll request some help with that.
stay tuned :slight_smile:

EDIT2:
uboot mainline worked in Commits · Kwiboo/u-boot-rockchip (github.com)

1 Like

So for the radxa zero3e patch to land on openwrt mainline do we need the relevant u-boot patch to land in u-boot master too?

yes we need it

1 Like

Is this some random fork you bumped into or do you know the guy? Should we bump him and ask him to make a PR to the u-boot master (or do it ourselves)?

I asked the guy via email and he told me we waits for the release of uboot v2024.07 so that the merge window for new feature will start

EDIT: v2024.07 was tagged 2 days ago so the MR should be sent soon