OpenEnergyMonitor Community

Sofar2mqtt solar and battery inverter interface

I just wanted to let you all know about my mqtt interface for Sofar ME3000SP and Hybrid model battery inverters. I posted here an age ago about wanting to make such a thing and received a detailed reply from @pb66. I wasn’t ignoring you Paul, it just took me quite a while to understand the reply!!

Having run this since new year and got to a stable release candidate, if you have an ME3000SP or HYD model Sofar inverter and would like to get all the run state data into Emoncms via MQTT and Node-Red, and even set the charge/discharge mode on your own schedule (perhaps in response to Octopus Agile cost, as I do) then I’d love your feedback.

You can grab the code from my Github. Make sure you select the RC1 release (or later).


1 Like

Nice documentation on your github, thanks for sharing @cmcg!

1 Like

This looks very interesting :slight_smile:


1 Like

Hi Colin, this has been incredibly helpful, and pushed me toward chosing this inverter. I haven’t received the ME3000SP yet, but have built the interface module. I’ve struggled to find decent pictures of the connections on the underside of the inverter - do you happen to know what connector should be used for 485s interface on the inverter side?

Hi Andrew. It’s a 2pin 15EDG like this one…

If you are just getting the ME3000SP, come and say hello in this Facebook group. There are lots of detailed Node-Red flows for controlling it, especially if you are with Octopus Energy and you want to charge the battery overnight and use it during the day. As we move through spring, knowing how much to take from the grid in relation to the next day’s weather forecast is the trick (assuming you also have solar).

Also, you’ve reminded me that I was due to release v1.0. I’d been testing a very slight improvement to Battery Save mode (ie. charge from solar but don’t discharge). So make sure you use 1.0.

Thanks Colin - that’s exactly what I needed - I’ve ordered a couple of connectors and updated the code to version 1 from rc1.

We are on Octopus Agile - though it has crossed my mind to move to Go, but keep thinking that the worst of the expensive power is over and done with this year so havent moved yet.
We do have solar PV, along with the myenergi zappi/eddi/hub etc. I’ve been looking for an inverter to allow the zappi to be set to fast charge the car, but not pull from the (proposed) battery system and sofar2mqtt should do just that with the battery save mode.
I dont have facebook, but it looks like the group is publicly viewable so will have a read through the posts.
I use node-red for automations and already pull down cloud cover percentage from Darksky along with Agile rates, so will be interesting to take a look at how that is being combined, and how accurate the predictions are.
Thanks again for everything you’ve done with this. Looks great!

1 Like

Hello Colin,
this looks very interesting! I would like to read data from the inverter, but I would also like to switch between the pre-defined work settings of the inverter. Specifically, I would like to use the ‘Time-of-use’ mode and the ‘Power-Shave’ modes of the inverter. Is it possible to use the set command as mentioned on the github to set these modes through sofar2mqtt ?

Hi Andrew,

It isn’t because the inverter has to remain in Passive Mode in order to accept input from a modbus device.

You could use NodeRed to implement your schedule and switch it via sofa2mqtt.

If you switch away from Passive Mode you can still read data but you can’t control the inverter functions.