Costruire un sensore di movimento: Tasmota o Apple HomeKit

Tutorial per costruire un sensore di movimento, compatibile HomeKit per NodeMCU o schede con il microprocessore ESP8266, oppure con il firmware Tasmota per quanto riguarda il dispositivo Sonoff Basic

Sensore di Movimento

Oggi proveremo a costruire un sensore di movimento, ossia un dispositivo di rilevamento di presenza. Possono essere usati uno dei due diversi sensori disponibili, l’HC-SR501 (potete leggere qui la recensione) oppure l’AM312.
Sono essenzialmente uguali, il primo è leggermente più grande e ha due rotelline che gli permettono di configurare la sensibilità e la durata della rilevazione.

Costruire un sensore di movimento : doppia scelta, Tasmota o HomeKit?

Per la creazione di questo dispositivo potremmo scegliere fra due firmware differenti. Il primo, Tasmota, il classico firmware spiegato anche nei precedenti tutorial. Il secondo invece è un firmware creato Ad-Hoc per poter gestire il sensore con i dispositivi Apple, tramite Apple HomeKit.

Entrambi i firmware posso eseguire varie operazioni all’attivazione del sensore, come per esempio l’attivazione delle luci con WLed, trattate proprio qui su Info4blog.it precedentemente.
Forse risulta leggermente più complicato per Tasmota attraverso il comando WebSend, sicuramente molto più intuitivo per il firmware di Apple HomeKit, utilizzando l’automazione con Comandi in iOS.
D’altra parte il firmware Tasmota, rimane il più completo per quanto riguarda la compatibilità di vari protocolli che riguardano la domotica. Naturalmente dovrete scegliere quello più vicino alle vostre esigenze. Nel caso di indecisione nulla vi vieta di provarli entrambi.

Notare che nel caso del Sonoff Basic, la scelta sarà per forza una sola: il firmware Tasmota, in modo da poter utilizzare oltre al sensore anche lo Smart Switch integrato.

Strumenti

Gli strumenti per costruire un sensore di movimento sono i seguenti:

Collegamento

Il collegamento per costruire un sensore di movimento è molto semplice, ricordate di rispettate la polarità dei pin esterni del sensore, e collegate quello centrale al pin D6, che corrisponde al GPIO12. Questo è necessario per poter utilizzare il firmware compatibile con Apple HomeKit.

Schema per costruire un sensore di movimento
Sopra, un esempio di collegamento tratto dal sito GitHub del progetto di HomeKidd

Nel caso invece del dispositivo Sonoff Basic, collegatelo ad uno dei Pin disponibili, successivamente si potrà configurare con il firmware Tasmota.

Facendo molta attenzione a tutti i collegamenti, si può incominciare ad inserire la presa USB per procedere all’upload del firmware.

Upload del Firmware

Sonoff Basic e Tasmota

Per quanto riguarda costruire un sensore di movimento utilizzando Sonoff Basic e il firmware Tasmota, vi rimando all’articolo dedicato.

Configurazione Sonoff Basic per costruire un sensore di movimento

Nella wiki di Tasmota troverete molte informazione sui sensori di movimento. Dovrete soltanto configurare il dispositivo come nella schermata in alto.
Come detto in precedenza attraverso vari comandi si possono configurare le varie azioni, sono spiegate perfettamente nel sito della wiki.
Per esempio con il comando WebSend si può richiamare automaticamente un indirizzo URL, come per esempio l’url per accendere delle luci Wled.

Concludo il discorso Sonoff Basic dicendo che in teoria si può anche installare il firmware per Apple HomeKit, ma così facendo , con il firmware dei paragrafi successivi, si rinuncia alla funzione di smart switch.

NodeMCU, schede compatibili e Apple HomeKit

Invece, per quanto riguarda il Firmware compatibile con Apple HomeKit, diamo un’occhiata all’interessante progetto di HomeKIDD ESP8266 Apple HomeKit Elgato Eve Motion Sensor

Grazie a questo firmware, il dispositivo simulerà il sensore Elgato EVE Motion

Vi rimando alle pagine del progetto in GITHUB per conoscere altre cose molto interessanti.

Per inserire il firmware nel dispositivo, ho creato un semplice file con estensione .cmd che esegue le varie fasi automaticamente nel prompt dei comandi, grazie ad esptools.exe di ESPEasy, lo strumento adatto per l’upload.

Qui di seguito potrete scaricare il file zip della cartella del tool, dove inserire successivamente anche il file .bin del firmware da inserire.

Questa procedura NON vale per il firmware Tasmota, poiché in quel caso l’unico file .bin contiene tutto il necessario per l’esecuzione. Andate comunque nell’articolo che descrive dettagliamene la procedura.

Avrete quindi una cartella con il file PiccoloTool.cmd, il programma Esptool.exe, i file rboot.bin e blanckConfig.bin

Qui c’è il collegamento dell’ultima versione del Firmware da inserire nella cartella del progetto: https://github.com/HomeKidd/ESP8266-HomeKit-Motion-Sensor-Elgato-Eve/releases/download/1.0.3/main.bin

Controllate la pagina del progetto, per controllare la presenza di una versione più recente della 1.0.3

Upload del firmware che riguarda costruire un sensore di movimento

Dopo aver verificato la presenza dei 5 file nella cartella del progetto, e aver verificato anche la connessione e il numero della porta COM con la quale è stata collegata (potete verificarla anche da “gestione dispositivi” di Windows)
Cliccate su file PiccoloTool.cmd , se tutto andrà bene si avvierà la procedura di upload.

Upload del firmware che riguarda costruire un sensore di movimento

Il programma inserisce in memoria vari file, necessari per tutto il funzionamento precisamente:

  • nella posizione 0X0000 il file rboot.bin (necessario per l’avvio)
  • invece nella posizione 0X1000 il file blank_config.bin (necessario per la configurazione wifi)
  • infine nella posizione 0X2000 il file del firmware vero e proprio (in questo caso main.bin)

Il programma utilizzato, Esptool è stato preso da questo sito : https://www.letscontrolit.com/wiki/index.php?title=ESPEasy

All’interno sono presenti altre ulteriori informazioni.

Procedura alternativa di upload in caso di errore

La procedura appena descritta funziona egregiamente con tutti i dispositivi NodeMCU e compatibili.

È capitato però di dover utilizzare altre schedine ESP8266 non ben definite e purtroppo, dopo aver eseguito il download, il firmware non veniva eseguito perfettamente, ho dato subito colpa alle schedine stesse.

L’errore rilevato, ricercando in rete, dava la colpa una volta alla non sufficiente alimentazione, una volta ai contenuti nella memoria ‘corrotti’.

In realtà seguendo una procedura alternativa, sono riuscito perfettamente nell’upload e nella perfetta esecuzione del firmware all’interno del microprocessore.

Grazie al software Flash Download Tools, prodotto direttamente dall’azienda produttrice dei microprocessori ESP8266, Espressif ho risolto ogni problema.

L’indirizzo per il download è il seguente : https://www.espressif.com/en/support/download/overview?keys=flash+download+tool

Come potete vedere dallo screenshot, è abbastanza facile da usare basta inserire i 3 file precedentemente descritti nelle rispettive posizioni di memoria, all’interno della tabella. Dovrete naturalmente selezionare la porta COM adatta. Per rendere la procedura compatibile con la mia schedina, ho dovuto cambiare solo l’impostazione di SPI MODE, settandola su DIO. Dopo aver cliccato su START e dopo il riavvio l’ESP8266 ha funzionato correttamente.

Il programma in questione è utile anche per acquisire ulteriori informazioni sulla scheda, in modo automatico.

Aggiunta del sensore e verifica

Dopo aver finito tutto il processo avrete il firmware uploadato all’interno del dispositivo.
Ricordo che il firmware è stato sviluppato e reso disponibile da HomeKidd, provate a dare un’occhiata alle sue risorse direttamente sul sito di GitHub.

Ora attraverso il vostro iPhone o iPad vi collegherete alla Wi-Fi del dispositivo, il nome incomincerà con LCM o con homekit, la password sarà “12345678”. Una volta collegati uscirà automaticamente una pagina web dove selezionerete la vostra Wi-Fi e inserirete la vostra password.

Una volta finito, potrete ritornare ad usare la vostra Wi-Fi, riselezionatela quindi dal vostro smartphone.

Successivamente sull’applicazione Casa di iOS, aggiungete il sensore manualmente oppure inquadrando con la fotocamera dell’iPhone questo QRCode, in questo caso vi apparirà l’etichetta “apri in Casa”, cliccate e lo aggiungerete automaticamente. Altrimenti tramite inserirete i numeri all’interno dell’etichetta ( 11803193 ), una volta aggiunto manualmente il dispositivo.

Dopo pochi minuti dovrebbe essere subito attivo il sensore, che illuminerà l’icona, all’interno dell’app Casa, quando verrà individuato un movimento.

Facciamo un esempio: Accendere la striscia al nostro passaggio

  • Nell’applicazione Casa andiamo sul tab “Automazione”, premiamo “Crea nuova automazione
  • Selezioniamo “Un sensore rileva un cambiamento di stato”, clicchiamo sul nostro sensore.
  • Nella schermata successiva selezioniamo “Converti in comando rapido
  • A questo punto clicchiamo sul simbolo più, cerchiamo la voce URL e clicchiamo per aggiungerla
  • Nell’url copiamo l’indirizzo per accendere la striscia led WLED
    http://<indirizzo IP del dispositivo WLed >/win&A=255
    Nella sezione del sito WLed dedicata troverete altri comandi, come per esempio attivare uno specifico effetto luminoso.
  • Ora clicchiamo di nuovo sul simbolo più appena in basso all’URL, e cerchiamo “Ottieni contenuto dell’URL” clicchiamo su di esso per aggiungerlo alla lista.
  • Infine clicchiamo in alto “AVANTI” e poi “FINE”.
  • La nostra Automazione è stata creata, verificate attivando il sensore.

Facciamo un altro esempio: accendere la striscia al nostro passaggio e spegnerla dopo 30 secondi

Per far spegnere dopo un breve periodo la luce accesa dal sensore, aggiungiamo prima dell’ultima fase precedente i seguenti passaggi:

  • Nella scheda con i passaggi precedenti clicchiamo sul simbolo più, cerchiamo e aggiungiamo la voce “Attendi
  • Clicchiamo su ‘1 secondoe regoliamo con + e –  il tempo desiderato
  • A questo punto clicchiamo sul simbolo più, cerchiamo la voce URL e clicchiamo per aggiungerla
  • Nell’url copiamo l’indirizzo per accendere la striscia led WLED
    http://<indirizzo IP del dispositivo WLed >/win&A=0
    (il comando A=0 setta la luminosità del dispositivo a zero, spegnendolo)
  • Ora clicchiamo di nuovo sul simbolo più appena in basso all’URL, e cerchiamo “Ottieni contenuto dell’URL” clicchiamo su di esso per aggiungerlo alla lista.
  • Infine clicchiamo in alto “AVANTI” e poi “FINE”.
  • Anche questa Automazione è stata creata, verificate attivando il sensore.

Il dispositivo funzionerà esattamente come l’Elgato EVE Motion e sarà quindi compatibile con l’applicazione Elgato EVE.
In questa applicazione è possibile anche settare la durata del rilevamento da 5 secondi a 15 ore.

Come vedete è una procedura abbastanza semplice la costruzione di un sensore di movimento, l’unico passaggio forse più complicato degli altri è l’upload del firmware, ma con pazienza e valutando bene gli errori si può concludere al meglio anche questo passaggio.

Rimanete sintonizzate per altri ulteriori tutorial, riguardanti tanti altri sensori.

1 thought on “Costruire un sensore di movimento: Tasmota o Apple HomeKit

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *