Jump to content

sjlouw

Members
  • Posts

    4
  • Joined

  • Last visited

1 Follower

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

sjlouw's Achievements

  1. @Garreth No, I have not removed the resistor. The module is used as-is. I'm not experiencing those issues. I wonder, can it maybe be poor Wifi connection from your ESP to your access point? Mine is literally next to an Access Point. Also note that I have used an ESP32 which does have a little more processing power than the ESP8266, which I think is sort-off required for the modbus component in ESPHome to reliably work.
  2. 1. If you have a single inverter, there is no effect. (The default setting for mine was Slave). Its only there if you have multiple inverters setup in parallel, then you have to define them each with a unique number and have at least one in MASTER mode on the modbus. 2. The ESP32 acts as a modbus master on the bus, from what I understand.
  3. @Sc00bs Yes. Please see screenshot. The F13 Grid_mode_changed error is normal. Im also getting that if I switch between Slave and Master. The error should clear after a few mins.
  4. Hi all. Here is my version to get Sunsynk 8.8 Modbus metrics in Home Assistant: Required Hardware: ESP32 Development Board @R149.95 https://www.diyelectronics.co.za/store/espressif-iot/1495-esp32-development-board.html?search_query=esp32&results=26 MAX485 RS-485 to TTL Convert Module @R19.95 https://www.diyelectronics.co.za/store/serial/1204-max485-rs-485-to-ttl-converter-module.html?search_query=485&results=21 3D Printed Case I use to pack it all: https://www.thingiverse.com/thing:4670334 My code for ESPHome https://esphome.io/ Note: On the Sunsynk inverter side it is set to Modbus ID 1 and runs in Slave mode. (I think this is default for the inverter) esphome: name: "sunsynk" esp32: board: esp32dev framework: type: arduino logger: baud_rate: 0 api: ota: wifi: ssid: !secret wifi_ssid password: !secret wifi_password # Enable fallback hotspot (captive portal) in case wifi connection fails ap: ssid: "SOMEFALLBACKAP" password: "password" fast_connect: true power_save_mode: none time: - platform: sntp id: sntp_time timezone: Africa/Johannesburg servers: - pool.ntp.org uart: id: mod_bus tx_pin: 17 rx_pin: 16 baud_rate: 9600 stop_bits: 1 modbus: id: sunsynk_modbus flow_control_pin: 4 modbus_controller: - id: sunsynk address: 0x01 modbus_id: sunsynk_modbus setup_priority: -10 update_interval: 20000ms sensor: - platform: modbus_controller modbus_controller_id: sunsynk name: "Total Battery Charge (kWh)" id: total_battery_charge_kwh register_type: holding address: 72 unit_of_measurement: "kWh" accuracy_decimals: 2 device_class: energy state_class: total_increasing filters: - multiply: 0.1 - platform: modbus_controller modbus_controller_id: sunsynk name: "Total Battery Discharge (kWh)" id: total_battery_discharge_kwh register_type: holding address: 74 unit_of_measurement: "kWh" accuracy_decimals: 2 device_class: energy state_class: total_increasing filters: - multiply: 0.1 - platform: modbus_controller modbus_controller_id: sunsynk name: "Total Grid Export (kWh)" id: total_grid_export_kwh register_type: holding address: 81 unit_of_measurement: "kWh" accuracy_decimals: 2 device_class: energy state_class: total_increasing filters: - multiply: 0.1 - platform: modbus_controller modbus_controller_id: sunsynk name: "Total Grid Import (kWh)" id: total_grid_import_kwh register_type: holding address: 78 unit_of_measurement: "kWh" accuracy_decimals: 2 device_class: energy state_class: total_increasing filters: - multiply: 0.1 - platform: modbus_controller modbus_controller_id: sunsynk name: "Total Load Power (kWh)" id: total_load_power_kwh register_type: holding address: 85 unit_of_measurement: "kWh" accuracy_decimals: 2 device_class: energy state_class: total_increasing filters: - multiply: 0.1 - platform: modbus_controller modbus_controller_id: sunsynk name: "Total PV Power (kWh)" id: total_pv_power_kwh register_type: holding address: 96 unit_of_measurement: "kWh" accuracy_decimals: 2 device_class: energy state_class: total_increasing filters: - multiply: 0.1 - platform: modbus_controller modbus_controller_id: sunsynk name: "Grid Power" id: grid_power register_type: holding address: 169 unit_of_measurement: "W" accuracy_decimals: 2 device_class: power state_class: measurement filters: - lambda: |- float MIN_VALUE = 0.00; float MAX_VALUE = 8000.00; if (MIN_VALUE <= x && x <= MAX_VALUE) return x; else return {}; - platform: modbus_controller modbus_controller_id: sunsynk name: "Load Power" id: load_power register_type: holding address: 178 unit_of_measurement: "W" accuracy_decimals: 2 device_class: power state_class: measurement - platform: modbus_controller modbus_controller_id: sunsynk name: "PV1 Power" id: pv1_power register_type: holding address: 186 unit_of_measurement: "W" accuracy_decimals: 2 device_class: power state_class: measurement - platform: modbus_controller modbus_controller_id: sunsynk name: "PV2 Power" id: pv2_power register_type: holding address: 187 unit_of_measurement: "W" accuracy_decimals: 2 device_class: power state_class: measurement - platform: modbus_controller modbus_controller_id: sunsynk name: "Battery SOC" id: battery_soc register_type: holding address: 184 unit_of_measurement: "%" accuracy_decimals: 0 device_class: battery - platform: modbus_controller modbus_controller_id: sunsynk name: "Battery Charging Efficiency" id: battery_charging_efficiency register_type: holding address: 216 unit_of_measurement: "%" accuracy_decimals: 1 device_class: battery filters: - multiply: 0.1 - platform: modbus_controller modbus_controller_id: sunsynk name: "Grid Connected Status" id: grid_connected_status register_type: holding address: 194 accuracy_decimals: 0 In Home Assistant, ensure to include the new sensors in the recorder: recorder: include: entity_globs: - sensor.total_* - sensor.grid_* - sensor.load_* - sensor.pv*_power - sensor.power_production*
×
×
  • Create New...