Skip to content

Conversation

@brickatius
Copy link
Contributor

Description

This update refines the LuxPower documentation and example template to showcase an improved Freeze Charging configuration for LuxPower inverters.

Introducing a brief delay before modifying scheduled_charge_enable results in a more stable and predictable behaviour. This adjustment:

  • Eliminates write‑warning noise during Freeze Charging
  • Removes the need for maintain_freeze_charge_status or suppress_record_status_on_write_fail entries in luxpower.yaml
  • Avoids any requirement to patch inverter.py to suppress warnings or record_status updates

This simplifies configuration, reduces maintenance overhead, and aligns the integration with best‑practice automation patterns.

Closing

Feedback is welcome, and I’m happy to adjust anything that helps this land smoothly.

brickatius and others added 4 commits January 19, 2026 14:13
Updated inverter setup documentation for LuxPower inverters, including detailed instructions for Freeze Charging and Freeze Exporting configurations.
Removed automation turn off service from charge stop configuration.
@brickatius brickatius force-pushed the luxpower-harbour-lights branch 9 times, most recently from fc15ee8 to 06b2cdb Compare January 21, 2026 14:24
@brickatius brickatius force-pushed the luxpower-harbour-lights branch from 7438801 to 8e25520 Compare January 23, 2026 15:43
@brickatius
Copy link
Contributor Author

I appreciate that this isn't the right place for this. However, please accept my sincere apologies for the messiness of this PR. It results primarily from my ignorance of how GitHub works (I only learnt about pre-commit checks yesterday) but also from the death of my desktop computer which was running the latest version of Ubuntu. I have had to resort to the resurrection of a Mac dating back to 2013!

@brickatius
Copy link
Contributor Author

Is there anything further I need to do to get this PR over the line ( @springfall2008 @gcoan )?
The unverified commit about the Troubleshooting section authored by Richard is from me.
I've made all the corrections flagged up by the workflow checks, however if you want me to close this PR and start afresh, I'm happy to do so.

@springfall2008
Copy link
Owner

Looks good, will merge it

@springfall2008 springfall2008 merged commit 12bdc5a into springfall2008:main Jan 31, 2026
1 check passed
@ppmt
Copy link

ppmt commented Jan 31, 2026

How should I proceed if I want to merge my existing configuration file with the new version?

@gcoan
Copy link
Collaborator

gcoan commented Jan 31, 2026

How should I proceed if I want to merge my existing configuration file with the new version?

you'll have to copy the new predbat template and re-apply your configuration to it. There's no easy way to merge apps.yaml versions other than in file editor

@brickatius
Copy link
Contributor Author

How should I proceed if I want to merge my existing configuration file with the new version?

As @gcoan says but you don't necessarily need to replace the whole template, only the last couple of lines of the 'inverter:' section down as far as 'battery_voltage'

@ppmt
Copy link

ppmt commented Feb 1, 2026

Ok. I will try to put them side by side and work from there.

Is the new config the "recommended" way to go as far as settings?

@brickatius
Copy link
Contributor Author

Ok. I will try to put them side by side and work from there.

Is the new config the "recommended" way to go as far as settings?

It's up to you. Using the system charge and grid cut-off entities avoids any confusion with different values being set in apps.yaml and the inverter.
Freeze charge & export are integral parts of Predbat so it's worth a try. This time of year you'll see more Freeze charging than exporting. It's all about maximising cost saving.

@ppmt
Copy link

ppmt commented Feb 1, 2026

It probably isn't the place to ask but what is the difference between Freeze Charging and Holding Charge?

@gcoan
Copy link
Collaborator

gcoan commented Feb 1, 2026

It probably isn't the place to ask but what is the difference between Freeze Charging and Holding Charge?

they are effectively the same https://springfall2008.github.io/batpred/what-does-predbat-do/#predbat-status

@brickatius
Copy link
Contributor Author

It probably isn't the place to ask but what is the difference between Freeze Charging and Holding Charge?

In both cases the battery will never discharge.
The description of Freeze charging is a bit confusing. Basically it's the same as ordinary Demand mode but any house load that would have come from the battery comes from the grid instead.
In LuxPower terms -
Hold charging:
Exactly the same as Charge Priority / Charge First i.e. all the house load comes from the grid.
Freeze charging:
Solar > House - house load from solar (identical to a GivEnergy inverter)
Solar < House - house load from grid (slightly different from GE inverter. Solar doesn't contribute to house load but there's a trade-off, more power in the battery which Predbat will account for)
No solar - house load from grid (identical to a GE inverter).

@ppmt
Copy link

ppmt commented Feb 1, 2026

Thanks for the explanation. When you say that none of the power will come from the battery, I assume it is based on cost comparisons (ie exporting is more efficient that charging the battery?)
Basically what I am asking is that when the electricity is expensive (like evening) then Predbat will use the battery ?

@brickatius
Copy link
Contributor Author

Correct. I've been trialing this for a couple of months (with Octopus Flux and Agile import / fixed export) and I haven't seen Predbat Freeze charge during the most expensive import periods.

@ppmt
Copy link

ppmt commented Feb 1, 2026

Ok I have enabled it now by following the documentation and all seems ok. Except for one thing.

In the documentation is says:

Enable Freeze Charging

    Ensure switch.predbat_set_charge_freeze is turned On.

The switch doesn't exist for me.

@gcoan
Copy link
Collaborator

gcoan commented Feb 1, 2026

When you say that none of the power will come from the battery, I assume it is based on cost comparisons (ie exporting is more efficient that charging the battery?)
Basically what I am asking is that when the electricity is expensive (like evening) then Predbat will use the battery ?

Its not really a case of what the export rate is, freeze charge is used when the import rate is such that it is more economical to directly import from the grid to run the house (rather than deplete the battery), but its not cheap enough to make it worthwhile charging the battery. Running off grid means you don't incur the battery discharge and inverter conversion losses.

Enable Freeze Charging

Ensure switch.predbat_set_charge_freeze is turned On.

The switch doesn't exist for me.

check the documentation https://springfall2008.github.io/batpred/customisation/ you will see this is an expert mode switch so you need to turn expert mode on first

@brickatius
Copy link
Contributor Author

Ok I have enabled it now by following the documentation and all seems ok. Except for one thing.

In the documentation is says:


Enable Freeze Charging



    Ensure switch.predbat_set_charge_freeze is turned On.

The switch doesn't exist for me.

Look in the Predbat User Interface (UI) under 'Config', scroll down and you will see 'Set Charge Freeze' and also 'Set Export Freeze'
Thanks for the heads up. I need to clarify the documentation.

@ppmt
Copy link

ppmt commented Feb 1, 2026

Yes it is all setup now but as @gcoan said I had to enable expert to get that one to appear.

I will monitor over the next few days to see how it behaves

Thanks all for your patience and help 👍

image

PS: on a completely different subject. I noticed that the luxpower_app template is not using the new format for the carbon_intensity

gcoan added a commit to gcoan/batpred that referenced this pull request Feb 1, 2026
@gcoan
Copy link
Collaborator

gcoan commented Feb 2, 2026

I've updated the documentation to highlight the need to turn expert mode on, and have changed ALL the templates for the new carbon intensity config:

@brickatius
Copy link
Contributor Author

@ppmt Don't be alarmed if you see a few seconds of battery charging from the grid when Freeze charging starts. This is expected. It's caused by a delay between Predbat enabling the LuxPower AC Charge and the Stop AC Charge SoC% being set to the present battery SoC%.

@brickatius
Copy link
Contributor Author

I've updated the documentation to highlight the need to turn expert mode on, and have changed ALL the templates for the new carbon intensity config:

Geoffrey, it would be clearer still if we mention the need to go to the Web UI/Config to set Expert Mode to True and then Set Charge Freeze to True, rather than referring to the Predbat entity itself. Likewise at the end of the Freeze export section. Are you happy to do that?

@gcoan
Copy link
Collaborator

gcoan commented Feb 2, 2026

Geoffrey, it would be clearer still if we mention the need to go to the Web UI/Config to set Expert Mode to True and then Set Charge Freeze to True, rather than referring to the Predbat entity itself. Likewise at the end of the Freeze export section. Are you happy to do that?

No

The danger of being too prescriptive is it starts an endless journey into telling people where to click and what to do. Some people don't use the web interface, some don't even use Home Assistant.

And there are lots and lots of places in the documentation where settings are described and cross referenced together and if we had to add more detail then the docs would be even longer than they are now! Inverter setup is already over 2500 lines long.

I'm happy to point out that set charge freeze is an expert mode switch and you need to turn expert mode on first, but TBH even that is pushing it, the switch is described in the customisation section as being expert mode so that should have been enough.
Also, we don't remind people to turn this switch on (and expert mode) for all the other inverter types that have charge freeze functionality, so it's already being over-generous !

@brickatius
Copy link
Contributor Author

Geoffrey, it would be clearer still if we mention the need to go to the Web UI/Config to set Expert Mode to True and then Set Charge Freeze to True, rather than referring to the Predbat entity itself. Likewise at the end of the Freeze export section. Are you happy to do that?

No

The danger of being too prescriptive is it starts an endless journey into telling people where to click and what to do. Some people don't use the web interface, some don't even use Home Assistant.

And there are lots and lots of places in the documentation where settings are described and cross referenced together and if we had to add more detail then the docs would be even longer than they are now! Inverter setup is already over 2500 lines long.

I'm happy to point out that set charge freeze is an expert mode switch and you need to turn expert mode on first, but TBH even that is pushing it, the switch is described in the customisation section as being expert mode so that should have been enough.
Also, we don't remind people to turn this switch on (and expert mode) for all the other inverter types that have charge freeze functionality, so it's already being over-generous !

Ok. Understood.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants