Aprire e gestire connessione TCP/IP con comandi AT

Attenzione !I messaggi sul forum potrebbero essere modificati dal nostro staff. La data e l'ora dei messaggi potrebbe non essere quella di invio ma quella di moderazione da parte dello staff. Grazie per l'attenzione.

Home Forum Soluzioni di comunicazione cellulare Telit Aprire e gestire connessione TCP/IP con comandi AT

Questo argomento contiene 4 risposte, ha 2 partecipanti, ed è stato aggiornato da  Sergio Bertana 8 anni, 6 mesi fa.

Stai vedendo 5 articoli - dal 1 a 5 (di 5 totali)
  • Autore
    Articoli
  • #34766

    Sergio Bertana
    Amministratore del forum

    Il modem quadri-band GSM/GPRS GT863-PY della Telit ha la gestione del protocollo TCP/IP integrata, una serie  di comandi AT specifici permettono di gestire le connessioni TCP/IP direttamente da linea seriale. Vediamo come utilizzare questi comandi.

    Attivazione contesto: AT#SGACT=<cid>, <stat> [,<userId>, <pwd>]
    Permette di attivare (<stat>=1)/disattivare (<stat>=0) i 5 contesti definiti (<cid> da 1 a 5) impostando eventuali credenziali di accesso. L’attivazione del contesto permette di registrare il modem in rete fornendo le credenziali fornite dal gestore. Il comando AT#SGACT=1,1 si connette a rete Vodafone, il modem ritorna l’indirizzo IP assegnato al modem #SGACT: 91.80.166.25.

    Apertura socket: AT#SD=<connId>, <txProt>, <rPort>, <IPaddr> [,<lingerT>[,<lPort>]]
    Esegue l’apertura del socket del tipo indicato (<txProt> 0:TCP, 1:UDP), indicando l’ID di connessione (<connId> da 1 a 6), all’indirizzo IP definito (<IPaddr>) sulla porta specificata (<rPort>). E’ anche possibile definire il Linger time e la porta locale a cui connettere il socket. Il comando AT#SD=1, 0, 80,www.elsist.it si connette al nostro sito web, il modem ritorna CONNECT e passa in modalità dati.

    Tutti i dati inviati alla seriale del modem vengono inviati al socket e viceversa, permettendo lo scambio dati bidirezionale tra la seriale del modem ed il socket sul server.

    Per passare dalla modalità dati alla modalità comandi inviare al modem +++ ed attendere OK. Per chiudere la connessione in modalità comandi inviare il comando AT#SH=<connId>.

    E’ possibile ritornare in modalità dati ricollegandosi al socket precedentemente aperto con il comando AT#SO=<connId>.

    #36279

    Sergio Bertana
    Amministratore del forum

    Per effettuare un test di scambio dati con la seriale del modem, sul PC server (A cui si connette il socket) è possibile eseguire un programma TCP/IP Server come ad esempio il programma Toolly.

    Questa utility apre a video una finestra terminale divisa in due parti (Received data in alto e Send data in basso) e si mette in ascolto sulla porta IP definita. Quando il modem si connette alla porta, il socket viene aperto e la connessione stabilita. Tutti i dati inviati sulla seriale del modem verranno visualizzati nella finestra Received data, e digitando dati nella finestra Send data essi saranno inviati al modem che li ritornerà dalla seriale.

    #36392

    Sergio Bertana
    Amministratore del forum

    Alcuni clienti sono andati in confusione con i comandi AT da dare ad un modem nuovo, ecco in sequenza i comandi:

    – Definire SELINT 2 con comando AT#SELINT=2<CR>
      Verificare SELINT definito con comando AT#SELINT?<CR>

    – Definire contesto, con comando AT+CGDCONT=1,”IP”,”APN”<CR>
      at+cgdcont=1,”IP”,”web.omnitel.it” per Vodafone
      at+cgdcont=1,”IP”,”ibox.tim.it” per TIM
      at+cgdcont=1,”IP”,”internet.wind” per Wind

    – Impostare configurazione socket, con comando AT#SCFG=<connId>,<cid>,<pktSz>,<maxTo>,<connTo>,<txTo>
      Esempio: AT#SCFG=1,1,300,90,600,50<CR>

    – Eseguire l’attivazione contesto, comando AT#SGACT
      Esempio: AT#SGACT=1,1<CR>

      Il comando ritorna l’indirizzo IP assegnato alla connessione. Esempio #SGACT: 83.224.213.81

    Attenzione! A questo punto settare i segnali DTR ed RTS in condizione attiva, altrimenti il modem in connessione dati non potrà inviare i dati ricevuti sulla porta seriale.

    – Eseguire il dial sul socket comando AT#SD
      Esempio AT#SD=1,0,80,”www.google.com”,0,0,0<CR>
      Esempio AT#SD=1,0,7777,”95.74.211.104″,0,0,0<CR>
      Instaurata la connessione ricevo stringa CONNECT, a questo punto i dati inviati sulla seriale vengono spediti all’indirizzo IP remoto e viceversa.

    – La sequenza di Escape “+++” come nelle connessioni dati permette di commutare in modo comandi.

    – Il comando AT#SO=1 ripristina la modalità dati sulla connessione 1.

    – Il comando AT#SH=1 chiude la connessione 1.

    – Il comando AT#SS ritorna lo stato delle 6 possibili connessioni sul socket.
      #SS: 1,2,83.224.213.81,21782,83.103.43.38,7777
      #SS: 2,0
      #SS: 3,0
      #SS: 4,0
      #SS: 5,0
      #SS: 6,0

    – Per aprire una connessione FTP, comando: AT#FTPOPEN=<server:port>,<username>,<password>,<mode>
      <mode>: 0 – active mode (default) 1 – passive mode
      Esempio: AT#FTPOPEN=”www.elsist.it”, “anonymous”, “[email protected]”,0<CR>

    – Per leggere un file comando AT#FTPGET=<filename>
      Esempio AT#FTPGET=”Modem Telit.txt”<CR>
      Dato il comando mi verrà inviato il contenuto del file in binario o testo.

    – Per scrivere un file comando AT#FTPPUT=<filename>
      Esempio AT#FTPPUT=”Prova.txt”<CR>
      Passandi in modo comandi (Sequenza di escape +++) il file verrà chiuso.

    – Per chiudere connessione FTP inviare comando AT#FTPCLOSE.

    #36541

    Luca
    Partecipante

    Ho dato una interessatissima occhiata a quanto descritto in merito al GT863PY TELIT. Mi interessa in particolare la possibilità di stabilire connessioni GPRS usando il gestore interno dello STACK TCP/IP. Mi chiedo se la procedura di connessione GPRS segue regole simili anche per il TC65 SIEMENS che implementa al suo interno un altro gestore dello stack.

    In particolare, dovrei interfacciare uno dei due modem con una scheda realizzata da me, sulla quale c’è una semplice porta seriale collegata un microcontrollore. Mi chiedo se i due modem possono essere considerati equivalenti sotto il profilo delle prestazioni e se i comandi sono simili (se non identici).

    Attualmente effettuo connessioni tipo CSD (dialup) ma sono molto lente ed inaffidabili per diverse ragioni; spero, modificando il firmware della mia scheda, di adoperare uno dei due modem e risolvere i miei problemi.

    #36542

    Sergio Bertana
    Amministratore del forum

    Il TC65 Cinterion (Ex Siemens) è un prodotto programmabile in Java quindi offre qualcosa in piu rispetto ad un semplice modem. Anche se è possibile gestirlo da comandi AT chi utilizza questo prodotto carica all’interno di esso una applicazione Java di interfaccia tra la seriale esterna e la seriale dell’engine GSM/GPRS.

    Cinterion ha annunciato, e tra breve saranno disponibili, i nuovi modelli di modem, MC52iT che sostituirà il modello MC35iT, ed il modello MC55iT. Questi modelli ad un prezzo simile al modello MC35iT offrono connettività GSM/GPRS con stack TCP/IP integrato.

    A breve presenteremo sul sito i nuovi modelli con tutte le caratteristiche. Per una comparazione sui comandi AT consiglio di registrarsi al sito e di scaricare il manuale comandi dei diversi modelli ed effettuare le dovute comparazioni.

Stai vedendo 5 articoli - dal 1 a 5 (di 5 totali)

Devi essere loggato per rispondere a questa discussione.