Benton SN-R1

Support for this device is pending in PR #25096. No official images are available until it is merged.

CPU MediaTek MT7981B (Filogic 820), dual-core ARM Cortex-A53 @ 1.3 GHz
RAM 1 GB DDR4
Flash 128 GB eMMC
Wireless MediaTek MT7976C, 2.4 GHz 2×2 + 5 GHz 2×2, 802.11ax
Switch MediaTek MT7531AE, 5x 1 GbE (4x LAN, 1x WAN)
LEDs 3x status (blue / yellow / red)
Buttons Reset, Mesh
Power supply 12 V DC / 1.5 A

No serial cable is needed. The U-Boot shipped on the device has a web failsafe that can boot an OpenWrt image from RAM.

Before you start: back up the factory partition (mmcblk0p2) from the stock firmware. It holds the Wi-Fi calibration data and MAC addresses of your unit. From an SSH shell on the stock firmware:

dd if=/dev/mmcblk0p2 of=/tmp/factory.bin

Then copy /tmp/factory.bin to your PC.

  1. Connect your PC to a LAN port and give it the static address 192.168.1.2/24.
  2. Hold the reset button while powering on the router, for about 5 seconds.
  3. Open http://192.168.1.1 in a browser and choose Load initramfs.
  4. Upload openwrt-mediatek-filogic-benton_sn-r1-initramfs-kernel.bin and boot it. OpenWrt now runs from RAM only; nothing has been written yet.
  5. Open LuCI at http://192.168.1.1 and flash openwrt-mediatek-filogic-benton_sn-r1-squashfs-sysupgrade.bin under System → Backup / Flash Firmware, without keeping settings. Or copy it to /tmp and run:
sysupgrade -n /tmp/openwrt-mediatek-filogic-benton_sn-r1-squashfs-sysupgrade.bin
  1. After the reboot, OpenWrt runs from eMMC and is reachable at 192.168.1.1.

Follow steps 1–4 above and stop there. The initramfs image runs from RAM only; power-cycling the router returns it to the installed firmware.

On a device already running OpenWrt built with SN-R1 support, flash openwrt-mediatek-filogic-benton_sn-r1-squashfs-sysupgrade.bin through LuCI or with the sysupgrade command.

Note for earlier unofficial builds (for example 25.12.5 r33199): their upgrade script does not know this board uses eMMC, so a normal sysupgrade fails. Use the web failsafe method above instead.

The U-Boot web failsafe (hold reset at power-on, then http://192.168.1.1) is always available and is not overwritten by OpenWrt. With a serial console, it can also be started from the U-Boot boot menu (a. Start Web failsafe).

A 3.3 V TTL serial adapter is only needed for debugging (boot log, U-Boot menu).

Baud rate 115200
Data bits 8
Parity None
Stop bits 1
Flow control None
Pin Function Notes
1 3.3 V (square pad) Do not connect
2 GND Connect to the adapter's GND
3 RX Connect to the adapter's TX
4 TX Connect to the adapter's RX

Set the USB-UART adapter to 3.3 V logic before connecting.

Interface Source
LAN (gmac0) factory 0x2a
WAN factory 0x24
Wi-Fi 2.4 GHz factory 0x4 (Wi-Fi EEPROM)
Wi-Fi 5 GHz derived from the 2.4 GHz address (locally administered bit set)
Partition Name Size Contents
mmcblk0p1 u-boot-env 512 KiB U-Boot environment
mmcblk0p2 factory 2 MiB Wi-Fi calibration, MAC addresses
mmcblk0p3 fip 2 MiB Bootloader (BL31 + U-Boot)
mmcblk0p4 kernel 32 MiB OpenWrt kernel
mmcblk0p5 rootfs 1 GiB OpenWrt root filesystem and settings overlay
mmcblk0p6 userdata ~109 GiB Free for user data

The 107 GB userdata partition (mmcblk0p6, ext4) is not mounted by default. To mount it automatically and add compressed swap in RAM, install these packages:

apk update
apk add block-mount kmod-fs-ext4 zram-swap
reboot

After the reboot, check the result:

cat /proc/swaps
block info | grep mmcblk0p6
df -h /mnt/mmcblk0p6

If mmcblk0p6 is not mounted, enable automatic mounting:

uci set fstab.@global[0].anon_mount='1'
uci commit fstab
block mount

Kernel modules (kmod-*) must match the running kernel, so install them from the repository of the image you are running. For a self-built image, select the packages in make menuconfig instead.

  • Last modified: 2026/10/12 15:25
  • by gitkabir