Minor Changes
- #431
a3b6a42Thanks @flixlix! - Default dot speed is back to how it was before 0.4.0-beta.0: the time per dot shrinks linearly with power (with the defaults, 1000 W takes 3.4 s per dot again). The faster speed-based curve from 0.4.0-beta.0, where twice the power looks about twice as fast, is available withflow_rate_model: speed, andflow_rate_model: relativeselects the relative formula. The option replaces the "New Flow Model?" toggle in the editor with a select.use_new_flow_rate_modelstill works as the older alias (falseisrelative);flow_rate_modelwins when both are set. Energy Flow Card Plus always uses the relative formula and ignoresflow_rate_model. - #423
9954453Thanks @flixlix! - Newaccept_negativeoption on individual devices. With it, a negative reading means the device feeds power to the home (e.g. an EV discharging with V2G): the value keeps its minus sign and the dots and direction arrow flip. Without it, nothing changes: the sign is dropped as before. - #370
ef34736Thanks @flixlix! - Flows are now worked out the same way on both cards, in the order the Home Assistant energy dashboard uses, so the same readings always draw the same lines. Flows never go negative and never carry more than a source produces or a sink takes: for example, solar can no longer appear to export more than it generates. When the grid is hidden or during a power outage, solar and battery flows are recalculated instead of losing the part that went to the grid, and Energy Flow Card Plus now shows battery flows during an outage too. With a home entity usingoverride_state, the card still shows its reading, while the lines and the home circle stay balanced.
Power Flow Card Plus readings whose flows change:Readings Before Now Import 200 W, export 600 W, solar 500 W, battery discharging 150 W and charging 200 W Solar → grid 600 W, grid → battery 200 W, battery → grid 0 W, grid → home 0 W Solar → grid 450 W, solar → battery 50 W, grid → battery 150 W, battery → grid 150 W, grid → home 50 W Grid/battery exchange below the larger of the grid and battery zero tolerances Dropped Shown unless below the node's own tolerance Outage with the battery charging Grid → battery from the live grid reading Grid → battery from the generator
Patch Changes
- #448
3832579Thanks @flixlix! - The card no longer draws over overlays on the page, such as a floating navigation bar. Its circles are layered inside the card only. - #370
2634c20Thanks @flixlix! - Fix: the home circle no longer breaks (NaN segments) when nothing is being consumed. Energy Flow Card Plus now honoursinvert_stateon single grid and battery entities, reads non-fossil and grid values from the selected energy period instead of live sensor states, and individual devices with a numericcalculate_flow_rateanimate consistently in every position. - #435
f2000f8Thanks @flixlix! - Flow dots use far less CPU and battery: the browser now moves them on the GPU instead of redrawing the card every frame. Dots also keep their place on the line when their speed changes, including the dots of individual devices and the low-carbon circle, instead of jumping. - #432
9ac9962Thanks @flixlix! - The version line each card writes to the browser console has a new look. - #424
aa5071cThanks @flixlix! - The UI editor no longer shows "Display Zero" switched on for individual devices and the non-fossil node when the option is not set. The card hides those nodes at zero unlessdisplay_zero: trueis set, and the editor now shows the toggle off to match. The non-fossil documentation now gives the default asfalse. - #437
2adc500Thanks @flixlix! - Visual editor: filling in a "Separated" consumption/production field whileentityheld a single sensor no longer saves that sensor split into characters ('0': s,'1': e, …). Configs already saved that way are cleaned the next time the entity's page is edited. - #446
e7f784eThanks @flixlix! - A node whose entity was cleared in the visual editor is no longer drawn. Clearing the field leaves an empty entity (entity: "") in the config, and solar and the grid still showed it with a value of 0; now a node is drawn only with a real entity, as the battery already was. - #348
0eb74c9Thanks @bramkragten! - Resolve field names throughhass.formatEntityNameso they follow Home Assistant's registry-based naming instead offriendly_name. A field'snamenow also accepts a structured name, letting you compose it from the entity, device, area or floor. Requires Home Assistant 2026.4; older versions keep the previous behaviour. - #296
f8bed9eThanks @flixlix! - Fix: individual devices with negative readings are no longer hidden when display_zero is off - #433
a4c4856Thanks @flixlix! - Flow lines meet the circles exactly at every card width: on narrow cards they no longer run into the solar and battery circles or stop short of the grid and home, and they are centred on each circle. Wide cards keep the same curves. - #419
90f01f4Thanks @flixlix! - Docs now state the real flow-rate defaults (no behaviour change): Power Flow Card Plus uses the new flow formula unlessuse_new_flow_rate_model: false, Energy Flow Card Plus always uses the relative formula (souse_new_flow_rate_model,min_expected_powerandmax_expected_powerdon't apply to it), and an unsetcalculate_flow_rateuses the calculated rate. - #368
7cc309dThanks @flixlix! - Built against the same Lit and Home Assistant websocket versions as the current Home Assistant frontend. - #423
ed57230Thanks @flixlix! - The direction arrow of an individual device in the right-bottom slot now points the way its dots move. It used to point up while the dots moved from the home down to the device. - #427
8a0df59Thanks @flixlix! - Fix: an individual device's secondary info now shows text states such as "heating", as grid and home already did. Unavailable or unknown states stay hidden. - #370
35fae9fThanks @flixlix! - Fix: withclickable_entitieson, nodes can be reached with Tab and opened with Enter, which never worked before. Holding a node's value no longer runs its hold action twice (atogglehold action used to cancel itself out). - #426
7dba4d6Thanks @flixlix! - Cards load again on Google Cast displays (Chromecast, Nest Hub) and other older browsers and wall-panel webviews that Home Assistant itself still supports (Chromium 67 and newer). Before, the cards shipped optional chaining (?.) and nullish coalescing (??), which those browsers cannot read, so the card stayed empty or showed "Configuration Error". The cards are about 5% larger as a result. - #430
24ecd05Thanks @flixlix! - Individual device dots and the grid → battery dot no longer run backwards on older Chromium-based browsers, such as Amazon Fire tablets. The cards also no longer stay blank on browsers older than Chrome 92. Nothing changes on current browsers. - #384
71c1005Thanks @flixlix! - With the new flow rate model, dot speed now grows in step with power: twice the power looks about twice as fast. Before, the time per dot shrank in step with power, so most of the range crawled and only values close tomax_expected_powerlooked fast.min_expected_powerstill gives the slowest dots (max_flow_rate) andmax_expected_powerthe fastest (min_flow_rate). In between, dots now move faster than before: with the defaults, a flow at half ofmax_expected_powertakes 1.3 s per dot instead of 3.4 s. Values belowmin_expected_powerno longer move slower thanmax_flow_rate. The old flow rate model (use_new_flow_rate_model: false) is unchanged.
calculate_flow_rateset to a number now does what the documentation says: a line moves one dot every that many seconds. Before, the number was only used when no flow rate could be calculated. - #382
002654fThanks @flixlix! - Fix:unit_of_measurement,unit_white_spaceanddecimalsset on grid, solar or battery are now applied to their values. A custom unit shows the reading as is, without converting it to k/M, so the card can show non-electrical flows such as water in L/min.
The grid, solar and battery pages of the visual editor now offer these three fields. - #368
7cc309dThanks @flixlix! - The non-fossil node now appears based on the grid's actual non-fossil share instead of a miscalculated value. - #381
f8dbfb4Thanks @flixlix! - Fix: the non-fossil node is now hidden while grid import is within the grid'sdisplay_zero_tolerance, the same as when the grid reads exactly 0 (unlessfossil_fuel_percentage.display_zerois on). - #436
a2bf4c9Thanks @flixlix! - The non-fossil node is labelled "Low-carbon" in your language, like Home Assistant's energy distribution card. Without anameits label used to be empty. - #428
8ad6715Thanks @flixlix! - On right-to-left Home Assistant languages (Arabic, Hebrew, Persian, …) the flow lines connect the circles again. Before, the circles swapped sides while the lines did not, so grid and home ended up at the wrong ends of their lines. The card layout now stays the same as in left-to-right languages; text inside the circles still reads right to left. - #379
ef910ccThanks @flixlix! - Cards no longer recalculate and redraw when an entity they don't show changes in Home Assistant, which lowers CPU and battery use on dashboards, especially on phones and tablets. Numbers are formatted with reused formatters, and the flow cards no longer measure their width on every update. - #383
a9f14aaThanks @flixlix! - Individual devices are now sorted by their value, largest first, whensort_individual_devicesis not set, as the documentation has always said. Until now an unset option left them in config order. Devices are compared in watts (or watt-hours), so a3.8 kWcharger now ranks above a20 Wlight.
If you have not set this option, your devices may move to a different slot, and on a card that shows only some of them, a different set may be visible. To keep your configured order, addsort_individual_devices: falseto the card. - #368
7cc309dThanks @flixlix! - Secondary-info templates for individual devices and the non-fossil node are now unsubscribed when the card is removed, and cards with more than four individual devices show the correct template for each one. - #425
7f71466Thanks @flixlix! - Fix: only W and Wh units with an SI prefix are scaled. A water meter in m³ now shows 348.9 m³ instead of 348,900,000 m³, and a sensor in mW is read as milliwatts instead of megawatts. Aunit_of_measurementofkW,MW,kWhorMWhon a node or individual device now shows the reading in that unit (1.5 kW instead of 1,500 kW); any other unit still shows the value as read from the entity. - #441
08b3465Thanks @flixlix! - The card follows its width again after Home Assistant takes it out and puts it back while a dashboard loads; until a sensor changed, it kept the width it had while it was out.