Domotizzare un condizionatore tradizionale rendendolo compatibile Apple HomeKit (via Homebridge)

14 minuti di lettura
SCOPI DEL PROGETTO:
  • Domotizzare un condizionatore tradizionale (o un climatizzatore, o un inverter) in modo da porterlo utilizzare con Apple HomeKit e Siri
  • Livello di difficoltà: medio/alto
  • 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.
Revisione progetto: 1.1

Mitzubishi MSZ-SF35VE3

Abstract

Una delle funzioni più gradite in domotica è quella di poter controllare remotamente, ovvero “da lontano”, le funzioni della propria abitazione.

Il controllo remoto è ancor più gradito quando l’elemento da controllare è relativo alla climatizzazione, che sia invernale (riscaldamento) o che sia estiva (raffrescamento): la possibilità di accendere/spegnere un impianto in nostra assenza, magari in modo automatico in base alla propria posizione GPS (“quando esco da lavoro, accendi il condizionatore a 27 gradi, qualora la temperatura nella stanza sia più alta”).

Mentre per inserire in domotica il controllo degli impianti di riscaldamento autonomo le soluzioni sono molteplici e per lo più economicamente affrontabili (in quanto alla fine, di fatto, si tratta solo di sostituire il termostato), per l’ambito del raffrescamento la situazione è molto diversa.

Al netto di soluzioni interessanti (vedi lo SPECIALE ESTATE), l’unica alternativa per inserire in una domotica organica un condizionatore è – il più delle volte – sostituirlo, acquistandone uno nativamente domotico – il quale non è detto sia compatibile, comunque, con l’omogeneità che cerchiamo per la nostra domotica personale.

Questo approccio è quindi perdente, in quanto molto difficilmente si può pensare di affrontare una spesa importante solo per introdurre una singola funzionalità aggiuntiva – per quanto pregiata – tanto più nel caso che il condizionatore già presente nel proprio ambiente sia perfettamente funzionante e adeguato al proprio scopo.

Lo scopo di questo progetto è dimostrare come, con una spesa irrisoria, si possa pienamente domotizzare un condizionatore 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 (in esecuzione su Windows, macOS, Raspberry Pi: non fa alcuna differenza)
  • 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à del condizionatore 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, 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 domotizzerà a mo’ d’esempio un’unità moderna, di una delle marche più note, la quale presenta la totalità delle funzionalità sopra elencate. Questo perché, come vedremo in seguito, dato che non tutte queste funzioni di un condizionatore sono necessariamente riproducibili tramite la domotica by Apple, va da sé che qualsiasi condizionatore elementare sarà ancor più semplice da domotizzare sulla base di quanto segue.

Ci poniamo direttamente nel caso più complesso: tutto ciò che sta al di sotto sarà più facile da realizzare.

Capire l’accessorio “condizionatore” su Apple HomeKit

Apple HomeKit fornisce la capacità di configurare un accessorio denominato “condizionatore” tale da controllare le più classiche tra le funzionalità sopra descritte.

A dirla tutta, questo accessorio è ben lungi dall’essere perfetto. Non contempla, per esempio, l’ipotesi (realistica) che il condizionatore presenti delle ventole regolabili (in termini di potenza, quindi di soffio) o delle alette direzionabili. Nemmeno considera l’ipotesi della funzionalità di deumidificazione, o di ventilazione, tanto per dirne altre.

Quel che può fare – e questo lo fa bene – è accendere e regolare il condizionatore in modalità caldo o freddo in base alla temperatura target scelta (tramite uno slider presso l’applicazione “Casa”), oppure impostare la modalità automatica calda o fredda, o semplicemente automatica in base alla temperatura dell’ambiente. Ovviamente, è anche in grado di spegnere l’unità.

Condizionatore su Apple HomeKit

Ferme restando le attuali limitazioni dell’accessorio “Condizionatore” di Apple HomeKit, in attesa di eventuali evoluzioni del framework da parte di Apple vedremo ora come colpire “l’obiettivo grosso”, ovvero quello di accendere/spegnere l’unità e regolarne la temperatura target tramite ciò che abbiamo tecnicamente a disposizione.

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)

N.b. 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à: condizionamento
  • temperatura target: 27°
  • velocità ventole: 1
  • inclinazione alette: 1

piuttosto che:

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

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

Tutto questo complica non poco il raggiungimento del nostro scopo, ma l’importante è capire bene lo scenario e applicare il concetto che segue.

Identificare i codici HEX infrarossi utili alla nostra domotizzazione

Prima di porsi il problema di catturare i codici, la cosa più sana è fare un salto sul nostro ARCHIVIO COLLABORATIVO di codici infrarossi/radiofrequenza. Con un po’ di fortuna, potresti già trovare il lavoro fatto. Differentemente, non dimenticarti (sempre tramite quella pagina) dopo aver raccolto i tuoi, di inviarli all’archivio!

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

Si sarà già capito che riprodurre in toto le funzionalità del telecomando è praticamente impossibile.

Cosa fare, dunque?

Dato che lo slider di regolazione dell’accessorio “Condizionatore” di HomeKit prevede al massimo una ventina di temperature target, a questo punto sarà necessario catturare e definire 20 codici HEX relativi alle varie temperature configurate con le combinazioni che più ci aggradano in termini di funzionamento operativo.

Se per esempio “di solito” si usa il condizionatore – solo variandone la temperatura target – con una velocità delle ventole al massimo e un’inclinazione specifica, si andranno a scegliere i 20 codici erogati dal telecomando relativi alle 20 temperature target lasciando le altre variabili (velocità ventole, inclinazione e, ovviamente, modalità “condizionamento”) fisse per come le ho scelte.

Il telecomando del nostro esempio prevede, per velocità e ventole, una modalità “auto”, in grado di perfezionare il condizionamento dell’ambiente variando, nel tempo e in modo automatico, la velocità delle ventole e l’inclinazione. Una buona idea potrebbe essere, anziché andare a scegliere manualmente velocità, inclinazione e magari alti fattori, lasciare per queste variabili l’impostazione “auto” per concentrarci alla cattura dei codici HEX relativi alle varie temperature.

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 Raspberry 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 in base alle considerazioni ampiamente illustrate nei paragrafi sopra.

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": "Condizionatore",
"type": "air-conditioner",
"minTemperature": 10,
"maxTemperature": 31,
"defaultCoolTemperature": 29,
"defaultHeatTemperature": 19,
"replaceAutoMode": "cool",

"data": {
  "off": "codice HEX infrarosso per lo spegnimento",
  "temperature16": {
    "pseudo-mode": "cool",
    "data": "codice HEX infrarosso per la temperatura 16 gradi"
    }
  }
}

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

"name": "Condizionatore",
"type": "air-conditioner",
"minTemperature": 10,
"maxTemperature": 31,
"defaultCoolTemperature": 29,
"defaultHeatTemperature": 19,
"replaceAutoMode": "cool"

dove:

namedefinisce il nome dell’accessorio presso l’app Apple “Casa”
typedefinisce la tipologia, per l’appunto “air-conditioner”
minTemperature” / “maxTemperatureindicano all’accessorio quale sia il range operativo dello slider per la regolazione della temperatura
defaultCoolTemperature” / “defaultHeatTemperatureindicano quali siano le temperature di default per freddo e caldo
replaceAutoMode indica al plugin quale profilo attivare automaticamente in caso di scelta di modalità “Auto” sull’app “Casa”, se freddo (cool) o caldo (heat)

Nella seconda parte, ovvero nel blocco “data“, annidati si definiscono i codici per lo spegnimento (“off”) e poi tanti valori quante sono le temperature del range operativo (dello slider presso ”Casa”) indicate con i parametri “minTemperature” e “maxTemperature” di cui sopra:

"data": {
  "off": "codice HEX infrarosso per lo spegnimento",
  "temperature16": {
    "pseudo-mode": "cool",
    "data": "codice HEX infrarosso per la temperatura 16 gradi"
  }
}

Il funzionamento appare poi il sguente:

Condizionatore con Broadlink e Homebridge - Configurazione Ibrida

Comprendere il parametro “pseudo-mode”

A questo punto è necessario capire significato e scopo del parametro “pseudo-mode”.

Tale parametro serve a far comprendere all’app Apple “Casa” se una data temperatura debba essere interpretata (nella domotica) come azione di raffreddamento o come, eventualmente, di riscaldamento, in caso l’unità sia appunto dotata di funzione inverter.

Caso A:
condizionatore tradizionale (senza produzione calore invernale)

Poniamo il caso che quello che stiamo domotizzando sia un condizionatore tradizionale in grado di erogare solo aria fresca con temperature target da 18° a 29°.

Innanzitutto, il blocco di configurazione apparirà come segue:

"name": "Condizionatore",
"type": "air-conditioner",
"minTemperature": 18,
"maxTemperature": 29,
"defaultCoolTemperature": 18,
"replaceAutoMode": "cool"

I blocchi relativi alla definizione della temperatura saranno tutti analoghi al seguente:

"data": {
  "temperature16": {
    "pseudo-mode": "cool",
    "data": "codice HEX infrarosso per la temperatura 16 gradi in raffreddamento"
  }
}

Dato che l’unità è in grado solo di raffreddare, qualsiasi regolazione della temperatura invierà quindi codici per impostare il condizionamento freddo e l’app “Casa” reagirà considerando la stanza e l’unità “in raffreddamento”.

Caso B:
condizionatore inverter (con produzione calore invernale)

Si tratta proprio del caso relativo all’unità che stiamo domotizzando con questo progetto, ovvero una in grado di erogare freddo in estate e calore d’inverno.

Ora, le strade sono due:

  • definire in configurazione un solo accessorio in grado, tramite slider, di inviare in una parte del range dello slider di regolazione temperatura target codici di raffrescamento, mentre nella restante parte codici di riscaldamento invernale;
  • definire in configurazione due accessori gemelli (con nomi diversi, ovviamente), uno con tutte le temperature (e relativi codici) che interessano il raffrescamento estivo e uno con tutte quelle relative al riscaldamento invernale.

Partiamo dalla seconda strada. In questo caso, basterà indicare nel primo accessorio tutte le temperature (e relativi codici di raffrescamento) e “pseudo-mode”: “cool”, mentre il secondo tutte le temperature (e relativi codici di riscaldamento) con “pseudo-mode”: “heat”. Naturalmente anche i blocchi di definizione dei due accessori (per i parametri come “minTemperature” e “maxTemperature” ecc.) andranno regolati di conseguenza.

Nel primo caso – quello che preferiamo – sarà necessario analizzare le abitudini d’uso per realizzare la configurazione ibrida.

La verità è che sia raffrescamento sia riscaldamento sono funzioni che, ci si faccia caso, vengono sempre utilizzate impostando da telecomando un range limitato di temperature durante l’uso.

Ad esempio, per il condizionatore usato come esempio in questo progetto vengono imposate dall’utilizzatore temperature target dai 25° ai 30° d’estate (raffrescamento) e dai 16° ai 24° d’inverno.

Con la configurazione “ibrida” sarà quindi possibile indicare codici diversi per condizioni diverse come segue:

Temperatura targetTipo di codice HEX“pseudo-mode”
16°codice HEX per riscaldamento a 16°heat
17°codice HEX per riscaldamento a 17°heat
18°codice HEX per riscaldamento a 18°heat
19°codice HEX per riscaldamento a 19°heat
20°codice HEX per riscaldamento a 20°heat
21°codice HEX per riscaldamento a 21°heat
22°codice HEX per riscaldamento a 22°heat
23°codice HEX per riscaldamento a 23°heat
24°codice HEX per riscaldamento a 24°heat
25°codice HEX per raffrescamento a 25°cool
26°codice HEX per raffrescamento a 26°cool
27°codice HEX per raffrescamento a 27°cool
28°codice HEX per raffrescamento a 28°cool
29°codice HEX per raffrescamento a 29°cool
30°codice HEX per raffrescamento a 30°cool

Concludendo, una configurazione completa per uno scenario del genere è la seguente:

{
"name": "Condizionatore",
"type": "air-conditioner",

"minTemperature": 16,
"maxTemperature": 30,
"defaultCoolTemperature": 25,
"defaultHeatTemperature": 16,
"replaceAutoMode": "cool",

"data": {
  "off": "codice HEX infrarosso per lo spegnimento dell'unità",
  "temperature16": {
    "pseudo-mode": "heat",
    "data": "codice HEX infrarosso per riscaldamento a 16°"
  },
  "temperature17": {
    "pseudo-mode": "heat",
    "data": "codice HEX infrarosso per riscaldamento a 17°"
  },
  "temperature18": {
    "pseudo-mode": "heat",
    "data": "codice HEX infrarosso per riscaldamento a 18°"
  },
  "temperature19": {
    "pseudo-mode": "heat",
    "data": "codice HEX infrarosso per riscaldamento a 19°"
  },
  "temperature20": {
    "pseudo-mode": "heat",
    "data": "codice HEX infrarosso per riscaldamento a 20°"
  },
  "temperature21": {
    "pseudo-mode": "heat",
    "data": "codice HEX infrarosso per riscaldamento a 21°"
  },
  "temperature22": {
    "pseudo-mode": "heat",
    "data": "codice HEX infrarosso per riscaldamento a 22°"
   },
  "temperature23": {
    "pseudo-mode": "heat",
    "data": "codice HEX infrarosso per riscaldamento a 23°"
  },
  "temperature24": {
    "pseudo-mode": "heat",
    "data": "codice HEX infrarosso per riscaldamento a 24°"
  },
  "temperature25": {
    "pseudo-mode": "heat",
    "data": "codice HEX infrarosso per riscaldamento a 25°"
  },
  "temperature26": {
    "pseudo-mode": "cool",
    "data": "codice HEX infrarosso per raffreddamento a 26°"
  },
  "temperature27": {
    "pseudo-mode": "cool",
    "data": "codice HEX infrarosso per raffreddamento a 27°"
  },
  "temperature28": {
    "pseudo-mode": "cool",
    "data": "codice HEX infrarosso per raffreddamento a 28°"
  },
  "temperature29": {
    "pseudo-mode": "cool",
    "data": "codice HEX infrarosso per raffreddamento a 29°"
  },
  "temperature30": {
    "pseudo-mode": "cool",
    "data": "codice HEX infrarosso per raffreddamento a 30°"
  }
}
Lettura della temperatura

Ovviamente quanto sin qui esposto ci permette sì di controllare le regolazioni dell’unità, ma non ci permette di “leggere” la temperatura dell’ambiente in cui si trova installata l’unità. Questa informazione è vitale in caso di automazioni del tipo “quando esco da lavoro attiva il condizionatore a 27 gradi se la temperatura in casa è maggiore di 30 gradi”.

In realtà questo potentissimo plug-in per Homebridge provvede anche a risolvere questo problema.

È infatti possibile indicare all’accessorio (e quindi a HomeKit) la temperatura rilevata in tre modalità:

  • indicando al plug-in una temperatura fissa (questa ovviamente non sarà una lettura reale ma solo un valore fisso – utilità nulla);
  • indicando al plug-in dove leggerla (su file, qualora qualche altro strumento sia in grado di scrivere su file di testo);
  • indicando al plug-in una telemetria MQTT.

Nel primo (inutile) caso è sufficiente indicare nel blocco di definizione delle caratteristiche dell’accessorio il seguente parametro:

"pseudoDeviceTemperature" : X

Dove “X” sarà il valore (fisso) da indicare. Il default (laddove non indicato) è 0.

Per implementare il secondo caso, sarà sufficiente indicare:

"temperatureFilePath": path,
"temperatureUpdateFrequency": X

Dove “path” sarà il percorso e il nome del file (di testo) dal quale acquisire la temperatura e “X” il numero di secondi ogni quanto controllare le variazioni (il default è 20).

Infine, il terzo caso, quello più funzionale e consigliato: leggere una temperatura direttamente da un sensore dotato di interfaccia MQTT, ad esempio un Sonoff TH-10 (o TH-16) dotato di sensore di temperatura e – per il supporto MQTT – riprogrammato Sonoff-Tasmota.

Nel caso della disponibilità di un Sonoff TH, consultando il topic MQTT:

tele/Sonoff/SENSOR

sarà possibile censire real-time la temperatura dell’ambiente (ovviamente il sensore deve trovarsi nella stessa stanza/ambiente del condizionatore) tramite il payload json che fornisce.

A questo punto sarà quindi sufficiente l’integrazione, nel blocco di definizione dell’accessorio, dei seguenti parametri:

"mqttURL": "mqtt://xxx.xxx.xxx.xxx",
"mqttUsername": username,
"mqttPassword": password,
"mqttTopic": topic

dove:

“mqttURL”url del broker
“mqttUsername”nome utente presso il broker
“mqttPassword”password utente presso il broker
“mqttTopic” topic mqtt dal quale attingere al dato (eg, come sopra, “tele/Sonoff/SENSOR”)

Ovviamente l’utilizzo di un topic MQTT non vale solo per i Sonoff TH, ma per qualsiasi sensore termico dotato di interfaccia MQTT.

L’implementazione di una telemetria MQTT apre a molti altri scenari di integrazione, ad esempio la trasformazione della lettura da una fonte di altro tipo verso un topic telemetrico MQTT utilizzando Node-RED.

N.b. Si consiglia inoltre di leggere con attenzione anche la guida dedicata al tema della configurazione dei componenti MQTT nella propria domotica.

Configurazione di un ventilatore virtuale

Dati i limiti intrinsechi all’accessorio “Condizionatore” di Apple HomeKit, non è possibile cablare nella configurazione di tale accessorio la funzione di semplice ventilazione.

Per ovviare a questo problema è possibile – sempre tramite il plugin “homebridge-broadlink-rm” – sfruttare le funzionalità dell’accessorio “Ventilatore”. Questo è oggetto di un progetto a sé, che trovate qui su inDomus.

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.

Utilizzo

A questo punto l’accessorio è pronto. Al di là dell’esser usato manualmente (come visto in fase di configurazione), esso può essere comandato da Siri in modo naturale, ad esempio “Regola la temperatura a 20 gradi“, oppure “Spegni il condizionatore“.

Ovviamente, tale accessorio è utilizzabile anche nelle automazioni di Apple HomeKit, per esempio comandare l’accensione a un dato orario piuttosto che regolare la temperatura target quando si lascia il luogo di lavoro e molto altro.

Per qualsiasi domanda (e questo progetto ne solleva molte) la community inDomus è sul FORUM, su Facebook, su Telegram.


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.


Please comment below