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.
Het onderstaande settingsscherm wordt zichtbaar.

Voor het instellen van de MQTT koppeling zijn alleen de onderstaande gegevens van belang.
MQTT broker ip/url
ip-adres of hostname waarop de mqtt broker te bereiken is
<leeg>
MQTT over tls
maakt een tls beveiligde verbinding
false
MQTT broker port
poortnummer van de mqtt broker
1883
MQTT gebruiker
als u uw mqtt broker beveiligd heeft dient hier de username ingevuld te worden
<leeg>
MQTT gebruiker password
als u uw mqtt broker beveiligd heeft dient hier het password ingevuld te worden
<leeg>
MQTT top topic
De topic naam waarop de gegevens verzonden worden
P1-DONGLE-PRO
verzenden MQTT
frequentie waarmee de dongle de gegevens verstuurd. Eens per x seconde
0
MQTT connectie
Vanaf versie 4.17.0 zal de dongle zal een MQTT verbinding opzetten zodra broker ip/url + port is gevuld en er een netwerkverbinding is ingesteld. Indien de Verzend MQTT Berichten (Sec.) op 0 staat zal er geen bericht worden gepubliceerd maar wordt de verbinding wel onderhouden. Op deze manier kan de dongle nog wel commando's ontvangen zonder dat er direct data wordt verzonden.
Wil je niet dat de dongle blijft proberen dan dient de broker ip/url leeg gemaakt te worden.
MQTT verborgen functies
Er zijn een aantal opties in de settingsfile die niet via de frontend kunnen worden aangepast. Hieronder het lijstje met beschrijving.
"macid-topic": false
zet het mac-id achter het toptopic. = mac adres zonder :
false
"act-json-mqtt": false
maakt een mqtt bericht met topic all en stopt de actuele gegevens in de json payload
false
"mqtt-hide": false
verbergt de mqtt settings in het settingsscherm. Deze kunnen dan alleen via de settingsfile worden ingezien en aangepast
false
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": falseMQTT commands
De dongle zal op een aantal topics subscriben. Deze zijn:
<top topic>/reboot
<top topic>/update
<top topic>/interval
<top topic>/reconfig
<top topic>/ota-url
<top topic>/top-topic
reboot
De dongle zal een reboot uitvoeren
update
De payload dient het versienummer te bevatten. Bijvoorbeeld 4.15.14.
Dit versie nummer wordt gebruikt om de update routine uit te voeren.
interval
Hiermee kan het mqtt publish interval worden ingestel. De payload bevat het aantal seconden. Bijvoorbeeld 4.
ota-url
Hiermee kan de ota-url op afstand worden aangepast. De nieuwe url dient in de payload opgenomen te worden. bv:
ota.smart-stuff.nl/p1u/v5/top-topic
Hiermee het top-topic op afstand worden aangepast.
reconfig
Met de reconfig kan broker url, port en username / password worden aangepast. De payload is in json formaat. Hieronder een voorbeeld.
{
"broker": "url",
"port": 1892,
"user": "name",
"pass": "word"
}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.
Twee soorten data
Er zijn twee soorten data die verzonden worden, namelijk:
static data deze data krijgen 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.
actuele data deze data wordt telkens verzonden
Berichten
Hieronder staan de verschillende mqtt berichten. Elk bericht is opgebouwd uit top-topic\topic en payload. Bv
P1-Dongle-pro\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. LWT staat voor Last Will Testament en geeft aan of de dongle actief is.
Afhankelijk van slimme meter versie en configuratie, bv: wel/geen energie opwekking, 1 of 3 fases etc, worden topics wel of niet verzonden.
identification
/* String */
y
p1_version
/* String */
y
p1_version_be
/* String */
y
timestamp
/* String */
equipment_id
/* String */
y
energy_delivered_tariff1
/* FixedValue */
energy_delivered_tariff2
/* FixedValue */
energy_returned_tariff1
/* FixedValue */
energy_returned_tariff2
/* FixedValue */
electricity_tariff
/* String */
power_delivered
/* FixedValue */
power_returned
/* FixedValue */
message_short
/* String */
message_long
/* String */
voltage_l1
/* FixedValue */
voltage_l2
/* FixedValue */
voltage_l3
/* FixedValue */
current_l1
/* FixedValue */
current_l2
/* FixedValue */
current_l3
/* FixedValue */
power_delivered_l1
/* FixedValue */
power_delivered_l2
/* FixedValue */
power_delivered_l3
/* FixedValue */
power_returned_l1
/* FixedValue */
power_returned_l2
/* FixedValue */
power_returned_l3
/* FixedValue */
mbus1_device_type
/* uint16_t */
y
mbus1_equipment_id_tc
/* String */
y
mbus1_equipment_id_ntc
/* String */
y
mbus1_valve_position
/* uint8_t */
mbus1_delivered
/* TimestampedFixedValue */
mbus1_delivered_ntc
/* TimestampedFixedValue */
mbus1_delivered_dbl
/* TimestampedFixedValue */
mbus2_device_type
/* uint16_t */
y
mbus2_equipment_id_tc
/* String */
y
mbus2_equipment_id_ntc
/* String */
y
mbus2_valve_position
/* uint8_t */
mbus2_delivered
/* TimestampedFixedValue */
mbus2_delivered_ntc
/* TimestampedFixedValue */
mbus2_delivered_dbl
/* TimestampedFixedValue */
mbus3_device_type
/* uint16_t */
y
mbus3_equipment_id_tc
/* String */
y
mbus3_equipment_id_ntc
/* String */
y
mbus3_valve_position
/* uint8_t */
mbus3_delivered
/* TimestampedFixedValue */
mbus3_delivered_ntc
/* TimestampedFixedValue */
mbus3_delivered_dbl
/* TimestampedFixedValue */
mbus4_device_type
/* uint16_t */
y
mbus4_equipment_id_tc
/* String */
y
mbus4_equipment_id_ntc
/* String */
y
mbus4_valve_position
/* uint8_t */
mbus4_delivered
/* TimestampedFixedValue */
mbus4_delivered_ntc
/* TimestampedFixedValue */
mbus4_delivered_dbl
/* TimestampedFixedValue */
gas_delivered
/* FixedValue */
gas_delivered_timestamp
/* String */
water_delivered
/* FixedValue */
LWT
On or Off
y
Last updated