Skip to content

Latest commit

 

History

42 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MaxNet OpenWrt for Jio AirFiber IDU

JIDU6811 / JIDU6J11 (Qualcomm IPQ9574 / IPQ9554)

Official high-performance OpenWrt build — Linux 6.18 (AArch64, 64-bit) — purpose-built for the Jio AirFiber IDU router (JIDU6811 / JIDU6J11-6811).

Build Status Release License Downloads Issues Stars


📑 Table of Contents


🧭 Overview

MaxNet is custom OpenWrt firmware for the Jio AirFiber IDU (Indoor Unit) router, replacing the limited stock firmware with a full Linux-based router operating system. Built on the Qualcomm[...]

Whether you want faster throughput, advanced firewall/VPN control, USB tethering fallback, or full ownership of your router, MaxNet turns a Jio AirFiber IDU into a genuine high-performance OpenWrt[...]

Note

New to OpenWrt or router flashing? Read this entire guide once before starting. Step 1 (RAM boot) is completely reversible and lets you try everything safely before making any permanent chan[...]


☕ Support This Project

💡 Fuel development & keep this project actively maintained!

Building and maintaining custom firmware for modern Wi-Fi 6 Qualcomm hardware takes extensive reverse engineering, testing, and support. If MaxNet helped you, consider supporting the work.

UPI Payment:

9824584454@ybl

📊 Hardware Specifications & Subsystem Status

Subsystem Status Technical Details
CPU Architecture 🟢 Working Quad-Core ARM Cortex-A73 @ 2.2 GHz (AArch64 64-bit, Linux 6.18)
RAM Storage 🟢 Working 512 MB DDR4 RAM @ 1600 MHz
Flash Memory 🟢 Working 256 MB Winbond SPI Serial NAND (W25N02KWZEIR) with UBI / UBIFS Overlay
Switch & Ethernet Ports 🟢 Working 1x 2.5G/1G WAN (Blue Port) + 4x Gigabit LAN (Yellow Ports) via Qualcomm PPE Hardware NAT Acceleration
5 GHz Wi-Fi 6 🟢 Working Qualcomm QCN9074 PCIe (ath11k_pci), HE80/HE160 @ Channel 36, 30.00 dBm (MaxNet-5G, 100% Signal)
2.4 GHz Wi-Fi 6 🟢 Working Qualcomm IPQ9574 AHB (ath11k_ahb), Hexagon Q6 DSP, HT20/HE20 @ Channel 1, 30.00 dBm (MaxNet-2.4G, 100% Signal)
USB 3.0 & 4G/5G Tethering 🟢 Working SuperSpeed USB 3.0 Host + Android/iPhone Mobile USB Tethering (rndis / cdc_ether)
LuCI Web Dashboard & SSH 🟢 Working Web UI: http://192.168.1.1 | SSH: root@192.168.1.1 (Port 22)
Dynamic 3-Stage LEDs 🟢 Working 🔴 Booting → 🔵 Ready / Standby → 🟢 Online (Internet Reachable)

🔑 Default Firmware Settings

Setting Default Value Notes
Router IP Address 192.168.1.1 Subnet: 255.255.255.0 (/24)
Web Interface (LuCI) http://192.168.1.1 Accessible from any connected LAN port or Wi-Fi
SSH Access ssh root@192.168.1.1 Port 22
Root Password (None / Blank by default) Set your password via LuCI or passwd command
Default 2.4 GHz SSID MaxNet-2.4G Channel 1 (HT20), Open
Default 5 GHz SSID MaxNet-5G Channel 36 (HE80), Open
Default Wi-Fi Password Open / No password Configure WPA2/WPA3 in LuCI → Network → Wireless
Serial Console Baudrate 115200 8N1 Flow control: None

Important

Default Wi-Fi networks are open (unencrypted). Set a WPA2/WPA3 password and change the root password immediately after your first login — see the [FAQ](#-comprehensive-troubleshooting-[...]


📦 Release Files Explained

Every release provides three firmware binaries tailored for different stages:

File Name Typical Size Primary Purpose How to Use
initramfs.itb ~16.6 MB RAM Boot & Testing (No Risk) Loaded into memory via TFTP in U-Boot (tftpboot 0x46000000 initramfs.itbbootm 0x46000000). Leaves NAND untouched.
sysupgrade.bin ~14.7 MB Permanent Production Flash & Web Upgrades Used to install or upgrade OpenWrt permanently with persistent storage via LuCI Web UI or sysupgrade command.[...]
factory.ubi ~15.5 MB Raw UBI NAND Container Raw UBI image formatted for the NAND ubi partition, containing separate kernel and rootfs squashfs volumes.

🚨 Safety Notice

Warning

Flashing custom firmware modifies your router at a low level. Step 1 (RAM boot) is 100% reversible, but Step 3 (permanent flash) overwrites your current firmware. Please read before pro[...]

  • Confirm your exact model (JIDU6811 or JIDU6J11-6811) printed on the device label before flashing anything.
  • Never disconnect power or Ethernet during an active flash or sysupgrade — this can corrupt the flash and hard-brick the device.
  • Never connect the UART VCC pin — see Hardware Serial UART Connection.
  • Flashing third-party firmware voids any manufacturer warranty.
  • Always validate with Step 1 (RAM boot) first before committing to a permanent flash in Step 3.
  • This is community firmware provided as-is. Proceed at your own risk, and keep the U-Boot serial console connected during your first flash in case recovery is needed.

🛠️ Prerequisites & PC Setup

1. Hardware Needed

  • Jio AirFiber IDU Router (JIDU6811 / JIDU6J11-6811)
  • USB-to-UART 3.3V Serial Adapter (CP2102, CH340, FT232, or PL2303)
  • Ethernet Cable (Cat5e / Cat6)
  • Linux PC (Ubuntu / Debian / Fedora / Arch)

2. Install Required Tools on Linux PC

sudo apt update && sudo apt install -y minicom tftpd-hpa curl

3. Grant Permanent Serial Port Permissions (One-Time Setup)

Run this once so you never need sudo chmod 777 /dev/ttyUSB0 again:

echo 'KERNEL=="ttyUSB*", MODE="0666", GROUP="dialout"' | sudo tee /etc/udev/rules.d/99-ttyusb.rules && echo 'KERNEL=="ttyACM*", MODE="0666", GROUP="dialout"' | sudo tee -a /etc/udev/rules.d/99-tt[...]

Tip

Log out and back in (or reboot) afterward so your new dialout/tty group membership takes effect.


🔌 Hardware Serial UART Connection

Connect your USB-to-UART adapter to the router's internal UART header pins:

USB-to-UART Adapter Router UART Pin
GND GND
TX RX
RX TX

Warning

Do NOT connect the VCC (3.3 V / 5 V) pin. Power the router only through its original 12 V DC wall adapter. Connecting VCC from your USB adapter can damage both devices.

Open the serial console on your PC:

minicom -D /dev/ttyUSB0 -b 115200

🔐 U-Boot Login & Password Retrieval

During boot, if prompted for credentials:

Field Value
Username ________
Password ________________

ℹ️ Observed Pattern (JIDU6801 / JIDU6701):

  • Username → last 8 digits of the RSN printed on the barcode sticker on the back of the router.
  • Password → the reversed username digits + an 8-character suffix (e.g. 9rOL8bjr or pYunNk45).

Example: if the RSN is RTHHGAK00123456, the username is 00123456 and the password is 654321009rOL8bjr.

Direct Password Extraction (If SSH Access Exists on Stock Firmware)

If you already have SSH access on the stock firmware, you can read the exact password directly:

gm_factory_init.sh get uboot_passwd
/usr/bin/jioMfgData get ubootPasswd
strings /dev/mtd7 | grep -i pass

🚀 Step 1: Safe RAM Boot via TFTP (Testing Mode)

Testing in RAM is 100% risk-free — nothing is written to flash memory until you're satisfied and choose to proceed to Step 3.

1.1 Set a Static IP on Your Linux PC

Connect your PC's Ethernet cable to the router's LAN4 (or WAN) port:

sudo ip addr flush dev eth0
sudo ip addr add 192.168.1.2/24 dev eth0
sudo ip link set eth0 up

(Replace eth0 with your PC's actual network interface name from ip link.)

1.2 Prepare the TFTP Server on Your PC

sudo mkdir -p /srv/tftp
sudo chmod -R 777 /srv/tftp
sudo curl -sL https://github.com/mahendraplus/maxidu/releases/latest/download/initramfs.itb -o /srv/tftp/initramfs.itb
sudo systemctl restart tftpd-hpa

1.3 Boot in U-Boot (Run Each Command Separately)

Power on the router and press any key in the serial console to stop autoboot. Enter your unit's U-Boot username and password.

At the IPQ9574# prompt, enter these commands one at a time:

setenv ipaddr 192.168.1.10
setenv serverip 192.168.1.2
dcache off; icache off
setenv fdt_high
setenv initrd_high
setenv bootargs "console=ttyMSM0,115200n8 earlycon"
tftpboot 0x46000000 initramfs.itb
bootm 0x46000000

🌐 Step 2: Accessing OpenWrt

Within about 10 seconds of booting:

  1. Via Browser — open http://192.168.1.1 and click Login (no password required).
  2. Via SSH:
    ssh root@192.168.1.1
  3. Via Wi-Fi — connect to MaxNet-2.4G or MaxNet-5G from your phone or laptop (both broadcast at full signal with no password).

💾 Step 3: Permanent Production Installation (Persistent Flash)

Once you've confirmed everything works in RAM boot mode, make it permanent. This installs OpenWrt so it boots in ~1 second and keeps all Wi-Fi settings, passwords, and packages across reboots[...]

Method A: Flash via LuCI Web Dashboard (Recommended)

  1. Download sysupgrade.bin from the Latest Release.
  2. Open your browser and navigate to:
    http://192.168.1.1/cgi-bin/luci/admin/system/flash
    
  3. Scroll to Flash new firmware image and click Flash image....
  4. Select the downloaded sysupgrade.bin and click Upload.
  5. On the Flash image? confirmation screen:
    • Size: ~14.74 MiB
    • You may see a notice — invalid sysupgrade file Image check failed. — this is expected when flashing from the RAM/stock environment.
  6. Check ☑️ Force upgrade (allows flashing even though the format check warns).
  7. Uncheck Keep settings if you want a clean installation.
  8. Click Continue.
  9. The router writes the UBI partition and reboots permanently within ~30 seconds.

Method B: Flash via SSH Terminal

  1. Transfer sysupgrade.bin from your PC to the router:
    cat sysupgrade.bin | ssh root@192.168.1.1 "cat > /tmp/sysupgrade.bin"
  2. Run sysupgrade on the router (root@Maxnet:~#):
    sysupgrade -F -v -n /tmp/sysupgrade.bin

Step 3.3: Configure Permanent U-Boot Autoboot

Once the router restarts, at the IPQ9574# prompt, enter these commands one at a time:

setenv bootcmd "ubi part ubi; ubi read 0x44000000 kernel; bootm 0x44000000"
setenv fdt_high
setenv initrd_high
saveenv
reset

🎉 Congratulations!

Your router is now permanently running full OpenWrt Production Mode:

  • 1-Second Instant Boot — loads the optimized kernel directly from the UBI partition.
  • 💾 Persistent Flash Storage — Wi-Fi passwords, SSIDs, network settings, and installed packages all survive reboots.
  • 🚫 No Recovery Warning — LuCI runs in full production read-write mode.

💡 Tips & Advanced Features

1. USB 4G/5G Phone Tethering

Plug an Android phone or iPhone into the USB 3.0 port and enable USB Tethering in the phone's settings. The router automatically detects the connection (wan_usb interface) and shares mobile[...]

2. Dynamic 3-Stage LED Status Indicators

An automated hardware daemon continuously monitors network connectivity:

  • 🔴 Red Solid — router is booting and initializing hardware peripherals.
  • 🔵 Blue Solid — OpenWrt is ready (LAN & Wi-Fi active, waiting for WAN/Internet).
  • 🟢 Green Solid — connected to the Internet (gateway and DNS reachable).

3. Wi-Fi Management & Verification

Check active wireless status and signal strength from the router terminal:

iw dev
iwinfo phy0-ap0 info
iwinfo phy1-ap0 info

❓ Comprehensive Troubleshooting & FAQ

Q: Why did LuCI say invalid sysupgrade file Image check failed during upload?

A: When migrating from stock firmware or an initial RAM boot (initramfs.itb), OpenWrt's metadata validator can't find an existing board profile in flash. Check the ☑️ Force upgrade [...]

Q: Why did U-Boot show Console buffer overflow occured!! or clip my pasted command?

A: U-Boot's serial console input buffer has a strict line-length limit (~64 characters). Avoid pasting long, multi-command chains as a single line — run each command separately, exactly as [...]

Q: TFTP transfer times out (T T T T T)?

A:

  1. Confirm your PC's Ethernet static IP is set to 192.168.1.2/24.
  2. Temporarily disable any active PC firewall: sudo ufw disable.
  3. Check the TFTP service status on your PC: sudo systemctl status tftpd-hpa.
  4. Connect the router and PC directly, or through a simple unmanaged switch — some managed switches block TFTP/BOOTP traffic.

Q: How do I change the Wi-Fi password or SSID?

A: Open http://192.168.1.1Network → Wireless, click Edit on radio0 (5G) or radio1 (2.4G), set your desired SSID and WPA2/WPA3 password, then click[...]

Q: How do I set the root password?

A: Open LuCI → System → Administration, enter a new password, and click Save & Apply. From SSH, run passwd and follow the prompts instead.

Q: My serial adapter shows no output — what should I check?

A: Confirm the baud rate is 115200 8N1, make sure TX/RX aren't swapped (adapter TX → router RX, and vice versa), verify GND is connected, and check that /dev/ttyUSB0 (or /dev/ttyACM0) appe[...]

Q: Where can I get help for an issue not covered here?

A: Open a new GitHub Issue with your exact model number, the step you're stuck on, and any serial console output — this makes diagnosis much[...]


🙏 Special Thanks

Special thanks to "Sandiep" (https://github.com/Sandiep) for the research, PRs, reverse-engineering, debugging, fixes, and continuous support that helped make this firmware possible.

A lot of what I learned during this project came from his work and guidance.

Huge respect and thank you, Sandiep. ❤️


🤝 Contributing

Contributions, bug reports, and feature requests are welcome!

  • 🐛 Found a bug? Open an issue.
  • 🔧 Want to improve something? Fork the repo, make your changes, and submit a pull request.
  • ⭐ If this project helped you, consider starring the repository — it helps others discover it.

📄 License

This project is released under the license specified in the LICENSE file of this repository.


Made with ❤️ for the OpenWrt & Networking Community.

About

High-performance OpenWrt Linux 6.18 firmware for Jio AirFiber IDU (JIDU6811 / │ IPQ9574). Unlocked dual-band Wi-Fi 6 (30 dBm), 5-port Gigabit switch, USB 3.0 │ tethering & LuCI dashboard.

Topics

Resources

Stars

8 stars

Watchers

0 watching

Forks

Releases

Contributors

Languages