Lampada LED con misurazione con striscia LED Neopixel

Il motivo per cui ho creato questo blog è quello di condividere in rete gli appunti dei progetti che realizzo o più in generale qui tengo traccia di tutte le conoscenze in ambito tecnologico che di volta in volta approfondisco.

Lo stile degli articoli è quello di un quaderno di appunti. Anche questo articolo tiene traccia di tutti i passaggi che hanno portato alla realizzazione della lampada LED.

Questo nuovo progetto lo voglio realizzare con la scheda NodeMCU DevKit, gen.2 qui è possibile trovare le istruzioni per programmarla con Arduino.

Come riportato in questo articolo oltre a Onewire si deve usare la libreria DallasTemperature .

Collegamento del sensore e componenti aggiuntivi.

 

Prova del sito http://remotexy.com/en/help/ per controllare con una applicazione l’accensione di un led.

L’applicazione è molto interessante, permette di costruirsi la propia app a piacimento con diverse funzionalità. Purtroppo sono fermo a causa di un problema che ancora non ho risolto. Dopo aver scaricato il codice autogenerato dal sito se aggiungo alcune istruzioni di prova il dispositivo non è più in grado di associarsi alla WiFi.

Ho quindi provato una seconda strada per cercare una via che mi porti velocemente ad un risultato almeno basilare e quindi poi procedere con i miglioramenti.

Su google play ho trovato l’app ArdunoPixel che sembra la soluzione giusta per me. Ho forkato il progetto su gitHub per poterlo scaricare. Ho installato le librerie ma durante la compilazione mi segnala un errore che non sono riuscito a risolvere.

A questo punto credo di dover tornare su Remotexy e leggermi il forum per cercare una soluzione.

Ho postato una richiesta di aiuto il 18/03/2018.

Mentre aspetto la risposta cerco su google app una eventuale alternativa e trovo Virtuino.

Scarico la libreria carico un esempio Webserver_esp01_example_01 ma la compilazione si interrompe per un errore.

Cambio rotta preparo un sketch che svolga le seguenti funzioni:

Dissolvenza tra due colori diversi (avanti – indietro)

Lampeggio.

Luce fissa con regolazione di colore e luminosità

Luce fissa con colore dipendente dalla temperatura.

Questi 4 diversi comportamento possono essere selezionati in prima battuta attraverso un pulsante quindi tramite u telecomando infrarosso.

 

Lo sviluppo futuro è selezionare e settare i quattroscenari tramite un’app del cellulare.

 

Per usare il pulsante occorre scrivere un codice particolare, ho preso spunto da questo link.

Ulteriore affinamento per riuscire a presentare una bozza del progetto. La presentazione consiste in questo video.

 

 

Ricomincio a lavorare con Node MCU per riuscire a comandare la lampada con il cellulare.

Incontro un problema, non riesco a caricare il codice sulla scheda Node MCU.

Questo è il messaggio di errore:

warning: espcomm_send_command: didn’t receive command response
warning: espcomm_send_command(FLASH_DOWNLOAD_BEGIN) failed
closing bootloader
flush start
setting serial port timeouts to 1 ms
setting serial port timeouts to 1000 ms
flush complete
error: espcomm_upload_mem failed

Per completezza riporto tutti i messaggi:

esptool v0.4.9 – (c) 2014 Ch. Klippel <c[email protected]>
setting board to nodemcu
setting baudrate from 115200 to 115200
Errore durante il caricamento dello sketch
setting port from COM1 to COM16
setting address from 0x00000000 to 0x00000000
espcomm_upload_file
espcomm_upload_mem
setting serial port timeouts to 1000 ms
opening bootloader
resetting board
trying to connect
flush start
setting serial port timeouts to 1 ms
setting serial port timeouts to 1000 ms
flush complete
espcomm_send_command: sending command header
espcomm_send_command: sending command payload
read 0, requested 1
trying to connect
flush start
setting serial port timeouts to 1 ms
setting serial port timeouts to 1000 ms
flush complete
espcomm_send_command: sending command header
espcomm_send_command: sending command payload
espcomm_send_command: receiving 2 bytes of data
espcomm_send_command: receiving 2 bytes of data
espcomm_send_command: receiving 2 bytes of data
espcomm_send_command: receiving 2 bytes of data
espcomm_send_command: receiving 2 bytes of data
espcomm_send_command: receiving 2 bytes of data
espcomm_send_command: receiving 2 bytes of data
espcomm_send_command: receiving 2 bytes of data
Uploading 226352 bytes from C:\Users\Chiessi\AppData\Local\Temp\arduino_build_303362/Blink.ino.bin to flash at 0x00000000
erasing flash
size: 037430 address: 000000
first_sector_index: 0
total_sector_count: 56
head_sector_count: 16
adjusted_sector_count: 40
erase_size: 028000
espcomm_send_command: sending command header
espcomm_send_command: sending command payload
setting serial port timeouts to 15000 ms
read 0, requested 1
setting serial port timeouts to 1000 ms
warning: espcomm_send_command: didn’t receive command response
warning: espcomm_send_command(FLASH_DOWNLOAD_BEGIN) failed
closing bootloader
flush start
setting serial port timeouts to 1 ms
setting serial port timeouts to 1000 ms
flush complete
error: espcomm_upload_mem failed

Abbandono l’utilizzo del NodeMCU in quanto non ho tempo di risolvere il problema e prendo in mano le 2 board Adafruit a mia disposizione.

feather M0 WiFi

feather huzzah

Per la prima board manca un driver anche dal sito ufficiale Adafruit il linik non è più valido.

 

feather huzzah riesco a vederla dall’IDE di Arduino. A questo punto sono davanti ad un bivio Remote XY funziona solo con NODEMCU (verificare).

Sembra che feather huzzah possa essere utilizzato come NODE MCU, per quanto scritto nella relativa pagina sul sito adafruit e riportato di seguito:

While the Feather HUZZAH ESP8266 comes pre-programmed with NodeMCU’s Lua interpretter, you don’t have to use it! Instead, you can use the Arduino IDE which may be more familar. This will write directly to the firmware, erasing the NodeMCU firmware, so if you want to go back to Lua, use the flasher to re-install it

Don’t forget to visit esp8266.com for the latest and greatest in ESP8266 news, software and gossip!

In order to upload code to the ESP8266 and use the serial console, connect any data-capable micro USB cable to the Feather HUZZAH and the other side to your computer’s USB port

Sono ad un bivio con diverse alternative davanti e una scadenza Domenica 29 Aprile…(oggi è il 25 Aprile!!!!!)

  1. Cambiare completamente piattaforma e utilizzare photon e questa app.
  2. Riprovare ad usare Remotexy con la scheda che mi presta Manu (la mia non funziona più!)
  3. Usare Adafruit Feather. Non trovo app o listati già pronti per comandare i led Neopixel.
  4. Studiare la guida Arduino per imparare autonomamente a creare uno sketch per Adafruit e comandare i Neopixel.

Delle 4 alternative ne ho scelta una quinta. Ho rispolverato un articolo di ElettronicaIn contenuto nella rivista numero 199 di Ottobre2015 che tratta un progetto simile al mio. L’unica differenza è che comanda una striscia RGB invece che neopixel. Il progetto definitivo è descritto in questo articolo.

Proseguendo nel miglioramento del progetto come prossimo obbiettivo mi sono posto quello di poter impostare anche gli effetti luminosi sempre da un app del cellulare. Come primo tentativo ho deciso di usare l’applicazione NeoPixControl . L’autore riporta un tutorial a questo link. Usando un hardware diverso da quello che uso io colgo il suggerimento di leggere il file aRest.h per controllare che il mio hardware fosse supportato. In effetti la board NodeMCU è menzionata!

A questo punto vado a leggere lo sketch del programma da caricare sulla scheda ma trovo che la parte relativa alla connessione di rete è tanta e dedicata ad una scheda che non è quella che uso io per cui è tanto il lavoro da fare per modificarlo. Inoltre la parte di programmaè piuttosto difficile da comprendere (per quello che sono le mie conoscenze in materia) in particolare il ciclo loop non riesco a capire come gestisce tutte le funzioni che sono dichiarate di seguito.

Abbandono questa strada. O cerco un’applicazione più adatta al mio hardware oppure approfondisco lo studio del codice per connettere la scheda in WiFi.

Forse ho trovato mi segno qui i link per riprendere prossimamente. Si tratta del progetto McLighting v2.

Ho trovato questo video

questo è il github.

 

 

 

 

 

 

 

 

 

Precedente Disco Neopixel Successivo Modificare i fogli excel con Python