Configurare le funzionalità client MQTT su Home Assistant

2 minuti di lettura
SCOPI DELLA GUIDA:
  • Dotare il proprio Home Assistant del supporto client al protocollo MQTT al fine di integrare risorse basate su questo protocollo
  • Livello di difficoltà: basso
CONCETTI AFFRONTATI:
  • configurazione software
COMPONENTI SOFTWARE UTILIZZATE:
Prerequisiti
DISPOSITIVI FISICI UTILIZZATI:
GUIDA MAGGIORMENTE INDICATA PER:

Tutti gli ambienti

Note e disclaimer
  • qualsiasi eventuale modifica agli impianti domestici dev'essere progettata ed realizzata SOLO da personale qualificato;
  • qualsiasi modifica attuata in proprio è a propria responsabilità personale nonché a proprio rischio e pericolo (i contenuti della presenta pagina hanno puro scopo didattico);
  • qualsiasi modifica attuata in proprio a un dispositivo ne fa decadere garanzia, omologazioni e certificazioni di qualità.
Revisione guida: 1.1

ATTENZIONE: QUESTA GUIDA È CONSIDERATA OBSOLETA DA MAGGIO 2020.
AL SUO POSTO È STATA REDATTA UNA NUOVA GUIDA PIÙ AGGIORNATA E LEGGIBILE.

Abstract

Il protocollo MQTT è una dei più utilizzati in ambito domotico, e più genericamente, IoT.
Leggero, versatile, veloce: una vera mano santa per riuscire ad integrare e controllare i più disparati componenti domotici, a partire dagli attuatori/sensori dotati di firmware open source quali, ad esempio Tasmota e ESPurna.

Un dispositivo domotico dotato di supporto MQTT è facilmente integrabile agli HUB personali: in questa guida vedremo come abilitare uno dei più noti, Home Assistant, alle funzioni client del protocollo MQTT: tale implementazione lo rende abile all’integrazione di tali dispositivi tramite tale protocollo.

Questa guida è dedicata agli utenti che abbiano installato Home Assistant Core come applicativo stand-alone (su Raspbian, su Windows, su macOS ecc.); gli utenti HASSIO hanno infatti a disposizione un’altra guida.


Come spiegato anche nella scheda dedicata al protocollo MQTT, per utilizzarlo è necessario esista sulla rete locale un “broker” (uno smistatore, un tramite di messaggi – topic – MQTT) al quale i client si colleghino per dialogare tra loro. Questa guida darà pertanto per scontato che sulla rete questo elemento sia già presente; solitamente si installa sul medesimo computer sul quale è installato come applicativo Home Assistant, per esempio il broker Mosquitto (su Raspbian, su Windows, o su altri sistemi operativi).

Configurazione

Per abilitare il protocollo MQTT  su Home Assistant è sufficiente aggiungere un blocco alla sua configurazione:

mqtt:
  broker: 127.0.0.1
  port: 1883
  client_id: home-assistant
  keepalive: 60
  discovery: false
  discovery_prefix: homeassistant

Nell’esempio, il “broker” indicato è quello residente sulla stessa macchina sul quale è installato Home Assistant (“127.0.0.1“, ovvero l’interfaccia di loopback). Qualora sia presente su un’altro computer presente sulla rete locale, è necessario indicare l’indirizzo IP corretto.

Salvare e riavviare Home Assistant.

A questo punto le funzionalità client MQTT saranno operative, le quali permetteranno di aggiungere alla configurazione qualunque chiamata MQTT (piattaforme di integrazioni, script ecc).

Come configurare MQTT sui dispositivi della propria domotica


Home Assistant Official Logo ATTENZIONE: ricorda che sul nostro community FORUM c'è una sezione ad hoc dedica a Home Assistant, per qualsiasi dubbio, domanda, informazione nel merito specifico di queste componenti.


Telegram News Channel

6 Comments

  1. Pirazzi Stefano

    Ho installato homeassistant e mosquitto sullo stesso server raspberry con raspian.

    Ho acquistato Shelly H&T e volevo implementarlo.

    Dopo avere installato Mqtt Mosquitto, ho inserito le seguenti righe in configuration.yaml:

    mqtt:
    broker: 127.0.0.1
    port: 1883
    username: nomeutente (logicamente ho messo quello di mqtt)
    password: password (logicamente ho messo quello di mqtt)
    client_id: home-assistant
    discovery: true
    discovery_prefix: homeassistant
    discovery_prefix: shellies
    keepalive: 60
    birth_message:
    topic: ‘hass/status’
    payload: ‘online’
    will_message:
    topic: ‘hass/status’
    payload: ‘offline’

    in sensor: !include sensors.yaml, ho inserito le seguenti righe:

    – platform: mqtt
    name: “Temperatura camera nonni”
    state_topic: “shellies/H&T-nonni-B8959B/sensor/temperature”
    unit_of_measurement: “°C”
    expire_after: 86400
    force_update: true
    json_attributes_topic: “shellies/H&T-nonni-B8959B/sensor/temperature”

    – platform: mqtt
    name: “Umidità camera nonni”
    state_topic: “shellies/H&T-nonni-B8959B/sensor/humidity”
    unit_of_measurement: ‘%’
    expire_after: 86400
    force_update: true
    json_attributes_topic: “shellies/H&T-nonni-B8959B/sensor/humidity”

    Alla fine mi trovo 2 sensori senza valore “-” e nulla in Impostazioni -> Integrazioni -> Mqtt:

    1. Devi usare probabilmente (nella configurazione dei due sensori) un value template

      value_template: “{{ QUALCOSA }}”

      ovviamente dipenda dal payload che i due topic shellies/H&T-nonni-B8959B/sensor/temperature e shellies/H&T-nonni-B8959B/sensor/humidity ti sparano fuori

      1. Stefano Pirazzi

        Alla fine dovevo cambiare l’IP di mqtt con quello del raspberry e non 127. 1.1, sebbene che mqtt sia installato con homeassistant sullo stesso raspberry

  2. Roberto Vollaro

    Ciao. Ho una curiosità. Invece di aggiungere la configurazione del broker nel file configurazione.yaml ho aggiunto mqtt dalla scheda integrazioni nelle impostazioni. Vedo i dispositivi e tutto sembra funzionare. C’è una differenza tra le due procedure?

I commenti sono chiusi.