Unter Linux (Ubuntu) versuche ich, AT-Befehle an ein Modem unter zu senden /dev/ttyACM0
. Ich habe versucht, es zu tun als:
sudo socat - /dev/ttyACM0
aber wenn ich etwas tippe, bekomme ich nur eine Zeile, die diesen Befehl wiederholt (ich erwarte eine OK
).
Wenn ich es tue
sudo minicom modem1
es scheint zu funktionieren. Ich tippe ein AT
und bekomme ein OK
. Ich tippe etwas Mist, ich bekomme einen ERROR
.
Es scheint, dass modem1
für minicom irgendwie konfiguriert ist, das Modem bei zu verwenden /dev/ttyACM0
.
Wie kann ich mit socat AT-Befehle senden? Muss ich etwas konfigurieren? Vielleicht kann ich Konfigurationen für modem1
Minicom verwenden (ich weiß nicht, wie ich diese Konfiguration finden / sehen kann)?
Zusätzliche Information
Ist der angegebene socat
Befehl korrekt? Soll ich mit einigen Optionen spielen? Mit der -v
Option sehe ich folgendes:
AT
> 2013/10/23 17:10:28.917413 length=3 from=0 to=2
AT
< 2013/10/23 17:10:28.921598 length=3 from=0 to=2
AT
AT
ksjdhfjdgfhjkdfh
> 2013/10/23 17:10:30.244923 length=17 from=3 to=19
ksjdhfjdgfhjkdfh
< 2013/10/23 17:10:30.251383 length=29 from=3 to=31
ksjdhfjdgfhjk\b \bd\b \bf\b \bh\b \b
ksjdhfjdgfhj
Das Gerät selbst wird mit der folgenden dmesg-Ausgabe gefunden:
[5983726.808063] usb 2-1: USB disconnect, device number 3
[5983730.800021] usb 2-1: new full-speed USB device number 4 using uhci_hcd
[5983730.920014] usb 2-1: device descriptor read/64, error -71
[5983733.629524] usb 2-1: New USB device found, idVendor=0572, idProduct=1329
[5983733.629533] usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[5983733.629539] usb 2-1: Product: USB Modem
[5983733.629544] usb 2-1: Manufacturer: Conexant
[5983733.629549] usb 2-1: SerialNumber: 24680246
[5983733.632673] cdc_acm 2-1:1.0: ttyACM0: USB ACM device
Und das tty ist wie folgt konfiguriert:
speed 57600 baud; line = 0;
eof = ^A; min = 1; time = 0;
-brkint -icrnl -imaxbel
-opost -onlcr
-isig -icanon -echo -echoe
quelle
Antworten:
Versuchen
socat - /dev/ttyUSB2,crnl
Dies weist socat an, einen Wagenrücklauf sowie einen Zeilenvorschub zu senden.
Klarstellung - Dies geht auf die dunklen Tage der elektrischen Schreibmaschinen zurück, in denen Sie den Wagen auf Position 0 auf der Seite zurückrollen müssten - also einen Wagenrücklauf - und das Papier um eine Zeile nach oben bewegen müssen .
quelle
Der beste Weg, um AT-Befehle an ein Modem unter Linux zu senden, besteht darin, das Programm atinout zu verwenden, das ausschließlich zum Senden von AT-Befehlen an ein Modem über die Befehlszeile geschrieben wurde.
Sie können damit testen, ob ein Modem in Betrieb ist. Erstellen Sie eine Sicherungskopie des Telefonbuchs:
oder andere Dinge, für die Sie AT-Befehle verwenden.
quelle
Ich bin auf diesen Chromium-Projektbeitrag gestoßen, der zeigt, was Sie wollen. Es trägt den Titel: Debuggen eines Mobilfunkmodems .
Auszug aus dieser Seite
quelle
dmesg
bleiben. Informationen finden Sie im Protokoll. Entschuldigung, ich kann dir nicht mehr helfen.