Ich benutze Simcom 800H Mobilfunkmodul mit meinem BeagleBone Black, die sehr ähnlich zu dem beliebten Simcom 900 ist. Ich möchte zwei Hauptaufgaben mit dem Simcom-ModulSMS und GPRS: Multiplexing GSM-Modul auf BeagleBone Black mit n_gsm
- Verwenden AT-Befehle Einstellungen konfigurieren und Nachrichten senden und empfangen
- pPP-Internet-Zugang auf dem BBB über GPRS zu ermöglichen.
Jetzt ist das offensichtliche Problem, dass ich nicht beides gleichzeitig tun kann. Ich habe eine Web-Suche und fand die folgenden Beiträge
Die zweite Verbindung besonders nützlich gewesen ist, wo einer der Benutzer den Code auf dieser repository benutzt hat.
Das allgemeine Thema war, das n_gsm
Modul zu verwenden. Ich habe versucht, das Modul mit modprobe n_gsm
zu laden, und es ist fehlgeschlagen. Wie der Benutzer erwähnt, enthält die BBB auch nicht das n_gsm-Modul als Standard, also musste ich einen neuen Kernel bauen, mit n_gsm als Modul hinzugefügt. Allerdings habe ich Probleme mit der n_gsm
als ein Modul. Hier sind die Schritte, denen ich folgte
- Ich folgte this Tutorial und heruntergeladen die richtigen Linux-Header für meine BBB.
Ich habe versucht, das Modul als Linux LKM (ladbare Kernel-Modul) zu kompilieren als
I folgt dem n_gsm.c von here
- Die
n_gsm.c
Datei heruntergeladen hatte einige enthält, die in meinem BBB fehlten . Also habe ich sie heruntergeladen. - Ich habe ein Makefile erstellt. Meine Auswahl hatte
n_gsm.c
undMakefile
Makefile
obj-m += n_gsm.o
all:
make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules
clean:
make -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean
Dieser Fehler erzeugt, wie in Abbildung gezeigt
ich in der Lage war erfolgreich ein anderes Modul zu laden, um wie in this gezeigt (die Hallo Welt der Kernel-Module). Ich verstehe auch nicht, warum ich den gesamten Linux-Kern neu kompilieren muss, um ein LKM zu schaffen.
Ich fühle, dass ich einige offensichtliche Fehler mache, wie es aussieht, wir Leute konnten dieses Modul erfolgreich laden.
Ist dies der richtige Weg, um ein Modul und speziell
n_gsm
zu laden. Es gibt nicht viel Dokument/Tutorial zu diesem.Gibt es eine einfachere Möglichkeit, dieses Multiplexing durchzuführen, falls das alles nicht funktioniert? Ich mag die Idee von AT-Befehlen für SMS und PPP für GPRS (anstelle von AT-Befehlen für beide).
Alle Tipps und Vorschläge werden sehr hilfreich sein!
Edit1: Details über meine BBB
- Kernel - Linux BeagleBone 3.8.13-bone79
- Distro - Debian 7.9 (sid)
Edit 2: Hinzugefügt Details über GSM-Modul
- This ist das GSM-Breakout-Board, das ich benutze.
- Es verwendet this Modul und Sie können die command manual und multiplexing application note auschecken.
aktualisieren 1
- Dank @Serge, konnte ich das
n_gsm
Modul und fügen Sie es ohne erneute Kompilierung des Kernels bauen. Ich war jedoch immer noch nicht in der Lage, das GSM-Modul in den Mux-Modus zu bringen. AT+CMUX=?
,AT+CMUX?
undAT+CMUX=
generiert einen Fehler auf dem Sim800H-Modul.- Hier ist der de-Lausch I
- rumgespielt mit Hardware/Software und kein Durchfluss getan haben. Hat in keinem Modus funktioniert.
- Set TE-TA lokale Rate
AT+IPR
zu auto, 115200 fixierte und nochAT+CMUX
erzeugt einen Fehler AT+CMUX?
auf einem anderen Modul SIM900 Getestet und das funktioniert.
Jede Idee, warum es nicht mit sim800H funktioniert?
Welche Verteilung verwenden Sie an Ihrem BB? – Serge
Debian Wheezy. Ich werde den Beitrag in Kürze bearbeiten, um weitere Details zur BBB hinzuzufügen. – am3
wie das modul verbunden ist: über uart oder usb? – Serge