2016-07-03 3 views
0

J'ai presque passé une semaine à essayer de configurer un port série afin de pouvoir l'utiliser pour envoyer des SMS. Permettez-moi d'expliquer ma situation: j'utiliser un ordinateur portable avec Ubuntu 16.04 LTS, la machine dispose d'un modem GSM intégré, le port série est /dev/ttyACM0, voici quelques sorties wvdialconf:Port série - Impossible de définir l'adresse SMSC du centre de service - AT + CSCA? renvoie une erreur, smsd renvoie une erreur d'initialisation

$ sudo wvdialconf 
... 
ttyACM0<*1>: Modem Identifier: ATI -- Manufacturer: SAMSUNG ELECTRONICS CORPORATION 
... 
ttyACM0<*1>: Max speed is 460800; that should be safe. 

Found an USB modem on /dev/ttyACM0. 
Modem configuration written to /etc/wvdial.conf. 
ttyACM0<Info>: Speed 460800; init "ATQ0 V1 E1 S0=0 &C1 &D2" 

J'ai essayé beaucoup d'outils différents pour pour être en mesure d'envoyer un SMS:

  • essayé ce script PHP https://gonzalo123.com/2011/03/21/howto-sendread-smss-using-a-gsm-modem-at-commands-and-php/ (ne fonctionne pas, le script se bloque et je ne retourne pas de sortie);
  • smstools et smsd, installé avec apt-get install smstools: J'essaie de mettre un fichier SMS dans /var/spool/sms/outgoing:

    To: xxxxxxxxxxxx 
    
    This is a test message. 
    

    le fichier SMS sont collectées à partir /var/spool/sms/outgoing par le démon smsd, mais le démon le place dans /var/spool/sms/failed et si je regarde le dossier, je vois:

    Pour: xxxxxxxxxxxx Modem: GSM1 IMSI: FAIL_REASON: initialisation du modem n'a Échec: 16-07-03 17:10:03

    Ceci est un message de test.

    Ceci est la section intérieure /etc/smsd.conf pour le dispositif GSM1:

    [GSM1] init = "ATQ0 V1 E1 S0 = 0 & C1 & D2" device =/dev/ttyACM0 entrant = yes broche = xxxx = 460800 baudrate SMSC = YYYYYYYYYYYY

    J'ai essayé aussi de préciser la commande init sans les guillemets ", obtenez toujours la même erreur. Je pense que la commande init devrait être celle qui sort de wvdialconf (voir ci-dessus), alors pourquoi ça ne marche pas?

  • Aussi, j'ai essayé d'utiliser cu -l /dev/ttyACM0 et tapez premières commandes AT, mais je ne peux pas définir l'adresse SMSC, cause quand je tape AT+CSCA? il me transmet ERROR:

    $ cu -l/dev/ttyACM0 .. AT + CSCA? erreur

    AT + CSCA = "YYYYYYYYYYYY" erreur

quelqu'un peut me aider résoudre ce problèmes que je fais face? Avez-vous rencontré les mêmes erreurs que moi?

Merci pour l'attention.

Répondre

0

Vous pouvez obtenir des réponses d'erreur plus spécifiques que tout en exécutant ERROR

AT+CMEE=2 

Voir le chapitre 9, erreurs de terminaison mobile dans 27.007 pour plus de détails sur la commande et les codes d'erreur.

+0

J'ai essayé 'AT + CMEE = 2', j'obtiens l'erreur suivante:' + CME ERROR: SIM busy', mais je ne peux pas trouver ce que cela signifie en ligne. – tonix

+0

Qu'est-ce que cela signifie? Que je devrais attendre quelques secondes? Mais j'attends et tape à nouveau et je reçois la même erreur ... – tonix