Little Help With SMA code

Hi all got a smal problem i have added code but now it won’t work anymore

i have copied (- name: Grid Voltage) and added L1 L2 L3 (eg Grid Voltage L1 etc) to the config from original and changed the register to the correct number

Configuration validation

Configuration valid!

Notification message

Invalid config
The following integrations and platforms could not be set up:

sma
Please check your config.

Log

2020-10-04 15:57:39 ERROR (MainThread) [homeassistant.setup] Setup failed for sma: No setup function defined.

Original sma.yaml


modbus:
  type: tcp
  host: XXX.XXX.XXX.XXX
  port: 502
      
sensor:
  - platform: modbus
    scan_interval: 900
    registers:
    - name: SMA_Power_AC
      unit_of_measurement: W
      slave: 3
      register: 30775
      count: 2
      data_type: int
    - name: PV Daily Yield
      unit_of_measurement: kWh
      slave: 3
      register: 30517
      scale: 0.001
      precision: 3
      count: 4
      data_type: uint
    - name: PV Total Production
      unit_of_measurement: MWh
      slave: 3
      register: 30513
      scale: 0.000001
      precision: 3
      count: 4
    - name: Grid Voltage
      unit_of_measurement: V
      slave: 3 
      register: 30783
      count: 2
      scale: 0.01
      precision: 2
      data_type: uint
    - name: Grid frequency
      unit_of_measurement: Hz
      slave: 3 
      register: 30803
      count: 2
      scale: 0.01
      precision: 2
      data_type: uint
    - name: SMA_temp
      unit_of_measurement: °C
      slave: 3
      register: 30953
      count: 2
      scale: 0.1
      precision: 1
      data_type: int
    - name: SMA_status
      slave: 3
      register: 30201
      count: 2
    - name: SMA_grid
      slave: 3
      register: 30217
      count: 2
    - name: Insulation
      slave: 3
      register: 30225
      count: 2
      scale: 0.001
      unit_of_measurement: kOhms
    - name: SMA_Residual_current
      slave: 3
      register: 31247
      count: 2
      scale: 1
      unit_of_measurement: mA
    - name: Apparent Power
      unit_of_measurement: VA
      slave: 3
      register: 30813
      scale: 1
      precision: 0
      count: 2
      data_type: int
    - name: Reactive Power
      unit_of_measurement: VAr
      slave: 3
      register: 30805
      scale: 1
      precision: 0
      count: 2
      data_type: int
      
  - platform: template
    sensors:
      modbus_sma_pv_power:
        entity_id: sensor.sma_power_ac
        friendly_name: 'Power Output'
        value_template: >-
            {% if states('sensor.sma_power_ac')|float < 0 or states('sensor.sma_power_ac')|float > 10000 %}
              0
            {% else %}
              {{ states('sensor.sma_power_ac') }}
            {% endif %}
        unit_of_measurement: "W"
        icon_template: mdi:flash-circle
      modbus_sma_pv_apparent_power:
        entity_id: sensor.apparent_power
        friendly_name: 'Apparent Power'
        value_template: >-
            {% if states('sensor.apparent_power')|float < 0 or states('sensor.apparent_power')|float > 10000 %}
              0
            {% else %}
              {{ states('sensor.apparent_power') }}
            {% endif %}
        unit_of_measurement: "VA"
        icon_template: mdi:flash-circle
      modbus_sma_pv_reactive_power:
        entity_id: sensor.reactive_power
        friendly_name: 'Reactive Power'
        value_template: >-
            {% if states('sensor.reactive_power')|float < 0 or states('sensor.reactive_power')|float > 10000 %}
              0
            {% else %}
              {{ states('sensor.reactive_power') }}
            {% endif %}
        unit_of_measurement: "VAr"
        icon_template: mdi:flash-circle
      modbus_sma_pv_residual:
        entity_id: sensor.sma_residual_current
        friendly_name: 'Residual Current'
        value_template: >-
            {% if states('sensor.sma_residual_current')|float < 0 or states('sensor.sma_residual_current')|float > 10000 %}
              0
            {% else %}
              {{ states('sensor.sma_residual_current') }}
            {% endif %}
        unit_of_measurement: "mA"
        icon_template: mdi:flash-circle
      modbus_sma_temperature:
        entity_id: sensor.sma_temp
        friendly_name: 'Inverter Temp'
        value_template: >-
            {% if states('sensor.sma_temp')|float < 0 or states('sensor.sma_temp')|float > 100 %}
              0
            {% else %}
              {{ states('sensor.sma_temp') }}
            {% endif %}
        unit_of_measurement: "°C"
      modbus_grid_frequency:
        entity_id: sensor.grid_frequency
        friendly_name: 'Grid Frequency'
        value_template: >-
            {% if states('sensor.grid_frequency')|float < 30 or states('sensor.grid_frequency')|float > 100 %}
              Not Measured
            {% else %}
              {{ states('sensor.grid_frequency') }}
            {% endif %}
        unit_of_measurement: "Hz"
      modbus_grid_voltage:
        entity_id: sensor.grid_voltage
        friendly_name: 'Grid Voltage'
        value_template: >-
            {% if states('sensor.grid_voltage')|float < 180 or states('sensor.grid_voltage')|float > 300 %}
              Not Measured
            {% else %}
              {{ states('sensor.grid_voltage') }}
            {% endif %}
        unit_of_measurement: "V"
      modbus_inverter_status:
        entity_id: sensor.sma_status
        friendly_name: 'Inverter Status'
        value_template: >-
            {% if is_state('sensor.sma_status', '307' ) %}
              OK
            {% elif is_state('sensor.sma_status', '303' ) %}
              Off
            {% elif is_state('sensor.sma_status', '455' ) %}
              Warning
            {% elif is_state('sensor.sma_status', '35' ) %}
              Fault
            {% endif %}
      modbus_grid_contactor:
        entity_id: sensor.sma_grid
        friendly_name: 'Grid contactor'
        value_template: >-
            {% if is_state('sensor.sma_grid', '51' ) %}
              Closed
            {% else %}
              Open
            {% endif %}
homeassistant:
  customize:
    sensor.pv_daily_yield:
      icon: mdi:solar-power
    sensor.modbus_grid_contactor:
      icon: mdi:transmission-tower
    sensor.pv_total_production:
      icon: mdi:solar-power         
            

my new sma.yaml
copied SMA_Power_AC and added SMA_Power_AC_L1,L2,L3 also on template
copied Grid Voltage and added Grid Voltage L1,L2,L3 also on template

modbus:
  type: tcp
  host: XXX.XXX.XXX.XXX
  port: 502
      
sensor:
  - platform: modbus
    scan_interval: 10
    registers:
    - name: SMA_Power_AC
      unit_of_measurement: W
      slave: 3
      register: 30775
      count: 2
      data_type: int
    - name: SMA_Power_AC_L1
      unit_of_measurement: W
      slave: 3
      register: 30777
      count: 2
      data_type: int
    - name: SMA_Power_AC_L2
      unit_of_measurement: W
      slave: 3
      register: 30779
      count: 2
      data_type: int
    - name: SMA_Power_AC_L3
      unit_of_measurement: W
      slave: 3
      register: 30781
      count: 2
      data_type: int
    - name: PV Daily Yield
      unit_of_measurement: kWh
      slave: 3
      register: 30517
      scale: 0.001
      precision: 3
      count: 4
      data_type: uint
    - name: PV Total Production
      unit_of_measurement: MWh
      slave: 3
      register: 30513
      scale: 0.000001
      precision: 3
      count: 4
    - name: Grid Voltage
      unit_of_measurement: V
      slave: 3
      register: 30783
      count: 2
      scale: 0.01
      precision: 2
      data_type: uint
    - name: Grid Voltage L1
      unit_of_measurement: V
      slave: 3
      register: 30783
      count: 2
      scale: 0.01
      precision: 2
      data_type: uint
    - name: Grid Voltage L2
      unit_of_measurement: V
      slave: 3
      register: 30785
      count: 2
      scale: 0.01
      precision: 2
      data_type: uint
    - name: Grid Voltage L3
      unit_of_measurement: V
      slave: 3
      register: 30787
      count: 2
      scale: 0.01
      precision: 2
      data_type: uint
    - name: Grid frequency
      unit_of_measurement: Hz
      slave: 3
      register: 30804
      count: 2
      scale: 0.01
      precision: 2
      data_type: uint
    - name: SMA_temp
      unit_of_measurement: °C
      slave: 3
      register: 30953
      count: 2
      scale: 0.1
      precision: 1
      data_type: int
    - name: SMA_status
      slave: 3
      register: 30201
      count: 2
    - name: SMA_grid
      slave: 3
      register: 30217
      count: 2
    - name: Insulation
      slave: 3
      register: 30225
      count: 2
      scale: 0.001
      unit_of_measurement: kOhms
    - name: SMA_Residual_current
      slave: 3
      register: 31247
      count: 2
      scale: 1
      unit_of_measurement: mA
    - name: Apparent Power
      unit_of_measurement: VA
      slave: 3
      register: 30813
      scale: 1
      precision: 0
      count: 2
      data_type: int
    - name: Reactive Power
      unit_of_measurement: VAr
      slave: 3
      register: 30805
      scale: 1
      precision: 0
      count: 2
      data_type: int
  - platform: template
    sensors:
      modbus_sma_pv_power:
        entity_id: sensor.sma_power_ac
        friendly_name: 'Power Output'
        value_template: >-
            {% if states('sensor.sma_power_ac')|float < 0 or states('sensor.sma_power_ac')|float > 10000 %}
              0
            {% else %}
              {{ states('sensor.sma_power_ac') }}
            {% endif %}
        unit_of_measurement: "W"
        icon_template: mdi:flash-circle
      modbus_sma_pv_power_L1:
        entity_id: sensor.sma_power_ac_l1
        friendly_name: 'Power Output l1'
        value_template: >-
            {% if states('sensor.sma_power_ac_l1')|float < 0 or states('sensor.sma_power_ac_l1')|float > 10000 %}
              0
            {% else %}
              {{ states('sensor.sma_power_ac_l1') }}
            {% endif %}
        unit_of_measurement: "W"
        icon_template: mdi:flash-circle
      modbus_sma_pv_power_L2:
        entity_id: sensor.sma_power_ac_l2
        friendly_name: 'Power Output L2'
        value_template: >-
            {% if states('sensor.sma_power_ac_l2')|float < 0 or states('sensor.sma_power_ac_l2')|float > 10000 %}
              0
            {% else %}
              {{ states('sensor.sma_power_ac_l2') }}
            {% endif %}
        unit_of_measurement: "W"
        icon_template: mdi:flash-circle
      modbus_sma_pv_power_L3:
        entity_id: sensor.sma_power_ac_l3
        friendly_name: 'Power Output l3'
        value_template: >-
            {% if states('sensor.sma_power_ac_l3')|float < 0 or states('sensor.sma_power_ac_l3')|float > 10000 %}
              0
            {% else %}
              {{ states('sensor.sma_power_ac_l3') }}
            {% endif %}
        unit_of_measurement: "W"
        icon_template: mdi:flash-circle
      modbus_sma_pv_apparent_power:
        entity_id: sensor.apparent_power
        friendly_name: 'Apparent Power'
        value_template: >-
            {% if states('sensor.apparent_power')|float < 0 or states('sensor.apparent_power')|float > 10000 %}
              0
            {% else %}
              {{ states('sensor.apparent_power') }}
            {% endif %}
        unit_of_measurement: "VA"
        icon_template: mdi:flash-circle
      modbus_sma_pv_reactive_power:
        entity_id: sensor.reactive_power
        friendly_name: 'Reactive Power'
        value_template: >-
            {% if states('sensor.reactive_power')|float < 0 or states('sensor.reactive_power')|float > 10000 %}
              0
            {% else %}
              {{ states('sensor.reactive_power') }}
            {% endif %}
        unit_of_measurement: "VAr"
        icon_template: mdi:flash-circle
      modbus_sma_pv_residual:
        entity_id: sensor.sma_residual_current
        friendly_name: 'Residual Current'
        value_template: >-
            {% if states('sensor.sma_residual_current')|float < 0 or states('sensor.sma_residual_current')|float > 10000 %}
              0
            {% else %}
              {{ states('sensor.sma_residual_current') }}
            {% endif %}
        unit_of_measurement: "mA"
        icon_template: mdi:flash-circle
      modbus_sma_temperature:
        entity_id: sensor.sma_temp
        friendly_name: 'Inverter Temp'
        value_template: >-
            {% if states('sensor.sma_temp')|float < 0 or states('sensor.sma_temp')|float > 100 %}
              0
            {% else %}
              {{ states('sensor.sma_temp') }}
            {% endif %}
        unit_of_measurement: "°C"
      modbus_grid_frequency:
        entity_id: sensor.grid_frequency
        friendly_name: 'Grid Frequency'
        value_template: >-
            {% if states('sensor.grid_frequency')|float < 30 or states('sensor.grid_frequency')|float > 100 %}
              Not Measured
            {% else %}
              {{ states('sensor.grid_frequency') }}
            {% endif %}
        unit_of_measurement: "Hz"
      modbus_grid_voltage:
        entity_id: sensor.grid_voltage
        friendly_name: 'Grid Voltage'
        value_template: >-
            {% if states('sensor.grid_voltage')|float < 180 or states('sensor.grid_voltage')|float > 300 %}
              Not Measured
            {% else %}
              {{ states('sensor.grid_voltage') }}
            {% endif %}
        unit_of_measurement: "V"
      modbus_grid_voltage_L1:
        entity_id: sensor.grid_voltage_l1
        friendly_name: 'Grid Voltage l1'
        value_template: >-
            {% if states('sensor.grid_voltage_l1')|float < 180 or states('sensor.grid_voltage_l1')|float > 300 %}
              Not Measured
            {% else %}
              {{ states('sensor.grid_voltage_l1') }}
            {% endif %}
        unit_of_measurement: "V"
      modbus_grid_voltage_L2:
        entity_id: sensor.grid_voltage_l2
        friendly_name: 'Grid Voltage l2'
        value_template: >-
            {% if states('sensor.grid_voltage_l2')|float < 180 or states('sensor.grid_voltage_l2')|float > 300 %}
              Not Measured
            {% else %}
              {{ states('sensor.grid_voltage_l2') }}
            {% endif %}
        unit_of_measurement: "V"
      modbus_grid_voltage_L3:
        entity_id: sensor.grid_voltage_l3
        friendly_name: 'Grid Voltage l3'
        value_template: >-
            {% if states('sensor.grid_voltage_l3')|float < 180 or states('sensor.grid_voltage_l3')|float > 300 %}
              Not Measured
            {% else %}
              {{ states('sensor.grid_voltage_l3') }}
            {% endif %}
        unit_of_measurement: "V"
      modbus_inverter_status:
        entity_id: sensor.sma_status
        friendly_name: 'Inverter Status'
        value_template: >-
            {% if is_state('sensor.sma_status', '307' ) %}
              OK
            {% elif is_state('sensor.sma_status', '303' ) %}
              Off
            {% elif is_state('sensor.sma_status', '455' ) %}
              Warning
            {% elif is_state('sensor.sma_status', '35' ) %}
              Fault
            {% endif %}
      modbus_grid_contactor:
        entity_id: sensor.sma_grid
        friendly_name: 'Grid contactor'
        value_template: >-
            {% if is_state('sensor.sma_grid', '51' ) %}
              Closed
            {% else %}
              Open
            {% endif %}
homeassistant:
  customize:
    sensor.pv_daily_yield:
      icon: mdi:solar-power
    sensor.modbus_grid_contactor:
      icon: mdi:transmission-tower
    sensor.pv_total_production:
      icon: mdi:solar-power