• Have you tried out dark mode?! Scroll to the bottom of any page to find a sun or moon icon to turn dark mode on or off!

diy solar

diy solar

Cheap battery backup/microgrid for small microinverter system in 2025- Schneider XW Pro?

blerpaderpa

New Member
Joined
Jul 23, 2022
Messages
34
Hi all-

I have a pretty small grid-tied 5kw system in a shady environment with a pile of older Enphase M190/220W panels. It's a pretty standard setup with the feed from the micros combiner box going into a meter panel on the side of the house and I have 1:1 net metering with the local POCO. I don't have any DC solar and don't really plan on it outside of maybe throwing one or two panels out to trickle feed my battery pack (have an old outback charge controller laying around somewhere)

I'd like to add in just basic power outage functionality where the hybrid inverter does frequency shifting and sets up an isolated microgrid with the micros on the load side of the inverter and let's me run an emergency panel (well pump, a couple other minor things) off of a battery stack, but will normally power these loads off of the grid. I'm looking at the prices on the soon to be end-of-life Schneider XW Pro and I'm really leaning in that direction as it solves my need for battery backup and solar generation in a pretty affordable way.

Can anyone with a similar setup tell me if this is a bad idea, or if I should be looking in another direction? I was also looking at the EG4 6000XP and similar models. DIY battery compatability would be nice to have and it would also be nice if this system kind of prepared me for the POCO going back on their agreement down the road and ensured zero power was back feeding the grid, but that might be a little pie in the sky at this point.

I initially bench tested my micros on the ground using batteries and a Schneider SW, so I know the tech is capable and the freq shift works on these micros (though I don't know how different the software/firmware is between the XW and SW). I was thinking of putting the XW / emergency panel in the house and either completely moving the line from the combiner to panel to the emergency panel, or maybe adding a manual transfer switch in the house so that the wire from the combiner to outside panel essentially stays in place.
 
Last edited:
I've done something similar with an XW+ and the older Enphase microinverters seem to work fine at least the M250's do with no firmware upgrades. If you are going to add a critical loads subpanel that makes wiring a little easier than doing a whole house at the main panel which requires a line side tap.

There is one important issue to be aware of with the Schneider XW when used in a strictly AC Coupled mode. There is only one built in means of initiating a charge cycle and that is the Recharge Volts setting. Otherwise there are no Charge Start timers only Charge Block timers. ( NOTE: Recharge cycles are initiated when Grid is lost then restored, if Batt Volts drops to LBCO +2 or the Charger is Enabled from a Disabled condition. This is true as long as the time of day is outside the Charge Block setting)

If you are using the XW Pro only as a means of back up then the solution is to set Recharge Volts at something like 52.5V and let the inverter charge the batteries as needed to keep them topped up. The XW uses the battery to power all the electronics which is essentially a 24/7 parasitic load although it is very low at about 30W.

Where it gets complicated is with a 100% AC Coupled system being used for Peak Load Shave during high price Time of Use rates. What happens is the Inverter will kick in based on PLS Start Timer and end based on the PLS End Timer OR if the battery drops to Recharge Volts +0.5V the inverter exits PLS. This means if the Recharge Volts is set to a high value the inverter will exit prematurely based on voltage and it will not automatically recharge the batteries for the next day. If you set Recharge Volts to a low value, the inverter will perform the PLS session per the timers (assuming the battery capacity is sufficient) and draw the batteries down. However, again will not automatically recharge for the next day.

The work around is to use Node-Red, Pymodbus or Programmable Logic Controller to initate a Bulk recharge by communicating with the Modbus TCP or RS-485 interface on the InsightHome. I have Node-Red running on a Raspberry Pi on our home network, Tops up the batteries daily with a 10A float charge for a couple of hours.
 
If you want just basic outage functionality, I have my XW Pro on an interlock so it is off except after the grid fails.
I have the charger turned off and it recharges anyway.
 
I've done something similar with an XW+ and the older Enphase microinverters seem to work fine at least the M250's do with no firmware upgrades. If you are going to add a critical loads subpanel that makes wiring a little easier than doing a whole house at the main panel which requires a line side tap.

There is one important issue to be aware of with the Schneider XW when used in a strictly AC Coupled mode. There is only one built in means of initiating a charge cycle and that is the Recharge Volts setting. Otherwise there are no Charge Start timers only Charge Block timers. ( NOTE: Recharge cycles are initiated when Grid is lost then restored, if Batt Volts drops to LBCO +2 or the Charger is Enabled from a Disabled condition. This is true as long as the time of day is outside the Charge Block setting)

If you are using the XW Pro only as a means of back up then the solution is to set Recharge Volts at something like 52.5V and let the inverter charge the batteries as needed to keep them topped up. The XW uses the battery to power all the electronics which is essentially a 24/7 parasitic load although it is very low at about 30W.

Where it gets complicated is with a 100% AC Coupled system being used for Peak Load Shave during high price Time of Use rates. What happens is the Inverter will kick in based on PLS Start Timer and end based on the PLS End Timer OR if the battery drops to Recharge Volts +0.5V the inverter exits PLS. This means if the Recharge Volts is set to a high value the inverter will exit prematurely based on voltage and it will not automatically recharge the batteries for the next day. If you set Recharge Volts to a low value, the inverter will perform the PLS session per the timers (assuming the battery capacity is sufficient) and draw the batteries down. However, again will not automatically recharge for the next day.

The work around is to use Node-Red, Pymodbus or Programmable Logic Controller to initate a Bulk recharge by communicating with the Modbus TCP or RS-485 interface on the InsightHome. I have Node-Red running on a Raspberry Pi on our home network, Tops up the batteries daily with a 10A float charge for a couple of hours.
For my backup situation, do you think I could
I've done something similar with an XW+ and the older Enphase microinverters seem to work fine at least the M250's do with no firmware upgrades. If you are going to add a critical loads subpanel that makes wiring a little easier than doing a whole house at the main panel which requires a line side tap.

There is one important issue to be aware of with the Schneider XW when used in a strictly AC Coupled mode. There is only one built in means of initiating a charge cycle and that is the Recharge Volts setting. Otherwise there are no Charge Start timers only Charge Block timers. ( NOTE: Recharge cycles are initiated when Grid is lost then restored, if Batt Volts drops to LBCO +2 or the Charger is Enabled from a Disabled condition. This is true as long as the time of day is outside the Charge Block setting)

If you are using the XW Pro only as a means of back up then the solution is to set Recharge Volts at something like 52.5V and let the inverter charge the batteries as needed to keep them topped up. The XW uses the battery to power all the electronics which is essentially a 24/7 parasitic load although it is very low at about 30W.

Where it gets complicated is with a 100% AC Coupled system being used for Peak Load Shave during high price Time of Use rates. What happens is the Inverter will kick in based on PLS Start Timer and end based on the PLS End Timer OR if the battery drops to Recharge Volts +0.5V the inverter exits PLS. This means if the Recharge Volts is set to a high value the inverter will exit prematurely based on voltage and it will not automatically recharge the batteries for the next day. If you set Recharge Volts to a low value, the inverter will perform the PLS session per the timers (assuming the battery capacity is sufficient) and draw the batteries down. However, again will not automatically recharge for the next day.

The work around is to use Node-Red, Pymodbus or Programmable Logic Controller to initate a Bulk recharge by communicating with the Modbus TCP or RS-485 interface on the InsightHome. I have Node-Red running on a Raspberry Pi on our home network, Tops up the batteries daily with a 10A float charge for a couple of hours.
this is exactly the info I was looking for. Do you have a link to any sort of guide for the modbus work? And do you know if the insight home box is necessary for the xw pro to use ac coupling and/or lithium batts? I recall the SW needed the insight box for the lithium battery programming.

For the latter situation, would it be possible to use a large relay triggered by a signal from rpi or arduino/home automation to turn off and on quickly (simulate a power outage for the Schneider ac input) at cheap power time to trigger the recharge cycle? Or do your charge settings override this behavior in this situation?
 
Do you have a link to any sort of guide for the modbus work? And do you know if the insight home box is necessary for the xw pro to use ac coupling and/or lithium batts?
Yes, absolutely need the Insight for setting up the user menu and being able to access RS-485 or Modbus TCP. Plus it gives you remote access to monitor and change settings when not home. I have some flows set up already, would be happy to PM you the JSON file.
For the latter situation, would it be possible to use a large relay triggered by a signal from rpi or arduino/home automation to turn off and on quickly (simulate a power outage for the Schneider ac input) at cheap power time to trigger the recharge cycle? Or do your charge settings override this behavior in this situation?
Yes you could use a large relay but that is not at all necessary. If you are going to take the time to set up RPi or something similar then go ahead and communicate directly with Insight.
There is a command to Force AC1 Disqualification which uses the internal relay to disconnect. This isn't necessary as the Peak Load Shave timers can be set up to activate when you need PLS. Although it only works for 1 time period per day.

You can use Node-Red to Enable or Disable PLS if more than 1 time per day is needed. Likewise, there is a Force Charge Register that can be used to trigger a recharge cycle everyday after PLS ends or the next morning when the AC coupled Panels start producing.

Schneider has an extensive list of published Modbus Registers. Port 503 is where you will find most of the items relevant to the above discussion as far as remote control of the basic functions.

EDIT: Forgot to mention, I believe the Issue with AC Coupling/Peak Load Shave and not having a built in way to trigger a recharge cycle has partially been resolved With SoC control if the battery chosen has compatible Closed Loop Communications with Schneider. This is a bit out of my experience area as I'm using voltage control and have no SoC values to work with.
 

Attachments

Last edited:
Yes, absolutely need the Insight for setting up the user menu and being able to access RS-485 or Modbus TCP. Plus it gives you remote access to monitor and change settings when not home. I have some flows set up already, would be happy to PM you the JSON file.

Yes you could use a large relay but that is not at all necessary. If you are going to take the time to set up RPi or something similar then go ahead and communicate directly with Insight.
There is a command to Force AC1 Disqualification which uses the internal relay to disconnect. This isn't necessary as the Peak Load Shave timers can be set up to activate when you need PLS. Although it only workWould love to see the json file. s for 1 time period per day.

You can use Node-Red to Enable or Disable PLS if more than 1 time per day is needed. Likewise, there is a Force Charge Register that can be used to trigger a recharge cycle everyday after PLS ends or the next morning when the AC coupled Panels start producing.

Schneider has an extensive list of published Modbus Registers. Port 503 is where you will find most of the items relevant to the above discussion as far as remote control of the basic functions.

EDIT: Forgot to mention, I believe the Issue with AC Coupling/Peak Load Shave and not having a built in way to trigger a recharge cycle has partially been resolved With SoC control if the battery chosen has compatible Closed Loop Communications with Schneider. This is a bit out of my experience area as I'm using voltage control and have no SoC values to work with.
This is awesome info. I'd love to see your node red JSON file- I just picked up the XW Pro from stellavolta. I mostly use ESPHOME and Home Assistant these days :) Are you making http calls directly to the Insight from node red?
 

diy solar

diy solar
Back
Top