Power Flow Card Plus šŸš€

good idea ā€¦

Congrats to this wonderful work. It doesnā€™t happen often to get a such complete solution. I once did a similar overview before I switched from openhab to home-assistant. This one was pure JS. One thing I made was to not hide the unused paths completely but to set them to 30% opacity. My opinion is that it looks nicer this way. Could you do this one on a further release or do you accept pull requests on github?

2 Likes

Thank you very much for the kind words, really means a lot!
I might add this functionality in the future, but I would also definitely appreciate any submitted PRs.
I think this could have some real impact if the opacity was configurable, just a thoughtā€¦

1 Like

I have a serious performance problem with this card. I first thought itā€™s because of the use of ApexChart-Card, but it still exists after removing all ApexChart-Cards.
So I tried to investigate the problem and measured the JavaScript-Heap-Space with and without the use of the Power Flow Plus Card.
Chrome freezes completely after a while, same problem with Firefox.

With Power Flow Card Plus:


Without Power Flow Card Plus:


I guess it has to do with the following violation issue because it doesnā€™t exists without the use of Power Flow Card Plus:

Screenshot 2023-06-15 090810

My card configuration:

type: custom:power-flow-card-plus
title: energie | flow
entities:
  grid:
    entity: sensor.evcc_grid_power
    display_state: one_way
    display_zero_tolerance: 25
  solar:
    entity: sensor.evcc_pv_power
    display_zero_state: true
  battery:
    entity: sensor.evcc_battery_powerac
    state_of_charge: sensor.evcc_battery_soc
    display_state: one_way
    display_zero_tolerance: 25
  individual1:
    entity: sensor.go_echarger_XXXXXX_nrg_12
    display_zero: true
    name: i3s
    secondary_info:
      entity: sensor.i3s_120_remaining_battery_percent
      unit_of_measurement: '%'
clickable_entities: true
use_new_flow_rate_model: true
w_decimals: 0
kw_decimals: 1
max_expected_power: 6000
min_expected_power: 1
watt_threshold: 1000
card_mod:
  style:
    ha-icon:not(.small):
      $: |
        ha-svg-icon {
          width: 32px;
          height: 32px;
        }
    style: |
      .label, span.secondary-info {
        font-size: 13px !important;
      }
      .circle {
        border-width: 4px !important;
        font-size: 13px;
        line-height: 13px;
      }
      .home .circle {
        border-width: 0 !important;
      }
      path {
        stroke-width: 2 !important;
      }

What hardware do you have?
I am not experiencing any slowdowns with the card compared to without it.
Do you have Layout Card or any similar cards installed?

I guess I found it myself. This code I use with Card-Mod seems to be the problem:

1 Like

Hey, sent you a pull request. If you like it, these are just my 2 cents :slight_smile:

1 Like

Iā€™ve discovered the integration recently and i like it very much. However thereā€™s one thing I do not know how to handle.

My battery is a DC battery, thus it is loaded by the solar collector via the inverter. So the display is not really correct and the energy flow gives somewhat wrong values. Iā€™d be great, if the battery is directly connected to the solar symbol as when charging, the power ist going from solar directly to the battery. Same thing when the battery is discharging. It then would ā€œflowā€ from the battery to ā€œsolarā€ (OK, not really correct ;-)) and then to grid or home. Espacially when the battery is providing the power, the discharging values are not correct to the consumer consumption as the inverter needs to transform from DC to AC.

Maybe it will be possible to show the real values and the real energy flow.

Me too have a DC battery - my inverter is a Kostal plenticore and this one delivers all values about incoming and outgoing power from the battery (in W because of DC). Are your incoming and outgoing values calculated or do you have a sensor for them? If you have a sensor, did you use the ā€˜Display zero toleranceā€™ field in order to filter small amounts of energy ā€œmovementsā€? One of the next things I want to make @flixlixlix is to not only hide the small values with ā€˜display zero toleranceā€™ but also to not show these movements in the paths (lines) [if itā€™s ok for you I will send another PR]. Sometimes they blink up because the battery is charged with 1 Watt for 1 sec :slight_smile:

For the sake of completeness [just translate my german sensor names]

type: custom:power-flow-card-plus
entities:
  battery:
    entity: sensor.lade_entladeleistung_batterie
    state_of_charge: sensor.batterie
    invert_state: true
    state_of_charge_unit_white_space: false
    name: Batterie
    display_state: one_way_no_zero
    color:
      consumption:
        - 0
        - 30
        - 255
      production:
        - 0
        - 51
        - 255
    display_zero_tolerance: 50
  grid:
    entity: sensor.verbrauch_einspeisung
    name: Netz
    color_circle: true
    display_state: one_way_no_zero
    invert_state: true
    color:
      consumption:
        - 255
        - 0
        - 0
      production:
        - 49
        - 184
        - 0
    display_zero_tolerance: 50
  solar:
    entity: sensor.produktion_pv
    display_zero_state: true
    color_icon: false
    use_metadata: false
    display_zero_tolerance: 20
  home:
    entity: sensor.haus_verbrauch
    name: Haus
    subtract_individual: true
    override_state: true
    use_metadata: false
clickable_entities: true
display_zero_lines: true
use_new_flow_rate_model: true
w_decimals: 0
kw_decimals: 1
min_flow_rate: 1
max_flow_rate: 5
max_expected_power: 12000
min_expected_power: 0.01
watt_threshold: 1000
transparency_zero_lines: 70
greyout_zero_lines: true

I get negative Values for Discharging and positive for charging. itā€™s the entity sensor.lade_entlaseleistung_batterie

Yes, I would even consider this a bug, since the display zero tolerance should really set the state back to 0 if it is not surpassed

What is this sheer beauty you did in the last panel? which cards are you using?

Nice card. Since this is a suggestions topic, my thoughts as mentioned earlier would be to have a few more individuals such as below.

image

10 Likes

I am using the Power Flow Card Plus for a live dashboard and it works great, really love this card!
image

Now, something I miss in the original Energy Dashboard from home assistant (below) is the actual split between Solar and Grid in the Home icon. The colors are there in the circle but I want the values displayed. I tried to do this in Power Flow Card Plus but I have no idea how. Is anyone else looking at this?

image

Granted, I only literally started using this card today, but if you edit the card and scroll to House, you should be able to use Secondary to at least get one of either grid/solar included in the Home icon

Something like this maybe?

First off - this card is AWESOME!

Second thing - does anyone have any suggestions for why I sometimes it shows Grid to Battery charging in the card, even though my setup ONLY allows this when Tesla issues a Severe Weather Alert AND my PowerWalls are not at 100%?

Hereā€™s my configuration:

type: custom:power-flow-card-plus
entities:
  battery:
    state_of_charge: sensor.powerwall_charge_actual
    entity: sensor.powerwall_battery_now
    display_state: one_way_no_zero
    display_zero_tolerance: 20
  grid:
    entity:
      '0': s
      '1': e
      '2': 'n'
      '3': s
      '4': o
      '5': r
      '6': .
      '7': p
      '8': o
      '9': w
      '10': e
      '11': r
      '12': w
      '13': a
      '14': l
      '15': l
      '16': _
      '17': s
      '18': i
      '19': t
      '20': e
      '21': _
      '22': 'n'
      '23': o
      '24': w
      production: sensor.tesla_card_grid_feed_in
      consumption: sensor.tesla_card_grid_consumption
    power_outage:
      entity: binary_sensor.grid_status
      state_alert: 'off'
    secondary_info:
      template: '{{ states(''sensor.site_energy_usage_daily'') | round(1) }} kWh'
    display_state: one_way_no_zero
  solar:
    entity: sensor.powerwall_solar_now
    display_zero_state: true
    use_metadata: false
    display_zero_tolerance: 10
    secondary_info:
      template: '{{ states(''sensor.solar_production_daily'') | round(1) }} kWh'
  home:
    entity: sensor.powerwall_load_now
    secondary_info:
      template: '{{ states(''sensor.load_energy_import_daily'') | round(1) }} kWh'
  individual1:
    entity: sensor.emporiavue2_total_fcsp_power
    icon: mdi:car-pickup
    secondary_info:
      entity: sensor.dayman_battery_level
      unit_of_measurement: '%'
    name: Bluey
  individual2:
    entity: sensor.direct_wire_indoor_outdoor_smart_switch_electric_production_w
    secondary_info:
      entity: sensor.dayman_battery_level
      unit_of_measurement: '%'
    icon: mdi:car-sports
    name: DayMan
    color_icon: false
    calculate_flow_rate: false
    show_direction: false
    inverted_animation: false
    color_value: false
  fossil_fuel_percentage:
    icon: mdi:home-export-outline
    display_zero_state: true
    display_zero: true
    name: Export
    state_type: power
    secondary_info:
      template: '{{ states(''sensor.solar_energy_exported_to_dte'') | round(1) }} kWh'
    display_zero_tolerance: 0
    unit_white_space: true
    entity: sensor.tesla_card_grid_feed_in
clickable_entities: true
display_zero_lines:
  mode: hide
  transparency: 50
  grey_color:
    - 189
    - 189
    - 189
use_new_flow_rate_model: true
w_decimals: 0
kw_decimals: 1
min_flow_rate: 0.75
max_flow_rate: 6
max_expected_power: 2000
min_expected_power: 0.01
watt_threshold: 1000
transparency_zero_lines: 0

Iā€™m moving to this from a Tesla Style Card, so Iā€™ve got a view side-by-side and when Power Flow Card Plus shows Grid to Battery, the Tesla Style Card does not.

The Grid entities were set separately for consumption and production in the UI, so itā€™s odd to see what that did in the configuration. If I set it to just the combined entity to sensor.powerwall_site_now, it cleans up the configuration, so Iā€™ll have to see which option looks more accurate.

I know Iā€™m using the card ā€œwrongā€ by having Energy and Power on the same card, but I use this in multiple places like a Chromecast projected dashboard where I only have space for one card, so I like being able to see how much power Iā€™m using now and how much energy Iā€™ve consumed for the day. Also, Iā€™m using the Fossil Fuel bubble to show my total export to the grid for the day, which also was not how it was designed.

For the false Grid to Battery readings, does anyone have any ideas or suggestions?

Hello
It is a phantastic Work, thanks.
But i didnā€™t understand the values of Home and individuals
First i thaught, the indivials are a Part of Home, but sometimes i find Like this

Home is Not defined by myself.
What is wrong?
Thanks

Sorry for the answering so lateā€¦
The problem I have is, that when I use the inverter AC power as primary value (showing me the real AC consumption) the values for grid and home sum up almost correct, however, if the battery gets charged with high values, thus the AC value for home is very low, there is no flow from solar to home.

I guess it would be nice, if the card could somehow reflect the real situation, as there is the solar, battery, inverter home and grid (a bit like it is with the display for charging your car). Flows would then be from solar to inverter, between battery and inverter and from inverter to home and grid.

At the moment, if on battery power, the flow is from battery to home, which is not correct and not showing the correct AC values. Having an inverter in between, it would be easy to see the loss caused by the power transformation between DC and AC.

I donā€™t want to criticise the nice card, just make a recommendation.

Hi, thanks for this wonderfull card!

But i have one little problemā€¦ i canā€™t install it :wink: i canā€™t find it when searching in hacsā€¦ been able to install other reps through hacs thoughā€¦ suggestions?

EDIT: problem solvedā€¦ dumb me was not searcing in cardsā€¦

Has there been a breaking change on this? Iā€™ve just tried to install via HACS and I get the error message ā€œNOT LOADEDā€ surrounding the Power Flow Card Plus entry in the frontend tabā€¦ Iā€™m on HACS 1.32.1, HA 2023.07.0ā€¦ Feeling like Iā€™m missing something obvious! Have reloaded pageā€¦ fully restarted HA. No joy.
image