diy solar

diy solar

Sol-Ark - Inverter Monitoring

FYI - Interesting Github submission related to controlling DEYE/Sunsynk inverters (which should also work for Sol-Ark) via HA
https://github.com/kellerza/sunsynk

Planning on playing around with it over the next few weeks. NOTE - the modbus registers are different when it comes to the phases, see 1st post, so we'll need to tweak them if there are calls to them. Use at your own risk.

BTW - here is the original post that got me started last year on this path, still active with some great info. https://powerforum.co.za/topic/8451-sunsynk-inverter-monitoring/
 
FYI - Interesting Github submission related to controlling DEYE/Sunsynk inverters (which should also work for Sol-Ark) via HA
https://github.com/kellerza/sunsynk

Planning on playing around with it over the next few weeks. NOTE - the modbus registers are different when it comes to the phases, see 1st post, so we'll need to tweak them if there are calls to them. Use at your own risk.

BTW - here is the original post that got me started last year on this path, still active with some great info. https://powerforum.co.za/topic/8451-sunsynk-inverter-monitoring/
Cool, I'll check this out.

@bixelps - Have you seen this?
 
Does anyone know if you can model the power flow like diagram in grafana?

View attachment 85726
I love that design the best. It's just so simple and yet gives you all the info at one glance.
The only improvements I can think of is that the power dots should move in step with the power flow, the more PV power the faster the PV dot moves. I hear that the PV-Pro update interval is going to get a lot shorter but unless it's less than 10 seconds it's still a major handicap.
 
I have two Sol-Ark 12ks in Parallel. Do I need to have both connected over rs485 or can I just connect to the master?

I'll have 4 280ah 48v batteries with their own JKBMS connected via bluetooth to a raspberry pi and hopefully talk to the inverters over CAN to tell them how much voltage/amperage to charge with and report on battery data. It would be great if I could do it all with just one Pi 3.
 
bounce = reset/restart or maybe restart the whole inverter
Success! Im pretty sure this is what fixed it a couple of days ago. I turned off the invertor and the PV and battery breakers, let it sit for about 20 mins. Then turned every thing back on. I didnt think it worked at first because I was using CERRXIAN RS485 to Ethernet RJ45 TCP / IP Serial Device Server Converter and the invertor was still not responding. On a whim this morning I reattached what I originally purchased DSD TECH SH-U11F Isolated USB to RS485 RS422 Converter via USB and got data flowing!

Thanks everyone for the help. Especially pbix for the home assistant integration.
 
Has anyone looked at the Sol-Ark dongle WiFi to an ESP8266 access point programmed like this to monitor the packets and then interpret the captures to get the data you want while relaying the original data on to it's destination? Basically a splitter in software. Or is the update frequency too low to be satisfactory. (I won't be installing my 12K for another month or so - I'm only beginning to study the issues here.)
 
Has anyone looked at the Sol-Ark dongle WiFi to an ESP8266 access point programmed like this to monitor the packets and then interpret the captures to get the data you want while relaying the original data on to it's destination? Basically a splitter in software. Or is the update frequency too low to be satisfactory. (I won't be installing my 12K for another month or so - I'm only beginning to study the issues here.)
would be easier to hard wire and port mirror via switch to capture the data, probably will be encrypted unless this esp can do man in the middle, also dongle only sends data every 5 mins which is the big reason everyone is trying to use rs485 to get to 5-10sec intervals on data visibility

what would be cool is to figure out and copy flash from the existing dongle which is an ESP (pretty sure there is away) , edit code to enable network modbus tcp option that deye and sunsynk inverters have and reupload to the dongle and all problems are solved
 
My upgrade to the Sol-Ark 12K isn't for a couple of months, so I have no way to try to figure some of these things out myself.
would be easier to hard wire and port mirror via switch to capture the data, probably will be encrypted unless this esp can do man in the middle,
Are you talking HTTPS encryption, or just that the dongle is encrypting or compressing the messages?
what would be cool is to figure out and copy flash from the existing dongle which is an ESP (pretty sure there is away) , edit code to enable network modbus tcp option that deye and sunsynk inverters have and reupload to the dongle and all problems are solved
why is this preferable to just working off the modbus jack?

Sorry if the answer to these is obvious to someone who already has a Sol-Ark. I'm just trying to get some of this down before mine comes.
 
Using the modbus interface how do I detect a generator start fault ie, the relay has closed calling for a generator start, but the generator fails to start.
I've looked over the table of fault codes in the Modbus document that @solardad generously shared and none seems to fit the bill. Do I just read the relay setting and the voltage input such as address 152 and declare fault when the voltage is incorrect (or zero)?

Or is there a better way not using the Modbus interface?
 
Last edited:
Not sure if the device supports Modbus over TCP natively. The WiFi dongle connects to a 9-pin RS232 port and communicates using a standard serial protocol.

I tried to get the RS485 working but could never get any talk-back from the inverter. RS232 over the 9 pin serial works just fine. I have no interest in using their stupid app, so I wasn't losing anything getting rid of the WiFi dongle.

I purchased an RS232 to Modbus TCP converter (USR-IoT D301 from Amazon) and use that to read the registers using a Modbus plugin for Home Assistant. I imagine one could do the same with NodeRed - Would be cheaper than setting up an RPi to do the job.
Hi, we are trying to make this connection but I haven't had any response from the inverter. Can you tell me more about the connection you've made? so I can try it
 
Is there a source for the RS485 cable where I wouldn't have to pay $55 for shipping?
I got specialty cable shipped free at AutomationDirect-That free kicks in at 49$-no cut chargers and fast shipping-My cable was Quabbin Data cable 3 twisted pairs -160 feet for Tigo Tab to CCA unit from array to an outbuiling with web service to the cloud
pretty sure they have RS485 cable as well any length -you may have to put ends on it.
 
Last edited:
Hi, we are trying to make this connection but I haven't had any response from the inverter. Can you tell me more about the connection you've made? so I can try it
Hey, sorry I did not see this response before.

I bought this: https://www.amazon.com/Antrader-Cha...id=1651465381&sprefix=rs+232+,aps,249&sr=8-20

And connected it to this: https://www.amazon.com/gp/product/B083963W44/ref=ppx_yo_dt_b_search_asin_title?ie=UTF8&psc=1

You have to look up the pinout online but basically you connect pin 2 to TX, pin 3 to RX, and pin 5 to GND (RX and TX might be reversed, I can't recall). Setting up the DR301 is done via an app that the USR company publishes. It's not super intuitive, but once you have a fixed IP set up, then you can log in via a browser and control it via the HTML interface. Basically, you just have to set it up for TCP Server and make sure to select "Modbus TCP" from the extended options.

From there, the Modbus plugin on Home Assistant is what I used to poll the data directly off the inverter. It works reliably for me with essentially no issue.

Hope that helps.
 
I have two Sol-Ark 12ks in Parallel. Do I need to have both connected over rs485 or can I just connect to the master?

I'll have 4 280ah 48v batteries with their own JKBMS connected via bluetooth to a raspberry pi and hopefully talk to the inverters over CAN to tell them how much voltage/amperage to charge with and report on battery data. It would be great if I could do it all with just one Pi 3.
You have to connect to each inverter. However, a recent firmware change to the Sol-Arks now follow the modbus index for each unit. Before, each unit responded to address 1 (for both master and slave), Now, master is 1 and slave is 2, but each still has its own serial connection to your host computer. Took a little bit of testing to figure out what was going on when my python script stopped working!
 
I have two Sol-Ark 12ks in Parallel. Do I need to have both connected over rs485 or can I just connect to the master?

I'll have 4 280ah 48v batteries with their own JKBMS connected via bluetooth to a raspberry pi and hopefully talk to the inverters over CAN to tell them how much voltage/amperage to charge with and report on battery data. It would be great if I could do it all with just one Pi 3.
What Software did you use on the PI to talk to the JKBMS via BT?

I have Solar Assistant talking to my 2 Sol-Arks.
 
@bixelps I have two Sol-Ark 12Ks in parallel. I am not sure how to wire the DSD TECH SH-U11F. Do I connect to the two RXD or the TXD terminals?
 
In short real-time monitoring is possible with the Sol-Ark!

I decided to post a dedicated thread on this topic given the ongoing interest and research that has been done by some members. I am pointing folks to the resources that I used for the primary setup but will highlight the Sol-Ark specific items that I discovered on my own that made everything work.

Background Info - I have been on the 'search' for a way to monitor my Sol-Ark 12k inverter since I bought it. I was unimpressed with the out of the box offering and discouraged with every firmware release that pushed monitoring frequency from 5min to 8mins and now 10mins per reading (today I am monitoring at 1 sec intervals). I had some limited experience with logging and graphing with my Batrium setup so I started looking and came across this site where the members had successfully accessed the SunSynk inverter, 'cousin' to the Sol-Ark. A cousin to the point that all the modbus registers are the same outside of the ones related to the grid phase side, SunSynk is single phase vs. Sol-Ark being two phased. See attachments.

Setup - I followed the steps that have been outlined in the following two posts (posting them for credit). Read these threads and read then again and you will be 90% of the way there setting up.
https://powerforum.co.za/topic/8451-sunsynk-inverter-monitoring/
https://powerforum.co.za/topic/6875-software-for-sunsynk-pylontech-combo/

For my setup I used the following items:
  1. RPI - Zero W - Out of the box setup
  2. Modbus Interface - Biggest PIA was trying to troubleshoot the driver issues with the 1st two devices. Literally spent more time on this setup step then the actual connection to the Sol-Ark.
    1. WaveShare RS485 CAN HAT for Raspberry Pi https://www.amazon.com/gp/product/B07VMB1ZKH/ref=ppx_yo_dt_b_asin_title_o02_s00?ie=UTF8&psc=1
      1. Was unable to get it to work, I believe it is a driver issue
    2. Industrial USB to RS485 Converter Adapter Original FT232RL https://www.amazon.com/gp/product/B081MB6PN2/ref=ppx_yo_dt_b_asin_title_o07_s00?ie=UTF8&psc=1
      1. Did not work on the RPI but did work on my Mac
    3. JBtek USB to RS485 Converter Adapter ch340T https://www.amazon.com/gp/product/B00NKAJGZM/ref=ppx_yo_dt_b_asin_title_o06_s00?ie=UTF8&psc=1
      1. Work with RPI and what I am using today
  3. Node-Red - Running on the RPI Zero W
    1. Established JSON flows are already available for download from the powerview threads listed above. make note they have to be updated for some items that relate to single phase.
  4. InfluxDB - Running on a RPI 4
    1. Standard setup
  5. Grafana - Running on a RPI 4
    1. Establish JSON dashboards are available for download from the powerview threads.
Sol-Ark Items - This ended up being the easiest item once I received the Modbus document from Sol-Ark. In the latest manual version they dedicate a section to the RS485 connections but leave out some key details unless you ask for them. They are contained in the attachment that I added to the post. In short depending on what version of Sol-Ark you have, 8k, 12k, indoor or outdoor model there are slight variations to the wire connections.

As of now I have been collecting data for the past couple of days and still in the process of building a dashboard but when it gets to a semi sold form I'll share it with the group. If you are looking for an example or a template you are better off grabbing one of the ones already posted and building from there (what I did).


NOTE - Some of the flows / setups that you may come across allow for the changing of inverter settings, modbus write actions. The Sol-Ark document excludes those settings but the SunSynk has them. For my own personal setup I only use the read only modbus options at this time to avoid any mistakes until I get a good handle on what is available and what I want to do eventually.

Good luck!
Well I currently have my Batrium/Sol-Ark operating smoothly and looking to the next stage of monitoring. So I began reviewing this thread that you had posted. I have a raspberry pi 4 and a Lenovo laptop. My laptop currently has the Batrium toolkit downloaded and that is what I’m using to monitor Batrium. However I want to use my raspberry pi to monitor my Sol-Ark just as you have stated in this thread. My first question would be, do you have your Batrium toolkit download on the raspberry pie? I was looking into that and it appears Batrium needs a Windows based operating system for the tool kit to work.
My assumption would be yes, you must have some newer version 7 or newer of a Windows based operating system for the Batrium to function on the raspberry pi. I attempted to download windows to the raspberry pie and had issues. Tried putting it on a flash drive to get it onto the raspberry pi but kept running into errors and no matter how much research I did I could not find a way to get Windows on my raspberry pie.
Just curious what your solution was to this and where your Batrium toolkit is running?
 
Back
Top