Radxa E52C a great OpenWrt device

Radxa E52C

Model E52C
SoC Rockchip rk3582
CPU Dual-core Cortex-A76 with up to 2.4 GHz
Quad-core Cortex-A55 at up to 1.8GH
GPU N/A
NPU NPU supports INT4/INT8/INT16/FP16/BF16 and TF32 acceleration, computing power up to 5TOPs
DDR 1GB / 2GB / 4GB 32-bit LPDDR4
Storage eMMC onBoard:0GB / 16GB / 32GB / 64GB
microSD Card
Multimedia H.264 and H.265 encoder by 4K@60fps
Ethernet 2x 2.5G GbE
USB 1x USB 3.0 Port
Power 5V / 3A
Size(Motherboard) 66mm x 66mm
Casing 72mm x 72mm x 28.7mm aluminium alloy casing (Optional)

enable functional second big cluster via OTP state for Rockchip 3582

wireguard-benchmark.sh

Markdown Table Row:
| Radxa E52C / ENTER CPU MODEL | OpenWrt SNAPSHOT / 6.18.41 | 3.38 Gbits/sec | |

Packages:
wireguard-tools already installed
iperf3 already installed
ip-full already installed
kmod-veth already installed
psmisc needs to be installed
Installing packages:  psmisc
ERROR: unable to select packages:
  psmisc (no such package):
    required by: world[psmisc]

Router details:
{
	"kernel": "6.18.41",
	"hostname": "OpenWrt",
	"system": "ARMv8 Processor rev 0",
	"model": "Radxa E52C",
	"board_name": "radxa,e52c",
	"rootfs_type": "squashfs",
	"release": {
		"distribution": "OpenWrt",
		"version": "SNAPSHOT",
		"firmware_url": "https://downloads.openwrt.org/",
		"revision": "r35635-7eaec57569",
		"target": "rockchip/armv8",
		"description": "OpenWrt SNAPSHOT r35635-7eaec57569",
		"builddate": "1785661946"
	}
}
Connecting to host 169.254.200.2, port 4242
[  5] local 169.254.200.1 port 59976 connected to 169.254.200.2 port 4242
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.00   sec   396 MBytes  3.32 Gbits/sec    0    737 KBytes
[  5]   1.00-2.00   sec   402 MBytes  3.37 Gbits/sec    0    703 KBytes
[  5]   2.00-3.00   sec   401 MBytes  3.37 Gbits/sec    0    737 KBytes
[  5]   3.00-4.00   sec   408 MBytes  3.42 Gbits/sec    0    847 KBytes
[  5]   4.00-5.00   sec   410 MBytes  3.44 Gbits/sec    0   1.29 MBytes
[  5]   5.00-6.00   sec   404 MBytes  3.39 Gbits/sec    0    908 KBytes
[  5]   6.00-7.00   sec   406 MBytes  3.41 Gbits/sec    0    887 KBytes
[  5]   7.00-8.00   sec   404 MBytes  3.39 Gbits/sec    0    794 KBytes
[  5]   8.00-9.00   sec   402 MBytes  3.37 Gbits/sec    0    839 KBytes
[  5]   9.00-10.00  sec   398 MBytes  3.34 Gbits/sec    0   1.04 MBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.00  sec  3.94 GBytes  3.38 Gbits/sec    0            sender
[  5]   0.00-10.00  sec  3.93 GBytes  3.38 Gbits/sec                  receiver

iperf Done.
exec of "fuser" failed: No such file or directory

Markdown Table Row:
| Radxa E52C / ENTER CPU MODEL     | OpenWrt SNAPSHOT / 6.18.41       | 3.38 Gbits/sec |  |

iperf3 -s -D && iperf3 -c 127.0.0.1
[ 5] 0.00-10.00 sec 45.7 GBytes 39.3 Gbits/sec 0 sender
[ 5] 0.00-10.00 sec 45.7 GBytes 39.3 Gbits/sec receiver

 OpenWrt SNAPSHOT, r35635-7eaec57569
 -----------------------------------------------------
root@OpenWrt:~# ubus call system board
{
	"kernel": "6.18.41",
	"hostname": "OpenWrt",
	"system": "ARMv8 Processor rev 0",
	"model": "Radxa E52C",
	"board_name": "radxa,e52c",
	"rootfs_type": "squashfs",
	"release": {
		"distribution": "OpenWrt",
		"version": "SNAPSHOT",
		"firmware_url": "https://downloads.openwrt.org/",
		"revision": "r35635-7eaec57569",
		"target": "rockchip/armv8",
		"description": "OpenWrt SNAPSHOT r35635-7eaec57569",
		"builddate": "1785661946"
	}
}
root@OpenWrt:~# iperf3 -s -D && iperf3 -c 127.0.0.1
Connecting to host 127.0.0.1, port 5201
[  5] local 127.0.0.1 port 52968 connected to 127.0.0.1 port 5201
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.00   sec  4.66 GBytes  40.0 Gbits/sec    0    895 KBytes
[  5]   1.00-2.00   sec  4.03 GBytes  34.6 Gbits/sec    0    895 KBytes
[  5]   2.00-3.00   sec  3.69 GBytes  31.7 Gbits/sec    0    895 KBytes
[  5]   3.00-4.00   sec  3.96 GBytes  34.0 Gbits/sec    0    895 KBytes
[  5]   4.00-5.00   sec  4.60 GBytes  39.5 Gbits/sec    0    895 KBytes
[  5]   5.00-6.00   sec  4.31 GBytes  37.0 Gbits/sec    0    895 KBytes
[  5]   6.00-7.00   sec  2.58 GBytes  22.2 Gbits/sec    0    895 KBytes
[  5]   7.00-8.00   sec  4.25 GBytes  36.5 Gbits/sec    0    895 KBytes
[  5]   8.00-9.00   sec  3.48 GBytes  29.9 Gbits/sec    0    895 KBytes
[  5]   9.00-10.00  sec  4.46 GBytes  38.3 Gbits/sec    0   1023 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.00  sec  45.7 GBytes  39.3 Gbits/sec    0            sender
[  5]   0.00-10.00  sec  45.7 GBytes  39.3 Gbits/sec                  receiver

iperf Done.

Those look like our old friend, the RTL8125 :slightly_smiling_face:, but at least the cores should be big enough to NAT at 2.5.

Do you have any power numbers? (I left my OPi R2S on the power meter overnight and its idle draw is 3.1W average with a single 1G port plugged in.)

3.6W

Nice, is that with both NICs plugged in and alive? The RTL8125BG is documented to draw about 700 mA, so if that's with both active, then the base device is only using about 2.2.

I have one of these. For some reason the usb port doesn't work with usb ethernet adaptor.

2 RTL8125BG both active + RK3582 ≈ 3.7W

I have a realtek one, it fails under any load.

This driver bug was already fixed in kernel 6.18.
Run uname -a to check the kernel version of your firmware.

That's good to know. I checked and the latest stable uses 6.12 and snapshot uses 6.18, I'll try to update to snapshot to see if it resolved the issue.

Are all the kernel fixes included in openwrt immediately?