Hello everyone,
I’m currently exploring my ZTE MF289F LTE router. It's a wonderful piece of hardware with a Snapdragon Cat20 modem but it is horribly locked and restricted, probably because of branding - Vodafone.
I would like to install OpenWrt on it but I would prefer to first load it safely from RAM without touching the flash memory — just to confirm that it boots and works correctly before flashing. The device is based on the Qualcomm IPQ4019 (SDX24) platform, and I have full UART access to both U-Boot and the Linux shell.
The firmware selector page for the MF289F (https://firmware-selector.openwrt.org/?version=22.03.4&target=ipq40xx%2Fgeneric&id=zte_mf289f) currently provides only a sysupgrade.bin and a minimal kernel image, but not an initramfs build.
I’d like to kindly ask if someone could build (or guide me to build) an initramfs-uImage for this device, so I can boot OpenWrt via TFTP from RAM.
Here’s what I can provide for reference:
- Basic info
Model: ZTE MF289F
Chipset: Qualcomm SDX24 / IPQ4019
RAM: 256MB
- Status information (from my router running with its stock firmware)
SIM Card Number — —
IMEI 864781050519925
IMEISV 3
IMSI 202010935297923
Signal Strength -96 dBm
LTE Frequency Band(s) 20.0MHz@2100(B1)+20.0MHz@1800(B3)+20.0MHz@2600(B7)+10.0MHz@1800(B3)
Network Name (2.4GHz Main SSID) VODAFONE_GigaWiFiHome_7729
Max Access Number (2.4GHz Main SSID) 32
Network Name (5GHz Main SSID) VODAFONE_GigaWiFiHome_7729
Max Access Number (5GHz Main SSID) 32
Wi-Fi Coverage Long Wi-Fi Coverage
IP Address 192.168.1.1
MAC Address C8EAF87CD077
WAN IP Address 10.7.178.18
Software Version CR_VDFGRMF289FV1.0.0B03
Hardware Version Ver.A(T2)
- Software / Boot info
As mentioned, I have UART access to both U-Boot (IPQ40xx) and Linux shell, and have collected full outputs from these commands:
(U-Boot)
help
version
printenv
smeminfo
(Linux)
uname -a
mount
ls -l /
ls -l /proc
cat /proc/cmdline
cat /proc/version
cat /proc/cpuinfo
cat /proc/meminfo
cat /proc/mtd
cat /proc/partitions
cat /proc/filesystems
cat /proc/device-tree/compatible
dmesg | grep -i 'Memory\|CPU\|Board\|Machine'
I have attached this information as text files to this post, together with a complete boot log: https://pastebin.com/DmRkFvVk
My goal is simply to boot OpenWrt temporarily from RAM, test radio and network behavior, and if successful, later proceed to a safe permanent install.
Any help, guidance, or pointers to similar IPQ4019-based initramfs builds would be greatly appreciated.
Thank you all in advance for your effort — OpenWrt is a wonderful project, and I’d love to contribute by documenting this device once we get it running.
— Yanni