Instead of NodeRed - what are your thoughts @glyn.hudson Glyn on a ‘Modifying MQTT Proxy’ - as light-weight way to get Shelly data to emon (ie avoiding the need for NodeRed altogether: so could be light enough code to run on emonPi hardware. And seems more efficient than EmonPi duplicating the MQTT data for the shelly data twice: once pre and once post-NR ?
Actually there are loads on GitHub - here’s the first one I found: you may know of better ones
Quoting from: https://github.com/phoenix-mstu/janus-mqtt-proxy
Modifying MQTT proxy
With this service you can transform MQTT topics and their payload by specifying transformation rules.
For example you have topics /some/topic1
and /some/another/topic2
on MQTT broker, and you have a client which needs them to be /root/topic1
and /root/topic2
.
That looks like a great option, I’m not familiar with MQTT proxy. Any idea what template would be required to convert:
topic: shelly/status/temperature:0
payload: {"id":0, "tC":23.1, "tF":73.6}
to
topic: emon/shelly/indoor
payload: 23.1
There doesn’t seem to be much documentation on how the template transformations work.
It seems to work fine to me. I think the display issues have been fixed with FW update. I’m only really bothered about temperature readings. Humidity measurements are not usually as accurate as temperature.
@glyn.hudson
My MQTT knowledge is very limited. And I’ve not used this proxy. It was just the concept of converting ‘on the fly’ as a proxy that sounded cool.
That GitHub project is I notice from a Russian guy - not sure if that changes my view on whether I’d want to use it personally, or not.
Anyway, his complex yaml file shows loads of conversions>
and his medium article explains the big picture