You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
HomeFlux EMS – Getting Started with Battery Management and Charging Planning
Your energy, managed differently.
This guide helps you get started with HomeFlux EMS and a home battery. You will learn which data HomeFlux requires, how to connect your battery, what the main battery features do, and how the day and night charging plans are created.
This guide is based on HomeFlux EMS v0.7.11.
1. What does HomeFlux EMS do?
HomeFlux EMS is a hardware-independent Energy Management System for Homey Pro.
Instead of depending directly on a specific battery, inverter, or energy meter brand, HomeFlux communicates through Homey Flow cards. This allows HomeFlux to work with different battery systems as long as Homey can read the required data and send commands to the battery.
For battery control, HomeFlux combines information such as:
current grid power;
current battery SoC;
PV production;
PV forecasts;
your energy contract and permitted charging periods;
your expected energy requirement;
minimum and safety reserves;
Peak Guard;
and optionally Battery Balance, Autotune, and Hybrid EMS.
The main difference compared with a simple self-consumption controller is that HomeFlux does not only look at what is happening right now. It also tries to look ahead.
The central question is always:
How much energy should be available in the battery by the next important moment, taking into account how much energy the sun is still expected to provide?
2. First connect the basic data
HomeFlux requires several data inputs before it can correctly control the battery.
Grid power
Use the Flow card:
Set grid power
Send the current value from your P1 meter, smart meter, or another grid meter to HomeFlux.
The sign convention is:
Value | Meaning
-- | --
Positive | Grid consumption / import
Negative | Grid injection / export
Minimum SoC
This is the absolute lower limit.
Normal battery control does not try to reach this limit. It is mainly intended as a final available reserve.
If necessary, Peak Guard may discharge the battery below the Safety SoC, but never below the Minimum SoC.
A Minimum SoC of, for example, 10% therefore genuinely means:
HomeFlux will not intentionally control the battery below 10%.
Safety SoC
The Safety SoC is the normal reserve HomeFlux tries to protect.
Normal self-consumption and Battery Save will not discharge below this limit.
The charging plan will also never receive a target below the Safety SoC.
The distinction is therefore important:
Minimum SoC = hard emergency limit.
Safety SoC = normal operational lower limit.
Maximum SoC
This is the highest charging level HomeFlux is allowed to target.
You therefore do not necessarily have to charge to 100% if your battery or usage strategy prefers a lower upper limit.
5. Charge and discharge power
Next, configure the physical limits of your battery.
You can configure a maximum for:
total charge power, total discharge power, charge power per battery, and discharge power per battery.
If all batteries are identical, the same per-battery limits can be used.
If your batteries have different specifications, enable:
My batteries have different power limits
You can then configure the maximum charge and discharge power for each battery individually.
HomeFlux will never intentionally request more power than the configured limits.
6. Sending battery commands to the battery
For a normal battery, use the Flow trigger:
Battery commands have been updated
This card contains, among other things, the command for each battery and the total battery command.
The standard HomeFlux convention is:
positive power = discharge
negative power = charge
A command of +1500 W therefore requests 1500 W of discharge.
A command of -1500 W requests 1500 W of charging.
If your battery app uses the opposite convention, you can enable Invert charge/discharge values.
HomeFlux will then only invert the published values. The internal EMS logic remains unchanged.
Important
Do not use New battery setpoint calculated for actual battery control.
That card shows a preliminary calculation before the minimum control interval has been applied.
For actual battery control, use Battery commands have been updated or, for a split-command battery, the corresponding split-command cards.
7. Testing the battery direction
Before HomeFlux is allowed to publish real battery commands, a direction test must be performed.
HomeFlux first requests approximately 100 W of charging.
Physically verify that the battery is actually charging and confirm this.
HomeFlux then requests approximately 100 W of discharge.
Again, verify that the battery is actually discharging.
Only after both directions have been correctly confirmed will EMS output be enabled.
If you later change the number of batteries or the sign direction, the test must be performed again.
This prevents an incorrectly interpreted sign from suddenly causing charging to be treated as discharging.
8. Configuring your energy contract
Charging planning can only work effectively once HomeFlux knows when energy is cheap or expensive.
HomeFlux supports fixed tariffs, fixed time-of-use tariffs, and dynamic hourly or quarter-hourly tariffs.
Fixed tariff
With a fixed contract, you can configure a specific charging window.
When forecast solar production is insufficient, HomeFlux can charge from the grid within that window.
Fixed time-of-use tariffs
With a contract containing multiple tariff periods, first create the tariffs, for example:
Super Off-Peak, Off-Peak, and Peak.
Then create the weekly schedule.
For each tariff, you can decide whether it may be used as a charging window during the night plan, the day plan, always, or never.
"Night" and "day" do not simply refer to fixed time blocks. They follow the active HomeFlux night or day plan.
You can additionally enable Avoid all grid import for a tariff.
This takes priority over scheduled grid charging. HomeFlux will therefore not start scheduled grid charging during such a tariff period.
Dynamic contract
With a dynamic contract, HomeFlux searches for the cheapest known hours or quarter-hours within the planning period.
You determine how many cheap hours may be used.
HomeFlux then tries to schedule only as much energy during those cheap slots as is actually required.
9. The principle behind charging planning
HomeFlux always uses only one active battery plan at a time:
night plan or day plan.
They do not overlap.
This is a fundamental principle of HomeFlux.
10. The night plan
The night plan looks ahead to the next solar day.
When HomeFlux has detected PV production during the day and the current PV power subsequently remains below 5 W for ten minutes, the solar day is considered finished.
HomeFlux then switches to the night plan.
If no usable PV power data is available to determine when production has ended, a safety fallback is used around 20:00.
From that point onwards, the PV forecast for tomorrow is used.
The night plan runs until the configured:
Night plan target time
A typical default could be 07:00, around the beginning of your first morning peak.
HomeFlux now asks:
How much energy will I need tomorrow, how much of that do I expect to receive from PV, and how much should I potentially obtain cheaply from the grid before the morning target?
11. The day plan
As soon as HomeFlux detects actual PV production again — from approximately 5 W — the night plan stops and the day plan becomes active.
From that moment onwards, energy planning no longer uses tomorrow's full forecast, but instead uses the:
remaining PV forecast for today.
This is logical.
Energy already produced by the solar panels in the morning and potentially stored in the battery is already reflected in the current battery SoC.
It must therefore not be counted again as future energy.
The day plan runs until:
Day plan target time
For example, 17:00.
Its purpose may be to retain enough energy for cooking, the evening peak, or other loads after solar production has disappeared.
12. How is the desired SoC calculated?
The most important user setting for this calculation is:
Expected energy requirement from now
HomeFlux compares this requirement with the PV energy that is still expected.
Conceptually:
energy requirement - expected PV = energy still missing
This deficit is then converted into a battery SoC.
HomeFlux subsequently checks whether other minimum rules require a higher target.
The final target can therefore never be lower than the Safety SoC and may be increased by, for example, a seasonal minimum SoC.
Example
Suppose:
Battery capacity: 20 kWh
Minimum SoC: 10%
Safety SoC: 20%
Expected energy requirement: 12 kWh
PV tomorrow: 4 kWh
HomeFlux sees approximately 8 kWh of energy that will not be covered by the forecast solar production.
With a 20 kWh battery, 8 kWh corresponds to approximately 40 percentage points of battery capacity.
Starting from a Minimum SoC of 10%, this conceptually produces an energy target of around 50%.
However, if the configured minimum reserve for that month is 60%, the final target becomes:
60%
Not 50%.
The minimum reserve is then the stronger condition.
13. Why HomeFlux does not simply fully charge every night
A traditional system may reason:
"Electricity is cheap, so fully charge the battery."
HomeFlux tries to charge only what is likely to be required.
If HomeFlux expects a large amount of solar production, the night target can remain low so that sufficient free battery capacity remains available to store PV energy during the day.
If little solar production is expected, the calculated battery target increases and more cheap grid energy can be purchased.
The objective is therefore not:
to make the battery as full as possible.
The objective is:
to have enough energy available at the right moment while preserving space for cheap or free energy that is still expected later.
14. Minimum SoC per season or month
You can select specific months and configure a:
Minimum SoC for day planning in selected months
This is an absolute lower limit for the plan.
A PV forecast cannot lower the target below this value during the day plan.
For months that are not selected, you can optionally configure a separate:
Minimum SoC for day planning in sunny months
This allows you, for example, to maintain a larger battery reserve during darker months while leaving more battery capacity available for PV during sunny months.
With:
Also use Minimum SoCs for night planning
you can apply the same minimum values to the night plan.
When this option is disabled, the night plan may produce a lower target when the forecast indicates that sufficient PV is expected.
When it is enabled, the applicable monthly minimum also becomes a hard lower limit during the night.
Forecast and energy requirements may still increase the target, but they may not lower it.
15. Battery Save during a low PV forecast
With:
Minimum amount of solar energy for self-consumption
you determine from which forecast daily yield HomeFlux considers a day sufficiently sunny.
As a useful starting estimate, the app suggests:
annual PV yield / 365 × 0.8
For each tariff or price category, you can then decide whether HomeFlux should switch to Battery Save when the PV forecast is low.
In Battery Save mode, stored energy is intentionally preserved for longer.
You can also allow the battery to continue discharging down to the calculated forecast target while Battery Save is active. Only the reserve above that target is then available for self-consumption.
For example, you can effectively say:
"Preserve my battery on a poor solar day, but anything above the energy plan may still be used."
16. Automatically converting a low-PV day into a sunny day
Forecasts can be wrong.
For this reason, HomeFlux includes:
Switch low-PV day to sunny day at high battery SoC
Configure, for example, an SoC threshold and a minimum duration.
When the battery remains above this threshold for long enough during the active day plan, HomeFlux concludes that the actual day is performing clearly better than forecast.
The low-PV restriction is then removed for the remainder of that day.
The original forecast itself is not modified. Only the "Battery Save because of low PV" strategy is removed.
Peak Guard and other safety rules remain active.
17. Peak Guard
Peak Guard has priority over normal battery modes and charging planning.
You configure a maximum grid import and optionally a safety margin.
When grid consumption threatens to become too high, HomeFlux first reduces active charging power.
If that is insufficient, the battery can discharge to further reduce the grid peak.
Peak Guard may discharge below the Safety SoC for this purpose, but never below the configured Minimum SoC.
This is why the distinction between both limits is important.
18. Battery Balance
With multiple batteries, Battery Balance can help reduce SoC differences between the batteries.
When charging, HomeFlux assigns relatively more power to batteries with a lower SoC.
When discharging, batteries with a higher SoC are loaded relatively more heavily.
Small differences within the configured deadband are ignored.
Battery Balance does not change the total EMS power target. It mainly determines how that total power is distributed across the available batteries.
A warning can also be configured when the SoC spread continues to increase while active balancing is taking place. This may, for example, indicate an incorrect association between a battery SoC and its corresponding battery command.
19. Split Command for special batteries
Some battery systems do not simply accept a single positive or negative power setpoint.
They may, for example, first require:
switch to charge mode
and then:
set charge power
For these systems, Split Command can be enabled per battery.
HomeFlux then provides separate Flow outputs for charge mode, discharge mode, charge power, and discharge power.
Additional safeguards are included, such as a minimum time within a mode, a minimum delay between direction changes, and a confirmation period before HomeFlux actually switches from charging to discharging or vice versa.
This is an advanced feature and is not required when your battery can be controlled directly through a single power setpoint.
20. Hybrid EMS
When a battery or inverter already provides particularly good and fast self-consumption control, HomeFlux can optionally act as a higher-level manager above that external EMS.
In Hybrid EMS, the external controller can, for example, handle fast regulation around zero watts while HomeFlux continues to make the higher-level decisions:
planning, reserves, tariffs, and safety.
When HomeFlux requires direct control again, it takes battery control back.
Hybrid EMS is mainly intended for installations where the battery's native control responds faster or better than a setpoint sent through Homey.
For a first installation, it is advisable to get the normal HomeFlux battery control working correctly before enabling Hybrid EMS.
21. Autotune
Autotune can gradually learn from P1 measurements, PV production, battery behaviour, and previous planning, among other data.
Autotune does not simply change settings automatically.
Permission must explicitly be granted for each parameter.
In addition, a recommendation must reach at least the configured confidence threshold. By default, this threshold is 95%.
For automatically managed parameters, you can also define the minimum and maximum values that Autotune is allowed to use.
Hard user-defined choices such as Minimum SoC, Safety SoC, Maximum SoC, Peak Guard, physical battery power limits, tariffs, and manual time windows are not independently modified by Autotune.
During the first few days, you can therefore simply observe HomeFlux. Once enough data is available, recommendations will begin to appear.
22. Good starting values for planning
For Expected energy requirement from now, HomeFlux provides the following initial guideline:
annual consumption / 365 × 0.8
For Minimum amount of solar energy for self-consumption:
annual PV yield / 365 × 0.8
These are starting values, not absolute truths.
A household with high evening consumption may, for example, need a different desired energy reserve than a home where most energy is consumed during the day.
HomeFlux can later refine these parameters further with Autotune.
23. Checking the plan
On the Planning tab, you can see how HomeFlux arrives at its decision.
Among other things, you can see the current average battery SoC, the final target SoC, the energy target, the Safety SoC, the PV forecast being used, the remaining energy requirement, the active planning phase, and the next scheduled grid-charging moment.
HomeFlux also separately displays which forecast is being used for energy planning and which forecast is being used for strategy.
This distinction is important:
Energy planning looks at the PV energy that may still become available from now onwards.
Strategy/Battery Save looks at the complete relevant solar day.
This keeps both decisions logical as the day progresses.
With Planning simulation, you can enter simulated battery, PV, and grid values to see how HomeFlux would respond.
The simulation does not send any real battery, EV, PV, HVAC, or boiler commands.
24. A simple example of a complete day
Suppose HomeFlux sees a battery SoC of 35% in the evening.
The system expects 5 kWh of PV tomorrow, while the configured energy requirement is 12 kWh.
HomeFlux calculates that approximately 7 kWh will not be supplied by the expected solar production.
The night plan determines how much battery SoC is required for that and checks which permitted cheap charging windows are available before the morning target time.
Only the required deficit is scheduled.
In the morning, PV production starts.
At that point, the night plan stops and the day plan takes over.
HomeFlux may now see, for example, that 4 kWh of PV is still expected for the remainder of today. It uses this remaining value to recalculate how much energy is required by the configured daytime target.
If PV production is better than expected, the battery will naturally continue charging from solar energy.
If production is worse than expected, the calculated energy target may remain higher, or a later permitted charging window may be used.
When PV production remains below 5 W for ten minutes again in the evening, HomeFlux closes the solar day.
Tomorrow's forecast becomes active and a new night plan begins.
The cycle starts again.
25. Summary
HomeFlux does not simply try to make the battery full or empty.
The system tries to achieve three things at the same time:
Now: efficiently handle current consumption and PV surplus.
Soon: reserve enough energy for the next important moment.
Later: preserve enough free battery capacity for energy that, according to the forecast, will become cheaply or freely available later.
On top of this, hard limits such as Minimum SoC, Maximum SoC, battery power limits, and Peak Guard always remain in effect.
This is the basic philosophy behind HomeFlux battery control:
not storing as much energy as possible, but having the right amount of energy available at the right moment.
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
Uh oh!
There was an error while loading. Please reload this page.
HomeFlux EMS – Getting Started with Battery Management and Charging Planning
Your energy, managed differently.
This guide helps you get started with HomeFlux EMS and a home battery. You will learn which data HomeFlux requires, how to connect your battery, what the main battery features do, and how the day and night charging plans are created.
This guide is based on HomeFlux EMS v0.7.11.
1. What does HomeFlux EMS do?
HomeFlux EMS is a hardware-independent Energy Management System for Homey Pro.
Instead of depending directly on a specific battery, inverter, or energy meter brand, HomeFlux communicates through Homey Flow cards. This allows HomeFlux to work with different battery systems as long as Homey can read the required data and send commands to the battery.
For battery control, HomeFlux combines information such as:
current grid power;
current battery SoC;
PV production;
PV forecasts;
your energy contract and permitted charging periods;
your expected energy requirement;
minimum and safety reserves;
Peak Guard;
and optionally Battery Balance, Autotune, and Hybrid EMS.
The main difference compared with a simple self-consumption controller is that HomeFlux does not only look at what is happening right now. It also tries to look ahead.
The central question is always:
How much energy should be available in the battery by the next important moment, taking into account how much energy the sun is still expected to provide?
2. First connect the basic data
HomeFlux requires several data inputs before it can correctly control the battery.
Grid power
Use the Flow card:
Set grid power
Send the current value from your P1 meter, smart meter, or another grid meter to HomeFlux.
The sign convention is:
Value | Meaning -- | -- Positive | Grid consumption / import Negative | Grid injection / exportMinimum SoC
This is the absolute lower limit.
Normal battery control does not try to reach this limit. It is mainly intended as a final available reserve.
If necessary, Peak Guard may discharge the battery below the Safety SoC, but never below the Minimum SoC.
A Minimum SoC of, for example, 10% therefore genuinely means:
HomeFlux will not intentionally control the battery below 10%.
Safety SoC
The Safety SoC is the normal reserve HomeFlux tries to protect.
Normal self-consumption and Battery Save will not discharge below this limit.
The charging plan will also never receive a target below the Safety SoC.
The distinction is therefore important:
Minimum SoC = hard emergency limit.
Safety SoC = normal operational lower limit.
Maximum SoC
This is the highest charging level HomeFlux is allowed to target.
You therefore do not necessarily have to charge to 100% if your battery or usage strategy prefers a lower upper limit.
5. Charge and discharge power
Next, configure the physical limits of your battery.
You can configure a maximum for:
total charge power, total discharge power, charge power per battery, and discharge power per battery.
If all batteries are identical, the same per-battery limits can be used.
If your batteries have different specifications, enable:
My batteries have different power limits
You can then configure the maximum charge and discharge power for each battery individually.
HomeFlux will never intentionally request more power than the configured limits.
6. Sending battery commands to the battery
For a normal battery, use the Flow trigger:
Battery commands have been updated
This card contains, among other things, the command for each battery and the total battery command.
The standard HomeFlux convention is:
positive power = discharge
negative power = charge
A command of
+1500 Wtherefore requests 1500 W of discharge.A command of
-1500 Wrequests 1500 W of charging.If your battery app uses the opposite convention, you can enable Invert charge/discharge values.
HomeFlux will then only invert the published values. The internal EMS logic remains unchanged.
Important
Do not use New battery setpoint calculated for actual battery control.
That card shows a preliminary calculation before the minimum control interval has been applied.
For actual battery control, use Battery commands have been updated or, for a split-command battery, the corresponding split-command cards.
7. Testing the battery direction
Before HomeFlux is allowed to publish real battery commands, a direction test must be performed.
HomeFlux first requests approximately 100 W of charging.
Physically verify that the battery is actually charging and confirm this.
HomeFlux then requests approximately 100 W of discharge.
Again, verify that the battery is actually discharging.
Only after both directions have been correctly confirmed will EMS output be enabled.
If you later change the number of batteries or the sign direction, the test must be performed again.
This prevents an incorrectly interpreted sign from suddenly causing charging to be treated as discharging.
8. Configuring your energy contract
Charging planning can only work effectively once HomeFlux knows when energy is cheap or expensive.
HomeFlux supports fixed tariffs, fixed time-of-use tariffs, and dynamic hourly or quarter-hourly tariffs.
Fixed tariff
With a fixed contract, you can configure a specific charging window.
When forecast solar production is insufficient, HomeFlux can charge from the grid within that window.
Fixed time-of-use tariffs
With a contract containing multiple tariff periods, first create the tariffs, for example:
Super Off-Peak, Off-Peak, and Peak.
Then create the weekly schedule.
For each tariff, you can decide whether it may be used as a charging window during the night plan, the day plan, always, or never.
"Night" and "day" do not simply refer to fixed time blocks. They follow the active HomeFlux night or day plan.
You can additionally enable Avoid all grid import for a tariff.
This takes priority over scheduled grid charging. HomeFlux will therefore not start scheduled grid charging during such a tariff period.
Dynamic contract
With a dynamic contract, HomeFlux searches for the cheapest known hours or quarter-hours within the planning period.
You determine how many cheap hours may be used.
HomeFlux then tries to schedule only as much energy during those cheap slots as is actually required.
9. The principle behind charging planning
HomeFlux always uses only one active battery plan at a time:
night plan or day plan.
They do not overlap.
This is a fundamental principle of HomeFlux.
10. The night plan
The night plan looks ahead to the next solar day.
When HomeFlux has detected PV production during the day and the current PV power subsequently remains below 5 W for ten minutes, the solar day is considered finished.
HomeFlux then switches to the night plan.
If no usable PV power data is available to determine when production has ended, a safety fallback is used around 20:00.
From that point onwards, the PV forecast for tomorrow is used.
The night plan runs until the configured:
Night plan target time
A typical default could be 07:00, around the beginning of your first morning peak.
HomeFlux now asks:
How much energy will I need tomorrow, how much of that do I expect to receive from PV, and how much should I potentially obtain cheaply from the grid before the morning target?
11. The day plan
As soon as HomeFlux detects actual PV production again — from approximately 5 W — the night plan stops and the day plan becomes active.
From that moment onwards, energy planning no longer uses tomorrow's full forecast, but instead uses the:
remaining PV forecast for today.
This is logical.
Energy already produced by the solar panels in the morning and potentially stored in the battery is already reflected in the current battery SoC.
It must therefore not be counted again as future energy.
The day plan runs until:
Day plan target time
For example, 17:00.
Its purpose may be to retain enough energy for cooking, the evening peak, or other loads after solar production has disappeared.
12. How is the desired SoC calculated?
The most important user setting for this calculation is:
Expected energy requirement from now
HomeFlux compares this requirement with the PV energy that is still expected.
Conceptually:
energy requirement - expected PV = energy still missing
This deficit is then converted into a battery SoC.
HomeFlux subsequently checks whether other minimum rules require a higher target.
The final target can therefore never be lower than the Safety SoC and may be increased by, for example, a seasonal minimum SoC.
Example
Suppose:
Battery capacity: 20 kWh
Minimum SoC: 10%
Safety SoC: 20%
Expected energy requirement: 12 kWh
PV tomorrow: 4 kWh
HomeFlux sees approximately 8 kWh of energy that will not be covered by the forecast solar production.
With a 20 kWh battery, 8 kWh corresponds to approximately 40 percentage points of battery capacity.
Starting from a Minimum SoC of 10%, this conceptually produces an energy target of around 50%.
However, if the configured minimum reserve for that month is 60%, the final target becomes:
60%
Not 50%.
The minimum reserve is then the stronger condition.
13. Why HomeFlux does not simply fully charge every night
A traditional system may reason:
"Electricity is cheap, so fully charge the battery."
HomeFlux tries to charge only what is likely to be required.
If HomeFlux expects a large amount of solar production, the night target can remain low so that sufficient free battery capacity remains available to store PV energy during the day.
If little solar production is expected, the calculated battery target increases and more cheap grid energy can be purchased.
The objective is therefore not:
to make the battery as full as possible.
The objective is:
to have enough energy available at the right moment while preserving space for cheap or free energy that is still expected later.
14. Minimum SoC per season or month
You can select specific months and configure a:
Minimum SoC for day planning in selected months
This is an absolute lower limit for the plan.
A PV forecast cannot lower the target below this value during the day plan.
For months that are not selected, you can optionally configure a separate:
Minimum SoC for day planning in sunny months
This allows you, for example, to maintain a larger battery reserve during darker months while leaving more battery capacity available for PV during sunny months.
With:
Also use Minimum SoCs for night planning
you can apply the same minimum values to the night plan.
When this option is disabled, the night plan may produce a lower target when the forecast indicates that sufficient PV is expected.
When it is enabled, the applicable monthly minimum also becomes a hard lower limit during the night.
Forecast and energy requirements may still increase the target, but they may not lower it.
15. Battery Save during a low PV forecast
With:
Minimum amount of solar energy for self-consumption
you determine from which forecast daily yield HomeFlux considers a day sufficiently sunny.
As a useful starting estimate, the app suggests:
annual PV yield / 365 × 0.8
For each tariff or price category, you can then decide whether HomeFlux should switch to Battery Save when the PV forecast is low.
In Battery Save mode, stored energy is intentionally preserved for longer.
You can also allow the battery to continue discharging down to the calculated forecast target while Battery Save is active. Only the reserve above that target is then available for self-consumption.
For example, you can effectively say:
"Preserve my battery on a poor solar day, but anything above the energy plan may still be used."
16. Automatically converting a low-PV day into a sunny day
Forecasts can be wrong.
For this reason, HomeFlux includes:
Switch low-PV day to sunny day at high battery SoC
Configure, for example, an SoC threshold and a minimum duration.
When the battery remains above this threshold for long enough during the active day plan, HomeFlux concludes that the actual day is performing clearly better than forecast.
The low-PV restriction is then removed for the remainder of that day.
The original forecast itself is not modified. Only the "Battery Save because of low PV" strategy is removed.
Peak Guard and other safety rules remain active.
17. Peak Guard
Peak Guard has priority over normal battery modes and charging planning.
You configure a maximum grid import and optionally a safety margin.
When grid consumption threatens to become too high, HomeFlux first reduces active charging power.
If that is insufficient, the battery can discharge to further reduce the grid peak.
Peak Guard may discharge below the Safety SoC for this purpose, but never below the configured Minimum SoC.
This is why the distinction between both limits is important.
18. Battery Balance
With multiple batteries, Battery Balance can help reduce SoC differences between the batteries.
When charging, HomeFlux assigns relatively more power to batteries with a lower SoC.
When discharging, batteries with a higher SoC are loaded relatively more heavily.
Small differences within the configured deadband are ignored.
Battery Balance does not change the total EMS power target. It mainly determines how that total power is distributed across the available batteries.
A warning can also be configured when the SoC spread continues to increase while active balancing is taking place. This may, for example, indicate an incorrect association between a battery SoC and its corresponding battery command.
19. Split Command for special batteries
Some battery systems do not simply accept a single positive or negative power setpoint.
They may, for example, first require:
switch to charge mode
and then:
set charge power
For these systems, Split Command can be enabled per battery.
HomeFlux then provides separate Flow outputs for charge mode, discharge mode, charge power, and discharge power.
Additional safeguards are included, such as a minimum time within a mode, a minimum delay between direction changes, and a confirmation period before HomeFlux actually switches from charging to discharging or vice versa.
This is an advanced feature and is not required when your battery can be controlled directly through a single power setpoint.
20. Hybrid EMS
When a battery or inverter already provides particularly good and fast self-consumption control, HomeFlux can optionally act as a higher-level manager above that external EMS.
In Hybrid EMS, the external controller can, for example, handle fast regulation around zero watts while HomeFlux continues to make the higher-level decisions:
planning, reserves, tariffs, and safety.
When HomeFlux requires direct control again, it takes battery control back.
Hybrid EMS is mainly intended for installations where the battery's native control responds faster or better than a setpoint sent through Homey.
For a first installation, it is advisable to get the normal HomeFlux battery control working correctly before enabling Hybrid EMS.
21. Autotune
Autotune can gradually learn from P1 measurements, PV production, battery behaviour, and previous planning, among other data.
Autotune does not simply change settings automatically.
Permission must explicitly be granted for each parameter.
In addition, a recommendation must reach at least the configured confidence threshold. By default, this threshold is 95%.
For automatically managed parameters, you can also define the minimum and maximum values that Autotune is allowed to use.
Hard user-defined choices such as Minimum SoC, Safety SoC, Maximum SoC, Peak Guard, physical battery power limits, tariffs, and manual time windows are not independently modified by Autotune.
During the first few days, you can therefore simply observe HomeFlux. Once enough data is available, recommendations will begin to appear.
22. Good starting values for planning
For Expected energy requirement from now, HomeFlux provides the following initial guideline:
annual consumption / 365 × 0.8
For Minimum amount of solar energy for self-consumption:
annual PV yield / 365 × 0.8
These are starting values, not absolute truths.
A household with high evening consumption may, for example, need a different desired energy reserve than a home where most energy is consumed during the day.
HomeFlux can later refine these parameters further with Autotune.
23. Checking the plan
On the Planning tab, you can see how HomeFlux arrives at its decision.
Among other things, you can see the current average battery SoC, the final target SoC, the energy target, the Safety SoC, the PV forecast being used, the remaining energy requirement, the active planning phase, and the next scheduled grid-charging moment.
HomeFlux also separately displays which forecast is being used for energy planning and which forecast is being used for strategy.
This distinction is important:
Energy planning looks at the PV energy that may still become available from now onwards.
Strategy/Battery Save looks at the complete relevant solar day.
This keeps both decisions logical as the day progresses.
With Planning simulation, you can enter simulated battery, PV, and grid values to see how HomeFlux would respond.
The simulation does not send any real battery, EV, PV, HVAC, or boiler commands.
24. A simple example of a complete day
Suppose HomeFlux sees a battery SoC of 35% in the evening.
The system expects 5 kWh of PV tomorrow, while the configured energy requirement is 12 kWh.
HomeFlux calculates that approximately 7 kWh will not be supplied by the expected solar production.
The night plan determines how much battery SoC is required for that and checks which permitted cheap charging windows are available before the morning target time.
Only the required deficit is scheduled.
In the morning, PV production starts.
At that point, the night plan stops and the day plan takes over.
HomeFlux may now see, for example, that 4 kWh of PV is still expected for the remainder of today. It uses this remaining value to recalculate how much energy is required by the configured daytime target.
If PV production is better than expected, the battery will naturally continue charging from solar energy.
If production is worse than expected, the calculated energy target may remain higher, or a later permitted charging window may be used.
When PV production remains below 5 W for ten minutes again in the evening, HomeFlux closes the solar day.
Tomorrow's forecast becomes active and a new night plan begins.
The cycle starts again.
25. Summary
HomeFlux does not simply try to make the battery full or empty.
The system tries to achieve three things at the same time:
Now: efficiently handle current consumption and PV surplus.
Soon: reserve enough energy for the next important moment.
Later: preserve enough free battery capacity for energy that, according to the forecast, will become cheaply or freely available later.
On top of this, hard limits such as Minimum SoC, Maximum SoC, battery power limits, and Peak Guard always remain in effect.
This is the basic philosophy behind HomeFlux battery control:
not storing as much energy as possible, but having the right amount of energy available at the right moment.
All reactions