Studer next3 Modbus config

Moin,

just want to share my Modbus conf for the Studer next3 hybrid inverter. It’s everything you need to get the energy dashboard going.

# Studer next3
modbus:
  - name: studer_next3
    type: tcp
    host: 192.168.xxx.xxx
    port: 502
    sensors:
      - name: "next3.AC-Source Active Power"
        slave: 7
        address: 8
        input_type: holding
        unit_of_measurement: W
        device_class: power
        state_class: measurement
        data_type: float32
        scan_interval: 15
      - name: "next3.AC-Source Consumed Energy"
        slave: 7
        address: 24
        input_type: holding
        unit_of_measurement: Wh
        device_class: energy
        state_class: total_increasing
        data_type: float64
        scan_interval: 60
      - name: "next3.AC-Source Produced Energy"
        slave: 7
        address: 36
        input_type: holding
        unit_of_measurement: Wh
        device_class: energy
        state_class: total_increasing
        data_type: float64
        scan_interval: 60
      - name: "next3.AC-Loads Active Power"
        slave: 1
        address: 3908
        input_type: holding
        unit_of_measurement: W
        device_class: power
        state_class: measurement
        data_type: float32
        scan_interval: 15
      - name: "next3.AC-Loads Consumed Energy"
        slave: 1
        address: 3924
        input_type: holding
        unit_of_measurement: Wh
        device_class: energy
        state_class: total_increasing
        data_type: float64
        scan_interval: 60
      - name: "next3.PV Power"
        slave: 1
        address: 7505
        input_type: holding
        unit_of_measurement: W
        device_class: power
        state_class: measurement
        data_type: float32
        scan_interval: 15
      - name: "next3.PV Energy"
        slave: 1
        address: 7519
        input_type: holding
        unit_of_measurement: Wh
        device_class: energy
        state_class: total_increasing
        data_type: float64
        scan_interval: 60
      - name: "next3.Battery Power RAW"
        slave: 1
        address: 8400
        input_type: holding
        unit_of_measurement: W
        device_class: power
        state_class: measurement
        data_type: float32
        scan_interval: 15
      - name: "next3.Battery Charging Energy"
        slave: 1
        address: 8410
        input_type: holding
        unit_of_measurement: Wh
        device_class: energy
        state_class: total_increasing
        data_type: float64
        scan_interval: 60
      - name: "next3.Battery Discharging Energy"
        slave: 1
        address: 8422
        input_type: holding
        unit_of_measurement: Wh
        device_class: energy
        state_class: total_increasing
        data_type: float64
        scan_interval: 60
      - name: "next3.Battery SOC"
        slave: 1
        address: 8426
        input_type: holding
        unit_of_measurement: "%"
        device_class: battery
        state_class: measurement
        data_type: float32
        scan_interval: 15
        
template:
  - sensor:
      - name: "next3.Battery Power"
        unit_of_measurement: "W"
        device_class: power
        state_class: measurement
        # Invertiert den Wert: Laden wird negativ (-), Entladen wird positiv (+)
        state: >
          {% set pwr = states('sensor.next3_battery_power_raw') | float(0) %}
          {{ pwr * -1 }}