1 (edytowany przez MiG25 2025-11-21 19:29:37)

Temat: ZTE MF18A

Pliki initramfs i sysupgrade dostępne w ogólnych wydaniach.

PR i opis instalacji : https://github.com/openwrt/openwrt/pull/11631



Komendy do uruchomienia initramfs w uBoot (na kompie ustawiamy stały  adres 192.168.1.3 i wystawiamy plik initramfs po tftp):

setenv serverip 192.168.1.3
setenv ipaddr 192.168.1.72
set fdt_high 0x85000000
tftpboot 0x84000000 openwrt-ipq40xx-generic-zte_mf18a-initramfs-fit-zImage.itb
bootm 0x84000000

Jeśli jest pewność ,że będziemy instalowali permanentnie openwrt to nie zaszkodzi wyczyścić tą partycję przed komendą bootm

nand erase 0x1800000 0x1D00000

Ale radzę za pierwszym razem tego nie robić , tylko uruchomić initramfs i zrobić backup partycji i je skopiować w bezpieczne miejsce , przede wszystkim mtd17 czyli "rootfs" i mtd16 "web" , żeby wrócić do orginału.


Po uruchomieniu initramfs podłączamy się przez scp , wrzucamy do tmp plik sysupgrade , logujemy się po ssh i wykonujemy:

  ubiattach -m 9
    ubirmvol /dev/ubi0 -N ubi_rootfs
    ubirmvol /dev/ubi0 -N ubi_rootfs_data


    sysupgrade -n /tmp/openwrt-ipq40xx-generic-zte_mf18a-squashfs-sysupgrade.bin

Zdjęcia PCB:
https://i.ibb.co/Vphr6P2/20221211-212844.jpg
https://i.ibb.co/k6f2ZGF/20221211-212807.jpg

Na pewno ma chipy do Zigbee i ZWave.... Ktoś wie po co ?


IPQ40xx# printenv
baudrate=115200
bootcmd=bootipq
bootdelay=2
ethact=eth0
ethaddr=00:03:7f:ba:db:ad
fdt_high=0x87000000
fdtcontroladdr=87374bb0
flash_type=7
ipaddr=192.168.0.1
lc=tftpboot 0x84000000 ${dir}cdt-AP.DK04.1-C1.bin&&sf probe&&sf erase 0xc0000 +$filesize&&sf write $fileaddr 0xc0000 $filesize
lp=tftpboot 0x84000000 ${dir}norplusnand-system-partition-ipq40xx.bin&&sf probe&&sf erase 0x40000 +$filesize&&sf write $fileaddr 0x40000 $filesize
lr=tftpboot 0x84000000 ${dir}root_uImage&&nand erase 0x1000000 0x800000 &&nand write_partition 0x84000000     0x1000000     0x800000 &&nand erase 0x1800000 0x1D00000 &&nand write_partition 0x84800000     0x1800000     0x1D00000
lrs=tftpboot 0x84000000 ${dir}root_uImage_s&&nand erase 0x1800000 0x1D00000&&nand write $fileaddr 0x1800000 $filesize
lu=tftpboot 0x84000000 ${dir}uboot.bin&&sf probe&&sf erase 0xf0000 +$filesize&&sf write $fileaddr 0xf0000 $filesize
lw=tftpboot 0x84000000 ${dir}web.img&&nand erase 0x1000000 0x800000&&nand write $fileaddr 0x1000000 $filesize
machid=8010001
serverip=192.168.0.22
soc_version_major=1
soc_version_minor=0
stderr=serial@78af000
stdin=serial@78af000
stdout=serial@78af000

Environment size: 1191/65532 bytes

2

Odp: ZTE MF18A

Pewnie jako uniwersalna bramka do IoT. Ostatnio producenci mają takie widzimisie.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

3

Odp: ZTE MF18A

Wgrywając na żywca obraz initramfs z MF286D jest wifi 2,4GHz , brak 5GHz.
Chyba jest inny rozkład partycji ,żeby do sobie tak zdumpować ?

4

Odp: ZTE MF18A

Initramfs nie zawiera modułów do radia 5GHz, więc nie będzie działało. Zgraj sobie wszystkie partycje na początek.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

5

Odp: ZTE MF18A

Jest jakaś komenda ,żeby w orginale wysłać te partycje ? Ten MF18F nie ma USB ,żeby mu to na pendriva wrzucić...

6

Odp: ZTE MF18A

Zobacz czy masz wput, ftp, nc. Jak masz ssh to możesz przez scp/winscp.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

7

Odp: ZTE MF18A

wput, ftp i nc nie ma....
Jakaś binarka była do tego ... dropber do ściągnięcia i uruchomienia ?
W procesach jest takie coś:

adb -P 5037 fork-server server

Może da się do niego podłączyć przez adb?

8

Odp: ZTE MF18A

No to zobacz. Tak, prawdopodobnie możesz ściągnąć sobie dropbeara lub busyboxa i może uruchomisz.

Jak poczekasz do wieczora to mogę ci zrobić initramfs ze wszystkim.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

9

Odp: ZTE MF18A

Znaczy z tego uruchomionego initramfs z mf286d mógłbym się podłączyć po ssh , tyle tylko , czy w tym initramfs nie jest wpisywany układ partycji ( który jest inny w mf286d vs mf18a ). Czy zrobiłbyś initramfs dopasowanego do mf18a ?

10

Odp: ZTE MF18A

Nie mógłbym. Nic nie wiem o mf18a a tym bardziej nie znam rozkładu i typu partycji. Daj logi z uruchomienia systemu.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

11

Odp: ZTE MF18A

Masz w pliku w pierwszym poście ( log był za duży ,żeby go tu wrzucić w post).
Sam fragment odnośnie partycji wygląda tak:

[    1.306106] spi_qup 78b5000.spi: IN:block:16, fifo:64, OUT:block:16, fifo:64
[    1.308462] spi_qup 78b6000.spi: IN:block:16, fifo:64, OUT:block:16, fifo:64
[    1.316461] m25p80 spi0.0: found gd25q16, expected n25q128a11
[    1.321466] m25p80 spi0.0: gd25q16 (2048 Kbytes)
[    1.327258] 8 ofpart partitions found on MTD device spi0.0
[    1.331788] Creating 8 MTD partitions on "spi0.0":
[    1.337117] 0x000000000000-0x000000040000 : "0:SBL1"
[    1.343097] 0x000000040000-0x000000060000 : "0:MIBIB"
[    1.348203] 0x000000060000-0x0000000c0000 : "0:QSEE"
[    1.353073] 0x0000000c0000-0x0000000d0000 : "0:CDT"
[    1.358201] 0x0000000d0000-0x0000000e0000 : "0:DDRPARAMS"
[    1.362801] 0x0000000e0000-0x0000000f0000 : "0:APPSBLENV"
[    1.368381] 0x0000000f0000-0x0000001b0000 : "0:APPSBL"
[    1.373669] 0x0000001b0000-0x000000200000 : "0:reserved1"
[    1.380091] QPIC controller hw version Major:1, Minor:4
[    1.383405] nand: device found, Manufacturer ID: 0x2c, Chip ID: 0xf1
[    1.388089] nand: ONFI 10-Compliant Micron MT29F1G08ABAEAWP
[    1.394638] nand: 128 MiB, SLC, erase size: 128 KiB, page size: 2048, OOB size: 64
[    1.400074] 13 ofpart partitions found on MTD device qcom_nand.0
[    1.407597] Creating 13 MTD partitions on "qcom_nand.0":
[    1.413738] 0x000000000000-0x0000000a0000 : "fota-flag"
[    1.420895] 0x0000000a0000-0x000000120000 : "0:ART"
[    1.425658] 0x000000120000-0x0000001a0000 : "mac"
[    1.430494] 0x0000001a0000-0x000000260000 : "IMEI"
[    1.435666] 0x000000260000-0x000000660000 : "cfg-param"
[    1.443282] 0x000000660000-0x000000a60000 : "log"
[    1.448430] 0x000000a60000-0x000000b00000 : "oops"
[    1.450334] 0x000000b00000-0x000001000000 : "reserved3"
[    1.458849] 0x000001000000-0x000001800000 : "web"
[    1.467379] 0x000001800000-0x000003500000 : "rootfs"
[    1.494959] mtd: device 17 (rootfs) set to be root filesystem
[    1.495262] mtdsplit: no squashfs found in "rootfs"
[    1.499700] 0x000003500000-0x000004e00000 : "data"
[    1.528633] 0x000004e00000-0x000007600000 : "fota"
[    1.566672] 0x000007600000-0x000008000000 : "iot-db"
[    1.577229] libphy: Fixed MDIO Bus: probed
[    1.798016] qca-mdio 90000.mdio: Could not find phy-reset-gpio
[    1.798217] libphy: qca_mdio: probed

12

Odp: ZTE MF18A

No i lista partycji:

admin@(none):~# cat /proc/mtd
dev:    size   erasesize  name
mtd0: 00040000 00010000 "0:SBL1"
mtd1: 00020000 00010000 "0:MIBIB"
mtd2: 00060000 00010000 "0:QSEE"
mtd3: 00010000 00010000 "0:CDT"
mtd4: 00010000 00010000 "0:DDRPARAMS"
mtd5: 00010000 00010000 "0:APPSBLENV"
mtd6: 000c0000 00010000 "0:APPSBL"
mtd7: 00050000 00010000 "0:reserved1"
mtd8: 000a0000 00020000 "fota-flag"
mtd9: 00080000 00020000 "0:ART"
mtd10: 00080000 00020000 "mac"
mtd11: 000c0000 00020000 "IMEI"
mtd12: 00400000 00020000 "cfg-param"
mtd13: 00400000 00020000 "log"
mtd14: 000a0000 00020000 "oops"
mtd15: 00500000 00020000 "reserved3"
mtd16: 00800000 00020000 "web"
mtd17: 01d00000 00020000 "rootfs"
mtd18: 01900000 00020000 "data"
mtd19: 02800000 00020000 "fota"
mtd20: 00a00000 00020000 "iot-db"
mtd21: 003ff000 0001f000 "kernel"
mtd22: 01341000 0001f000 "ubi_rootfs"

Doszła jedna partycja iot-db , coś może dla tego zigbee i zwave.

13

Odp: ZTE MF18A

Skąd jest 21/22? Bo tego w logach nie było.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

14 (edytowany przez MiG25 2022-11-21 14:06:01)

Odp: ZTE MF18A

Nie no F286D miał podobnie ( tyle ,że miał 21 ,bo ta iot-db to z podziału fota jest)
https://eko.one.pl/forum/viewtopic.php? … 09#p256209

Tu mi @stich86 tłumaczył jak zgrać partycje w MF289F https://eko.one.pl/forum/viewtopic.php? … 25#p272625 ( ale tam sobie zgrałem w już jego przygotowanym initramfs z dobrymi partycjami ostatczenie) , no i nie rozumiem ,jak tego busyboxa ściągnąć cURLem ? takiej komendy jak curl też nie rozpoznaje...

15

Odp: ZTE MF18A

wgetem, curlem, lub przerzuć przez scp.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

16

Odp: ZTE MF18A

No ale przecież na orginale nie działają te komendy (wget , curl) , da się przez scp podłączyć przez serial ?
Bo ja umiem przez ssh , ale w orginale nie ma dostępu przez ssh...

17

Odp: ZTE MF18A

Zobacz co jest w katalogach /bin, /usr/bin, /sbin, /usr/sbin. Może jest coś do pobierania (jakiś *fetch*, *get*) lub schowali to pod inną nazwą.

Przez serial ogólnie się da (xmodem), ale pewnie znów nie masz czym.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

18

Odp: ZTE MF18A

Udało się wrzucić busyboxa przez komendę :

tftp -g -r busybox-armv7l 192.168.18.2

Wystawiając wcześniej ten plik przez tftpd...

a później przez nc powysyłać pliki komendą

./busybox-armv7l nc -w 3 192.168.18.3 1234 < mtd0.bin

W pierwszym poście link do zrzutu partycji

19

Odp: ZTE MF18A

Ok, to się nie bawię w robienie rozkładu partycji, po prostu zrobię Ci initramfs z pakietami żebyś sobie zobaczył czy wifi działa.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

20

Odp: ZTE MF18A

Użyj tego: https://dl.eko.one.pl/test/openwrt-22.0 … zImage.itb

To inittramfs bez luci, wkompilowałem tylko pakiety od ath10k, nic inneog nie zmieniałem.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

21

Odp: ZTE MF18A

Nie ,niestety nie ma 5Ghz wifi, takie coś w logu jest:

[    9.714477] random: 28 urandom warning(s) missed due to ratelimiting
[   10.635565] ath10k_ahb a000000.wifi: qca4019 hw1.0 target 0x01000000 chip_id 0x003b00ff sub 0000:0000
[   10.635645] ath10k_ahb a000000.wifi: kconfig debug 0 debugfs 1 tracing 0 dfs 1 testmode 0
[   10.649010] ath10k_ahb a000000.wifi: firmware ver 10.4b-ct-4019-fW-13-5ae337bb1 api 5 features mfp,peer-flow-ctrl,txstatus-noack,wmi-10.x-CT,ratemask-CT,regdump-CT,txrate-CT,flush-all-CT,pingpong-CT,ch-regs-CT,nop-CT,set-special-CT,tx-rc-CT,cust-stats-CT,txrate2-CT,beacon-cb-CT,wmi-block-ack-CT,wmi-bcn-rc-CT crc32 6b2b5c5b
[   10.700853] ath10k_ahb a000000.wifi: Loading BDF type 0
[   10.701309] ath10k_ahb a000000.wifi: board_file api 2 bmi_id 0:20 crc32 13359d00
[   11.994318] ath10k_ahb a000000.wifi: 10.4 wmi init: vdevs: 16  peers: 48  tid: 96
[   11.994368] ath10k_ahb a000000.wifi: msdu-desc: 2500  skid: 32
[   12.043654] ath10k_ahb a000000.wifi: wmi print 'P 48/48 V 16 K 144 PH 176 T 186  msdu-desc: 2500  sw-crypt: 0 ct-sta: 0'
[   12.045323] ath10k_ahb a000000.wifi: wmi print 'free: 53252 iram: 13432 sram: 35752'
[   12.187913] ath10k_ahb a000000.wifi: htt-ver 2.2 wmi-op 6 htt-op 4 cal pre-cal-nvmem max-sta 32 raw 0 hwcrypto 1
[   13.325513] ath10k_ahb a800000.wifi: qca4019 hw1.0 target 0x01000000 chip_id 0x003b00ff sub 0000:0000
[   13.325580] ath10k_ahb a800000.wifi: kconfig debug 0 debugfs 1 tracing 0 dfs 1 testmode 0
[   13.339030] ath10k_ahb a800000.wifi: firmware ver 10.4b-ct-4019-fW-13-5ae337bb1 api 5 features mfp,peer-flow-ctrl,txstatus-noack,wmi-10.x-CT,ratemask-CT,regdump-CT,txrate-CT,flush-all-CT,pingpong-CT,ch-regs-CT,nop-CT,set-special-CT,tx-rc-CT,cust-stats-CT,txrate2-CT,beacon-cb-CT,wmi-block-ack-CT,wmi-bcn-rc-CT crc32 6b2b5c5b
[   13.391061] ath10k_ahb a800000.wifi: Loading BDF type 0
[   13.391133] ath10k_ahb a800000.wifi: failed to fetch board data for bus=ahb,bmi-chip-id=0,bmi-board-id=31,variant=zte,mf286d from ath10k/QCA4019/hw1.0/board-2.bin
[   13.593116] ath10k_ahb a800000.wifi: failed to fetch board-2.bin or board.bin from ath10k/QCA4019/hw1.0
[   13.593182] ath10k_ahb a800000.wifi: failed to fetch board file: -12
[   13.601436] ath10k_ahb a800000.wifi: could not probe fw (-12)
[   13.615716] kmodloader: done loading kernel modules from /etc/modules.d/*
[

22

Odp: ZTE MF18A

Sure, nie ten board. No więc bez tworzenia specjalnie obrazu nie sprawdzisz.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

23

Odp: ZTE MF18A

No to powiedz teraz , jak ten specjalnie obraz stworzyć ?

24

Odp: ZTE MF18A

Źródła openwrt, stworzenie dtsu dedykowanego do sprzętu, stworzenie obrazów, wydobycie z oryginalnego softu BDF'ów do radia AC, wysłanie tego na listy mejlingowe, złożenie w całość i wysłanie PR do openwrt. Czyli ta cała praca którą np. @stich86 robił ostatnio z MF289F.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

25

Odp: ZTE MF18A

Na razie pierwsza próba i niepowodzenie...
Najpierw wg Twojego poradnika pobrałem te wszystkie źródła , checkout ustawił się na v22.03.2 , no i zacząłem grzebać w plikach.
No i pierwsze ździewienie , jest w nich mf286d , ale nie ma mf289f...
No ale nic , zacząłem dodawać w tych 9 plikach na wzór tego  https://github.com/openwrt/openwrt/pull/11044/files
zduplikowałem package/firmware/ipq-wifi/board-zte_mf289f.qca4019 jako package/firmware/ipq-wifi/board-zte_mf18a.qca4019
(ten plik to zdaje się jakoś trzeba wyciąć z dumpu orginału ? )
Dodałem plik target/linux/ipq40xx/files/arch/arm/boot/dts/qcom-ipq4019-mf18a.dts na wzór tego z mf289 , no i po kompilacji , wgraniu initramfs nazwy partycji są nowe , ale kolejność jak w mf286d ( czyli np rootfs jako mtd9 , a nie jako mtd17...)
No ale nic ,popatrzę w to jeszcze raz.