UF896 - Qualcomm MSM8916 LTE router ~384MiB RAM/2.4GiB flash, Android: OpenWrt?

Hi Sorine, Thanks for the process. This is great.
I cannot reach out your repository located at https://xfl.jp/lnvXp6. 404 page not found. Could you see what's going on please

1 Like

i am not quite sure what i should do here...

                sim_sel {
                        label = "sim:sel";
                        gpios = <&msmgpio 2 GPIO_ACTIVE_HIGH>;
                        default-state = "on";

                sim_en {
                        label = "sim:en";
                        gpios = <&msmgpio 1 GPIO_ACTIVE_HIGH>;
                        default-state = "on";

is this correct? Or should i change the GPIO of sim_sel and sim_en ? (sim_en = 2; sim_sel = 1)

Need to try. The fact is that modems come with different radio modules, depending on the number of bands. For example, the SIM works for the author and he has 1,3,5 bands. With you, the SIM part of the SIM does not even turn on. This is an example with me with bands 1,3,7,20 and European. First try changing the AT modes with commands. To do this, enable debug in MM.
Edit vi /usr/sbin/ModemManager-wrapper
/usr/sbin/ModemManager "$@" 1>/dev/null 2>/dev/null &
/usr/sbin/ModemManager --debug "$@" 1>/dev/null 2>/dev/null &
and restart router.
Man mmcli -m 0 --command=


"mmcli -m 0 " says "Status: failed, failed reason: SIM missing"

I had this problem too. Before you start messing with GPIOs try just power cycling
the sim card :
in adb or ssh
/etc/init.d/modemmanager stop
qmicli -d /dev/modem --uim-sim-power-off=1
qmicli -d /dev/modem --uim-sim-power-on=1
/etc/init.d/modemmanager start
mmcli -m 0 -e
mmcli -m 0

i struggled to find any serial interface where AT-commands could be sent to the modem.


1 Like

Hello Guys,
I bought this Qualcomm MSM8916 LTE Dongle, but it is not working on the OpenWrt router (installed in Raspberry Pi 4B).
I also have a ZTE dongle which got easily detected on the router but this one is not getting detected by the router.
I noticed that when I connect this dongle to OpenWrt, it shows a MAC address for 2 seconds and then disconnected. But it's working fine on Windows PC as RNDIS.
Can someone guide me on what to do to get it to work with OpenWrt?

which stock OS version have you installed?. As I do have the Chinese ones and opkg cannot download and install the qmicli necessary packages. Tx

1 Like

I compiled from kirdes's git fork, but added some configs. Guess i must have added
can you not find qmi-utils through opkg

Hello Rob

I understand the message I posted in response is wrongly formated

Here is the log I got

/sbin # /etc/init.d/modemmanager stop
/sbin # qmicli -d /dev/modem --uim-sim-power-off=1
[/dev/modem] Successfully performed SIM power off
/ # qmicli -d /dev/modem --uim-sim-power-on=1
error: could not power on SIM: QMI protocol error (3): 'Internal'
/ # /etc/init.d/modemmanager start
/ # mmcli -m 0 -e
error: couldn't find modem
/ # mmcli -m 0 -e
error: couldn't enable the modem: 'GDBus.Error:org.freedesktop.ModemManager1.Error.Core.WrongState: modem in failed state'

Hoping thru mail you will get something readeable.


Hi, I cannot manage to get the LTE up and running. Still I have " Modem bearer teardown in progress."
or it says "Status: failed, failed reason: SIM missing".
Have you changed anything when building up the UFI003?
Could you share some tech outputs please - for instance : mmcli - m 0, ps, opkg list-installed, dmesg, fdisk -x. So i can compare with I have. Thanks

Does anyone know where I can get an UF896 with European bands?

All I find so far (on aliexpress and Amazon) is bands 1,3,5, or not specified; or for European bands most likely devices based on another SoC (one I bought, which is a MediaTek MT6735; for others I asked the sellers (on Amazon and Aliexpress), and when I seldomly received a meaningful answer it was said that it was another chip, not MSM8916).

This thread is mainly about getting an OpenWrt(-based) operating system to run on the device itself.
You are asking of using the device without modifying it's firmware with an external OpenWrt router.

Regarding your question:

Maybe you miss on your OpenWrt router some kmod- packages, usb modeswitch, and other stuff?

Can you post outputs of dmesg, of logread -f and maybe other stuff, while you connect the device?
→ And then please make a new thread (click on the "timestamp" which is on the top right of a posting here to branch off a new thread, sort it to an appropriate forum category and give it a meaningful title) and post your question together with logs there.

1 Like
Got mine on ebay :
It is clearly specified a qualcomm 8916 built in.
And it works in EU with the android original stock.

4G UFI-0100
Manufacturer	Qualcomm Technology
Model	msm8916_32_512 UNF1123
1 Like

UF896 - Qualcomm MSM8916 LTE router. LTE-FDD bands: B1/B3/B7/B20

Qualcomm MSM8916 LTE router. LTE-FDD bands: B1/B3/B7/B8/B20

1 Like

I recently purchased this LTE dongle, it is marked with UFI001C.

After backing up the EMMC, baseband and Qualcomm blobs, I tried installing the Debian image on the openstick repository
Once done flashing the appropriate boot image and transplanting the blobs, everything works just fine, and the SIM APN gets recognized automatically.

I then tried compiling openwrt from the original HandsomeMod repository selecting the appropriate device, LUCI and the WWAN applications.
After compiling the image, i tried flashing both the boot and system squashfs to the dongle, but I get an error when sending sparse data.

I then tried compiling from the Dreirund Handsomemod uf896 repo but depending if I select UFI001C as device or UF896 and then compile, I can get an image with working WWAN and broken OverlayFS or broken WWAN and status LEDs but working OverlayFS respectively.

What can I do to get a fully working compilable OpenWRT install for my board?

1 Like

I have three of these in my possession, two of them have failed to boot after installing the debian image and now just advise they are adb android phone but nothing showing under adb devices?

Mine are all uf896 1.1, looking at this I've done the same as @PatEvry with two dongles.

Could anyone advise the correct process to install Openwrt

I bought it too and had the same problem just yesterday. usb-modeswitch was ejecting the device even though it does not need ejecting. Uninstall usb-modeswitch or remove the relevant lines in /etc/usb-mode.json.

In my case I had to remove the following lines in /etc/usb-mode.json -

                "05c6:9024": {
                        "*": {
                                "t_vendor": 1478,
                                "t_product": [ 36901 ],
                                "mode": "StandardEject",
                                "msg": [  ]

Enjoy! :+1:

Edit: By the way, this is what I bought.

Edit 2: Thought I should also mention that I was expecting to receive a device with MDM9200 but got one with MSM8916 instead. Bought from Flipkart (https://www.flipkart.com/lapcare-ldf-90-usb-4g-modem-all-sim-network-support-data-card-wifi-hotspot/p/itm4471d9e2be2ce). Aliexpress doesn't deliver to "India" anymore due to "logistical issues" apparently. :rofl: Anyway, month of import on packaging says October 2022, so it appears to be freshly made and customized with the logo you see.


Ok, mine are not dead, just not providing enough power to boot it, windows playing silly.

very interesting topic, thanks to OP for starting it.

I am new to OpenWrt and just configured a Pi 4B as a travel router with a wifi usb and LAN usb adapter.

I also have ordered the SD410 LTE stick here. Make sure you ordered the Black one, where "Qualcomm 8916" is stated. Unfortunately only LTE bands B1/3/5 working, but for my region it is sufficient.

I don't see any reason to try to install OpenWrt on this stick, as there is no LAN port available, and the wifi connection is quite weak.

In my case I will connect it to my Pi 4B as native Android RNDIS usb modem, and not having to deal with the Android webgui.

Unfortunately I have not seen that the Openstick modder had checked if raw QMI mode is working. I don't expect it to work.

As there are many pcb versions of this stick, I am hesitant to flash debian,zip, as the Chinese wiki refers to some common problems, unless the pcb version is UFI001B. I am not sure yet what added value Debian would bring.

I would like to be able to configure/start-stop modem from Openwrt host and not from the Android web-GUI.

Anyone having this stick can confirm the following, when using it in native Android mode connected to an OpenWrt router:

  1. can you configure the LTE parameters e.g. APN using luci-proto-3g web interface?

  2. can you setup this modem as a WAN interface similar to a smartphone?

  3. is it possible to disable the modem's wifi hotspot permanently?

There is a video of the installation process of Openwrt on this 4G LTE module ( It is in Chinese )

1 Like

I'm always late to parties. I just received the dongle in the mail this morning I managed to turn it into a brick in few minutes :rofl:
My device has the print uz801 and has different test pads than those posted on this thread.

I didn't dump the original firmware. But, I can get the blobs of this device from here: https://github.com/OpenStick/stick-blobs/tree/main/stock-uz801

Long story short, I followed the directions from @extrowerk site. I run the command base/flash which didn't go smoothly (I didn't see the output until later) then I flashed debian and failed. At that moment I check the whole output and noticed the base/flash didn't go well and without noticing anything I flashed debian on top. So, now the device has no output for "lsusb", there is nothing with "adb devices" neither fastboot, no lights at all. EDL show only the "........." waiting for the device.

I call the wisdom of the crowd here for any ideas on how to recover from this issue. Here the terminal output that started the problem:

hackerbox-xx1@hackerboxmint:~/Downloads/OpenStick$ adb devices
List of devices attached
0123456789ABCDEF	device

hackerbox-xx1@hackerboxmint:~/Downloads/OpenStick$ adb reboot bootloader
hackerbox-xx1@hackerboxmint:~/Downloads/OpenStick$ fastboot devices
2321c	fastboot
hackerbox-xx1@hackerboxmint:~/Downloads/OpenStick$ ./base/flash.sh
erasing 'boot'...
OKAY [  0.147s]
finished. total time: 0.147s
error: cannot load 'aboot.bin': No such file or directory

finished. total time: 0.055s
FAILED (remote: unknown command)
finished. total time: 0.003s
FAILED (remote: unknown command)
finished. total time: 0.003s
FAILED (remote: unknown command)
finished. total time: 0.003s
FAILED (remote: unknown command)
finished. total time: 0.003s
erasing 'boot'...
OKAY [  0.132s]
finished. total time: 0.132s
rebooting into bootloader...
OKAY [  0.005s]
finished. total time: 0.055s
error: cannot load 'gpt_both0.bin': No such file or directory
error: cannot load 'hyp.mbn': No such file or directory
error: cannot load 'rpm.mbn': No such file or directory
error: cannot load 'sbl1.mbn': No such file or directory
error: cannot load 'tz.mbn': No such file or directory
error: cannot load 'fsc.bin': No such file or directory
error: cannot load 'fsg.bin': No such file or directory
error: cannot load 'modemst1.bin': No such file or directory
error: cannot load 'modemst2.bin': No such file or directory
error: cannot load 'aboot.bin': No such file or directory
error: cannot load 'sbc_1.0_8016.bin': No such file or directory
erasing 'boot'...
OKAY [  0.133s]
finished. total time: 0.133s
erasing 'rootfs'...
FAILED (remote: Partition table doesn't exist
finished. total time: 0.003s

finished. total time: 0.055s
all done please flash your os!
hackerbox-xx1@hackerboxmint:~/Downloads/OpenStick$ ls
base  base-generic.zip  debian  debian.zip  USER_Manual_en.pdf
hackerbox-xx1@hackerboxmint:~/Downloads/OpenStick$ cd debian
hackerbox-xx1@hackerboxmint:~/Downloads/OpenStick/debian$ ls
adb.exe        AdbWinUsbApi.dll  edl_config.json  flash.bat  rootfs.img
AdbWinApi.dll  boot.img          fastboot.exe     flash.sh
hackerbox-xx1@hackerboxmint:~/Downloads/OpenStick/debian$ ./flash.sh
sending sparse 'rootfs' 1/5 (203958 KB)...
OKAY [  9.896s]
writing 'rootfs' 1/5...
FAILED (remote: partition table doesn't exist)
finished. total time: 9.899s
target reported max download size of 268435456 bytes
sending 'boot' (13270 KB)...
OKAY [  0.614s]
writing 'boot'...
OKAY [  1.479s]
finished. total time: 2.093s

finished. total time: 0.055s
hackerbox-xx1@hackerboxmint:~/Downloads/OpenStick/debian$ adb shell
error: no devices/emulators found