Тут описан мой опыт прошивки Openwrt на роутер KuwFi AX1800, он же Tenbay T-MB5EU-V01 / WR1800K / WR1800G (LEGUANG, AMPCOM и др.)
Snapshot-образы - https://firmware-selector.openwrt.org/?version=SNAPSHOT&target=ramips%2Fmt7621&id=tenbay_t-mb5eu-v01
Немного про сборку и замену флешки 16Мб → 32Мб: https://forum.openwrt.org/t/kuwfi-tenbay-wifi-6-ax-t-mb5eu-v01/99090
Как шить
- Нужно положить в директорию файлики с образами kernel и sysupgrade и запустить TFTP-сервер.
- Примерно так:
sudo dnsmasq --port=0 --enable-tftp --tftp-root=/home/user/kuwfi/ --tftp-no-blocksize --user=root --group=root
- Затем - подпаять к контектным площадкам кабель UART и подключиться к консоли при помощи minicom:
sudo minicom -b 115200 -D /dev/ttyUSB0
- При старте U-Boot у данного роутера появляется меню. В момент появления меню нужно нажать какую-нибудь стрелочку, чтобы загрузка остановилась и можно было выбрать пункт для прошивки - 2.
- Дальше нужно выбрать прошивку по TFTP, не забыть подключить роутер (любой из LAN-портов) кабелем к компу, задать адрес TFTP-сервера (компа), задать адрес самого роутера, маску и ввести имя файла. Я прошивал последовательно kernel и затем sysupgrade образы. И все завелось.
- После прошивки рекомендую подключить роутер к интернету и установить Web-морду Openwrt:
opkg update opkg install luci
- Рекомендую - установить и настроить скрипт для автоматического восстановления пакетов после обновления прошивок с помощью sysupgrade. Без этого скрипта после обновления прошивки сохраняются только настройки, но не установленные пакеты.
Прошивка Openwrt из Web-интерфейса оригинальной прошивки
Я попробывал вот это: https://github.com/blocktrron/t-mb5eu-v01-factory-creator/ - скрипт добавляет в образ openwrt метаданные, которые позволяют прошить его через интерфейс заводской прошивки.
Я попытался так сконвертить образ sysupgrade, зашил его (родная прошивка признала образ) и роутер окирпичился. Возможно, на заводскую прошивку надо было зашивать kernel-образ.
Несколько слов про сборку после припайки UART
Наверное, важно не перепутать местами провода антенн. Черные - 2,5GHz, серые - 5GHz. На плате есть обозначения.
Антенны
У штатных антенн длинна - 150мм, ширина PCB - 11мм. В штатные корпуса корпус могут влезть антенны шириной не более 13мм и длинной не более 150мм.
Качество работы Wi-Fi
Могу сравнить с Xiaomi Redmi AC2100. У него антенны припаяны, а у KuwFi - на разъемах ipex.
Так вот в одних и тех же непростых условиях (три кирпичные стены) при максимальной мощности в 20dBm (100mW) для обоих диапазонов AC2100 показывает уровень соотношения сигнал/шум -64 (2.5GHz) и -71dBm(5GHz), а KuwFi -77dBm (2.5Ghz) и -84dBm (5GHz).
При увеличении мощности на 5GHz до 22dBm (158mW) уровень сигнала повышавется до -81dBm (региональные настройки - India).
Измерение температуры
Радиочипсет MT7915 имеет встроенные датчики температуры, показания с которых видны так:
cat /sys/class/ieee80211/phy*/hwmon*/temp1_input
А чтобы увидеть их в Web-интерфейсе LuCi нужно установить пакетик отсюда: https://githubmemory.com/repo/gSpotx2f/luci-app-temp-status
wget --no-check-certificate -O /tmp/luci-app-temp-status_0.3-5_all.ipk https://github.com/gSpotx2f/packages-openwrt/raw/master/current/luci-app-temp-status_0.3-5_all.ipk opkg install /tmp/luci-app-temp-status_0.3-5_all.ipk rm /tmp/luci-app-temp-status_0.3-5_all.ipk /etc/init.d/rpcd reload
Температурные режимы
При отсутствии трафика температура чипа MT7915E в моем девайсе находится в районе 50-53 градуса (при температуре в помещении 22). Под нагрузкой (пара клиентов с iperf в режиме UDP) - в течение часа поднимается до 70-74 градусов. Деградации скорости не наблюдается.
Клиент-сервер iperf - это еще один роутер под OpenWrt подключенный в режиме беспроводного клиента стандарта N (на нем iperf -s) и компик, подключенный по проводу (на нем iperf -c …). Фактическая скорость по показаниям iperf относительно невысока ~ 40Mbit/sec, поскольку устройство с сервером iperf находится довольно далеко.
При этом - нагрузка на CPU самого роутера Tenbay T-MB5EU-V01 относительно невелика. load average: 0.20, 0.16, 0.13
После остановки трафика iperf - температура MT7915E падает с 74 до 68 градусов буквально в течение трех-пяти секунд, что указывает на довольно неплохой теплообмен, а в качестве критической температуры для чипа MT7915E ядро считает значение 110 градусов.
Оригинальный комментарий к коммиту git
Написано тут: https://git.openwrt.org/?p=openwrt/openwrt.git;a=commit;h=51b61fd57059adeb10a3977e00772af2b76dc40b
Hardware -------- MediaTek MT7621 SoC 256M DDR3 16MB BoHong SPI-NOR MediaTek MT7905+7975 2x2T2R DBDC bgnax / acax RGB LED WPS + RESET Button UART on compute module (silkscreened / 115200n8) The router itself is just a board with Power / USB / RJ-45 connectors and DC/DC converters. The SoC and WiFi components are on a daughterboard which connect using two M.2 connectors. The compute module has the model number "T-CB1800K-DM2 V02" printed on it. The main baord has "T-MB5EU V01" printed on it. This information might be useful, as it's highly likely either of these two will be reused in similar designs. The router itself is sold as Tenbay T-MB5EU directly from the OEM as well as "KuWFI AX1800 Smart WiFi 6 Eouter" on Amazon.de for ~50€ in a slightly different case. Installation ------------ A Tool for creating a factory image for the Vendor Web Interface can be found here: https://github.com/blocktrron/t-mb5eu-v01-factory-creator/ As the OEM Firmware is just a modified LEDE 17.01, you can also access failsafe mode via UART while the OS boots, by connecting to UART and pressing "f" when prompted. The Router is reachable at 192.168.1.1 via root without password. Transfer the OpenWrt sysupgrade image via scp and apply with sysupgrade using the -n and -F flags. Alternatively, the board can be flashed by attaching to the UART console, interrupting the boot process by keeping "0" pressed while attaching power. Serve the OpenWrt initramfs using a TFTP server with address 192.168.1.66. Rename the initramfs to ax1800.bin. Attach your TFTP server to one of the LAN ports. Execute the following commands. $ setenv ipaddr 192.168.1.67 $ setenv serverip 192.168.1.66 $ tftpboot 0x84000000 ax1800.bin $ bootm Wait for the device to boot. Then transfer the OpenWrt sysupgrade image to the device using SCP and apply sysupgrade.
Discussion