> For the complete documentation index, see [llms.txt](https://martijn-hendriks.gitbook.io/archive/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://martijn-hendriks.gitbook.io/archive/geavanceerd/mqtt.md).

# MQTT

Gegevens delen via MQTT

De dongle heeft de mogelijkheid om de gegevens te delen via MQTT. Hiervoor dient er wel het een en ander ingesteld te worden.

### Instellen MQTT

Druk op de menu blak rechtsboven op het wieltje.&#x20;

Het onderstaande settingsscherm wordt zichtbaar.

[![](https://github.com/mhendriks/DSMR-API-V2/raw/master/manual/dsmr-api/afb/afbeelding5.png)](https://github.com/mhendriks/DSMR-API-V2/blob/master/manual/dsmr-api/afb/afbeelding5.png)

Voor het instellen van de MQTT koppeling zijn alleen de onderstaande gegevens van belang.

<table><thead><tr><th>item</th><th width="384.2197125256674">omschrijving</th><th>default</th></tr></thead><tbody><tr><td>MQTT broker ip/url</td><td>ip-adres of hostname waarop de mqtt broker te bereiken is</td><td>&#x3C;leeg></td></tr><tr><td>MQTT broker port</td><td>poortnummer van de mqtt broker</td><td>1883</td></tr><tr><td>MQTT gebruiker</td><td>als u uw mqtt broker beveiligd heeft dient hier de username ingevuld te worden</td><td>&#x3C;leeg></td></tr><tr><td>MQTT gebruiker password</td><td>als u uw mqtt broker beveiligd heeft dient hier het password ingevuld te worden</td><td>&#x3C;leeg></td></tr><tr><td>MQTT top topic</td><td>De topic naam waarop de gegevens verzonden worden</td><td>P1-DONGLE</td></tr><tr><td>verzenden MQTT</td><td>frequentie waarmee de dongle de gegevens verstuurd. Eens per x seconde</td><td>0</td></tr></tbody></table>

{% hint style="info" %}
"MQTT verzending" sneller dan "Telegram Lees Interval" is ineffectief
{% endhint %}

## Home Assistant Auto Discover

De dongle heeft een voorziening waardoor Home Assistant automatisch de dongle kan detecteren. Na het instellen van de MQTT broker hoeft u hier in de dongle verder niets voor te doen.

Wilt u dit liever niet? Dan is dit uit te zetten in settingsfile door onderstaande op te nemen

```
"HAdiscovery": false
```

## MQTT velden

Afhankelijk van uw voorzieningen worden de mqtt velden verzonden door de dongle. Heeft u bijvoorbeeld geen Gas dan zal dit niet verzonden worden. Etc.

Meest praktische is dan ook om na het instellen van de dongle een MQTT sniffer te gebruiken zoals MQTT Explorer (<http://mqtt-explorer.com/>). U ziet dan alle berichten langskomen. Dat is makkelijk met integratie.

{% hint style="info" %}
Met MQTTExplorer kan je zien welke topics door de dongle worden verzonden.
{% endhint %}

### Twee soorten data

Er zijn twee soorten data die verzonden worden, namelijk:

* **static data**\
  deze data krijgt de retained flag mee. Deze data wordt eens per 10 minuten verzonden. Bijvoorbeeld ID van de slimme meter, ip-adres dongle, versienummer etc. Het is onnodig om deze telkens op te sturen.&#x20;
* **actuele data**\
  deze data wordt telkens verzonden

### Berichten

Hieronder de verschillende mqtt berichten. Elk bericht is opgebouwd uit top-topic\topic en payload. Bv

`P1-Dongle\p1_version met payload 50.` <-- slimme meter versie 5.0

LWT wordt tijdens start / reboot aangepast naar On of Off. Ook de LWT is retained.

Afhankelijk van slimme meter versie en configuratie, bv: wel/geen energie opwekking, 1 of 3 fases etc, worden topics wel of niet verzonden.

<table><thead><tr><th width="394">topic</th><th width="240.33333333333331">type</th><th>static</th></tr></thead><tbody><tr><td>identification</td><td>/* String */</td><td>y</td></tr><tr><td>p1_version</td><td>/* String */</td><td>y</td></tr><tr><td>p1_version_be</td><td>/* String */</td><td>y</td></tr><tr><td>timestamp</td><td>/* String */</td><td></td></tr><tr><td>equipment_id</td><td>/* String */</td><td>y</td></tr><tr><td>energy_delivered_tariff1</td><td>/* FixedValue */</td><td></td></tr><tr><td>energy_delivered_tariff2</td><td>/* FixedValue */</td><td></td></tr><tr><td>energy_returned_tariff1</td><td>/* FixedValue */</td><td></td></tr><tr><td>energy_returned_tariff2</td><td>/* FixedValue */</td><td></td></tr><tr><td>electricity_tariff</td><td>/* String */</td><td></td></tr><tr><td>power_delivered</td><td>/* FixedValue */</td><td></td></tr><tr><td>power_returned</td><td>/* FixedValue */</td><td></td></tr><tr><td>message_short</td><td>/* String */</td><td></td></tr><tr><td>message_long</td><td>/* String */</td><td></td></tr><tr><td>voltage_l1</td><td>/* FixedValue */</td><td></td></tr><tr><td>voltage_l2</td><td>/* FixedValue */</td><td></td></tr><tr><td>voltage_l3</td><td>/* FixedValue */</td><td></td></tr><tr><td>current_l1</td><td>/* FixedValue */</td><td></td></tr><tr><td>current_l2</td><td>/* FixedValue */</td><td></td></tr><tr><td>current_l3</td><td>/* FixedValue */</td><td></td></tr><tr><td>power_delivered_l1</td><td>/* FixedValue */</td><td></td></tr><tr><td>power_delivered_l2</td><td>/* FixedValue */</td><td></td></tr><tr><td>power_delivered_l3</td><td>/* FixedValue */</td><td></td></tr><tr><td>power_returned_l1</td><td>/* FixedValue */</td><td></td></tr><tr><td>power_returned_l2</td><td>/* FixedValue */</td><td></td></tr><tr><td>power_returned_l3</td><td>/* FixedValue */</td><td></td></tr><tr><td>mbus1_device_type</td><td>/* uint16_t */</td><td>y</td></tr><tr><td>mbus1_equipment_id_tc</td><td>/* String */</td><td>y</td></tr><tr><td>mbus1_equipment_id_ntc</td><td>/* String */</td><td>y</td></tr><tr><td>mbus1_valve_position</td><td>/* uint8_t */</td><td></td></tr><tr><td>mbus1_delivered</td><td>/* TimestampedFixedValue */</td><td></td></tr><tr><td>mbus1_delivered_ntc</td><td>/* TimestampedFixedValue */</td><td></td></tr><tr><td>mbus1_delivered_dbl</td><td>/* TimestampedFixedValue */</td><td></td></tr><tr><td>mbus2_device_type</td><td>/* uint16_t */</td><td>y</td></tr><tr><td>mbus2_equipment_id_tc</td><td>/* String */</td><td>y</td></tr><tr><td>mbus2_equipment_id_ntc</td><td>/* String */</td><td>y</td></tr><tr><td>mbus2_valve_position</td><td>/* uint8_t */</td><td></td></tr><tr><td>mbus2_delivered</td><td>/* TimestampedFixedValue */</td><td></td></tr><tr><td>mbus2_delivered_ntc</td><td>/* TimestampedFixedValue */</td><td></td></tr><tr><td>mbus2_delivered_dbl</td><td>/* TimestampedFixedValue */</td><td></td></tr><tr><td>mbus3_device_type</td><td>/* uint16_t */</td><td>y</td></tr><tr><td>mbus3_equipment_id_tc</td><td>/* String */</td><td>y</td></tr><tr><td>mbus3_equipment_id_ntc</td><td>/* String */</td><td>y</td></tr><tr><td>mbus3_valve_position</td><td>/* uint8_t */</td><td></td></tr><tr><td>mbus3_delivered</td><td>/* TimestampedFixedValue */</td><td></td></tr><tr><td>mbus3_delivered_ntc</td><td>/* TimestampedFixedValue */</td><td></td></tr><tr><td>mbus3_delivered_dbl</td><td>/* TimestampedFixedValue */</td><td></td></tr><tr><td>mbus4_device_type</td><td>/* uint16_t */</td><td>y</td></tr><tr><td>mbus4_equipment_id_tc</td><td>/* String */</td><td>y</td></tr><tr><td>mbus4_equipment_id_ntc</td><td>/* String */</td><td>y</td></tr><tr><td>mbus4_valve_position</td><td>/* uint8_t */</td><td></td></tr><tr><td>mbus4_delivered</td><td>/* TimestampedFixedValue */</td><td></td></tr><tr><td>mbus4_delivered_ntc</td><td>/* TimestampedFixedValue */</td><td></td></tr><tr><td>mbus4_delivered_dbl</td><td>/* TimestampedFixedValue */</td><td></td></tr><tr><td>gas_delivered</td><td>/* FixedValue */</td><td></td></tr><tr><td>gas_delivered_timestamp</td><td>/* String */</td><td></td></tr><tr><td>water_delivered</td><td>/* FixedValue */</td><td></td></tr><tr><td>LWT</td><td>On or Off</td><td><p></p><p></p><p>y</p></td></tr></tbody></table>
