SAJ Solar inverter

Can someone help me?

I have a saj sununo plus 3K-M
Is it possible to connect it via modbus so i can read it out with home assistant with modbus.

What do i need and how to setup?
Can someone make a step by step to do with this inverter?

Dis u self tweaked it
Or is it ready to work with saj
Because i have saj sununo plus 3K-M

Does anyone have any instructions on how to control the SAJ batteries charge and discharge with HA? All of the integrations that have been built are great for getting data, but there doesn’t seem to be anything on the control.

Hi, I’m having a H1S2 inverter and I noticed that the time on the inverter becomes out of sync after some time (it’s slower than the real time).
I can change the time on the inverter manually, but I would like to know of there is a way to keep it in sync with the real time?

@stanus74
I saw you released a new Version 1.6.1.
Is it possibille that you can add the the value for the battery " SOH " .
Your Addon works so far fine for me. Thx for your work.
If have got the SAJ HS2 with 4 batteries (20 kwh ) .

Salve a tutti

Ho da poco installato un inverter SAJ H1 e vorrei monitorare l’effettiva produzione ed i consumi in tempo reale, mi sono letto un pò tutto il post ma non sono riuscito a concludere nulla in modo autonomo. Ho cercato anche in HACS ma non ho trovato nulla (evidentemente nessuno ha sviluppato questa integrazione per HA) … Chiedo, ovviamente senza impegno se qualcuno riesca passo passo a guidarmi nella creazione e nella configurazione di questo inverter per il controllo in tempo reale … Premetto che non sò quasi nulla di programmazione, quindi vi dovrete armare di tanta pazienza …
Spero che qualche anima buona si disposto ad aiutarmi … Grazie in anticipo

Hi everyone. First reply here om HAC. Big thanks to @stanus74 for your integration. It works great for reading out the sensors of my HS2-5k-S2

Now, when using QModMaster i can read 4096H fine, but i can’t seem to write (-1) to it. Is this a known limitation? I’m connecting through the esolar AIO3 Modbus TCP. An elfin is on the way, but just want to know. Who has the answer?

these registers are read-only. What are you planning to do?

If you want to charge the battery with mains power then use registers
3647 - Set App Mode to “Time of Use Mode” 1

3606 - Start charging time
3607 - Charging time end
3608 - Power and days, example: 7F19 (7F is Monday-Sunday, 19 decimal 25% of maximum charging power for me 8000W equals 2000W)

look in the Modbus protocol

I am currently testing a new integration for charging the battery with dynamic electricity prices (provider Tibber in Germany)

1 Like

Can you share what integration this is? Very much interested.

Nice, thanks for the suggestion. I was unaware that it was read only. I’ve also joined tibber this week (Netherlands). For now i’m trying to prevent my home battery supplying my EV charger. I want to only charge my EV straight from the grid. But eventually dynamic pricing as a battery charging trigger would be the next step.

Thanks for putting this up. I can connect to the inverter fine and read the various registers, but they don’t seem to align with the registers you provided, and the registers in the Excel Modbus doc are different numbers (everything starts with 4xxx) so if I follow your guide, do I just type 7F19 where it’s highlighted yellow and write multiple registers to 3608, or if I wanted to set charging to Mon-Sun, 75%, then it would be 7F4B? Then for register 3606 if I wanted to set charging time start of 11:00am, then I just write Hex code of 0031 in the first box? And the same for register 3647, I just put 0001 in the first box and write the register to set the working mode?

If you would like me to do any testing I am happy to help out. Pretty good with electronics and all of that, but just not versed in Modbus protocol.

Capture

I’ve managed to start to follow the Spanish guys Telegram instructions and have downloaded all the required files. The biggest help for me was converting the document to English, so made it much easier to piece together. I have most sensors running in HA, and NodeRed is all setup and connected to MQTT, I am just having trouble controlling the battery. I’ll keep at it!

I am already on a variable electricity price and my power company has an pricing and useful descriptors API for HA that I’ve used for ages, so I will use that to control batteries with some basic rules.

I am getting the same issue as a few posts above. I can read data but when I try to write I get no response on the battery, and the same in QModMaster, illegal exception, even though it connects and reads fine. This is using a EW10RS232, and all reading of data working fine. Weird.

EDIT: I give up, this doesn’t make sense anymore. Following all the guides, and following the H2 Modbus guides I get totally different results from Qmodmaster and can’t get anything to work except to read the basic parameters. I think it might be easier to just sell this stupid inverter and get something that actually works with HA and has some community support. Nobody seems to want to help either. Only thing I can think of is to re-flash the firmware, but that doesn’t seem like an option.

Love it. Thanks. I will look into it. I just installed the SAJ H2 modbus integration and it works like a charm. You are my hero!

I understood that this integration will ensure the battery is charged during cheap hours. I assume its possible as well to influence the time of day when the battery is discharged. If so we can easily arbitrage the energy price and buy (charge battery) during cheap hours and use the charged power (discharge battery) not immediately, but during high price hours.

Tibber has easily 10+€ents price difference during the day. at 10kWh battery capacity, thats another Euro or more saved per day on energy costs. What do you think?

image

I would like to influence discharge as well bc of charging my EV car. In standard mode if battery is full and energy price is cheap … charging the EV will use energy in the battery 1st which is counter intuitive. Battery should be preserved and EV charged from the grid. Same principle. If we ensure Battery is ONLY discharged during high peak hours this would work out of the box.

hi to all of you. Thanks @stanus74 for your integration. I use it for reading the values of the SAJ inverter.
Nothing against your charging integration (i didn´t looked at it), but i use for charging of my car and house battery EVCC. Maybe thats a helpful tool for some of you. It works since a quarter year flawless for me. It should be easy to setup for someone like you guys when i look at the stuff you talk about doing

I’m getting closer by using a H2 Modbus protocol that’s in half Chinese half English and Qmodmaster, and have been able to control charging and inverter working modes. Just working on writing some scripts for HA to make changes based on other inputs e.g. live price power. I will post them here when I’m done which will be about a week I reckon…If I get there.

3 Likes

Hello!

First, thanks for all information in this theme, all info is always welcome.

I have SAJ inverter, i use it in HA with saj-h2-modbus from @stanus74.
Thank you very much for that!

I am looking for a way to display the energy produced (kwh) from a solar power plant.
All registers are with different number as on elekeeper cloud.

Has anyone any info or suggestion how to make that?

Thanks in advance.

I got it working with the registers @stanus74 suggested. Are you using the correct base address? I see 1 in your screenshot but for me, i need 0. Not sure for you but you could try it.

SAJ use 0 based Modbus Protocol. is important to check the settings in QModMaster, see in Screenshot.

The Slave address is 1

is set as offset 1 in a 0-based Modbus protocol, all registers are shifted by +1

good info about Modbus

@mike_home_84 in the settings is the wrong Base Addr: 1

Thanks mate, yep I worked that out when I was reading the registers and everything was offset by 1 :slight_smile: