Skip to content
View in the app

A better way to browse. Learn more.

Power Forum - Renewable Energy Discussion

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Home Assistant Sunsynk Power Flow Card and Dashboard

Featured Replies

  • Author
3 hours ago, Vaughanza said:

Hi Slipx, When you say the name has change? Which name has changed would that be ?

Thanks

If any of your sensor names change i.e. sensor.battery_charge changes to sensor.battery_charge_1

  • 2 weeks later...
  • Replies 592
  • Views 130.8k
  • Created
  • Last Reply

Top Posters In This Topic

Most Popular Posts

  • thank you @slipx, I've been using the power flow card for a while now but didn't know about the animations. now thanks your examples I've implemented the animations. I use a generator on my AUX port

  • I've made  a small update to the Dashboard. The load shedding card shows remaining time based on battery SOC and battery power. You will need to create some template sensors as discussed here and prov

  • Here's a slight contribution to the goodness on this thread which lives on my main HA screen: type: custom:bar-card entities: - entity: sensor.load_shedding_area_eskde_4_sandownext10cityofj

Posted Images

  • Author

v3.10.0


🚀 Exciting New Features

  • feat: additional `essential_loads` will now display the sensors unit of measurement. This means you can use them to display other sensor data like daily energy or temperature. This only works when `auto_scale: false`. When `auto_scale: true` the card expects a sensor that contains the power of your essential load. Closes #121
  •  image.png.2e620d763355400da1dc6157d51b0231.png

 

  • feat: battery energy can be specified as a numeric value or sensor i.e. `sensor.sunsynk_battery_capacity_energy` Closes #122 
  • locale: update French translation Closes #122 

🐛 Patches & Bug Fixes

  • fix: three phase grid power not displayed when sensor state is 0 and `auto_scale:false`  Closes #123 
  • fix: various three phase fixes (animation, energy costs, grid colour when exporting)

**Full Changelog**: https://github.com/slipx06/sunsynk-power-flow-card/compare/v3.9.0...v3.10.0

Edited by slipx

  • Author

v3.11.0

🚀 Exciting New Features

- feat: add support for Solis inverter by @Pho3niX90 in https://github.com/slipx06/sunsynk-power-flow-card/pull/124

**Full Changelog**: https://github.com/slipx06/sunsynk-power-flow-card/compare/v3.10.0...v3.11.0

v3.12.0
🚀 Exciting New Features

- feat: new option to hide the grid for off grid systems. `show_grid`

🐛 Patches & Bug Fixes

- fix: moves the essential_name from grid to the load card section. Please update your configuration if you are using a custom name

**Full Changelog**: https://github.com/slipx06/sunsynk-power-flow-card/compare/v3.11.1...v3.12.0

  • Author

v3.13.0

🚀 Exciting New Features

- feat: add inverter images based on model. Set `modern: false` to enable

image.thumb.png.b8e217ba3a69cb191626ed0b8e68d044.png

🐛 Patches & Bug Fixes

- fix: refactor and optimize code
- fix: position of ac temp when mppt is set to four on full card

### Other Changes
* Feature/refactoring by @Pho3niX90 in https://github.com/slipx06/sunsynk-power-flow-card/pull/131


**Full Changelog**: https://github.com/slipx06/sunsynk-power-flow-card/compare/v3.12.0...v3.13.0

On 2023/11/12 at 8:46 PM, slipx said:

v3.13.0

🚀 Exciting New Features

- feat: add inverter images based on model. Set `modern: false` to enable

I don't see the modern:false line in the code? Am I missing something?

15 hours ago, Muttley said:

See last line:

image.png.3d70b2a33c4e197e9805c0cbccc50695.png

Aah, changed it but no image of my inverter shows?

 

Mine looks like this

 

type: custom:sunsynk-power-flow-card
cardstyle: full
show_solar: true
inverter:
  model: solis
  modern: true
battery:
  energy: 54
  shutdown_soc: 20
  show_daily: true
solar:
  show_daily: true
  mppts: 2
load:
  show_daily: true
grid:
  show_daily_buy: true
  show_daily_sell: false
  show_nonessential: false
entities:

 

 

Edited by cp69

3 hours ago, cp69 said:

Aah, changed it but no image of my inverter shows?

 

Mine looks like this

 

type: custom:sunsynk-power-flow-card
cardstyle: full
show_solar: true
inverter:
  model: solis
  modern: true
battery:
  energy: 54
  shutdown_soc: 20
  show_daily: true
solar:
  show_daily: true
  mppts: 2
load:
  show_daily: true
grid:
  show_daily_buy: true
  show_daily_sell: false
  show_nonessential: false
entities:

 

 

Perhaps @slipx can help here...

  • Author

If you want to display an image of your inverter you need to set both the model and modern attributes. The modern attribute must be set to false. The image will change based on the model specified i.e. lux, goodwe, solis etc Remember this also affects the expected inverter status codes and messages displayed based on those codes.

inverter:
  modern: false
  colour: grey
  three_phase: true
  auto_scale: true
  model: lux

 

Edited by slipx

Thanks got it all working now. Last thing I need help with is the mapping of one of the entities. 

Which entity corresponds to the one I have circled in the image? It's showing the wrong sensor data but I can't figure out which entity it is?

Screenshot_2023-11-15-07-07-31-201_io.homeassistant.companion.android-edit.jpg

14 hours ago, Muttley said:

Hey @slipx

I hope you're well :)

I was wondering if it would be possible to add a slider on your inverter control card to adjust the Battery Charge Amps:

MicrosoftTeams-image(47).thumb.png.758b7d0f176216fef777611909416c3f.png

Thanks as always!

What is the size of your fuse isolator on the battery ?

 

  • Author
On 2023/11/17 at 5:58 PM, Muttley said:

Hey @slipx

I hope you're well :)

I was wondering if it would be possible to add a slider on your inverter control card to adjust the Battery Charge Amps:

MicrosoftTeams-image(47).thumb.png.758b7d0f176216fef777611909416c3f.png

Thanks as always!

Hi. Are you referring to this one?

image.thumb.png.9c18f55958284fb2f975e241fb87369e.png

 

  • Author

OK you could add like so

type: vertical-stack
cards:
  - type: tile
    entity: switch.sunsynk_toggle_system_timer
    icon: mdi:timer-outline
    vertical: true
  - type: horizontal-stack
    cards:
      - type: entities
        entities:
          - entity: select.sunsynk_energy_pattern
            name: Energy Pattern
        state_color: true
      - type: entities
        entities:
          - entity: select.sunsynk_work_mode
            name: Work Mode
        state_color: true
  - type: entities
    entities:
      - entity: switch.sunsynk_system_mode_grid_charge_time1
        type: custom:multiple-entity-row
        name: Program 1
        toggle: true
        state_header: Charge
        state_color: true
        icon: mdi:timer
        entities:
          - entity: sensor.sunsynk_time_slot_1
            name: From
          - entity: sensor.sunsynk_time_slot_2
            name: To
          - entity: number.sunsynk_system_mode_soc_time1
            name: SOC
            format: precision0
      - entity: switch.sunsynk_system_mode_grid_charge_time2
        type: custom:multiple-entity-row
        name: Program 2
        toggle: true
        state_header: Charge
        state_color: true
        icon: mdi:timer
        entities:
          - entity: sensor.sunsynk_time_slot_2
            name: From
          - entity: sensor.sunsynk_time_slot_3
            name: To
          - entity: number.sunsynk_system_mode_soc_time2
            name: SOC
            format: precision0
      - entity: switch.sunsynk_system_mode_grid_charge_time3
        type: custom:multiple-entity-row
        name: Program 3
        toggle: true
        state_header: Charge
        state_color: true
        icon: mdi:timer
        entities:
          - entity: sensor.sunsynk_time_slot_3
            name: From
          - entity: sensor.sunsynk_time_slot_4
            name: To
          - entity: number.sunsynk_system_mode_soc_time3
            name: SOC
            format: precision0
      - entity: switch.sunsynk_system_mode_grid_charge_time4
        type: custom:multiple-entity-row
        name: Program 4
        toggle: true
        state_header: Charge
        state_color: true
        icon: mdi:timer
        entities:
          - entity: sensor.sunsynk_time_slot_4
            name: From
          - entity: sensor.sunsynk_time_slot_5
            name: To
          - entity: number.sunsynk_system_mode_soc_time4
            name: SOC
            format: precision0
      - entity: switch.sunsynk_system_mode_grid_charge_time5
        type: custom:multiple-entity-row
        name: Program 5
        toggle: true
        state_header: Charge
        state_color: true
        icon: mdi:timer
        entities:
          - entity: sensor.sunsynk_time_slot_5
            name: From
          - entity: sensor.sunsynk_time_slot_6
            name: To
          - entity: number.sunsynk_system_mode_soc_time5
            name: SOC
            format: precision0
      - entity: switch.sunsynk_system_mode_grid_charge_time6
        type: custom:multiple-entity-row
        name: Program 6
        toggle: true
        state_header: Charge
        state_color: true
        icon: mdi:timer
        entities:
          - entity: sensor.sunsynk_time_slot_6
            name: From
          - entity: sensor.sunsynk_time_slot_1
            name: To
          - entity: number.sunsynk_system_mode_soc_time6
            name: SOC
            format: precision0
    state_color: true
  - type: entities
    entities:
      - type: custom:slider-entity-row
        entity: number.sunsynk_battery_max_charge_current
        name: Charge Amps
        hide_state: false
        grow: true
      - type: custom:slider-entity-row
        entity: number.sunsynk_battery_max_discharge_current
        name: Discharge Amps
        hide_state: false
        grow: true
    title: Battery

 

image.thumb.png.0d77b7538aedd89283cf2bba20550b49.png

15 minutes ago, slipx said:

OK you could add like so

type: vertical-stack
cards:
  - type: tile
    entity: switch.sunsynk_toggle_system_timer
    icon: mdi:timer-outline
    vertical: true
  - type: horizontal-stack
    cards:
      - type: entities
        entities:
          - entity: select.sunsynk_energy_pattern
            name: Energy Pattern
        state_color: true
      - type: entities
        entities:
          - entity: select.sunsynk_work_mode
            name: Work Mode
        state_color: true
  - type: entities
    entities:
      - entity: switch.sunsynk_system_mode_grid_charge_time1
        type: custom:multiple-entity-row
        name: Program 1
        toggle: true
        state_header: Charge
        state_color: true
        icon: mdi:timer
        entities:
          - entity: sensor.sunsynk_time_slot_1
            name: From
          - entity: sensor.sunsynk_time_slot_2
            name: To
          - entity: number.sunsynk_system_mode_soc_time1
            name: SOC
            format: precision0
      - entity: switch.sunsynk_system_mode_grid_charge_time2
        type: custom:multiple-entity-row
        name: Program 2
        toggle: true
        state_header: Charge
        state_color: true
        icon: mdi:timer
        entities:
          - entity: sensor.sunsynk_time_slot_2
            name: From
          - entity: sensor.sunsynk_time_slot_3
            name: To
          - entity: number.sunsynk_system_mode_soc_time2
            name: SOC
            format: precision0
      - entity: switch.sunsynk_system_mode_grid_charge_time3
        type: custom:multiple-entity-row
        name: Program 3
        toggle: true
        state_header: Charge
        state_color: true
        icon: mdi:timer
        entities:
          - entity: sensor.sunsynk_time_slot_3
            name: From
          - entity: sensor.sunsynk_time_slot_4
            name: To
          - entity: number.sunsynk_system_mode_soc_time3
            name: SOC
            format: precision0
      - entity: switch.sunsynk_system_mode_grid_charge_time4
        type: custom:multiple-entity-row
        name: Program 4
        toggle: true
        state_header: Charge
        state_color: true
        icon: mdi:timer
        entities:
          - entity: sensor.sunsynk_time_slot_4
            name: From
          - entity: sensor.sunsynk_time_slot_5
            name: To
          - entity: number.sunsynk_system_mode_soc_time4
            name: SOC
            format: precision0
      - entity: switch.sunsynk_system_mode_grid_charge_time5
        type: custom:multiple-entity-row
        name: Program 5
        toggle: true
        state_header: Charge
        state_color: true
        icon: mdi:timer
        entities:
          - entity: sensor.sunsynk_time_slot_5
            name: From
          - entity: sensor.sunsynk_time_slot_6
            name: To
          - entity: number.sunsynk_system_mode_soc_time5
            name: SOC
            format: precision0
      - entity: switch.sunsynk_system_mode_grid_charge_time6
        type: custom:multiple-entity-row
        name: Program 6
        toggle: true
        state_header: Charge
        state_color: true
        icon: mdi:timer
        entities:
          - entity: sensor.sunsynk_time_slot_6
            name: From
          - entity: sensor.sunsynk_time_slot_1
            name: To
          - entity: number.sunsynk_system_mode_soc_time6
            name: SOC
            format: precision0
    state_color: true
  - type: entities
    entities:
      - type: custom:slider-entity-row
        entity: number.sunsynk_battery_max_charge_current
        name: Charge Amps
        hide_state: false
        grow: true
      - type: custom:slider-entity-row
        entity: number.sunsynk_battery_max_discharge_current
        name: Discharge Amps
        hide_state: false
        grow: true
    title: Battery

 

image.thumb.png.0d77b7538aedd89283cf2bba20550b49.png

Thanks so much - just getting stuck on the creation of the new entities/template sensor:

image.thumb.png.df5ee2e354c8a5bbddf3d26106c029e9.png

Edited by Muttley
extra info added

Hi all.

Thank you @slipx for your awesome work on this flow card. And thanks for the constant updates!!!

I've been snooping here a while and learning a lot from all you guys. I thought I'd share how my card is looking just to add to the "library" of images.

image.png.1c07cb099c2d5d518fad33dd5f8342c7.png

 

As you can tell, I like brighter colors, and @slipx makes that dead easy to configure.

Also, since I prefer the "lite" layout, but it lacks the non_essential load display, you'll notice I've done a 'jippo' and used two essential loads, but I mapped the non-essential and essential to the spots above and below the home, and made sure I have total load on that branch of output from the inverter.  #worksforme. I know this layout is technically 'wrong', but I think it works just fine for a simple logical view of what's happening. 

Thank again for an awesome job @slipx .

Right now, I'm only getting updates every 5 minutes using the integration from @Gary Waterworth. This is fine for monitoring and supporting some automations about when to run my geyser. But I'll be looking into the local direct integration from @kellerza using the RS485 as soon as I get a chance.

Edited by Patrick OReilly
Corrected the details about my current integration from Gary Waterworth.

  • Author
12 hours ago, Muttley said:

Thanks so much - just getting stuck on the creation of the new entities/template sensor:

image.thumb.png.df5ee2e354c8a5bbddf3d26106c029e9.png

Those sensors come from the registers below. BTW I made a bunch of updates to my ESPHome config. You can grab the latest version here

 

  - platform: modbus_controller         # 210 Battery Max Charge current
    use_write_multiple: true
    modbus_controller_id: inverter
    id: inverter_esphome_bat_max_charge_current
    name: "${friendly_name} Battery Max Charge current"
    unit_of_measurement: "A"
    address: 210
    min_value: 0
    max_value: 185
    step: 5
    value_type: U_WORD  

  - platform: modbus_controller         # 211 Battery Max Discharge current
    use_write_multiple: true
    modbus_controller_id: inverter
    id: inverter_esphome_bat_max_discharge_current
    name: "${friendly_name} Battery Max Discharge current"
    unit_of_measurement: "A"
    address: 211
    min_value: 0
    max_value: 185
    step: 5
    value_type: U_WORD  

 

6 hours ago, slipx said:

Those sensors come from the registers below. BTW I made a bunch of updates to my ESPHome config. You can grab the latest version here

 

  - platform: modbus_controller         # 210 Battery Max Charge current
    use_write_multiple: true
    modbus_controller_id: inverter
    id: inverter_esphome_bat_max_charge_current
    name: "${friendly_name} Battery Max Charge current"
    unit_of_measurement: "A"
    address: 210
    min_value: 0
    max_value: 185
    step: 5
    value_type: U_WORD  

  - platform: modbus_controller         # 211 Battery Max Discharge current
    use_write_multiple: true
    modbus_controller_id: inverter
    id: inverter_esphome_bat_max_discharge_current
    name: "${friendly_name} Battery Max Discharge current"
    unit_of_measurement: "A"
    address: 211
    min_value: 0
    max_value: 185
    step: 5
    value_type: U_WORD  

 

Thank you so much as always - I really appreciate it!

@spotity Did you manage to get the mappings? I do know that the mappings for Solar Assistant (SA) can be found on Github at https://github.com/slipx06/sunsynk-power-flow-card/blob/master/docs/examples/sunsynk.rst. What I'm battling with is that the totals sent via MQTT from SA is weekly, as it resets on a Monday. How do you get daily totals, as an example below. It rolls up into 7 days (Monday to Sunday), hence it is not a daily total. I tried Utility meters on example measured in W, not kW. The results are completely incorrect. What I really need to see, back in the Sunsync card is the same as the totals from SA as per last screenshot. Any ideas?

day_load_energy_84: sensor.sunsynk_day_load_energy

 

 

image.png

image.png.b00f7997b91868cb19d374ac1772f787.png

 

Edited by Deondup
Additional info

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.