Advertisement
If you have a new account but are having problems posting or verifying your account, please email us on hello@boards.ie for help. Thanks :)
Hello all! Please ensure that you are posting a new thread or question in the appropriate forum. The Feedback forum is overwhelmed with questions that are having to be moved elsewhere. If you need help to verify your account contact hello@boards.ie

Solar PV Monitoring/Automation Thread

Options
1212224262770

Comments

  • Registered Users Posts: 793 ✭✭✭reklamos


    Inverter in the attic. The highest I've seen Solis went was 43 degrees(green) and the attic was at 33(yellow). Now I do have fans on Solis. Do not like when electronics heat up :)




  • Registered Users Posts: 4,430 ✭✭✭Gerry


    Got my meross plugs working in home assistant. very nice integration really, since it ends up as a direct connection.



  • Registered Users Posts: 1,081 ✭✭✭silver_sky


    Ah feck... had another incident of the house battery draining into the car overnight as the homeassistant automation wasn't comprehensive enough. Would appreciate any tips/suggestions on how I can get it to work better. Hardware is myenergi zappi+hub, solis 6kW, puredrive 5kWh, and homeassistant on a raspberry pi.

    What it's doing is looking for when the Zappi goes into Boosting mode which is the state for the timed charge. It'll do that when the car is not connected so then I check that it's charging and if that's the case set the Solis to timed charge/discharge. In this mode I've set it to charge at 0A during 2-6am so it will pull from the grid.

    However, what happened last night was the Zappi plug status was "waiting for EV" so it skipped the step. About 30 seconds later it was in "Charging" but the automation had finished at that point so the battery was drained down to 20% fairly rapidly.

    Another incident of this battery dump was caused by the myenergi API going down recently so I'm wondering if I should scrap looking at the state of the Zappi and just focus on the battery power draw.

    Is anyone else doing similar automation to avoid dumping the battery into the car?

    alias: Zappi Boost From Grid
    description: ""
    trigger:
      - platform: state
        entity_id:
          - sensor.myenergi_zappi_12345678_status
        to: Boosting
        id: "on"
      - platform: state
        entity_id:
          - sensor.myenergi_zappi_12345678_status
        from: Boosting
        id: "off"
    condition: []
    action:
      - choose:
          - conditions:
              - condition: trigger
                id: "on"
              - condition: state
                entity_id: sensor.myenergi_zappi_12345678_plug_status
                state: Charging
            sequence:
              - service: script.inverter_write_holding_register
                data:
                  register_addr: 43110
                  register_value: 51
          - conditions:
              - condition: trigger
                id: "off"
            sequence:
              - service: script.inverter_write_holding_register
                data:
                  register_addr: 43110
                  register_value: 49
        default: []
    mode: single
    
    
    


  • Registered Users Posts: 4,430 ✭✭✭Gerry


    I could help but I'm honestly not sure exactly what you want to happen. need to be clear on all conditions and what should happen.

    car connected yes / no

    battery charge or car charge?

    what is the full sequence of events?



  • Registered Users Posts: 6,101 ✭✭✭championc


    I have mine working perfectly with Node-Red. I read the battery SOC from the inverter, and then use the API to turn on the Zappi on ECO mode when SOC hits 98%, and turn it to STOP if and when it hits 95%.

    The commands are

    https://s18.myenergi.com/cgi-zappi-mode-Z[hub_serial]-x

    Where x value is 1 for fast, 2 for Eco, 3 for Eco+ and 4 for stop.

    Post edited by championc on


  • Advertisement
  • Moderators, Home & Garden Moderators Posts: 5,974 Mod ✭✭✭✭graememk


    Currently pulling data in from the hybrid using python and pushing it over mqtt in node red.

    But now the days are getting shorter, and I need to get the automation done for stopping overnight discharge soon (when it hits a certain SOC)

    Then the next step is overnight charging (to a set SOC)

    What settings are people using for stopping overnight discharge, (changing it to feed in priority?)

    For the overnight charge, I know I have to set a time and a charge rate. The charge rate can be set to 0 to prevent discharge too.. or to stop charging.

    Possibly poll every minute and change as necessary.



  • Registered Users Posts: 189 ✭✭connesha


    It'll be the same thing: Set it to "charge" at 0A. It won't charge or discharge: all house load is taken from Grid.

    FIP mode is more for controlling during times of Solar generation. In FIP mode, all solar generation will go to house/grid (battery won't charge). But, battery will still discharge when house load exceeds solar.



  • Moderators, Education Moderators, Home & Garden Moderators Posts: 8,145 Mod ✭✭✭✭Jonathan


    Should be able to do everything you need to do with just a handful of registers on the Solis Hybrid.

    Storage control modes (the resulting hex/decimal values are left as an exercise to the reader):

    43110 (Storage Control)
    Bit01 = TOU Mode on/off
    Bit04 = Battery Reserve Mode on/off
    Bit05 = Grid charge on/off
    Bit06 = Feed in Priority on/off
    

    Charge Current:

    43141 (Charge current in Amps/10)
    0 =  charge at 0A, i.e. no discharge
    125 = charge at 12.5A
    500 = charge at 50A etc
    

    Charge Period:

    43143 (Charge period 1 start hours)
    43144 (Charge period 1 start minutes)
    43145 (Charge period 1 end hours)
    43146 (Charge period 1 end minutes)
    

    You can have multiple charge periods, but a single charge current parameter is applied to all.


    Feed it priority will effectively turn the hybrid into a string inverter (with the added quirk of allowing discharge from battery to cover house load). Batteries will not charge in FIP mode.


    As regards charging from grid, you have two options for controlling. First option is to leave the charge period set permanently (set to your D/N meter offset), and toggle using grid charge enable. The second option is to leave grid charge permanently enabled, and change the charge period from 00:00-00:00 to whatever is desired. I personally just leave the charge period alone and toggle using grid charge enable. In comparison to your Sofar, there is no option to charge to a desired SOC, so you need to calculate this yourself, or monitor and stop charge at desired SOC.


    Finally, if you are on a smart meter with a low boost (I know you still have D/N Graeme), you may want to run your house off grid at night, and charge the battery during the low boost period. If that is the case, set the charge period to the night period times e.g. 23:00 through 08:00, with a charge current of 0A. Using automation toggle the charge current to 75A at 02:00, and then back to 0A at 05:00. You'll then have a full battery for start of day rate at 08:00, while running the house from grid during the night rate.



  • Moderators, Home & Garden Moderators Posts: 5,974 Mod ✭✭✭✭graememk




  • Moderators, Education Moderators, Home & Garden Moderators Posts: 8,145 Mod ✭✭✭✭Jonathan


    No. Haven't come across this personally, because of how my CT clamps are set up. My Zappi either runs from grid or solar surplus. Inverter CT can't see Zappi loads, and so will never discharge battery to meet it.


    However, if you are finding the MyEnergi API a bit slow, you could look at capturing and pulling the information from the outgoing packets from the hub... Or another way would be to get a SDR radio and see is it possible to sniff the 868Mhz RF, but that is not trivial.



  • Advertisement
  • Registered Users Posts: 4 susheel


    Hi,

    It looks like I’m unable to pull data from my Solis Wi-Fi Datalogger as tested with @reklamos register_scan code with the Datalogger serial number and IP address possibly as it is a fairly new install.

    Reading through this thread I see others are able to pull in data using a separate modbus device. Could someone please provide me a link to where I can purchase this and provide directions to connect it up with HomeAssitant?

    Thanks

    Susheel



  • Registered Users Posts: 1,081 ✭✭✭silver_sky


    I see, so is your inverter CT on the house side and your myenergi CT on the grid side?

    Interesting idea about capturing the myenergi data locally. There's a thread on the myenergi forum where some are going through that but it seems like a lot more hassle than it's worth. They've not gotten very far with it.

    I think I've sorted the issue I had by adding a 60 second wait for the "charging" trigger. That should allow enough time for the EV to do the handshake if it's connected.



  • Registered Users Posts: 1,081 ✭✭✭silver_sky


    What data logger do you have? a picture might help as we can see which one it is.



  • Moderators, Education Moderators, Home & Garden Moderators Posts: 8,145 Mod ✭✭✭✭Jonathan


    Run this and see if you get a JSON response with your data logging stick IP Address, MAC, and Serial Number. If you do, you're in luck, your data logging stick supports Modbus RTU passthrough. If it doesn't (likely because you have a S3-WIFI-ST), you'll need to either

    1. ditch the data logging stick and add your own Modbus master
    2. keep the data logging stick, but disable it when you want to query using your Modbus master


  • Moderators, Education Moderators, Home & Garden Moderators Posts: 8,145 Mod ✭✭✭✭Jonathan


    Yeah, that's exactly it. I did an ASCII art diagram in post #337.



  • Registered Users Posts: 4 susheel


    Thanks @jon1981

    @silver_sky Due to mobility issues I'm unable to get to my attic where the inverter and the Datalogger are installed and can't send you a picture.

    I ran your utils/solarman_scan.py script with my Datalogger’s IP address, MAC address and serial number and was able to generate a JSON output with each of those inputs as key/value pairs, but nothing else. Is that a good sign?

    Running the examples/register_scan.py script with the Datalogger IP address and serial number just runs for ages and throws an error at the end.

    Running nmap on the Datalogger IP address shows me that the Datalogger does have TCP ports 80 (http), 8899 (ospf-lite) and UDP port 67 (dhcps) open. The nmap scan doesn't seem to pick up 48899 port used in the utils/solarman_scan.py script though.

    I'm able to navigate to the Datalogger IP address web page and check the /config_hide.html page to check if the port 8899 is correct.

    Not sure what else I can do from here, without getting a separate device. Penny for your thoughts?

    Best wishes

    Susheel



  • Registered Users Posts: 1,081 ✭✭✭silver_sky


    That's understandable. Probably easier - is the serial number numeric or alphanumeric?



  • Moderators, Education Moderators, Home & Garden Moderators Posts: 8,145 Mod ✭✭✭✭Jonathan


    If you're getting a JSON response to the solarman_scan.py script linked above, you have the right type of data logger.

    The next step is to determine what type of Solis inverter you have. i.e. a string inverter or a hybrid inverter (with a DC battery).


    If you are unsure, you can run the following pysolarmanv5 code to determine what model you have.

    from pysolarmanv5 import PySolarmanV5
    
    def main():            
       modbus = PySolarmanV5("192.168.1.100", 1234567890)
       result = modbus.read_input_register_formatted(register_addr=35000, quantity=1)
       print(hex(result))
    
    if __name__ == "__main__":
       main()
    


    The Modbus input register range for the Solis energy storage (hybrid) inverters start at 33000 whereas string inverters start at 3000. If you are looking to then integrate this with Home Assistant using the Solarman integration, only the Modbus registers for the hybrid inverters have been added so far. If you are looking for the string inverter equivalent, you'll need to map out and add the registers yourself. 🙂



  • Registered Users Posts: 4,430 ✭✭✭Gerry


    installer sparks came out and sorted snag today with monitoring, now have 1 ct monitoring the old inverter. ha monitoring the new inverter directly via saj integration. fair bit of messing to combine the numbers but now I've an accurate breakdown of each array, and the house load. trickiest bit probably getting the gauges to update only when the slower sensors update to avoid incorrect intermediate readings. happy now.

    also they confirmed my thinking on future path to more panels..



  • Registered Users Posts: 4 susheel


    Thanks @silver_sky - The Datalogger serial is numeric

    Thanks @jon1981 The script identified the inverter as 0x2030 which according to the mapping is a one-phase low voltage energy storage inverter.

    I’m now able to scan the 33000 range of registers. I will try to map these to the relevant attribute values and contribute the code back for others to use. Ideally once this is done I may reuse the solismon3 code from @reklamos to publish them as mqtt topics for HA to pick and display.

    Will update this thread on progress

    Thanks again

    Susheel



  • Advertisement
  • Moderators, Education Moderators, Home & Garden Moderators Posts: 8,145 Mod ✭✭✭✭Jonathan


    Looks like ESBN might enable Smart Meter P1 port for HAN use once smart meter roll out moves to phase 3.




  • Registered Users Posts: 18 Z4bimmer


    Hi All,

    Just got my installation completed today and not hugely impressed by the eSolar app that was supplied. Can anyone point me to a basic guide to using HA and what type of sensors I should look for? I'm not looking to track a lot of metrics just; total solar power, total sent to grid, total taken from grid, and EV car charger usage (all metrics in 5 second intervals so that I can create cumulative graphs, etc..).

    Any advice would be great.

    Thanks,



  • Registered Users Posts: 6,101 ✭✭✭championc


    What type of Inverter is it ? Look up stuff around the inverter type and Modbus and RS485, or maybe API access



  • Registered Users Posts: 18 Z4bimmer


    It is a SAJ R5-3K-S1-15. I can see it is compatible with HA so will have a go this weekend at trying to get it to communicate with it. The only problem I can see is that the installers used 5 micros when they did the installation so those panels are not visible in the inverter's web portal. That's why I think I need to go down the road of something like the Emporia Smart Home Energy Monitor with 8 50A Circuit Level Sensors which I've seen recommended in this group. But as I'm new to this I'm not sure if this is using a hammer to crack a nut if there are simpler solutions others have implemented.



  • Registered Users Posts: 4,430 ✭✭✭Gerry


    Ive the same inverter. saj integration for ha works quite well. Only issue is that graphs go a bit wonky when the inverter is powered down for the night so I need to work out storing the values in proper HA sensor storage.



  • Registered Users Posts: 34 Fred7631


    Can any one remind me if there is an easy way of turning the charging on and off, similar to the timed way in self use but a switch from off to on by one of the registers? Thanks.



  • Moderators, Education Moderators, Home & Garden Moderators Posts: 8,145 Mod ✭✭✭✭Jonathan




  • Registered Users Posts: 700 ✭✭✭fuse


    I keep hearing modbus... that's my solarman data logger right?

    I took a look at your pysolarmanv5 module, need to get up to speed on python again. Looks like i'll need something like an Rpi running this and a DB to log the data to? Which Home Assistant can read from...



  • Registered Users Posts: 34 Fred7631


    Thanks, sorted now :)



  • Advertisement
  • Registered Users Posts: 1,730 ✭✭✭poker--addict


    This thread is PHD Solar PV 😂

    😎



Advertisement