Come accendere il condizionatore con l’iPhone

Qualunque sia il vostro condizionatore, qualsiasi sia la marca, anche se vecchissimo o modernissimo: potrete gestirlo comodamente dal vostro iPhone o iPad.

E non solo accenderlo, anche spegnerlo, impostare la temperatura, tempistiche… il tutto senza il telecomando tradizionale. Volendo anche da remoto (così da avere casa già bella fresca prima di arrivare a casa)!

Dovrete acquistare, come per la tv, un Broadlink che vi permette di mandare segnali a infrarossi (la tecnologia utilizzata dal vostro telecomando per comunicare con il condizionatore, qualsiasi sia la marca). Potete acquistarlo da Amazon da qui oppure su Gearbest.

Schermata d’esempio per gestire la temperatura del condizionatore

Per configurarlo invece avete due scelte, o utilizzare Domoticz oppure direttamente da Homebridge. In ogni caso avrete bisogno di un Raspberry Pi se non volete utilizzare l’app ufficiale di Broadlink che lascia molto a desiderare in quanto ad usabilità.

Con Domoticz dovrete creare dei sensori virtuali ed eseguire questo script. Altrimenti con Homebridge potete semplicemente installarlo eseguendo:

 npm i homebridge-broadlink-rm

E potete configurare tutti i tasti seguendo la documentazione.

Come gestire HomeKit da remoto

Abbiamo visto cos’è HomeKit, ma non ho specificato come poter gestire tutti i sensori, luci e accessori da remoto. E per remoto intendo fuori dalla vostra rete locale di casa (o ufficio nel caso vogliate usarlo al lavoro).

Rullo di tamburi… dovete avere… o l’Apple TV o un iPad o l’HomePod!

Immagine presa dal sito di Apple

Già, sapete come funziona con Apple, sistema chiuso: regole ferree.

Detto questo: non c’è neanche bisogno che vi spieghi come vada configurato, sarà tutto già in automatico selezionato non appena viene rilevato il vostro iPad (dovete avere lo stesso Apple ID dell’iPhone con il quale avete configurato l’app Casa) o l’Apple TV.

Nel caso non venga fatto in automatico, aprite l’app Casa e cliccate sull’icona in alto a sinistra per configurarlo come Home Hubs.

Come accendere la TV con l’iPhone

Le reazioni che potete avere, dopo aver letto questo titolo, sono:

  • che me ne faccio di accendere la televisione con il telefono?
  • che figata, dimmi subito come fare!

Se siete nel secondo punto… beh ecco a voi com’è possibile accendere (e gestire) la vostra TV con HomeKit.

Prima di tutto, dato che la vostra televisione al 99% dei casi userà gli infrarossi per comunicare tra telecomando e schermo, vi è necessario acquistare “un qualcosa” che vi permetta di farli comunicare. E questo qualcosa è questo.

Sì, è davvero così piccolo

Potete acquistarlo semplicemente su Amazon (tramite questo link) a un prezzo che oscilla tra i 15 e i 20 euro. Nel caso invece quello non sia disponibile, cercate altri modelli simili tramite questo link.
Se invece volete prenderlo su Gearbest, ecco il link.

Ora, avete due scelte: o vi accontentate dell’app ufficiale, che ha diversi problemi di leggibilità in quanto è molto lenta e non è il massimo in quanto a grafica. Oppure potete installare Homebridge e poi installare il plugin semplicemente con:

npm i homebridge-broadlink-rm

Nel file di configurazione dovrete aggiungere qualcosa di simile a questo file d’esempio.

Tutta la documentazione potete vederla da qui.

Cos’è HomeKit

HomeKit è un protocollo di rete sviluppato da Apple e utilizzato su tutti i nuovi accessori compatibili con iPhone e iPad.

Oramai sia su internet che nei negozi fisici è possibile trovare centinaia di dispositivi compatibili con HomeKit: dai sensori per le porte, fino alle telecamere per interni o esterni.

La lista è davvero infinita, potete scorrere le infinite pagine su Amazon di tutti i prodotti che vende. Assicuratevi sempre che ci sia il simbolo ufficiale di Apple e che i prodotti siano realmente compatibili con l’app Casa che avete sul vostro iPhone.

Badge di HomeKit

Ma potete stare tranquilli, nel caso abbiate delle luci o sensori che non sono compatibili, non vi preoccupate, c’è Homebridge a salvarvi la vita. Vi permette di emulare un gateway compatibile, attraverso un semplice Raspberry (potete anche usare un vecchio computer, ma è più economico sia di hardware che di corrente).

Su npm potrete trovare più di 1000 plugin per Homebridge, quindi state tranquilli.

Nel caso abbiate bisogno, non esitate a contattarmi.

Cos’è un protocollo

Detto brevemente, senza andare troppo nello specifico, un protocollo (di rete) è un insieme di regole che si utilizzano per comunicare.

E per comunicare si intende, ovviamente, trasferire informazioni tra due dispositivi (potrebbero anche essere definiti client e server) che possono essere di qualunque tipo.

Un esempio di protocollo può essere SMB (come installare Samba) utilizzato per trasferire file da un Raspberry a un altro dispositivo connesso alla stessa rete locale. Oppure AFP, il protocollo di Apple. O addirittura la tecnologia Zigbee è un protocollo che sta avendo molto successo nell’ultimo periodo.

Documentazione di AFP sul sito di Apple

Con i prossimi articoli andremo ad introdurre altri esempi di protocolli di rete.

Come aggiornare Homebridge

Se avete installato Homebridge tramite questa procedura e volete aggiornarlo (di solito correggono bug o migliorano la stabilità) vi basterà aprire il terminale ed eseguire:

sudo npm update --global homebridge

Salvo gravi problemi, dovrebbe aggiornarsi in pochi secondi.

E dovrebbe anche tornare tutto attivo, nel caso riavviate il servizio di Avahi con:

sudo service avahi-daemon restart

Quanto consumano le lampadine Hue

Se vi state domandando quanto consumano le lampadine della Phillips con la tecnologia Zigbee (sono lampadine LED da 9W).

Le ho testate personalmente e posso dirvi che al 100% consumano realmente sui 9W e in idle meno di 1W, quindi non preoccupatevi se non staccate ogni volta la corrente, con 1000 ore (quindi circa 1 mese e mezzo) consumerete meno di 20 centesimi.

100% 8.9W
50% 3.3W
6% 1W
0% 0.3W-0.4W

Io ho preso d’esempio la lampadina Phillips Hue White ma anche quella colorata di pari wattaggio consuma uguale.

Come installare Homebridge

Installare Homebridge è semplicissimo, vi basterà prima di tutto installare qualche dipendenza. Iniziamo con Node:

curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt install nodejs -y

Poi nel caso non li abbiate installati, installate anche:

sudo apt install libavahi-compat-libdnssd-dev

E ora finalmente installiamo Homebridge con:

sudo npm install -g --unsafe-perm homebridge

Progetto di Homebridge su GitHub

Ora create un file .config con:

sudo nano ~/.homebridge/config.json

E incollate qualcosa tipo:

{
	"bridge": {
		"name": "Homebridge",
                "username": "AB:12:AB:12:AB:12",
		"port": 1234,
		"pin": "123-45-678"
	},

	"description": "This is an example configuration file with one fake accessory and one fake platform.",

	"platforms": [{
		"platform": "eDomoticz",
		"name": "eDomoticz",
		server": "127.0.0.1",
		"port": "80",
		"ssl": 0,
		"roomid": 1,
		"mqtt": {
			"host": "127.0.0.1",
			"port": 1883,
			"topic": "domoticz/out"
		}
	}]
}

Che è la configurazione nel caso abbiate il plugin per Domoticz. Lo installate semplicemente eseguendo:

sudo npm install -g homebridge-edomoticz

Ora esrguite Homebridge eseguendo (nel caso usate sudo davanti):

homebridge

Se volete eseguire Homebridge come fosse un servizio seguite questa guida.
Mentre nel caso non vi appaia nell’app Casa (Home se avete l’iPhone o l’iPad in inglese) seguite questa.

Come riprogrammare il Sonoff

Se volete riprogrammare, quindi scrivere un nuovo firmware nel vostro Sonoff (se non ce l’avete ancora, lo trovate su Amazon), dovrete prima di tutto acquistare un modulo FTDI (serve per dargli corrente giusta e far passare i dati per riprogrammarlo) e 4 cavetti, se possibile di colore diverso.

Il tutto vi servirà per avere un’interfaccia personalizzata e poter utilizzare il Sonoff come ho utilizzato in questo video con HomeKit. Ovviamente vi servirà il supporto di un browser o di un Raspberry Pi (anche questo, se dovete acquistarlo su Amazon usate questo link) per fare automazioni e poterci accedere anche all’esterno della vostra abitazione.

Sappiate che una volta caricato il nuovo firmware non potrete più reinstallare quello base e ne accedere dall’app eWeLink. Dovrete anche fare attenzione a dargli corrente giusta (vedremo dopo come fare dall’Arduino IDE) altrimenti farete danni irreparabili.
Anche i collegamenti dovrete farli bene altrimenti rischiate di mandare corrente dove in realtà l’ESP866 (sì, il Sonoff ha al suo interno un ESP8266) si aspettava dei dati o viceversa.

Ecco lo schema di collegamento:

Come collegare Sonoff all’FTDI

Continua a leggere

Come gestire Homebridge con systemd

Se volete gestire Homebridge come servizio e far si che a ogni riavvio venga gestito direttamente dal sistema operativo, senza il supporto di screen come vi avevo fatto vedere qua, seguite questa semplice guida!

Prima di tutto trovate il percorso di Homebridge con:

which homebridge

Poi modificate sudo nano /etc/default/homebridge e incollate:

# Defaults / Configuration options for homebridge
# The following settings tells homebridge where to find the config.json file and where to persist the data (i.e. pairing and others)
HOMEBRIDGE_OPTS=-U /var/homebridge

# If you uncomment the following line, homebridge will log more 
# You can display this via systemd's journalctl: journalctl -f -u homebridge
# DEBUG=*

Poi sudo nano /etc/systemd/system/homebridge.service e incollate (cambiando ad ExecStart il percorso che avete trovato precedentemente con il which:

[Unit]
Description=Node.js HomeKit Server 
After=syslog.target network-online.target

[Service]
Type=simple
User=homebridge
EnvironmentFile=/etc/default/homebridge
ExecStart=/usr/bin/homebridge $HOMEBRIDGE_OPTS
Restart=on-failure
RestartSec=10
KillMode=process

[Install]
WantedBy=multi-user.target

Ora create le cartelle con i permessi giusti e abilitate il servizio:

sudo mkdir /var/homebridge
sudo cp ~/.homebridge/config.json /var/homebridge/
sudo cp -r ~/.homebridge/persist /var/homebridge

sudo chmod -R 0777 /var/homebridge
sudo useradd --system homebridge
sudo chown -R homebridge:homebridge /var/homebridge

sudo systemctl daemon-reload
sudo systemctl enable homebridge
sudo service homebridge start

E controllate se funziona con: sudo service homebridge status.

Fonte: https://timleland.com/setup-homebridge-to-start-on-bootup/

Come configurare il gateway della Xiaomi con Homebridge

Non so se lo conoscete, ma il gateway della Xiaomi è un dispositivo in grado di gestire i sensori di movimento, di apertura e chiusura porte, di temperatura e pressione.

Sfortunatamente esso non è compatibile con HomeKit di Apple, quindi per poterlo gestire con un iPhone è necessario utilizzare un dispositivo che faccia da ponte tra quello e l’infrastruttura Apple. Cosa non meglio di un bel Raspberry Pi?

Prima di tutto dovete installare Homebridge come vi ho spiegato qua. Successivamente dovete attivare l’opzione sviluppatore sull’app Mi Home della Xiaomi (che se non avete un dispositivo Android, dovrete emularlo con qualche programma tipo Bluestack) e recuperare l’username e password.

Dovreste vedere una schermata simile a questa (nonostante abbia ancora dei problemi di traduzione dal cinese all’inglese):

Ora spostatevi nella home:

cd /home/pi
sudo git clone https://github.com/marcotini/homebridge-xiaomi
cd homebridge-xiaomi
sudo npm install

Ora andate nella cartella di Homebridge:

sudo nano /home/pi/.homebridge/config.json

E configuratelo così (ovviamente con i codici che avete trovato nell’app):

{
"platforms": [
{
"platform": "AqaraPlatform",
"sid": ["0123456789abc"],
"password": ["0123456789abc"]
}]
}

Poi eseguite:

homebridge

E se tutto funziona correttamente, potrete vedere i vostri sensori direttamente sull’app Casa del vostro iPhone.

Come compilare Domoticz

…dalla sorgente (quindi non la versione già compilata scaricabile facilmente) con le modifiche che vi parlerò più avanti.

Prima di tutto se siete da Raspberry, aumentate lo SWAP a 512 perché altrimenti rischiate di metterci un’eternità. Eseguite sudo nano /etc/dphys-swapfile

E cambiate la riga CONF_SWAPFILE=100 in CONF_SWAPFILE=512

Riavviate con sudo reboot now

E nel caso abbiate già installata la versione normale, stoppatelo ed eseguite questi comandi (salveranno una copia in locale, installeranno make e gcc per compilare):

sudo su
service domoticz stop

apt install cmake make gcc g++ libssl-dev git curl libcurl4-openssl-dev libusb-dev
apt install libblkid-dev e2fslibs-dev libboost-all-dev libaudit-dev
apt install python3-dev
cd /home/pi/
mv domoticz domoticz.old
git clone https://github.com/domoticz/domoticz.git domoticz
cp -avr domoticz domoticz.source
cd domoticz.new
cmake -DCMAKE_BUILD_TYPE=Release CMakeLists.txt
make -j 3

sudo service domoticz start

Website http://domoticz.com

E voilà, andate su raspberrypi.local:8080 e il gioco è fatto!

Come far partire Homebridge all’avvio del Raspberry Pi

Molto brevemente, installate Screen con questo comando:

sudo apt-get install screen
sudo nano /etc/rc.local

Ed incollate nella riga prima di exit 0

su -c "screen -dmS homebridge homebridge" -s /bin/sh pi

Salvate e riavviate il vostro Raspberry Pi con:

sudo reboot now

Ed ecco fatto! Il vostro Raspberry Pi a ogni accensione, avvierà una schermata bash in cui eseguirà il vostro Homebridge!