---
title: MQTT si HomeAssistant pe intelesul tuturor
description: "In acest articol vom discuta despre MQTT broker & client si cum ajuta acesta in Home Assistant. MQTT este un [Protocol](https://asociatiasmarthome.ro/dictionar/protocol/) de mesaje, contruit peste TCP/IP, folosit in IoT in comunicarea dintre dispozitive. Pe scurt, modul de comunicare consta in…"
url: "https://asociatiasmarthome.ro/wiki/mqtt-si-homeassistant-pe-intelesul-tuturor/"
updated: "2025-01-19"
category: 📂 Arhivă / 📰 Articole Vechi Blog SmartHome360
---

# MQTT si HomeAssistant pe intelesul tuturor

In acest articol vom discuta despre MQTT broker & client si cum ajuta acesta in Home Assistant.

MQTT este un [Protocol](https://asociatiasmarthome.ro/dictionar/protocol/) de mesaje, contruit peste TCP/IP, folosit in IoT in comunicarea dintre dispozitive. Pe scurt, modul de comunicare consta in 2 functii principale pentru un dispozitiv:

- publica un mesaj - isi anunta starea si isi expune functiile suportate prin publicarea unui mesaj (payload) pe un anumit canal unic (topic);
- primeste un mesaj – isi actualizeaza starea, functie de payload-ul primit pe topicul lui.

**Avantajele** acestui [Protocol](https://asociatiasmarthome.ro/dictionar/protocol/) sunt (nu te speria daca nu-ti sunt clare):

- consumul redus de latime de banda pentru a trimite informatii;
- ofera o comunicare bidirectionala intre dispozitive;
- suporta milioane de dispozitive conectate simultan;
- siguranta trimiterii mesajele dpdv erori aparute in acest proces, pe 3 nivele diferite, in functie de necesitati (QoS);
- conexiuni persistente
- securitate – mesajele se pot trimite criptat TLS sau folosind metode de autentificare gen Oauth.

**Structura client/broker, ai nevoie de:**

- un client care sa se conecteze la broker si sa trimita informatii pe anumite topicuri sau sa asculte pe anumite topicuri. Exemplu de clienti HomeAssistant prin integrarea MQTT, addon-ul Zigbee2mqtt, [Z-Wave](https://asociatiasmarthome.ro/dictionar/z-wave/) JS to MQTT etc.;
- un server care sa gestioneze mesajele primite de la client, functie de topicuri. Se poate folosi un server public MQTT sau cu ajutorul addon-ului open source Mosquitto Broker din HomeAssistant.

**Exemplu**

Sa presupunem ca avem un Broker MQTT la care se conecteaza 3 clienti MQTT (Zigbee2MQTT, [Z-Wave](https://asociatiasmarthome.ro/dictionar/z-wave/) JS to MQTT si HomeAssistant) si device-urile fizice pe care vrem sa controlam din HomeAssistant.

![](https://asociatiasmarthome.ro/wp-content/uploads/mqtt_ha-2-1136x800.png)

Sa discutam pe imaginea de mai sus si sa vedem fiecare lucru ce rol are:

- la mijloc avem MQTT Broker care primeste, stocheaza si transmite mesaje. Broker-ul se poate instala ca addon din [HA](https://asociatiasmarthome.ro/dictionar/home-assistant/);
- in stanga Zigbee2Mqtt care permite comunicarea dintre device-urile [Zigbee](https://asociatiasmarthome.ro/dictionar/zigbee/) (in cazul nostru un termometru si un bec) si Broker. Este in rol de client MQTT si se poate instala ca addon din [HA](https://asociatiasmarthome.ro/dictionar/home-assistant/). Pentru a face comunicarea cu device-urile [Zigbee](https://asociatiasmarthome.ro/dictionar/zigbee/) pe frecventa de ~2,4 GHz este nevoie si de partea hardware, un stick USB gen [Conbee II](https://smarthome360.ro/?s=dongle+zigbee&post_type=product), [Sonoff Dongle Plus 3.0](https://smarthome360.ro/?s=dongle+zigbee&post_type=product) etc.;
- sus Z-WaveJsToMQTT care permite comunicarea dintre device-urile [Z-Wave](https://asociatiasmarthome.ro/dictionar/z-wave/) (in cazul nostru un [Senzor](https://asociatiasmarthome.ro/dictionar/senzor/) de miscare si o priza) si Broker. Esre in rol de client MQTT si se poate instala ca addon din [HA](https://asociatiasmarthome.ro/dictionar/home-assistant/). Pentru a face comunicarea cu device-urile [Z-Wave](https://asociatiasmarthome.ro/dictionar/z-wave/) pe frecventa de ~868 MHz este nevoie si de partea hardware, un stick USB gen [Aeotec Gen5+](https://smarthome360.ro/?s=dongle+z-wave&post_type=product) etc.;
- si in final, in dreapta avem [HA](https://asociatiasmarthome.ro/dictionar/home-assistant/) pe care-l facem client de MQTT prin integrarea MQTT care este built-in.

Cum comunica toate acestea intre ele folosind MQTT, sa discutam despre priza [Z-Wave](https://asociatiasmarthome.ro/dictionar/z-wave/):

- addon-ul [Z-Wave](https://asociatiasmarthome.ro/dictionar/z-wave/) JS to MQTT comunica cu priza prin stick-ul USB si ii permite sa se inregistreze. In timpul inregistrarii priza comunica addon-ului toate feature-urile pe care le suporta (on/off, consum etc.);
- addon-ul [Z-Wave](https://asociatiasmarthome.ro/dictionar/z-wave/) JS to MQTT compune un mesaj prin care trimite la Broker, pe un topic nou (ex: zwave/priza), toate datele primite de la priza si inca un mesaj de tip MQTT Discovery pe un al doilea topic;
- [HA](https://asociatiasmarthome.ro/dictionar/home-assistant/) asculta mesajele de la Broker (prin integrarea MQTT) si primeste acel mesaj MQTT Discovery, care instruieste [HA](https://asociatiasmarthome.ro/dictionar/home-assistant/) sa creeze entitati noi cu proprietatile prizei si care este topicul la care sa faca subscribe [HA](https://asociatiasmarthome.ro/dictionar/home-assistant/) pentru a afla sau publica schimbarile de stare pentru priza;
- mergem in [HA](https://asociatiasmarthome.ro/dictionar/home-assistant/) la entitatea de priza prin care controlam on/off si ii ziceam sa fie ON;
- [HA](https://asociatiasmarthome.ro/dictionar/home-assistant/) va publica mesajul in topicul la care a fost instruit mai sus sa publice schimbarile de stare pentru priza;
- addon-ul [Z-Wave](https://asociatiasmarthome.ro/dictionar/z-wave/) JS to MQTT asculta pe topicul de stare pentru priza, va primi comanda de ON si o va trimite mai departe la priza prin stick.

Cam asa se plimba datele, prezentate intr-un format minimalist. Ce m-a ajuta pe mine sa urmaresc usor ce se intampla in Broker-ul de MQTT este aplicatia [MQTT Explorer](http://mqtt-explorer.com/), care este de fapt un client MQTT care prezinta vizual topic-urilor existente.

Faptul ca addon-ul [Z-Wave](https://asociatiasmarthome.ro/dictionar/z-wave/) JS to MQTT poate functiona si fara MQTT, ca exista si alte addon-uri pe care le puteti folosi in [HA](https://asociatiasmarthome.ro/dictionar/home-assistant/) etc. nu fac subiectul acestui articol.
