In questo post descrivo un modo semplice ed intuitivo per controllare un nodeMCU da un applicazione mobile per iOS ed Android.
In dettaglio faccio vedere come pilotare un led da remoto tramite l'applicazione RemoteXY
RemoteXY
RemoteXY e' composto da
- un applicazione Web che permette di disegnare un interfaccia grafica e di generare il codice da far girare sulla scheda di controllo (ESP8266, Arduino, ...)
- un applicazione mobile per iOS e Android che permette di controllare da remoto tramite bluetooth, wifi la scheda di controllo
Per creare un'applicazione completa con RemoteXY bisogna eseguire 4 semplici passi:
Passo #1 : Interfaccia Grafica
Disegnare l'interfaccia grafica con una comodo editor drag&drop disponibile quiPasso #2: Configurazione Codice Sorgente
Configurare e generare il codice sorgente da caricare sul modulo di controllo (ESP8266, Arduino)Passo #3: Upload Sketch
Compilare e caricare il codice sulla scheda di controllo (ESP8266,Arduino) tramite l'IDE Arduino (o tramite gli altri IDE supportati)
Passo #4: Download App mobile
Scaricare l'applicazione mobile ed installarla sul dispositivo client (iOS, Android)
Ci sono 4 aspetti da configurare:
Configurazione
Dopo aver disegnato l'interfaccia grafica della propria applicazione e' necessario configurare il tool per generare il codice in maniera correttaCi sono 4 aspetti da configurare:
- La Connessione (Connection)
Sono supportate 4 tipi diversi di connessioni
Nota: l'applicazione per iOS supporta solo Bluetooth a bassa energia (BLE)
- Il Device (la scheda di controllo)
Sono supportate le seguenti piattaforme
- Il Modulo di Comunicazione usato
Sono supportati i seguenti moduli di comunicazione da accoppiare con le piattaforme supportate
Quindi per esempio e' supportato Arduino Uno con Bluetooth HC-05, oppure Arduino con ESP8266, oppure nodeMCU con ESP8266
- L'IDE che si utilizza
Sono supportati 3 diversi ambienti di sviluppo
Accensione LED con nodeMCU
Vediamo ora un semplice esempio di come controllare lo stato di un LED tramite una semplice applicazione mobile e nodeMCU
GUI
Disegniamo tramite l'editor online una semplicissima interfaccia con una label e con uno switch
Ora cliccando sullo switch (ON/OFF) e' possibile configurare alcuni semplici parametri ad esso correlati nella sezione Element
Per semplicita' lasciamo i valori di default che vanno benissimo
Configurazione
Configuriamo il codice nel seguente modo
In questo modo stiamo dicendo a RemoteXY che vogliamo usare una scheda nodeMCU con ESP8266 per controllare il nostro led e che la vogliamo programmare con l'IDE Arduino.
La connessione e' di tipi Wi-Fi access point e quindi stiamo dicendo a RemoteXY che vogliamo che il nostro nodeMCU si comporti come un WiFi Access Point
Quindi e' necessario anche configurare la sezione Module Interface inserendo lo SSID della rete WiFi che verra' implementata da nodeMCU
Specifichiamo anche la porta su cui il nostro server,1 che gira su nodeMCU, rimarra' in ascolto.
Infine per semplicita' impostiamo il tutto come un Open point cioe' senza autenticazione e senza password
Codice
Premendo ora il pulsante
siamo rediretti ad una pagina in cui e' visualizzato il codice per nodeMCU e dove e' possibile scaricare il codice come file zip e anche la libreria RemoteXY in formato zip
A questo punto scarichiamo la libreria ed installiamola nell'IDE Arduino tramite l'apposito menu'.
Poi scarichiamo il codice
Come possiamo vedere nel codice generato ci sono le informazioni che abbiamo inserito in fase di configurazione:
- SSID del AP WiFI
- Porta del server
La sezione RemoteXY_CONF[] contiene una descrizione dell'interfaccia grafica che verra' inviata all'applicazione mobile una volta stabilita la connessione tra device mobile ed il nodeMCU
Circuito
Ora creiamo il semplicissimo circuito andando ad connettere un LED sul pin D4 del nodeMCU tramite una resistenza da 100-220 Ohm
Test
Ora compiliamo e carichiamo lo sketch sul nodeMCU tramite l'IDE Arduino
Ora tramite il vostro dispositivo mobile (smartphone o tablet) collegatevi alla nuova rete WiFi chiamata LedWiFi
A questo punto lanciate l'app RemoteXY e cliccate sul segno + in alto a destra.
Poi selezionate l'opzione WiFi point
Ora premete su Connect e l'applicazione si connettera' al vostro nodeMCU e scarichera' la definizione dell'interfaccia
Ora potete pilotare il led dal vostro telefono/tablet
Nessun commento:
Posta un commento