Program do ustawiania pasm LTE/5G NSA/5G SA dla wybranych modemów komórkowych
Ostatnia zmiana: 2025-04-09 23:35
Program
modemband.sh służy do wyświetlenia oraz ustawienia obsługiwanych pasm LTE/5G NSA/5G SA. Aktualnie wspieranie są modemy:
- BroadMobi BM806U
- Dell DW5821e Snapdragon X20 LTE (Foxconn T77W968)
- Fibocom FM350-GL
- Fibocom L850-GL
- Fibocom L850-GL in mbim mode
- Fibocom L860-GL
- Fibocom L860-GL-16
- HP lt4112 (Huawei ME906E)
- HP lt4132 LTE/HSPA+ 4G Module (Huawei ME906s-158)
- HP lt4220 (Foxconn T77W676)
- HP lt4220 (Foxconn T77W676) in mbim mode
- Huawei (różne modele)
- Sierra Wireless EM7455/MC7455/DW5811e
- SIMCOM SIM8200EA-M2
- Quectel EC20
- Quectel EC25
- Quectel EC200T-CN
- Quectel EG06-E
- Quectel EG18-EA
- Quectel EM12-G
- Quectel EM12G-MSFT
- Quectel EM160R-GL
- Quectel EP06-E
- Quectel RG500Q-EA
- Quectel RG502Q-EA
- Quectel RM500Q-GL
- Quectel RM500U-CNV
- Quectel RM502Q-AE
- Quectel RM502Q-GL
- Quectel RM505Q-AE
- Quectel RM520N-GL
- Telit LM940
- Telit LN940 (Foxconn T77W676)
- Telit LN940 (Foxconn T77W676) in mbim mode
- Telit LN960 (Foxconn T77W968)
- Telit LN960
- Thales/Cinterion MV31-W (T99W175) in mbim mod
- Yuge CLM920 NC_5
- ZTE MF286 (router)
- ZTE MF286A (router)
- ZTE MF286D (router)
- ZTE MF286R (router)
- ZTE MF289F (router)
Modemy mogą być dostępne w różnych wersjach regionalnych, które są identyfikowane w identyczny sposób. Ten program przyjmuje że modemy pochodzą z obszaru Europy (EMEA) i definiuje pasma danego modemu wykorzystywane w Europie.
Historia zmian
- dodanie Quectel EC200T-CN
- dodanie Thales/Cinterion MV31-W (T99W175)
- dodanie Quectel EM12G-MSFT
- dodanie Yuge CLM920 NC_5
- dodanie
Fibocom FM350-GL- dodanie Quectel RM502Q-GL
- dodanie Fibocom L860-GL-16
- dodanie Quectel RM505Q-AE
- dodanie Quectel RM500U-CNV
- dodanie Quectel RG500Q-EA
- dodanie Sierra Wireless EM7455/MC7455/DW5811e
- zmiana poleceń od odczytu/zapisu pasm dla SIMCOM SIM8200EA-M2
- dodanie SIMCOM SIM8200EA-M2
- dodanie Quectel EG18-EA
- dodanie Quectel RM502Q-AE
- dodanie obsługi pasm 5G NSA i SA dla wybranych modemów Quectel
- dodanie obsługi pasm 5G dla wybranych modemów Quectel
- dodanie Quectel RM500Q-GL
- dodanie Telit LM940
- dodanie Quectel RM520N-GL
- dodanie HP lt4132 LTE/HSPA+ 4G Module
- dodanie ZTE MF289F
- dodanie HP lt4112/Huawei ME906E
- dodanie pasma B32 dla MF286D
- poprawki projektu
- poprawki dla HP lt4220 oraz Telit LN940
- Dodanie HP lt4220 oraz Telit LN940
- aktualizacja obsługi różnych modeli Huawei
- aktualizacja obsługi różnych modeli Huawei
- dodanie Dell DW5821e oraz Telit LN960
- dodanie Fibocom L850-GL/L860-GL
- dodanie ZTE MF286R
- dodanie
Quectel EM12-G- dodanie ZTE MF286A
- dodanie wyniku w formacie JSON
- dodanie obsługi Quectel EM160R-GL
- dodanie rozszerzonego wyniku dla niektórych poleceń
- naprawa odczytu pasma dla MF286D
- optymalizacja projektu - wspólne funkcje kodujących pasma
- dodanie obsługi ZTE MF286/MF286D
- dodanie obsługi Quectel EG06-E
- zmiana EP06 na EP06-E
- dodanie obsługi BroadMobi BM806U
- zmiany w obsłudze Huawei E3272/E3276/E3372
- pierwsza wersja programu
Opis programu
Wywołanie programu bez podania parametrów powoduje wyświetlenie wszystkich możliwych informacji. Podanie odpowiedniego polecenia umożliwia wyświetlenie tylko określonej informacji.
- pomoc
# modemband.sh help
Available commands:
/usr/bin/modemband.sh getinfo
/usr/bin/modemband.sh json
/usr/bin/modemband.sh help
for LTE modem
/usr/bin/modemband.sh getsupportedbands
/usr/bin/modemband.sh getsupportedbandsext
/usr/bin/modemband.sh getbands
/usr/bin/modemband.sh getbandsext
/usr/bin/modemband.sh setbands "<band list>"
for 5G NSA modem
/usr/bin/modemband.sh getsupportedbands5gnsa
/usr/bin/modemband.sh getsupportedbandsext5gnsa
/usr/bin/modemband.sh getbands5gnsa
/usr/bin/modemband.sh getbandsext5gnsa
/usr/bin/modemband.sh setbands5gnsa "<band list>"
for 5G NSA modem
/usr/bin/modemband.sh getsupportedbands5gsa
/usr/bin/modemband.sh getsupportedbandsext5gsa
/usr/bin/modemband.sh getbands5gsa
/usr/bin/modemband.sh getbandsext5gsa
/usr/bin/modemband.sh setbands5gsa "<band list>"
- wyświetlenie wszystkich dostępnych informacji o modemie
# modemband.sh
Modem: Quectel EC25
Supported LTE bands: 1 3 5 7 8 20 38 40 41
Enabled LTE bands: 1 3 7 8 20
1: FDD 2100 MHz
3: FDD 1800 MHz
5: FDD 850 MHz
7: FDD 2600 MHz
8: FDD 900 MHz
20: FDD 800 MHz
38: TDD 2600 MHz
40: TDD 2300 MHz
41: TDD 2500 MHz
- wyświetlenie wszystkich dostępnych informacji w formacie json
# modemband.sh json
{ "modem": "Quectel EC25", "supported": [ { "band": 1, "txt": "FDD 2100 MHz" }, { "band": 3, "txt": "FDD 1800 MHz" }, { "band": 5, "txt": "FDD 850 MHz" }, { "band": 7, "txt": "FDD 2600 MHz" }, { "band": 8, "txt": "FDD 900 MHz" }, { "band": 20, "txt": "FDD 800 MHz" }, { "band": 38, "txt": "TDD 2600 MHz" }, { "band": 40, "txt": "TDD 2300 MHz" }, { "band": 41, "txt": "TDD 2500 MHz" } ], "enabled": [ 1, 3, 7, 8, 20 ] }
- pobranie informacji o modemie
# modemband.sh getinfo
Quectel EC25
- pobranie informacji o pasmach LTE możliwych do ustawienia
# modemband.sh getsupportedbands
1 3 5 7 8 20 38 40 41
- pobranie informacji o pasmach LTE możliwych do ustawienia wraz informacją o częstotliwości pasma
# modemband.sh getsupportedbandsext
1: FDD 2100 MHz
3: FDD 1800 MHz
5: FDD 850 MHz
7: FDD 2600 MHz
8: FDD 900 MHz
20: FDD 800 MHz
38: TDD 2600 MHz
40: TDD 2300 MHz
41: TDD 2500 MHz
- pobranie informacji o aktualnie ustawionych pasmach LTE
# modemband.sh getbands
1 3 7 8 20
- pobranie informacji o aktualnie ustawionych pasmach LTE wraz informacją o częstotliwości pasma
# modemband.sh getbandsext
1: FDD 2100 MHz
3: FDD 1800 MHz
7: FDD 2600 MHz
8: FDD 900 MHz
20: FDD 800 MHz
- ustawienie pasm LTE
Pasma należy podać w cudzysłowie oddzielone spacją:
# modemband.sh setbands "1 3 5 40"
lub podać słowo "default", co powoduje ustawienie wszystkich możliwych pasm LTE dla danego typu modemu:
# modemband.sh setbands default
Pakiet
nie sprawdza poprawności pasm oraz czy zostało użyte pasmo z listy wpieranych.
W zależności od modemu zmiana pasma następuje natychmiast po wykonaniu polecenia lub wymagane jest ponowne uruchomienie modemu.
Analogiczne polecenia dostępne są dla modemów obsługujących 5G NSA oraz 5G SA.
Instalacja
# opkg update
# opkg install modemband
(jeżeli używane są moje obrazy OpenWrt z eko.one.pl - uwaga, w repozytorium może być starsza wersja pakietu). W pozostałych przypadkach należy ręcznie pobrać i zainstalować pakiet z
mojego repozytorium. Do działania niezbędny jest pakiet
sms-tool, który dostępny jest tylko moim repozytorium OpenWrt 21.02 lub OpenWrt 22.03 oraz w oficjalnym repozytorium OpenWrt w wersji 23.05 i wyższej.
Konfiguracja
Program nie wymaga dodatkowej konfiguracji. Jeżeli po uruchomieniu program zgłasza komunikat typu "Port not found" należy samodzielnie ustalić właściwy port diagnostyczny na którym modem odpowiada a następnie wpisać go do odpowiedniego pliku poleceniami:
# touch /etc/config/3ginfo
# uci set 3ginfo.@3ginfo[0].device="/dev/ttyUSB0"
# uci commit 3ginfo
Gdzie za
/dev/ttyUSB0 należy podać właściwy port diagnostyczny.
Kody źródłowe
Kody źródłowe dostępne są na moim
githubie.
Zakończenie
Nie wszystkie polecenia są wspierane przez dany modem. W niektórych przypadkach może zostać wyświetlony komunikat "Unsupported" w przypadku braku obsługi danej opcji.
Obsługa nowych modemów
Masz modem innego typu? Chcesz dodać jego obsługę? Wyślij mejla z opisem:
- dokładna nazwa modemu i ew numer wersji
- wynik polecenia
cat /sys/kernel/debug/usb/devices
- port szeregowy używany do komunikacji z modemem ("diagnostyczny")
- polecenie AT do odczytu ustawionych pasm wraz z przykładowym wynikiem
- polecenie AT do ustawienia określonych pasm
- listę wszystkich pasm możliwych do ustawienia w danym modemie