OpenWrt One
OpenWrt One is based on the MediaTek Filogic 820 SoC and has WiFi 6, dual-band, 3×3/2×2, 1x 2.5Gbit WAN, 1x 1Gbit LAN, 1GB DDR4 RAM, 256 MiB NAND, 16 MiB NOR, M.2 SSD, USB-C Serial console and USB 2.0.
Supported Versions
Hardware Highlights
Schematics, datasheets and the OpenWRT One Howto can be found at https://one.openwrt.org/hardware/
Installation
The device will come with a default OEM Stock Firmware complete with LuCI GUI installed.
- before powering up the device make sure the NAND/NOR switch is set to NAND
- connect the device via Ethernet to 192.168.1.1
- power on the device and wait for the green led to go solid indicating the device has booted.
- point your browser to 192.168.1.1
- the device is ready to be configured. Follow - https://openwrt.org/docs/guide-quick-start/start
Upgrading the firmware
The easiest way to do is is via USB.
- prepare a FAT32 formatted USB drive that contains the file:
- openwrt-mediatek-filogic-openwrt_one-squashfs-sysupgrade.itb
- remove power
- insert the USB drive
- make sure NAND boot is selected
- press and hold the button on the back side
- power up the device
- wait for the LED to go green
The bootloader will reflash the kernel and root filesystem
Recovery
Boot into recovery mode
- remove power
- make sure NAND boot is selected
- press and hold the button on the front
- power up the device
- the device will now boot a recovery initramfs image
Full recovery
For when the unit does not boot anymore, there is a failsafe recovery method that can be used even if the ATF or bootloader are broken.
- prepare a FAT32 formatted USB drive that contains the files:
- remove power
- insert the USB drive
- make sure NOR boot is selected
- press and hold the button on the front side
- power up the device
- wait for the LED to go green
The NOR recovery system will then factory reflash the entire NAND flash.
NOR Recovery from UART boot
The NOR memory can be re-flashed by booting the system using mtk_uartboot
This involves a two stage process:
- Firstly boot the router by copying images to RAM over the serial console connection.
- Then use the boot menu recovery to re-flash images to NOR from a TFTP server.
UART boot
Binaries for mtk_uartboot can be found in the assets section of the latest Releases. Download the appropriate archive for your operating system and unpack the mtk_uartboot
binary.
In the same directory download:
Once those files have been copied across, a serial console connection should be immediately opened so that boot menu recovery can be used. This can be done by running a command line that starts GNU Screen after the upload (so firstly make sure you have it installed):
With the router powered off run:
./mtk_uartboot --aarch64 --brom-load-baudrate 115200 --bl2-load-baudrate 115200 -s /dev/ttyACM0 -p mt7981-ram-ddr4-bl2.bin -f openwrt-mediatek-filogic-openwrt_one-nor-bl31-uboot.fip && screen /dev/ttyACM0 115200
NB that line assumes that the serial console connection is presenting as /dev/ttyACM0
, edit the line accordingly if it shows up as a different device on your system. To get access to that device it may be necessary to run as root, or add the user running the command to a group that has write permission to the device.
mtk_uartboot will start up:
mtk_uartboot - 0.1.1
Using serial port: /dev/ttyACM0
Handshake...
Now power on the router and mtk_uartboot will continue with hw code: 0x7981
and further logs as it uploads the BL2 and FIP.
NOR update from TFTP Server
Make sure to interrupt the boot process by pressing down arrow when the boot menu appears.
The One will use an IP of 192.168.11.11 on its LAN port and expects to find the TFTP server at 192.168.11.23.
The TFPT server should present the following files:
Before the files can be uploaded the NOR needs to be unlocked. This (counterintuitively) happens by having the SPI NOR WP jumper in place (which is the factory default position), and choosing 7. Lock NOR. (Remove jumper afterwards)
from the boot menu. Successful NOR flashing is slower than when flashing isn't actually happening.
Once the firmware has been re-flashed the router can be rebooted.
Enclosure
Notes
- See BananaPi OpenWrt One page for additional information.
- NOR is used for recovery. In normal operations the router should be booted from NAND.
- OpenWrt One in Banana Pi store on AliExpress:
- fully assembled with case: https://www.aliexpress.com/item/1005007795779282.html