41 articles
RM520N Series (SDXLEMUR Linux)

Installation on Quectel RM520N & Qualcomm X5*/X6* (On-Modem Linux)

Deploy QManager directly inside the RM520N-GL, RG501, or any Qualcomm Snapdragon X5* and X6* modem running internal Linux.

5 min read ยท Updated

Installation on Quectel RM520N & Qualcomm X5*/X6* (On-Modem Linux)

The QManager-RM520N edition transforms Qualcomm Snapdragon-based Quectel modems into standalone smart router appliances running entirely on the modem's internal ARM processor.

QManager RM520N Web console screen
The Web Console opens a root shell on the modem in your browser.

Prerequisites & Preparation#

  1. Qualcomm Snapdragon X5* or X6* modem (such as RM520N-GL reference, RG501Q-EU probed, or RM521F community) mounted on an RGMII Ethernet carrier board or USB enclosure with Ethernet.
  2. Direct access to the modem's internal Linux shell via ADB (adb shell) or SSH (ssh root@192.168.225.1, or ssh root@192.168.224.1 depending on board firmware).
  3. An active cellular data connection on the modem so it can download packages from GitHub and Entware.

Unlocking ADB & Root Shell Access (carp4 & Value 2 Bypass)#

Many production Quectel firmwares ship with Android Debug Bridge (ADB) disabled or locked by a challenge-response authorization system. You must unlock ADB or enable SSH before installing QManager:

Method 1: The Standard AT+QADBKEY Challenge (carp4 Algorithm)#

  1. Send the challenge query command via any serial AT terminal:
    AT
    AT+QADBKEY?
    The modem responds with a cryptographic challenge:
    +QADBKEY: 3482719582910485
  2. Compute the authorization key using carp4's open-source qadbkey-unlock Python algorithm:
    Bash
    python3 qadbkey.py 3482719582910485
    # Output: Generated Response Key: a8f9c1e0b2d3...
  3. Submit the generated key back to the modem:
    AT
    AT+QADBKEY="a8f9c1e0b2d3..."
  4. Once verified, the modem returns OK. ADB root shell is now permanently unlocked!

Method 2: The Value 2 Backdoor Bypass (Beta / Engineering Builds)#

On select Quectel beta and development firmware images, ADB can be unlocked directly by altering the USB composition without key calculation:

AT
AT+QCFG="usbcfg",0x2C7C,0x0801,1,1,1,1,1,2,0
  • Setting parameter 9 to value 2 forces ADB daemon enablement unconditionally.
  • Reboot the module with AT+CFUN=1,1 to apply.

One-Line Automated Installation#

Access your modem's shell via SSH or ADB:

Shell
adb shell
# Or: ssh root@192.168.225.1 (default) or ssh root@192.168.224.1

Run the official one-line bootstrap installer (works with either curl or wget):

Bash
curl -fsSL -o /tmp/qmanager-installer.sh   https://github.com/dr-dolomite/QManager-RM520N/raw/refs/heads/main/qmanager-installer.sh &&   bash /tmp/qmanager-installer.sh

Alternatively, using wget:#

Bash
wget -O /tmp/qmanager-installer.sh   https://github.com/dr-dolomite/QManager-RM520N/raw/refs/heads/main/qmanager-installer.sh &&   bash /tmp/qmanager-installer.sh

Entware & Lighttpd Bootstrap#

During execution, the installer:

  1. Detects whether Entware is present in /opt. If missing, it downloads and initializes the ARMv7l Entware package repository.
  2. Installs lightweight dependencies: lighttpd, lighttpd-mod-cgi, lighttpd-mod-redirect, zoneinfo-core.
  3. Unpacks QManager into /usrdata/qmanager/www on the persistent NAND partition (/usrdata read-write split).
  4. Configures AT routing using qcmd linked to atcli_smd11 (compiled Rust ARMv7 binary) communicating directly over /dev/smd11.
  5. Stores application configuration in /etc/qmanager/.
  6. Registers and activates systemd service units:
    • lighttpd.service (Web server serving statically-exported UI from /usrdata/qmanager/www)
    • qmanager-poller.service (Adaptive background AT telemetry poller daemon)
    • qmanager-watchcat.service (Network resilience and automated watchdog recovery)
    • qmanager-setup.service (Boot initialization and hardware profile self-healing)

Accessing the Web Console#

Once the script completes (typically 30โ€“60 seconds), the console outputs:

  * QManager successfully installed!
  * Access URL: http://192.168.225.1

Open your browser and navigate to:

http://192.168.225.1

(Stock RM520N-GL & RG501Q-EU default Ethernet gateway address; or http://192.168.224.1 on certain carrier board firmware)

Troubleshooting & Reset#

Check Service Status#

Shell
systemctl status lighttpd
systemctl status qmanager-poller
systemctl status qmanager-watchcat

Inspect Application Logs#

Shell
# Poller daemon live telemetry logs
journalctl -u qmanager-poller -n 50 -f

# System setup and self-heal diagnostic log
cat /tmp/qmanager.log

Completely Uninstall QManager#

Bash
bash /tmp/qmanager_install/uninstall_rm520n.sh