You have to do the following on a regular basis:
for example a little bash script which opens MQTT:
while :; do mosquitto_pub -h 192.168.1.12 -m ‘’ -t ‘R/d4124333xxxx/system/0/Serial’; sleep 30; done
Replace d4124333xxxx with the serial number of your device.
You can also write a node-red flow for that which looks like this:
[
{
“id”: “41f1a65944259fc9”,
“type”: “mqtt out”,
“z”: “1de591dc.96debe”,
“name”: “Keepalive”,
“topic”: “”,
“qos”: “”,
“retain”: “”,
“respTopic”: “”,
“contentType”: “”,
“userProps”: “”,
“correl”: “”,
“expiry”: “”,
“broker”: “2cfe45d4.3ee45a”,
“x”: 400,
“y”: 940,
“wires”:
},
{
“id”: “30c3bb60cd6b8fd5”,
“type”: “inject”,
“z”: “1de591dc.96debe”,
“name”: “Keepalive”,
“props”: [
{
“p”: “payload”
},
{
“p”: “topic”,
“vt”: “str”
}
],
“repeat”: “30”,
“crontab”: “”,
“once”: false,
“onceDelay”: “”,
“topic”: “R/d4124333xxxx/system/0/Serial”,
“payload”: “”,
“payloadType”: “date”,
“x”: 110,
“y”: 940,
“wires”: [
[
“41f1a65944259fc9”
]
]
},
{
“id”: “2cfe45d4.3ee45a”,
“type”: “mqtt-broker”,
“name”: “Victron-Cerbo”,
“broker”: “192.168.1.12”,
“port”: “1883”,
“clientid”: “”,
“autoConnect”: true,
“usetls”: false,
“protocolVersion”: 4,
“keepalive”: “60”,
“cleansession”: true,
“autoUnsubscribe”: true,
“birthTopic”: “”,
“birthQos”: “0”,
“birthPayload”: “”,
“closeTopic”: “”,
“closeQos”: “0”,
“closePayload”: “”,
“willTopic”: “”,
“willQos”: “0”,
“willPayload”: “”
}
]
After doing that, the VenusOS device will send all topics.
Hope it helps !
Jens