Router einrichten Xiaomi AX3200 Redmi ax6s
Inhaltsverzeichnis
Xiaomi AX3200
Technische Daten
Geräte-Name | Hersteller | Preis | RAM in MB | Flash ROM in MB | Mhz/SoC (CPU-Leistung) |
MIMO 1x1:1 | Version (tested) | Beschreibung | LAN-Adresse OriginalFW (Nutzername Password) |
Wirkleistung |
---|---|---|---|---|---|---|---|---|---|---|
Xiaomi AX3200 | Xiaomi | 80€ | 256 | 128NAND | 1350/MediaTek MT7622B A53 64Bit DualCore SMT (2Cores/2Threads) |
4x4:4@2,4Ghz 4x4:4@5GhzAX |
RB01 | 3 LAN:1 WAN (1Gbit), 2,4Ghz und 5Ghz (AX) WLAN, 6 feste AntennenRouter einrichten Xiaomi AX3200 | 192.168.31.1/24(LAN) (root/muss berechnet werden) | Originalnetzteil (15W) 5,9W(Leerlauf+2xGBLAN) 6,6W(Vollast) |
Voraussetzungen
- KEINE dauerhafte Internetverbindung wie bei der Gigabit Edition
- ein Xiaomi AX3200 / mit aktiviertem Telnet*
- Windows oder Linux Rechner
- Strom und Netzwerkkabel
- python3
- telnet
- ssh
- Ein Arbeitsverzeichnis auf eurem Rechner, z.B. unter C:\temp
Dorthin dann die Firmware ((openwrt-mediatek-mt7622-xiaomi_redmi-router-ax6s-squashfs-factory.bin) laden, in diesem Fall das Openwrt Snapshot, von https://downloads.openwrt.org/snapshots/targets/mediatek/mt7622/ ins temp Verzeichnis laden:
*) Sollte Router der Xiaomi Router Ax3200 keinen aktivierten Telnet Zugang haben, gibt es zwei weitere Methoden das Gerät zur Mitarbeit zu bewegen und Telnet zu aktivieren.
- „netmode:4“-Methode – mit einem anderen Xiaomi-Router mit Mesh https://openwrt.org/toh/xiaomi/ax3200
- „netmode:4.1“-Methode – mit dem jmceleneys xiaomi-enable-mesh-telnet.py Script, simuliert einen anderen Xiaomi Router https://openwrt.org/toh/xiaomi/ax3200
Im Falle eines Xiaomi RedMi AX6 (Version RB3) gibt es die Möglichkeit eine BETA-Entwicklerversion einzuspielen, bei der Telnet erlaubt ist.
Router vorbereiten
- LAN Port an Computer
Kabel an einen der drei LAN Ports anschließen. Ihr bekommt eine Adresse aus 192.168.31.1/24
Wenn auf Ihrem Gerät Telnet ab Werk aktiviert ist, kann losgelegt werden. Test mit http://192.168.31.1/cgi-bin/luci/api/xqsystem/fac_info
Ausgabe:
{"telnet":true,"init":false,"wl0_ssid":"xiaomi-router-rb01_miapec04_5G","ssh":false,"version":"1.0.35","facmode":false,"4kblock":false,"secboot":false,"wl1_ssid":"xiaomi-router-rb01_miapec04","uart":false}
oder
Invoke-WebRequest "http://192.168.31.1/cgi-bin/luci/api/xqsystem/fac_info" | select Content Content ------- {"telnet":true,"init":false,"wl0_ssid":"xiaomi-router-rb01_miap24a9_5G","ssh":false,"version":"1.0.35","facmode":false,"4kblock":false,"...
oder
telnet 192.168.31.1
Ausgabe:
XiaoQiang login: Login timed out after 60 seconds
Passwort
Zuerst gilt es das Passwort zu berechnen. Dazu gibt es dieses kleines Python3-Programm (https://raw.githubusercontent.com/Freifunk-Dresden/AX6S-unlock/master/unlock_pwd.py), einfach auf der lokalen Festplatte mit dem Namen xxx.py speichern und ausführen (Windows oder Linux)
python3 xxx.py YYYYYY/ZZZZZZZ
- YYYYYY/ZZZZZZZ ist die tatsächliche Seriennummer des Geräts. Zu finden ist Seriennummer auf dem Etikett auf der Rückseite des Routers.
Passwort "merken".
Windows PowerShell Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten. Lernen Sie das neue plattformübergreifende PowerShell kennen – https://aka.ms/pscore6 PS C:\Users\lamir> cd C:\temp\ PS C:\temp> python.exe .\serial.py 35756/J1UD0***8 96f7***1
Firmware flashen
Ein paar Vorbereitung sind noch zu treffen, die heruntergeladene Software sollte hier sein und umbenannt in "factory.bin"" werden, anschließend wird ein http Server gestartet:
PS C:\temp> dir Verzeichnis: C:\temp Mode LastWriteTime Length Name ---- ------------- ------ ---- -a---- 21.04.2022 18:38 18098 Anleitung.odt -a---- 21.04.2022 18:33 1886 ausgabe.txt -a---- 21.04.2022 18:46 9961472 openwrt-mediatek-mt7622-xiaomi_redmi-router-ax6s-squashfs-factory.bin -a---- 21.04.2022 18:25 824 serial.py PS C:\temp> Get-FileHash .\openwrt-mediatek-mt7622-xiaomi_redmi-router-ax6s-squashfs-factory.bin Algorithm Hash Path --------- ---- ---- SHA256 561A49F3B7F2EC398649A1CBA1F826FEB46272057629B07D6891820A676B1C0D C:\temp\openwrt-mediatek-mt76... PS C:\temp> Rename-Item -Path "C:\temp\openwrt-mediatek-mt7622-xiaomi_redmi-router-ax6s-squashfs-factory.bin" -NewName "factory.bin"
PS C:\temp> python.exe -m http.server Serving HTTP on :: port 8000 (http://[::]:8000/) ...
In einem neuen PowerShell Fenster gehen wir auf den Router:
PS C:\temp>telnet 192.168.31.1 XiaoQiang login: root Password: BusyBox v1.25.1 (2021-08-07 08:04:56 UTC) built-in shell (ash) ----------------------------------------------------- Welcome to XiaoQiang! ----------------------------------------------------- $$$$$$\ $$$$$$$\ $$$$$$$$\ $$\ $$\ $$$$$$\ $$\ $$\ $$ __$$\ $$ __$$\ $$ _____| $$ | $$ | $$ __$$\ $$ | $$ | $$ / $$ |$$ | $$ |$$ | $$ | $$ | $$ / $$ |$$ |$$ / $$$$$$$$ |$$$$$$$ |$$$$$\ $$ | $$ | $$ | $$ |$$$$$ / $$ __$$ |$$ __$$< $$ __| $$ | $$ | $$ | $$ |$$ $$< $$ | $$ |$$ | $$ |$$ | $$ | $$ | $$ | $$ |$$ |\$$\ $$ | $$ |$$ | $$ |$$$$$$$$\ $$$$$$$$$ | $$$$$$ |$$ | \$$\ \__| \__|\__| \__|\________| \_________/ \______/ \__| \__| root@XiaoQiang:~#
Und geben folgende Befehle ein:
nvram set ssh_en=1
nvram set uart_en=1
nvram set boot_wait=on
nvram set flag_boot_success=1
nvram set flag_try_sys1_failed=0
nvram set flag_try_sys2_failed=0
nvram commit
root@XiaoQiang:~# nvram set ssh_en=1 vram set root@XiaoQiang:~# nvram set uart_en=1 nvram set broot@XiaoQiang:~# nvram set boot_wait=on nvram setroot@XiaoQiang:~# nvram set flag_boot_success=1 nvram root@XiaoQiang:~# nvram set flag_try_sys1_failed=0 vram set root@XiaoQiang:~# nvram set flag_try_sys2_failed=0 nvram croot@XiaoQiang:~# nvram commit root@XiaoQiang:~# cd /tmp
Wir holen uns das Image von unserem http Server (Achtung IP anpassen).
root@XiaoQiang:/tmp# wget http://192.168.31.202:8000/factory.bin
Connecting to 192.168.31.202:8000 (192.168.31.202:8000)
factory.bin 100% |***********************************************************************| 9728k 0:00:00 ETA
root@XiaoQiang:/tmp#sha256sum factory.bin
561a49f3b7f2ec398649a1cba1f826feb46272057629b07d6891820a676b1c0d factory.bin
root@XiaoQiang:/tmp#mtd -r write factory.bin firmware
Unlocking firmware ...
Writing from factory.bin to firmware ...
Rebooting ...
Verbindung zu Host verloren.
Und logen uns in OpenWrt ein....
PS C:\Users\lamir>PS C:\Users\lamir> ipconfig.exe Windows-IP-Konfiguration Unbekannter Adapter OVPN-TUN: Medienstatus. . . . . . . . . . . : Medium getrennt Verbindungsspezifisches DNS-Suffix: Ethernet-Adapter Mainboard Freifunk 1GB: Verbindungsspezifisches DNS-Suffix: lan IPv4-Adresse . . . . . . . . . . : 192.168.1.247 Subnetzmaske . . . . . . . . . . : 255.255.255.0 Standardgateway . . . . . . . . . : 192.168.1.1 PS C:\Users\lamir> ssh root@192.168.1.1 The authenticity of host '192.168.1.1 (192.168.1.1)' can't be established. ED25519 key fingerprint is SHA256:+naKqsISXAJjSi8cfjd/34LbtC8PMW4TqQKiee4ya6M. Are you sure you want to continue connecting (yes/no/[fingerprint])? yes Warning: Permanently added '192.168.1.1' (ED25519) to the list of known hosts. BusyBox v1.35.0 (2022-04-20 16:14:08 UTC) built-in shell (ash) _______ ________ __ | |.-----.-----.-----.| | | |.----.| |_ | - || _ | -__| || | | || _|| _| |_______|| __|_____|__|__||________||__| |____| |__| W I R E L E S S F R E E D O M ----------------------------------------------------- OpenWrt SNAPSHOT, r19508-0d2d52df69 ----------------------------------------------------- === WARNING! ===================================== There is no root password defined on this device! Use the "passwd" command to set up a new password in order to prevent unauthorized SSH logins. -------------------------------------------------- root@OpenWrt:~#passw
Webinterface
root@OpenWrt:~#opkg update root@OpenWrt:~#opkg install luci
Zusammenfassung
mit Freifunk Dresden Software
1. Fenster
PS C:\Users\lamir> Start-BitsTransfer -Source https://raw.githubusercontent.com/Freifunk-Dresden/AX6S-unlock/master/unlock_pwd.py PS C:\Users\lamir> python.exe .\unlock_pwd.py Usage: .\unlock_pwd.py <S/N> PS C:\Users\lamir> python.exe .\unlock_pwd.py 35756/J1UD32286 bebcef7d PS C:\Users\lamir> Start-BitsTransfer -Source https://download.freifunk-dresden.de/firmware/latest/firmware/mediatek.mt7622.generic/openwrt-mediatek-mt7622-xiaomi_redmi-router-ax6s-squashfs-factory.bin PS C:\Users\lamir> Rename-Item -Path ".\openwrt-mediatek-mt7622-xiaomi_redmi-router-ax6s-squashfs-factory.bin" -NewName "factory.bin" PS C:\Users\lamir> python.exe -m http.server Serving HTTP on :: port 8000 (http://[::]:8000/) ... ::ffff:192.168.31.1 - - [14/Dec/2022 20:45:11] "GET /factory.bin HTTP/1.1" 200 -
2. Fenster
telnet 192.168.31.1 XiaoQiang login: root Password: BusyBox v1.25.1 (2021-08-07 08:04:56 UTC) built-in shell (ash) ----------------------------------------------------- Welcome to XiaoQiang! ----------------------------------------------------- $$$$$$\ $$$$$$$\ $$$$$$$$\ $$\ $$\ $$$$$$\ $$\ $$\ $$ __$$\ $$ __$$\ $$ _____| $$ | $$ | $$ __$$\ $$ | $$ | $$ / $$ |$$ | $$ |$$ | $$ | $$ | $$ / $$ |$$ |$$ / $$$$$$$$ |$$$$$$$ |$$$$$\ $$ | $$ | $$ | $$ |$$$$$ / $$ __$$ |$$ __$$< $$ __| $$ | $$ | $$ | $$ |$$ $$< $$ | $$ |$$ | $$ |$$ | $$ | $$ | $$ | $$ |$$ |\$$\ $$ | $$ |$$ | $$ |$$$$$$$$\ $$$$$$$$$ | $$$$$$ |$$ | \$$\ \__| \__|\__| \__|\________| \_________/ \______/ \__| \__| root@XiaoQiang:~# nvram set ssh_en=1 root@XiaoQiang:~# nvram set uart_en=1 root@XiaoQiang:~# nvram set boot_wait=on root@XiaoQiang:~# nvram set flag_boot_success=1 root@XiaoQiang:~# nvram set flag_try_sys1_failed=0 root@XiaoQiang:~# nvram set flag_try_sys2_failed=0 root@XiaoQiang:~# nvram commit root@XiaoQiang:~# cd /tmp/ root@XiaoQiang:/tmp# wget http://192.168.31.202:8000/factory.bin Connecting to 192.168.31.202:8000 (192.168.31.202:8000) factory.bin 100% |******************************************************************************************| 10112k 0:00:00 ETA root@XiaoQiang:/tmp# mtd -r write factory.bin firmware Unlocking firmware ... Writing from factory.bin to firmware ... Rebooting ...
Ferdsch
Optimierung
Zur Zeit Arbeitet AX in Verbindung mit anderen Freifunkrouter noch nicht korrekt, sowohl im Clientbetrieb als auch im Mesh-Netz sind die Datenraten unter 5Ghz schlechter als mit AC, deshalb vorerst von Hand auf AC zurück stellen.
uci set wireless.radio5g.htmode='VHT80' uci commit
* Es handelt sich um einen Bug in OpenWrt, der zwar AC mit Beamforming konfiguriert, AX jedoch nicht.
Dauerhaft Konfigurations- und Updatefest siehe "Startscript Check":
Startscript Check
Aufruf im Editor:
vi /etc/ddmesh/post-setup-wifi.sh
Diese Befehlszeile in das Script ^ einfügen: Es stellt den ax(HE80) Modus beim Routerstart auf ac(VHT80) um.
x='wireless.radio5g.htmode'; if [ $(uci get $x) = 'HE80' ]; then uci set $x='VHT80'; logger -t userscript set $x from HE80 to VTH80; fi
Beispiel:
Xiaomi Redmi Router AX6S @ r1113:~# cat /etc/ddmesh/post-setup-wifi.sh
#!/bin/sh
TAG="post-setup-wifi"
x='wireless.radio5g.htmode'; if [ $(uci get $x) = 'HE80' ]; then uci set $x='VHT80'; logger -t userscript set $x form HE80 to VTH80 on 1113; fi
# example:
logger -t "${TAG}" "called at $(date)"
Energie
Standardmäßig ist der Governor Performance eingestellt:
i='/sys/devices/system/cpu/cpufreq/policy0/';ls -al $i; cat $i*
Zum Stromsparen (0,3 Watt):
echo powersave > $i/scaling_governor cat $i*
echo performance > $i/scaling_governor cat $i*