LTE-Modem
Betrieb des LTE-Modems und Auswahl der SIM-Karte.
Als LTE-Modem ist ein Quectel EG916Q-GL-M.2 vorgesehen. Das Modem wird über QMI gesteuert. Über einen SIM-Multiplexer wird jeweils eine von zwei SIM-Karten mit dem Modem verbunden.
GPIO-Signale
Die GPIOs werden über ihre im Device Tree hinterlegten Namen angesprochen.
| GPIO-Name | Funktion | Signalbedeutung |
|---|---|---|
lte_sim1_cd | Card Detect von SIM-Steckplatz 1 | Low: SIM-Karte vorhanden |
lte_sim2_cd | Card Detect von SIM-Steckplatz 2 | Low: SIM-Karte vorhanden |
lte_sim_select | Auswahl des SIM-Multiplexers | Low: SIM 1, High: SIM 2 |
lte_modem_sim_cd | SIM-Detect-Signal des Modems | High: ausgewählte SIM-Karte vorhanden |
lte_power | Modemversorgung | High: Modem eingeschaltet |
lte_reset | Modem-Reset | Low: Reset, High: Normalbetrieb |
Die Card-Detect-Signale lte_sim1_cd und lte_sim2_cd sind Eingänge. Die Signale
lte_sim_select, lte_modem_sim_cd, lte_power und lte_reset werden vom Prozessor gesteuert.
Auswahl der SIM-Karte
Die Auswahl der SIM-Karte über den SIM-Multiplexers erfolgt über lte_sim_select:
- Low verbindet SIM 1 mit dem Modem.
- High verbindet SIM 2 mit dem Modem.
Modembetrieb
Zum Einschalten wird lte_power auf High gesetzt. Das Modem befindet sich im Normalbetrieb, wenn
lte_reset auf High steht. Für einen Reset wird lte_reset auf Low und anschließend wieder auf High
gesetzt.
Nach der Auswahl der SIM-Karte und dem Setzen des zugehörigen lte_modem_sim_cd-Signals kann der
SIM-Status des Modems über QMI geprüft werden. Anschließend kann die LTE-Datenverbindung aufgebaut
werden.
Das Modem unterstützt SIM-Hot-Swap. Das Einlegen und Entfernen einer SIM-Karte wird über das
jeweilige Card-Detect-Signal erkannt und über lte_modem_sim_cd an das Modem weitergegeben.
Das Hot-Swap-Verhalten kann über AT-Befehle des Modems konfiguriert werden.
Beispiel mit den GPIO-Werkzeugen
Das folgende Beispiel liest die Card-Detect-Signale. Die Beispielausgabe zeigt eine vorhandene SIM 2
(0) und eine nicht vorhandene SIM 1 (1). Anschließend wird SIM 2 ausgewählt, das Modem-SIM-Detect-
Signal auf „Karte vorhanden“ gesetzt und das Modem eingeschaltet.
# Card-Detect-Signale lesen: 0 = SIM-Karte vorhanden, 1 = keine SIM-Karte vorhanden
gpioget --numeric --by-name lte_sim1_cd lte_sim2_cd
# Beispielausgabe: 1 0
# SIM 2 auswählen, SIM-Karte an das Modem melden und Modem einschalten
gpioset --daemonize --by-name \
lte_sim_select=1 \
lte_modem_sim_cd=1 \
lte_reset=1 \
lte_power=1gpioset --daemonize hält die gesetzten Ausgangssignale nach dem Ende der Shell-Sitzung auf ihren
Werten.