MQTT bridge for Solis solar inverters

Hi, I was looking for a solution to integrate my Solis solar inverter into Home Assistant, that could be run on a separate Pi.
After several days of searching I only found projects, that would
a) require a stick from the manufacturer and therefore a cloud connection
or
b) wouldn’t get values from my device.
So i came up with my own solution.
It’s a Modbus RTU/RS485 to MQTT bridge with support for Home Assistants MQTT discovery.

You can find the code here: https://github.com/incub77/solis2mqtt

I hope somebody else finds this useful.

2 Likes

HI!
I was looking thorugh the HA forums and found your Project about integrating an inverted into home assistant. This is exactly what i need but i do need some help. Would i be able to run this on HA installed on my laptop on Oracle Virtual Box?

Hi Faraaz,

my project is intended to run on a separate machine and connect the inverter to that machine. In my case the inverter is connected to a Pi Zero (both in the attic) while HA runs on another Pi in the basement. MQTT is used do the communication between the two.
If you want to connect your inverter directly to your laptop you can go with the Modbus integration from HA (Modbus is the protocol used by the inverter).
In both cases you would have to solder a rather special cable as I have described here.
You can find the Modbus registers to read info from the inverter in the solis_modbus.yaml in my project.

Hope this helps you further.

Hi incub! I just wanted some clarity about the solis_modbus.yam code. Screenshot 2022-02-08 144653

Under the modbus: block, im guessing the register is the unique ID of the measurement within the inverter and the function code is the code that tells modbus to read the measurement of that particular register.

What is the Read_type for and why is it different for the different measurements?

Really appreciate your help!!

hey,

when I want to install the program:
“sudo bash /opt/solis2mqtt/setup.sh”

Do I get the following error… what am I doing wrong?


`### Installation requirements ###
ERROR: Could not open requirements file: [Errno 2] No such file or directory: 'requirements.txt'

### Creating config file

### Creating service user ###`