Skip to content

UZ801 Flashing Guide: 1-Click OpenStick Debian Linux Installer & Fastboot

This guide walks you through installing custom Linux operating systems onto your UZ801 USB stick.



Section titled “Method 1: Automated 1-Click OpenStick Installer (Recommended)”

The OpenStick Installer is a cross-platform, minimal-action flashing tool designed to turn Qualcomm Snapdragon 410 (MSM8916) UZ801 dongles into Debian Linux devices with full brick protection.

Video Walkthrough: 1-Click Debian Flashing on UZ801

Section titled “Video Walkthrough: 1-Click Debian Flashing on UZ801”

Watch this step-by-step 42-second guide by @glos-os walking through enabling ADB debugging, backing up factory partitions, flashing Debian Linux, and testing LEDs over SSH:

  • Double-Click Launchers: Native scripts for Windows (run.bat), macOS (run.command), and Linux (run.sh). Automatically configures Python virtual environments and dependencies on first launch.
  • Automated EDL Transition: Reboots your stick into Qualcomm 9008 EDL mode via ADB, Fastboot, or SSH without opening casings or shorting test pins whenever possible.
  • Full eMMC Clone: Dumps a complete 1:1 raw eMMC backup (backups/uz801_<timestamp>_<imei>/full_emmc.bin) for 100% brick-proof local recovery.
  • Calibration Isolation & In-Place Injection: Automatically isolates your stick’s unique IMEI and modem radio calibration partitions (modemst1, modemst2, fsg, fsc, persist, sec) and injects them directly into the clean Debian image in under 0.1s.
  • Single-Step Flashing: Writes the personalized system via Qualcomm Firehose (edl wf) and automatically resets the stick into Debian.
  • Auto Network Discovery: Scans USB Ethernet to confirm Debian has booted and displays your SSH login details.
  1. Enable USB Debugging (ADB) on Stock Firmware:

    • Connect your PC or phone to the UZ801 Wi-Fi hotspot.
    • Open your browser and navigate to:
      http://192.168.100.1/usbdebug.html
      (Some firmware builds use /usbdebug.htm instead)
    • Click the button to enable USB debugging.
  2. Download & Extract Installer: Download openstick-installer.zip and extract it on your computer.

  3. Connect the Stick: Plug your UZ801 modem into any USB port on your computer.

  4. Launch the Installer:

    • Windows: Double-click run.bat
    • macOS: Double-click run.command
    • Linux: Double-click run.sh (or run ./run.sh in terminal)
  5. Follow the Interactive Prompts:

    • Target Board: Press 1 for UZ801.
    • Backup Partitions: Press Y (Strongly Recommended). The installer dumps the full eMMC image and extracts your stick’s cellular calibration files.
    • Choose Action: Press 1 for Install Linux (Debian).
    • The installer will automatically download the universal image from GitHub Releases, inject your unique calibrations, flash the eMMC via Qualcomm EDL mode, and reboot the stick (takes around 15 minutes).
  6. First SSH Login & LED Test: Once booted, the stick connects as a USB Ethernet gadget:

    Terminal window
    ssh user@192.168.5.1
    • User: user
    • Password: 1
    • Root Password: 1 (switch with sudo su)

    Verify the hardware by testing the onboard LEDs:

    Terminal window
    led-test

Method 2: Manual Fastboot & lk2nd Flashing

Section titled “Method 2: Manual Fastboot & lk2nd Flashing”
  1. A verified UZ801 (MSM8916 with eMMC) stick.
  2. Host machine with adb and fastboot installed (sudo apt install android-tools-adb android-tools-fastboot or Android SDK Platform Tools).
  3. Crucial Safety Step: A complete backup of your modem NV partitions (modemst1, modemst2, fsg) as described in Safety & Backups.
  4. Download the OpenStick UZ801 release package (base.zip and debian.zip) or postmarketOS / OpenWrt image.

On factory Android firmware, USB debugging (ADB) is usually disabled by default. Before you can send ADB commands:

  1. Connect your computer or phone to the modem’s Wi-Fi network.
  2. In your web browser, navigate to:
    http://192.168.100.1/usbdebug.htm
  3. Enable USB debugging (ADB) on that page.

Connect your UZ801 stick to your computer via USB:

Terminal window
# Verify ADB connection
adb devices
# Reboot into the stock Android fastboot bootloader
adb reboot bootloader

If your stock firmware does not respond to ADB even after enabling it via the web page, trigger EDL mode using the tweezers method (see UZ801 Pinouts) and flash emmc_appsboot.mbn with edl.py.

Confirm fastboot detects the board:

Terminal window
fastboot devices
# Output: [device_serial] fastboot

Step 2: Flash the lk2nd Secondary Bootloader

Section titled “Step 2: Flash the lk2nd Secondary Bootloader”

lk2nd provides standard mainline Linux device tree booting for Qualcomm MSM8916 boards.

Terminal window
# Flash lk2nd into the boot partition
fastboot flash boot lk2nd.img
# Reboot into lk2nd
fastboot reboot

The device will reboot. The blue LED will pulse, and the stick will re-enumerate in host fastboot mode with lk2nd active.

Terminal window
fastboot devices
# Should return device name containing 'lk2nd'

For the UZ801, lk2nd automatically detects the board ID and targets the msm8916-yiming-uz801v3.dtb device tree.


Section titled “Option A: Debian (OpenStick Base - Recommended)”
Terminal window
# Flash the root filesystem into system/rootfs
fastboot flash rootfs debian-rootfs.img
# (Optional) Erase userdata partition for clean boot
fastboot erase userdata
# Reboot into Debian
fastboot reboot

Option B: postmarketOS (Alpine-based Mainline)

Section titled “Option B: postmarketOS (Alpine-based Mainline)”
Terminal window
# Using pmbootstrap or pre-built postmarketOS image
pmbootstrap flasher flash_rootfs --partition rootfs
fastboot reboot
Terminal window
fastboot flash rootfs openwrt-msm8916-uz801-rootfs.img
fastboot reboot

After approximately 30 seconds:

  1. The UZ801 enumerates as a USB RNDIS/CDC-ECM Ethernet gadget adapter.
  2. The stick acts as a DHCP server, assigning your host PC an IP in the 192.168.68.x range.
  3. The stick IP address is 192.168.68.1.

Log in via SSH:

Terminal window
ssh user@192.168.68.1
  • Default User: user
  • Default Password: 1
  • Root Password: 1 (switch with sudo su)

Step 5: Connecting to Wi-Fi & Initial Setup

Section titled “Step 5: Connecting to Wi-Fi & Initial Setup”
Terminal window
# Expand rootfs partition to use full eMMC storage
sudo resize2fs /dev/mmcblk0p20
# Scan for Wi-Fi networks
sudo nmcli device wifi list
# Connect to your home or office Wi-Fi
sudo nmcli device wifi connect "Your_SSID" password "Your_Password"
# Update package repositories
sudo apt update && sudo apt upgrade -y

The cellular modem runs via Qualcomm’s QMI interface and ModemManager:

Terminal window
# Check modem detection status
mmcli -L
# Verify modem details (e.g. modem index 0)
mmcli -m 0
# Enable modem radio
mmcli -m 0 --enable
# Set your APN (replace 'internet' with your carrier APN)
sudo nmcli connection add type gsm ifname cdc-wdm0 con-name "Cellular4G" apn "internet"
sudo nmcli connection up "Cellular4G"

Frequently Asked Questions — UZ801

How do I flash OpenStick Debian Linux onto a UZ801 4G USB modem?

Download the automated 1-Click OpenStick Installer (openstick-installer.zip) for Windows, macOS, or Linux. It backs up your factory eMMC partitions, preserves your IMEI/QCN cellular calibration, and flashes OpenStick Debian automatically.

Which UZ801 PCB silkscreen revisions are supported by OpenStick?

Genuine Qualcomm MSM8916 boards marked UZ801_V2.1, UZ801_V2.2, UZ801_V3.0, and UZ801_V3.31 with 4GB BGA eMMC storage have full first-class support.