Temat: Modem od routera MF286D
Uszkodzony padnięty do dzisiaj wydawałoby się modemem. Objawy standardowe brak imei i nie wykrywa nic po wpisaniu cat /sys/kernel/debug/usb/devices
Miałem już spisać sprzęt (sam modem bo płyta działa) na straty bo nie mam czasu wnikać ale jak królik zrobił wsparcie no to wniknąłem. Rozebrałem te trzewia ech ciężko ta cała skóra (obudowa) złazi - pocharatałem sobie rękę. W moją sztukę już ktoś wnikał wcześniej bo miała wlutowane piny pod seriala - w sumie mniej roboty dla mnie . Ale do sedna. Myślę - na dobrą sprawę jak niby mógłby się uszkodzić modem sam z siebie czy przez przepięcie czy jeszcze jakoś ale na moją głowę raczej problem programowy. Ale jak wiemy np huaweie i inne firmy mają tak zwany boot point czyli po zwarciu konkretnego pinoutu z płyty z gnd przedstawiają się jako jakiś tam interfejs diagnostyczny czy jakoś tak nie pamiętam dokładnie bo dawno tym się zajmowałem. Pootwierałem wszystkie blachy i zacząłem sprawdzać napięcia. Pomyślałem a co tam i tak na elektrośmieci pójdzie więc zacząłem zwierać poszczególne z nich do masy (ryzykując usmażenie płyty) i co i cud. Oto log po takim sekundowym zwarciu. Uwaga jak trzymam więcej niż 1s to płyta podnosi się od nowa ale uwaga modem dalej jest dopóki mu nie zabierzemy napięcia (fizycznie odepniemy power jacka) Uwaga przy tym boot poincie koło procesora modem wchodzi w tryb edl losowo raz jest widoczny jako zte diagnostic a innym razem jako właściwy edl czyli 9008. Aby być pewnym, że się jest w trybie edl trzeba zastosować drugi boot point opisany razem ze stosownym zdjęciem poniżej w instrukcji odżywania tego umarlaka :
[ 81.382075] usb 2-1: new SuperSpeed USB device number 2 using xhci-hcd
[ 81.402871] usb 2-1: Parent hub missing LPM exit latency info. Power management will be impacted.
[ 81.416226] option 2-1:1.0: GSM modem (1-port) converter detected
[ 81.421341] find modem i:31
[ 81.424226] assign port->index 0
[ 81.432430] set urb transfer_flags URB_ZERO_PACKET
[ 81.437043] usb_wwan_port_probe add URB_ZERO_PACKET to this urb
[ 81.442178] set urb transfer_flags URB_ZERO_PACKET
[ 81.446876] usb_wwan_port_probe add URB_ZERO_PACKET to this urb
[ 81.453690] set urb transfer_flags URB_ZERO_PACKET
[ 81.457554] usb_wwan_port_probe add URB_ZERO_PACKET to this urb
[ 81.463517] set urb transfer_flags URB_ZERO_PACKET
[ 81.468231] usb_wwan_port_probe add URB_ZERO_PACKET to this urb
[ 81.475085] usb 2-1: GSM modem (1-port) converter now attached to ttyUSB0
dst.c,87,[auto_dst_match] now seconds with no dst:1643219403, ctime:Wed Jan 26 17:50:03 2022
A teraz pod cat /sys/kernel/debug/usb/devices
T: Bus=02 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 2 Spd=5000 MxCh= 0
D: Ver= 3.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 9 #Cfgs= 1
P: Vendor=19d2 ProdID=0076 Rev= 0.00
S: Manufacturer=Qualcomm CDMA Technologies MSM
S: Product=QUSB__BULK
C:* #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr= 8mA
I:* If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=option
E: Ad=81(I) Atr=02(Bulk) MxPS=1024 Ivl=0ms
E: Ad=01(O) Atr=02(Bulk) MxPS=1024 Ivl=0ms
Ciekawostka jak wsadze do płyty mf286d modem od dwr960 D19QA-SKU4 to wpada w pętle boot i w ogóle router nie startuje (dochodzi do u-boota i restart) Za to jak wsadzę ten modem do wdr960 to normalnie nic się nie dzieje . Odpala się prawidłowo router oczywiście nie modem.
1.Widok modemu od strony złącz antenowych
2.Widok modemu od strony procesora
Wybaczcie słabą jakość zdjęć. Robiłem na szybko telefonem
Wątek o samym mf286d jest tutaj:
https://eko.one.pl/forum/viewtopic.php?id=19085
Uwaga wszelkie modyfikacje i testy na modemie przeprowadzasz na własną odpowiedzialność - może to się skończyć uszkodzeniem modemu, routera a nawet laptopa czy komputera
Będę aktualizował w miarę możliwości pierwszy post.
Na rysunku macie też rozpiskę pinoutu do seriala
---------------------------------------------------------------------------------------------------------------------------------------
Metoda naprawy uszkodzonego modemu od mf286d
- udana operacja odbyła się w dniu 21.06.2022 r. Pacjent odżył około godziny 12:20
Starałem się opisać jak najprostszym językiem - po chłopsku:) Za błędy stylistyczne i gramatyczne z góry wybaczcie
Metoda została wykonana i przetestowana kilkukrotnie na Windowsie 7. Metoda, którą tu przedstawiam wymaga wyjęcia modemu z płyty głównej i podłączenia do komputera/laptopa przez konwerter na USB. W opisie skupię się na tym jak ja to zrobiłem – są też inne opcje opisane przez użytkownika stich86 w tym wątku – mniej lub bardziej złożone.
Ściągamy z folderu stich86 link:
https://mega.nz/folder/exQHlRKA#Dv9sxWFdUgd_Omy9UjOPkA
folder 9008 Drivers, dummy QCN, SB3.0 recovery folder, Tools
Nie wiem czy stich86 robił ścieżki względne czy bezwzględne, ja stworzyłem sobie na dysku c folder o nazwie common i wrzuciłem tam cały folder common i plik contents.xml jak poniżej:
Dodatkowo plik o nazwie partition_nand z folderu SB3.0 recovery folder skopiowałem do folderu common czego skutkiem było pytanie czy zmienić już istniejący tam plik. Zaakceptowałem
Instalujemy zawartość 9008 Qualcomm_USB_Driver_v1.0
Instalujemy zawartość ZTEDrvSetup
Instalujemy QPST_2.7.496
Modem należy wprowadzić w tryb EDL. Wówczas jest widoczny w systemie jak poniżej:
Ja zrobiłem to fizycznie. Wlutowałem się cienkim przewodem do pinu znajdującego się obok kości flash oznaczonej jako ESMT.
Następnie drugi jego koniec zwarłem do masy i dopiero wówczas wsadziłem wtyczkę do portu usb komputera cały czas trzymając zwarty ten pin z gnd. Mniej więcej po 5s puściłem. Nie zawsze się udaje – trzeba próbować aż do momentu w którym będzie widoczny jak na rysunku powyżej
Druga metoda prostsza dla osób ze zdolnościami manualnymi niewymagająca lutowania to zwarcie dwóch pinów jak na rysunku poniżej. Uwaga należy zwierać ostrożnie pincetą. Wystarczy, że jeden koniec pójdzie na pin 3 lub 4 od prawej i możemy ugotować modem. Tam jest różnica potencjałów względem GND 3,6V! Jak ktoś nie ma zdolności manualnych to lepiej się wlutować. Na pewno pójdzie łatwiej i sprawniej niż w tej punkt koło NANDu. Czyli zwieramy wsadzamy wtyczkę od adaptera USB do kompa/laptopa i jak wykryje 9008 zabieramy pincetę. Ta metoda została odnaleziona przez stich86 w dniu 31.12.2023r. dla modemu mf289f a ja to przetestowałem na modemie od mf286d w dniu 04.01.2024r.
Trzecia opcja (mniej inwazyjna) wprowadzenia modemu w ten tryb to metoda opisana przez sticha86 cytuję:
„Use the qtools found on my MEGA folder, when you are in that mode 19d2:0076, use SDI programm on driver folder to install driver called "ZTE Diagnostic Port", the use these command to put it on 9008 HS Loader mode:
X = your port COM number
qdload.exe -k12 -q -pX
qcommand.exe -pX -c "m 193d100 1"
qcommand.exe -pX -c "d 7980000 4" <-- stop this one when the modem switch to 9008 device, usally just two printed outputs
After last command, modem should boot in 9008 mode, please be sure to install 9008 Qualcomm drivers, otherwise you will have Uknown device. When you are on this mode, you can load firmware with SB3.0 “
Tej metody nie testowałem
Gdy mamy już odpowiednio wykryty modem w systemie uruchamiamy QPST software download. Przechodzimy do zakładki SB3.0. Powinniśmy tam zobaczyć nasz modem na odpowiednim porcie jak poniżej:
W polu xml wskazujemy nasz plik content jak na rysunku powyżej. Wciskamy start
Modem w moim przypadku na moment ginie a następnie znowu się pojawia i zaczyna się proces wgrywania jak poniżej:
Gdy proces skończy się jak poniżej odłączamy i ponownie włączamy nasz konwerter do portu USB:
System wykryje nam 3 lub 4 nowe urządzenia. Żeby zainstalować do nich sterowniki wchodzimy do folderu SDI_drivers_ZTE_MF286D i wybieramy aplikację zgodną z naszym systemem w moim przypadku - 64 bit to będzie SDI_x64_R1800. Zmieniamy sobie interesujący język wyświetlania w moim przypadku był to polski i zaznaczamy ptaszkami 3 nowe wykryte urządzenia. Następnie klikamy w okienko w prawym górnym roku z napisem zainstaluj. UWAGA w celu pobrania sterowników przez ten program może być potrzebny internet nie sprawdzałem jak jest bez u mnie był podłączony do internetu.
Po zainstalowaniu wygląda u mnie to tak:
Wchodzimy do folderu EFS_Professional_2.1.80_BETA i uruchamiamy aplikację o nazwie
EFS Professional i wybieramy opcję jak poniżej:
Przechodzimy do zakładki Secure Ops. Zaznaczamy ptaszek przy IMEI (Dec). Source wskazujemy na QPST-QCN Backup i wciskamy read. Wskazujemy ściągnięty wcześniej z folderu kolegi stich86 plik o nazwie backup_restored_modem_DUMMY_imei_112233445566778. Zmieniamy IMEI na swoje wpisując ten z naklejki z obudowy mf286d. Przechodzimy do zakładki target i wybieramy QPST-QCN Backup. Wciskamy write i wskazujemy wcześniej ściągnięty plik backup_restored_modem_DUMMY_imei_112233445566778. Program zapyta czy zamienić to akceptujemy.
Zamykamy ten program i ponownie wracamy do programu QPST download software tym razem wybierając zakładkę Restore oraz nasz modem z listy jak poniżej:
Wskazujemy nasz plik zQCN File czyli ten wcześniej przerobiony backup_restored_modem_DUMMY_imei_112233445566778.qcn zmieniając wcześniej w okienku typ szukanego pliku na QPST NV Memory Files (.qcn)
Wciskamy start i zaczyna mielić:
Proces skończy się napisem Memory Restore Completed jak poniżej:
Zamykamy QPST. Ściągamy program putty i uruchamiamy. Wybieramy połączenie serial a port COM sprawdzamy w urządzeniach znajdując tam urządzenie o nazwie ZTE Prioprietary USB Modem i sprawdzając w jego właściwościach na jakim porcie został wykryty. U mnie wyglądało to tak:
Jak mamy wszystko prawidłowo ustawione wybieramy open i powinno nam się ukazać to co poniżej:
Sprawdzamy czy nasz wpisany w poprzednim kroku IMEI zapisał się prawidłowo do pamięci modemu wydając polecenie ATI UWAGA pisane polecenia są niewidoczne. Po prostu wpisujemy i ENTER
Wydajemy pierwsze polecenie
at+zcdrun=8
Po którym zobaczymy:
Wydajemy drugie polecenie
at+zcdrun=F
Po którym zobaczymy:
Wyjmujemy i ponownie wkładamy konwerter z modemem do portu USB. Teraz windows powinien to wykryć jako te na czerwono zaznaczone elementy:
No i to już koniec. Po tych zabiegach modem w moim przypadku podłączony do dlinka dwr961 z openwrt na pokładzie opracowanym przez kolegę z tego forum o nazwie królik jest wykrywany i poprzez qmi nawiązuje połączenie.
W dniu 23.06.2022 roku przetestowałem odżywiony modem na oryginalnej płycie zarówno na oryginalnym oprogramowaniu ZTE jak i na openwrt na pokładzie. Na obydwu działał prawidłowo. To tak na szybko włącznie i sprawdzenie. Przeprowadzę jeszcze tydzień testów na OFW jak i kolejny tydzień na openwrt celem sprawdzenia stabilności działania.
Post będzie na pewno jeszcze wiele razy edytowany i poprawiany w razie stwierdzonych błędów lub braków
Podziękowania szczególne dla użytkownika stich86, który całą tą procedurę stworzył oraz innych osób które wniosły w ten temat swoje głosy.
Podsumowanie:
Środowisko czystsze od elektrośmieci o kilka, kilkanaście, kilkaset a może nawet i więcej modemoruterów?