Condizionatore ad uso ventilatore compatibile Apple HomeKit (via Homebridge)

8 minuti di lettura
SCOPI DEL PROGETTO:
  • Domotizzare un condizionatore tradizionale (qualunque basta che sia dotato di funzione ventilazione) in modo da poterlo utilizzare come accessorio “ventilatore” tramite Apple HomeKit e Siri
  • Livello di difficoltà: medio
  • Costo: ridotto (<30 €)
CONCETTI AFFRONTATI:
COMPONENTI SOFTWARE UTILIZZATE:
DISPOSITIVI FISICI UTILIZZATI:
  • Un condizionatore / climatizzatore / inverter controllato tramite telecomando a infrarossi
  • Un Broadlink RM Mini 3 (o Broadlink equivalente con emettitore infrarosso)
progetto maggiormente indicato per:

Apple-200x200

Note e disclaimer
  • qualsiasi modifica all'impianto elettrico dev'essere effettuata da personale qualificato
  • qualsiasi modifica attuata in proprio è a propria responsabilità personale nonché a proprio rischio e pericolo (la presente guida ha puro scopo didattico)
  • qualsiasi modifica attuata in proprio a un dispositivo ne fa decadere la garanzia.

Mitzubishi MSZ-SF35VE3

Abstract

Tra i progetti più interessanti sinora pubblicati su inDomus (per lo meno per gli utenti Apple) riteniamo essere quello dedicato alla domotizzazione di un condizionatore tradizionale con Apple HomeKit (via Homebridge). Il presente progetto – una specie di spin-off di quello appena citato – permette di aggiungere un accessorio “ventilatore” alla vostra domotica il quale sfrutti le funzionalità di ventilazione del condizionatore. Le metodologie qui spiegate sono ovviamente anche applicabili a qualsiasi ventilatore convenzionale il quale offra controllo tramite telecomando a raggi infrarossi.

Lo scopo di questo progetto è quindi dimostrare come, con una spesa irrisoria, si possa pienamente domotizzare un condizionatore/climatizzatore tradizionale al fine di renderlo compatibile e controllabile tramite gli strumenti di gestione finale del mondo Apple HomeKit (e, conseguentemente, con Siri).

Per questo progetto utilizzeremo un emettitore infrarossi Broadlink RM Mini 3 e un moderno condizionatore: le metodologie qui descritte sono essenzialmente le stesse per praticamente tutti i condizionatori tradizionali controllati tramite telecomando infrarossi, anche i più datati.

Come elencato nell’incipit, è necessario essere in possesso di:

  • un’istanza Homebridge funzionante;
  • un Broadlink RM Mini 3 (o Broadlink modello equivalente purché emetta infrarossi, eg. mod. PRO);
  • un condizionatore funzionante e relativo manuale e telecomando di controllo a segnali infrarossi.

Si parte

Filosofia del progetto

Partiamo da un ragionamento semplice.
Dato che:

  • Homebridge viene riconosciuto da Apple iOS (iPhone, iPad) in quanto “BRIDGE compatibile Apple HomeKit” – quindi come elemento “nativamente” domotico;
  • Homebridge (con apposito plug-in) può inviare segnali infrarossi tramite Broadlink;
  • il condizionatore è controllabile tramite segnali infrarossi,

dunque, è di conseguenza possibile controllare il condizionatore tramite Apple HomeKit, quindi comandarlo con Siri e automatizzarla col resto della domotica.

Analisi

Analizzare le funzionalità di ventilazione controllabili da telecomando

I condizionatori sono creature strane. I modelli esistenti sul mercato sono i più disparati, alcuni si limitano ad accendersi ed erogare aria fredda fino al raggiungimento di una data temperatura target (ovvero la temperatura impostata); altri hanno ventole regolabili, programmi di raffreddamento automatici e modalità silenziose. Alcuni forniscono anche funzioni di ventilazione (quelle sulle quali ci concentreremo in questo progetto), altri anche di deumidificazione, per non parlare della funzionalità “inverter”, che permette di utilizzare l’unità non solo per il raffrescamento estivo ma anche per il riscaldamento invernale.

Il presente progetto ci poterà a domotizzare a mo’ d’esempio un’unità moderna la quale presenta la funzionalità di ventilazione così fatta:

  • possibilità di regolare la velocità del flusso d’aria (4 velocità);
  • possibilità di attivare/disattivare l’oscillazione delle ventole.

Ricordiamo che per domotizzare le funzioni di condizionamento/inverter, il progetto è un altro, questo.

Capire l’accessorio “ventilatore” su Apple HomeKit

Apple HomeKit fornisce la capacità di configurare un accessorio denominato “ventilatore” tale da controllare le funzionalità “tipo” di un ventilatore:

  • regolazione della velocità delle pale (quindi del flusso d’aria);
  • attivazione/disattivazione dell’oscillazione (non oggetto del presente progetto);
  • attivazione della rotazione delle pale oraria o antioraria (non oggetto del presente progetto).

L’accessorio HomeKit che andremo a configurare permetterà di controllare un “ventilatore” nella regolazione della velocità, dell’oscillazione e, ovviamente, dello spegnimento:

Ventilatore su Apple HomeKit

 

Capire la logica di funzionamento del telecomando

Premessa: al di là dell’uso dell’infrarosso (che diamo per scontato), non tutti i telecomandi funzionano allo stesso modo. A grandi linee, però, il modello di comportamento è sempre lo stesso, ovvero quello che andiamo a illustrare.

Nb. per affrontare la restante parte di questo progetto/guida, è necessario avere a disposizione il proprio telecomando, il manuale del proprio condizionatore/climatizzatore/inverter, come riferimento per comprendere con precisione quale siano le funzionalità disponibili.

Il telecomando di una TV ha (solitamente) un funzionamento estremamente banale. Presenta – semplificando – un tasto di accensione/spegnimento, 10 tasti relativi ai numeri da 1 a 10, due tasti per il volume (+ e -) e poco altro. Ogni tasto ha un codice HEX infrarosso specifico. Una volta catturati questi pochi codici basterà riprodurli singolarmente per simulare quindi il telecomando originale. Questo approccio sta alla base del progetto relativo alla domotizzazione di una striscia di LED colorati.

Il telecomando di un condizionatore è un dispositivo un tantino più complesso. Solitamente, la numerosità dei codici HEX infrarossi è pari al numero di combinazioni date dai vari programmi e modalità selezionabili; in sostanza: la pressione di un dato tasto non produce sempre lo stesso codice HEX infrarosso, tutt’altro. Il codice prodotto è infatti sempre legato alla combinazione di funzionalità in uso nel dato momento.

Spieghiamo meglio. Quella che segue è l’immagine schematica del telecomando preso ad esempio per questo progetto:

Telecomando condizionatore

Come si evince dall’immagine, tale telecomando presenta un tasto (“MODE”) per scorrere le 6 modalità operative (ventilazione – deumidificatore – condizionamento – riscaldamento e altre due “speciali”), due tasti per aumentare o diminuire la temperatura target (da 16º a 31º celsius), un tasto per scorrere le 5 velocità di emissione dell’aria (“FAN”), infine un tasto per scorrere le 5 inclinazioni possibili delle alette direzionali (“VANE”).

Pertanto, i codici HEX emettibili dal telecomando, ipotizzando di mantenere costante la temperatura (per semplificare il ragionamento), sono:

6 (modalità operative) x 5 (velocità) x 5 (inclinazioni) = 150 codici (possibili combinazioni)

Se poi consideriamo che le temperature possibili sono 14 (da 16° a 30°), i codici possibili in realtà sono:

150 (codici) x 14 (temperature possibili) = 2100 (codici complessivi)

Nb. in realtà il telecomando di questo esempio non prevede di impostare anche una temperatura nelle modalità “ventilazione” e “deumidificazione” (l’indicatore sparisce), ma quanto sopra riportato è per far capire il concetto e dare un ordine di grandezza.

Un condizionatore solitamente è stupido, nel senso che “non ricorda l’ultima cosa che stava facendo l’ultima volta che si trovata acceso”. Questo è il motivo per cui il telecomando è in grado di inviare così tanti codici (e il condizionatore è in grado di capirne altrettanti): perché premendo un tasto si invia un codice dato dalla combinazione delle impostazioni in quel momento impostate sul telecomando + il cambiamento portato dal pulsante specifico premuto.

Per esempio, l’invio del codice corrispondente a:

  • modalità: ventilazione
  • temperatura target: –
  • velocità ventole: 3
  • inclinazione alette: –
  • oscillazione alette: si

piuttosto che:

  • modalità: riscaldamento
  • temperatura target: 27°
  • velocità ventole: 3
  • inclinazione alette: 5
  • oscillazione alette: no

ha un effetto immediato nel cambiamento operativo dell’unità, comunque stia precedentemente operando.

Nb. Il presente progetto (a differenza di quello di domotizzazine delle funzioni di climatizzazione) presenta una grossa semplificazione: i codici che ci interessano sarano SOLO quelli relativi alla modalità di “ventilazione” dell’unità.

Identificare i codici HEX infrarossi utili alla nostra domotizzazione

Dato che non possiamo realisticamente pensare di inserire centinaia di codici HEX infrarossi nella nostra configurazione, è necessario ridurre la cerchia a meno di una decina.

Si sarà già capito che riprodurre in toto le funzionalità del telecomando è praticamente impossibile. Tra l’altro in questo caso la cosa neanche ci interessa: a noi interessa implementare la sola funzionalità di ventilazione.

Cosa fare, dunque?

Dato che lo slider di regolazione dell’accessorio “Ventilatore” di HomeKit prevede 100 posizioni (100 posizioni percentuali, da 1% a 100%), dovremo ovviamente ridurre questo numero a quello disponibile sul telecomando: se la funzione “ventilazione” del condizionatore prevede 4 velocità, i codici configurabili saranno per l’appunto quei 4.
Quel che sarà necessario fare sarà associare i 4 codici HEX a 4 posizioni “arbitrarie” nel ventaglio delle 100 posizioni disponibili:

  • prima velocità, posizionamento al 10%
  • seconda velocità, posizionamento al 25%
  • terza velocità, posizionamento al 50%
  • quarta velocità, posizionamento al 100%

Ovviamente quando si utilizzerà lo slider di regolazione se si sceglierà una delle rimanenti 96 (100-4) posizioni non censite né configurate, l’accessorio provvederà a scegliere la configurazione più vicina, ad esempio (facendo riferimento alla configurazione di cui sopra):

  • velocità scelta: 44%
  • codice HEX inviato: 50%

oppure

  • velocità scelta: 12%
  • codice HEX inviato: 10%

e così via.

Chiaro è che se ipoteticamente l’unità supportasse 100 velocità diverse, sarebbe possibile cablarle interamente nella configurazione.

Installazione e configurazione

Installare il plugin “homebridge-broadlink-rm”

Installare il plugin è come sempre facilissimo, il comando è davvero banale:

npm install -g homebridge-broadlink-rm

Nb. per maggiori info sull’installazione c’è una scheda apposita su inDomus. Una volta installato, è sempre necessario provvedere alla configurazione di base del plugin.

Cattura dei codici infrarossi erogati dal telecomando

ATTENZIONE: in caso si abbia a disposizione un computer Windows, in alternativa alle metodiche descritte in questo paragrafo si consiglia di utilizzarne una più rapida e pratica basata sul TOOL gratuito “Broadlink Manager”, descritta in dettaglio in questa guida.

Una volta installato il plugin ed effettuata la configurazione di base su Homebridge, presso l’app “Casa” di Apple iOS apparirà uno switch denominatoLearnIR”. Ora, per acquisire i codici HEX infrarossi del nostro telecomando sarà necessario posizionarsi davanti al Broadlink con Homebridge in esecuzione (per praticità da riga di comando piuttosto che come servizio) e attivare tale pulsante.

A questo punto, il Broadlink si metterà in “ascolto” di eventuali codici HEX infrarossi e, una volta ricevuti, li visualizzerà a schermo sul terminale tramite Homebridge. Si prema dunque il tasto “LeanIR” sull’applicazione “Casa”, si punti il telecomando verso il Broadlink, si prema il tasto che si desidera acquisire e si osservi il terminale.

Ecco un esempio preso dal terminale Raspbian in fase di acquisizione del tasto “accensione” di una TV Samsung:

Broadlink RM cattura codici HEX

Il codice HEX – il quale solitamente è una stringa che comincia con “2600” – appare così:

2600460093951237123812381213121212131213111312381238123812121213121311131213121212381213111312131113121312121238121312381139113911391138123812000d050000

A questo punto, imparata la procedura, acquisire tutti i codici del telecomando necessari in base alle considerazioni ampiamente illustrate nei paragrafi sopra.

Il trucco, per quanto riguarda i codici di ventilazione, è quello di impostare a monte il telecomando per le funzioni che rimarranno fisse (programma “Ventilazione”, inclinazione delle ventole, eventuale oscillazione automatica delle stesse) e posizionarsi sulla prima velocità, dopodiché premere lo spegnimento “OFF” del telecomando.

Alla riaccensione, premendo “ON”, verrà inviato il primo codice corrispondente alla prima velocità (unitamente a tutte le impostazioni che manterremo fisse sopra elencate). Questo andrà fatto con il Broadlink già “in ascolto”, catturando così il primo codice. Sarà poi semplicemente utile premere il tasto che aumenta la velocità dell’aria per catturare (sempre con il Broadlink in ascolto) i codici relativi alle velocità successive.

Al termine sarà possibile catturare il codice “OFF”, premendolo, sempre con Broadlink “in ascolto”.

Nb. Sarà un’ottima idea quella di salvare i codici HEX infrarossi catturati su un foglio Exel, per usi futuri nella eventuale variazione della configurazione.

Definizione del file di configurazione di Homebridge

Ora è necessario creare una nuova voce presso il file di configurazione di Homebridge al fine di creare presso Apple HomeKit un nuovo accessorio di tipo “condizionatore”.

È dunque necessario, nel file di configurazione, inserire tra gli accessori del blocco – “platform“: “BroadlinkRM – un accessorio analogo a questo:

{
"name": "Ventilatore",
"type": "fan",
"hideSwingMode": true,
"hideRotationDirection": true,

"data": {
  "on": "codice HEX infrarosso per l'accensione (tipicamente la velocità 1)",
  "off": "codice HEX infrarosso per lo spegnimento",
  "fanspeed10": "codice HEX infrarosso per la velocità",
  "fanspeed25": "codice HEX infrarosso per la velocità",
  "fanspeed50": "codice HEX infrarosso per la velocità",
  "fanspeed100": "codice HEX infrarosso per la velocità"
   }
 }

Nel primo blocco vengono definiti i parametri di funzionamento di base dell’accessorio:

"name": "Ventilatore",
"type": "fan",
"hideSwingMode": true,
"hideRotationDirection": true

dove:

namedefinisce il nome dell’accessorio presso l’app Apple “Casa”
typedefinisce la tipologia, per l’appunto “fan”
hideSwingModedisabilita la funzione di oscillazione (non applicabile in questo progetto)
hideRotationDirection disabilita la funzione di rotazione oraria/antioraria (non applicabile in questo progetto)

Nella seconda parte, ovvero nel blocco “data“, annidati si definiscono i codici per l’accesione (“on”) e lo spegnimento (“off”) e poi tanti valori quante sono le velocità disponibili:

"data": {
  "on": "codice HEX infrarosso per l'accensione (tipicamente la velocità 1)",
  "off": "codice HEX infrarosso per lo spegnimento",
  "fanspeed10": "codice HEX infrarosso per la velocità",
  "fanspeed25": "codice HEX infrarosso per la velocità",
  "fanspeed50": "codice HEX infrarosso per la velocità",
  "fanspeed100": "codice HEX infrarosso per la velocità"
   }
 }

Accorgimenti nella configurazione

Prima di dare in pasto qualsiasi file di configurazione a Homebridge, ricordarsi sempre di verificarne la correttezza sintattica presso JSONLint.

Per tutte le informazioni di dettaglio sulle caratteristiche e i parametri di configurazione dell’accessorio “Condizionatore” tramite il plugin “homebridge-broadlink-rm” fare direttamente riferimento alla guida online.

Configurazione del dispositivo Broadlink

Abbiamo quasi finito, ma prima di comandare il nostro condizionatore tramite l’uso combinato di Home Assistant e del componente appena configurato, è necessario che il Broadlink sia già presente sulla nostra Wi-Fi. In caso questo passo sia già stato effettuato in precedenza, è possibile proseguire oltre.

Per far in modo che l’emettitore infrarosso entri (e resti) dentro la vostra Wi-Fi è sufficiente scaricare l’applicazione e-Control per Android o per iOS e seguire le istruzioni.

In caso di difficoltà, è disponibile il manuale in italiano.


Logo Apple HomeKitATTENZIONE: ricorda che sul nostro community FORUM c'è una sezione ad hoc dedica ad Apple Homekit, per qualsiasi dubbio, domanda, informazione nel merito specifico di queste componenti.

🔻 Clicca QUI per commentare l'articolo. 🔻