Hi Simon
I would never want to go through the pain again of getting this to work. Too many bits to go wrong and if it ever stops working then I’ll abandon the data I won’t be fixing it. However, here’s what makes it work.
So, the hardware is a Rasberry Pi I had doing nothing and a NanoCUL nanoCUL 868MHz board.
There is firmware available to load into the NanoCUL which catches all the Evohome Packets and presents them on the Serial port as text strings which can then be decoded.
This is connected to a USB port on the Raspberry PI which runs some software called Evogateway which decodes the text strings and makes all the individual bits of data available via MQTT.
Now, this created a huge amount of MQTT tags which I could have passed straight to the EmonPI, but it was about 300 individual tags of data and they all showed up as inputs in the EmonPI when I set it up. So I decided not to go straight from Evogateway to the EmonPI.
Since I already have a Home Assistant Node, I’ve passed the MQTT through Home Assistant, and using NodeRed I can do some clever automation stuff at that level, then only pass the data I want to be recorded in EmonPI through further MQTT tags.
Using MQTT Explorer and looking at my Home Assistant node, this is an example of the level of data being sent over from Evogateway.
A few pages of NodeRed transfer the tags on to the EmonPI
Now, I’m no expert on Home Assistant, MQTT, and NodeRed. But it worked and I’m reluctant to fiddle with it. The end result is I end up with the Data showing up as a feed in EmonPI.
The other way I thought of was to only use the NanoCUL and try and decode the data into tags within the Arduino. If I could do that, I would use an Arduino with Wifi and code it as a Modbus slave providing the data in registers to be read by the EmonPI. A lot less hardware, but I’m not sure if I’m willing to put the time into trying to code the Arduino.
There was one other thing. You could plug the NanoCUL into a Home Assistant Node directly and install Evogateway there, then pass the data on the EmonPI. I wasn’t willing to do that because I have a Home Assistant node with a standard install that runs rock solid and I’m keeping it that way. There is a thread on the home assist forums on this that seems fairly successful.
Mike