Sous Linux (Ubuntu), j'essaie d'envoyer des commandes AT à un modem à /dev/ttyACM0
. J'ai essayé de le faire comme:
sudo socat - /dev/ttyACM0
mais lorsque je tape quelque chose, je reçois juste une ligne répétant cette commande (je m'attends à un OK
).
Quand je fais
sudo minicom modem1
cela semble fonctionner. Je tape un AT
et j'obtiens un OK
. Je tape de la merde, j'obtiens un ERROR
.
Il semble que modem1
pour minicom est en quelque sorte configuré pour utiliser le modem à /dev/ttyACM0
.
Comment puis-je utiliser socat pour envoyer des commandes AT? Dois-je configurer quelque chose? Peut-être que je peux utiliser des configurations pour modem1
de minicom (je ne sais pas comment trouver / voir cette configuration)?
Information additionnelle
La socat
commande donnée est-elle correcte? Dois-je jouer avec certaines options? Avec l' -v
option, je vois ce qui suit:
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
Le périphérique lui-même se trouve avec la sortie dmesg suivante:
[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
Et le tty est configuré comme suit:
speed 57600 baud; line = 0;
eof = ^A; min = 1; time = 0;
-brkint -icrnl -imaxbel
-opost -onlcr
-isig -icanon -echo -echoe
la source
Réponses:
Essayer
socat - /dev/ttyUSB2,crnl
Cela indique à socat d'envoyer un retour chariot ainsi qu'un saut de ligne.
Clarification - cela remonte aux jours sombres des machines à écrire électriques, où vous deviez lui dire de ramener le chariot en position 0 sur la page - ergo, un retour de chariot - ainsi que de lui dire de déplacer le papier d'une ligne .
la source
La meilleure façon d'envoyer des commandes AT à un modem sous Linux est d'utiliser le programme atinout qui est écrit dans le seul but d'envoyer des commandes AT à un modem à partir de la ligne de commande.
Vous pouvez l'utiliser pour tester si un modem est opérationnel et faire une sauvegarde du répertoire téléphonique:
ou toute autre chose pour laquelle vous utilisez les commandes AT.
la source
Je suis tombé sur ce post de projet Chromium qui montre ce que vous voulez. Il s'intitule: Débogage d'un modem cellulaire .
extrait de cette page
la source
dmesg
journal pour plus d'informations. Désolé, je ne peux pas vous aider plus que cela.