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.

slipx

Members
  • Joined

  • Last visited

Everything posted by slipx

  1. Really strange. Not sure why the ESP data is incorrect. Is it just the PV1 and PV2 or are there other sensors that are wrong? Does you ESP32 have a good power source.
  2. You can also check the values reported on the inverter display to confirm
  3. You should also check your PV1 and PV2 sensors. Do they have a unit of measurement defined? It looks like they are providing values in kW but HA is seeing this as W.
  4. If you are using 3 phase make sure you have defined these grid_ct_power_total: Optional For three phase systems. The card will automatically calculate this based on (Grid CT L1 power + Grid CT L2 power + Grid CT L3 power) You can optionally provide your own sensor for total grid power. (W) grid_ct_power_172: Required sensor.sunsynk_grid_ct_power Grid CT L1 power (W) grid_ct_power_L2: Optional none Grid CT L2 power (W) grid_ct_power_L3: Optional none Grid CT L3 power (W)
  5. Hi. Energy (kWh) is not the same as Power (W). The panels are displaying your instantaneous Power usage. You need to check the sensor that you are providing for grid_ct_power_172. Also there seems to be a problem as you are consuming 652W for your load but only producing 964W of solar and still managing to export to the grid?
  6. HI. At the bottom of this page https://slipx06.github.io/sunsynk-power-flow-card/configuration.html
  7. There are two approaches. Using a set interval or manual method using a toggle #Set the interval to sync your inverter time with HA or comment out to disable interval: - interval: 3600s then: - lambda: |- esphome::modbus_controller::ModbusController *controller = id(inverter); time_t now = ::time(nullptr); struct tm *time_info = ::localtime(&now); int seconds = time_info->tm_sec; int minutes = time_info->tm_min; int hour = time_info->tm_hour; int day = time_info->tm_mday; int month = time_info->tm_mon + 1; int year = time_info->tm_year; year = year + 1900; int year1 = year - 2000; uint16_t reg22_value = (year1 << 8) | month; uint16_t reg23_value = (day << 8) | hour; uint16_t reg24_value = (minutes << 8) | seconds; if (year != 1970) { std::vector<uint16_t> rtc_data = {reg22_value, reg23_value, reg24_value}; esphome::modbus_controller::ModbusCommandItem set_rtc_command = esphome::modbus_controller::ModbusCommandItem::create_write_multiple_command(controller, 22, rtc_data.size(), rtc_data); controller->queue_command(set_rtc_command); ESP_LOGI("Time Sync", "Seconds: %d, Minutes: %d, Hour: %d, Day: %d, Month: %d, Year: %d", seconds, minutes, hour, day, month, year); } ############################################### BINARY SENSORS ######################################## binary_sensor: - platform: homeassistant # Manual Time sync. Create an input_boolean sensor in HA entity_id: input_boolean.sync_inverter_time name: "Sync Time" id: sync_time on_press: then: - lambda: |- esphome::modbus_controller::ModbusController *controller = id(inverter); time_t now = ::time(nullptr); struct tm *time_info = ::localtime(&now); int seconds = time_info->tm_sec; int minutes = time_info->tm_min; int hour = time_info->tm_hour; int day = time_info->tm_mday; int month = time_info->tm_mon + 1; int year = time_info->tm_year; year = year + 1900; int year1 = year - 2000; uint16_t reg22_value = (year1 << 8) | month; uint16_t reg23_value = (day << 8) | hour; uint16_t reg24_value = (minutes << 8) | seconds; if (year != 1970) { std::vector<uint16_t> rtc_data = {reg22_value, reg23_value, reg24_value}; esphome::modbus_controller::ModbusCommandItem set_rtc_command = esphome::modbus_controller::ModbusCommandItem::create_write_multiple_command(controller, 22, rtc_data.size(), rtc_data); controller->queue_command(set_rtc_command); ESP_LOGI("Time Sync", "Seconds: %d, Minutes: %d, Hour: %d, Day: %d, Month: %d, Year: %d", seconds, minutes, hour, day, month, year); }
  8. Not that I know. That’s why I created the daily energy sensors in the esphome config. I use those instead.
  9. I'm mostly off grid and on pre-paid. I top up with R30 every month. My long term energy totals: Home Usage: 7011.5 kWh Grid Usage: 132 kWh (1.8%)
  10. You might be able to implement some of this using the Plotly Graph Card.
  11. @RoganDawes I forgot that I had already added this (time to update the docs). If you define the additional sensor you want displayed using the `aux_load1_extra:` entity it will be displayed above the aux icon.
  12. @Deondup you need to define `max_power:` in your solar section. By default it is set to 8000 which is why you see 38% max_power: Optional 8000 Maximum power draw to calculate animation speed. This value is also used to calculate the solar efficiency for the total PV power and should equal the total size of your PV array.
  13. @Nell sure type: vertical-stack cards: - type: custom:mushroom-title-card title: Gas - type: entities entities: - type: custom:bar-card entity: sensor.esp32_bluetooth_proxy_4a27e4_gas_level name: Level entity_row: true severity: - color: Red from: 0 to: 20 - color: Orange from: 21 to: 50 - color: null from: 51 to: 100 - type: custom:bar-card entity: sensor.esp32_bluetooth_proxy_4a27e4_gas_battery name: Battery entity_row: true severity: - color: Red from: 0 to: 20 - color: Orange from: 21 to: 50 - color: null from: 51 to: 100 - entity: sensor.esp32_bluetooth_proxy_4a27e4_gas_distance name: Distance secondary_info: last-updated - entity: sensor.esp32_bluetooth_proxy_4a27e4_gas_temperature name: Temperature secondary_info: last-updated - type: custom:plotly-graph entities: - entity: sensor.esp32_bluetooth_proxy_4a27e4_gas_level statistics: mean period: day type: bar texttemplate: '%{y:.1f}%' name: '% Daily Usage' filters: - delta - map_y: '-y' - entity: sensor.esp32_bluetooth_proxy_4a27e4_gas_level statistics: mean period: day line: width: 2 shape: spline name: | $fn ({ ys,meta }) => "Level " + "(" + (ys[ys.length - 1]).toFixed(0) + "%)" show_value: true refresh_interval: 15m hours_to_show: 7d title: Gas Usage time_offset: 12h config: scrollZoom: false
  14. Not at the moment but something I could add That's your `essential_power:` entity. If you have not defined one in your card config then there will be no state history and its not clickable. The card will automatically calculate this sensor based on the formula below if the attribute is set to none or the sensor is not defined. You can override this by supplying a sensor that measures essential power. essential = inverter_power_175 + grid_power_169 - aux_power_166
  15. v4.35.0 What's Changed 🚀 Exciting New Features - feat: added animation for battery charge when using linear gradient. Set the battery `animate` attribute to `false` to disable - feat: when solar sell is turned off the sell limit is grayed out 🐛 Patches & Bug Fixes - fix: alignment of PV names and solar efficiency on the lite and compact cards closes #414 Other Changes - docs: update new options - docs: update huawei example - thanks @Roving-Ronin in https://github.com/slipx06/sunsynk-power-flow-card/pull/411 - docs update sunsynk example **Full Changelog**: https://github.com/slipx06/sunsynk-power-flow-card/compare/v4.34.1...v4.35.0
  16. v4.34.0 What's Changed 🚀 Exciting New Features - feat: You can now visualise the efficiency of your MPPT strings by adding the `efficiency` attribute to your solar section together with the `pv[1-4]_max_power` (Maximum power of the MPPT based on the number and size of panels). The `efficiency` attribute can be one of four numeric values and activates the following display modes 0 - Disabled 1 - Graphic display 2 - Text display 3 - Graphic and text display This is disabled by default and you must set the desired display mode and specify the pv[x]_max_power in order to display this extra data. Some examples below 1 - Graphic display 2 - Text display 3 - Graphic and text display 🐛 Patches & Bug Fixes - fix: layout improvements. Remove space from battery soc. **Full Changelog**: https://github.com/slipx06/sunsynk-power-flow-card/compare/v4.33.0...v4.34.0
  17. Hi @Muttley Thanks for the suggestion. 👍 Makes sense and it's a great idea. The card already has so many data points but let me see what I can come up with.
  18. @Sc00bs I'm not running HA on the pi. It only runs the mbusd gateway. The HA server connects to the gateway over the tailscale vpn
  19. Well not really. The mbusd gateway needs to be close to your inverter but you can run that on a cheap raspberry pi. I'm using this to monitor a remote (different province) inverter over tailscale. inverter<-->mbusd(running on raspberry pi with tailscale)<-->HA (kellarZa integration with tailscale)
  20. @HowserMD you need to add a unit of measurement or setup your own daily energy meter within HA using the total energy sensors. - sensor: - name: "Sunsynk Battery Daily Charge 70" state: > {{state_attr('sensor.sunsynk_battery', 'etodayChg')|float(0)|round(1)}} unit_of_measurement: kWh - name: "Sunsynk Battery Daily Discharge 71" state: > {{state_attr('sensor.sunsynk_battery', 'etodayDischg')|float(0)|round(1)}} unit_of_measurement: kWh
  21. I've added this to https://github.com/slipx06/sunsynk-power-flow-card/releases/tag/v4.31.0
  22. @JaseZA let me look at adding that for you. At the moment it wont work but I can modify the code to accept a sensor that returns the name of the mdi icon like in the example below load: load1_name: Pool load1_icon: sensor.geyser_icon sensor: - platform: template sensors: geyser_icon: value_template: >- {% if is_state('switch.geyser_thr320', "on")%} mdi:water-boiler {% elif is_state('switch.geyser_thr320', "off")%} mdi:water-boiler-off {% endif %}
  23. @BugsRSA maybe check your power supply. Another user has a similar issue when using a cheap buck converter
  24. Glad you sorted it out. Never nice when your SOC suddenly drops So far the issue has not returned for me. Been running for the last couple of months now.

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.