
Dzień dobry.
Spory kawałek czasu temu nabyłem dwa routery ZBT-WE1326 z racji przystępnej ceny oraz posiadania gniazda M.2 do obsługi modemów LTE.
Jeden był w użytku, a drugi czekał na swoją szanse w szufladzie.
Szansa ta nadeszła gdy zmuszony brakiem stałego łącza, postanowiłem uruchomić router wraz z jakimś bliżej nie określonym modemem LTE.
Po wstępnym przeszukaniu dostępnych ofert, kart zdecydowałem się na model DW5811e posiadający moduł radiowy LTE CAT 6.
Plusem niewątpliwie była cena, bo karty zakupiłem za jedyne 25zł/sztuka.
Niestety radość ta była dość krótkotrwała, bo jak się okazało złącze karty było mniejsze niż dostępne gniazdo w routerze.
Aby nie iść w dodatkowe koszta przejściówek i straty czasu na ich sprowadzenie z Chin postanowiłem poświęcić stary moduł Bluetooth jaki zalegał mi w szufladzie.
Wybór tutaj padł na kartę Broadcom BCM2046B1.


Piny złącza USB są w niej wyprowadzone na rezystory R23, R24.
Resztę potrzebnych sygnałów niestety trzeba było pobrać ze złącza krawędziowego:


Po analizie dokumentacji modułu oraz schematów złącza od laptopa współpracującego z wybranym modelem modemu powstała taka mapa sygnałów:

Kolejnym problemem jak się okazało był typ złącz antenowych, które wymagały wymiany na większe, zgodne z antenami jakie były dostarczone z routerem.



Dodatkowo zdecydowałem się dodać hub usb2.0 pomiędzy kartę bluetooth a modemem LTE, dzięki temu zabiegowi obie karty są wykrywane w systemie oraz na złączu szpilkowym mam dostępne dwa dodatkowe porty USB2.0.


Kolejnym wyzwaniem był pin nr 6 karty podany w specyfikacji jako sygnał Full_Card_Power_Off#
Niestety system operacyjny karty musi mieć czas na uruchomienie po załączeniu zasilania, jeżeli host usb zacznie enumeracje wcześniej karta niestety nie zostanie wykryta.
Jedynie podanie na chwile stanu niskiego na ten pin jest wstanie pobudzić kartę do działania.
Przez stan niski, zgodnie z dokumentacją trzeba rozumieć napięcie <= 0.5V względem masy.
Niestety na modemie nie znalazłem wolnych pinów GPIO dlatego też postanowiłem poświęcić jedną diodę led aby jej sygnał sterował resetem tego pinu.
Według specyfikacji, pin nr 6 powinien być sterowany z portu cpu hosta logiką 1.8v, ale toleruje napięcia nawet do 4.4v i może być podciągnięty do VCC za pomocą rezystora np 10k.

Niestety tak jak pisałem wyżej sam rezystor okazał się niewystarczający, dlatego tez użyłem pinu od diody który ostatecznie został podłączony przez rezystor poniżej 220ohm.
Początkowo był 1k, ale wówczas powstały dzielnik napięcia przy stanie niskim dawał 0.56v co było niedostateczne, aby zresetować modem.
Próbowałem tez dać sam 10k do diody, bez pull-upa, ale także były problemy z wystartowaniem modemu.



Ostatecznie całość została poskładana i dołożyłem antenę do bluetootha, gdyby naszła mnie ochota na jakieś dodatkowe eksperymenty:




Co do uruchomienia modemu pod OpenWRT to zamieszczam w załączniku skrypt (mbim.txt) pomocny do zainstalowania wymaganych pakietów oraz który uruchamia sekwencyjnie komendy dla protokołu mbim w celu pobrania adresacji i konfiguracji interfejsu.
Co do uzyskiwanych prędkości, dziś w niedziele jest dramat i mam max 30Mbs, natomiast w tygodniu maksymalnie udało mi się uzyskać 120Mbs.
Na telefonie z modemem CAT20 na tej samej sieci i w tym samym czasie uzyskuje do 220Mbs, ale jest czasami tak, że i telefon i w/w modem nie potrafi przeskoczyć 30Mbs, zależnie od pory dnia i obciążenia sieci.
Na pewno będę jeszcze walczył z agregacją pasma oraz z porównaniem pracy w trybie mbim kontra QMI.
Całkiem możliwe, że router dorobi się zewnętrznych złącz antenowych i anteny na dachu, ale to muszę jeszcze przemyśleć czy warto nadal rozwijać tego druciaka

Na koniec garść pomocnych linków, z których czerpałem wiedzę:
https://github.com/gartfr/QualcommLTE
https://github.com/danielewood/sierra-wireless-modems
https://openwrt.org/docs/guide-user/network/wan/wwan/ltedongle
https://www.lteforum.at/mobilfunk/cat-6-module-basteleien.4969/#post-80068
https://forum.openwrt.org/t/flashing-sierra-em7455-through-we826-openwrt/110304/27?page=2
Pozdrawiam.
Cool? Ranking DIY