Inviare un comando da remoto ad Arduino connesso via GSM

Ciao a tutti! Sono alla ricerca di un po' di supporto per risolvere ad una grossa problematica che mi sta facendo mettere in discussione tutta l'architettura che ho utilizzato sul mio porgetto.... :disappointed_relieved:

In pratica ho ralizzato un Sensor Node (MOTE) che deve funzionare in modalità stand-alone, cioè in pratica a differenza della classica Wireless Sensor Network (WSN) in cui tutti i MOTE comunicano col webserver internet tramite un GATEWAY, la mia WSN deve essere costituita da MOTE che colloquiano direttamete col webServer internet, in modo indipendente.

Quindi per ogni MOTE ho utilizzato: - Arduino MEGA2560 - modulo GPS/GSM/GPRS, il SimCom SIM908 Ovviamente ogni MOTE ha la propria SIM inserita nel modulo GSM.

La struttura di rete che ho predisposto è di tipo: - MOTE_n = Client_n - WEBSERVER = Server in cui da ogni MOTE vengono effettuate request HTTP (GET e POST) utilizzando i comandi AT del modulo SIM908 GPS/GSM/GPRS.

Tutto funziona alla perfezione durante la fase di misurazione, sequendo il seguente algoritmo (semplificato): MOTE_n acquisisce la misura --> MOTE_n invia i dati della misura al webServer

Ora è giunta la necessità di implementare un [u]telecontrollo da remoto/u: in pratica [u]il Server deve poter avere la possibiltà di interrogare ogni singolo MOTE[/u], ad esempio per manutenzione.

Per come ho attualmente predisposto il firmware, tutte le request HTTP devono partire dal client (MOTE) verso il Server e non viceversa, in quanto il modem SIM908 viene programmato con i comandi AT per la generazione di request HTTP client. Inoltre il modem quindi è sempre impegnato ad effettuare questa operazione. Infatti il modem è programmato con comandi seriali AT all’interno del loop(), in modo ciclico, per effettuare ogni x secondi la comunicazione col server (client->server).

Avete già affrontato questo problema? Che tecnica mi conisgliate di usare per implementare questa funzione aggiuntiva?

Grazie!

p.s. Spero di essere stato chiaro... quando ci si trova in queste problematiche di progettazione non è semplice riuscire ad esporsi correttamente. :roll_eyes: