Afore + home assistant

Sprawdź bezpośredni w konsoli HA czy jest coś pobierane curl -s -u admin:admin http://192.168.1.149/status.html | grep -E "\webdata_total_e(\s|$)" | cut -d'"' -f 2

Sprawdź czy MQTT nadaje, np. Programem Mqtt Explorer

@artpc polecenie curl zwróciło taki wynik


Natomiast w mqtt mam coś takiego

Nie znam na tyle mqtt explorera aby coś więcej powiedzieć
Którą gałąź rozwinąć aby Was nakierować ?

Nie znam tematu, ale patrząc z boku broker masz w jednej sieci LAN 10.x.x.x a jakieś urządzenie które odpytujesz o http w zupełnie innej sieci LAN 192.168.1.x
Masz między nimi routing w obie strony?

Pokaż konfigurację MQTT w configuration.yaml
Podaj adresy IP na jakich co masz, HA, MQTT, AFORE.

192.168.1.119 HomeAssistant
192.168.1.149 Afore
MQTT jest zainstalowane na HA - nie wiem czy może mieć inny adres ip ?
W configuration.yaml nie mam żadnego wpisu odnośnie mqtt
@szopen ten adres jest z zerotier, ale przed chwilą byłem przy komputerze w tej sieci lokalnej i dokładnie taki sam wynik mam w mqtt explorerze

To gdzie masz zdefiniowane sensory? Jakieś include?

Te sensory pokazują jakieś wartości?

 power_solar
 power_solar_total
 power_solar_today

@artpc
Mam plik mqtt.yaml ale chyba HA z niego nie korzysta
Jak zdefiniować sensory w configuration.yaml ?

Wpis w configuration.yaml

mqtt: !include mqtt_include.yaml
nazwa twojego pliku w głownum katalogu HA mqtt_include.yam twój mqtt.yaml

@artpc Kolego dodałem wpis wg Twojej rady, lecz w nim coś jest nie tak bo sieję błędami

Rejestrator: homeassistant.setup
Źródło: setup.py:271
Pierwsze zdarzenie: 07:24:49 (1 zdarzenia)
Ostatnio zalogowany: 07:24:49

Setup failed for 'mqtt': Invalid config.
Rejestrator: homeassistant.config
Źródło: config.py:1326
Pierwsze zdarzenie: 07:24:49 (1 zdarzenia)
Ostatnio zalogowany: 07:24:49

Invalid config for 'mqtt' at mqtt.yaml, line 2: 'name' is an invalid option for 'mqtt', check: mqtt->0->name, please check the docs at https://www.home-assistant.io/integrations/mqtt Invalid config for 'mqtt' at mqtt.yaml, line 3: 'state_topic' is an invalid option for 'mqtt', check: mqtt->0->state_topic, please check the docs at https://www.home-assistant.io/integrations/mqtt Invalid config for 'mqtt' at mqtt.yaml, line 4: 'unit_of_measurement' is an invalid option for 'mqtt', check: mqtt->0->unit_of_measurement, please check the docs at https://www.home-assistant.io/integrations/mqtt Invalid config for 'mqtt' at mqtt.yaml, line 5: 'value_template' is an invalid option for 'mqtt', check: mqtt->0->value_template, please check the docs at https://www.home-assistant.io/integrations/mqtt Invalid config for 'mqtt' at mqtt.yaml, line 6: 'device_class' is an invalid option for 'mqtt', check: mqtt->0->device_class, please check the docs at https://www.home-assistant.io/integrations/mqtt

Mój plik mqtt.yaml wygląda tak:

- name: 'PVn_Total_production'
      state_topic: 'npv/values'
      unit_of_measurement: 'kWh'
      value_template: '{{ value_json.Total_production }}'
      device_class: energy


    - name: 'PVn_Current_power'
      state_topic: 'npv/values'
      unit_of_measurement: 'W'
      value_template: '{{ value_json.Current_power }}'
      device_class: power


    - name: 'PVn1_Voltage'
      state_topic: 'npv/values'
      unit_of_measurement: 'V'
      value_template: '{{ value_json.PV1_DC_voltage }}'
      device_class: voltage
    
    
    - name: 'PVn2_Voltage'
      state_topic: 'npv/values'
      unit_of_measurement: 'V'
      value_template: '{{ value_json.PV2_DC_voltage }}'
      device_class: voltage
    
    
    - name: 'PVn1_Current'
      state_topic: 'npv/values'
      unit_of_measurement: 'A'
      value_template: '{{ value_json.PV1_DC_current }}'
      device_class: current
    
    
    - name: 'PVn2_Current'
      state_topic: 'npv/values'
      unit_of_measurement: 'A'
      value_template: '{{ value_json.PV2_DC_current }}'
      device_class: current
    
    
    - name: 'PVn_Daily_production'
      state_topic: 'npv/values'
      unit_of_measurement: 'kWh'
      value_template: '{{ value_json.Daily_production }}'
      device_class: energy
    
  
    
    - name: 'PVn_Temperature'
      state_topic: 'npv/values'
      unit_of_measurement: '°C'
      value_template: '{{ value_json.Temperature }}'
      device_class: temperature
    
    
    - name: 'PVn_Frequency'
      state_topic: 'npv/values'
      unit_of_measurement: 'Hz'
      value_template: '{{ value_json.AC_Frequency }}'
    
    
    - name: 'PVn_Voltage_1'
      state_topic: 'npv/values'
      unit_of_measurement: 'V'
      value_template: '{{ value_json.AC_voltage_1 }}'
      device_class: voltage
    
    
    - name: 'PVn_Voltage_2'
      state_topic: 'npv/values'
      unit_of_measurement: 'V'
      value_template: '{{ value_json.AC_voltage_2 }}'
      device_class: voltage
    
    
    - name: 'PVn_Voltage_3'
      state_topic: 'npv/values'
      unit_of_measurement: 'V'
      value_template: '{{ value_json.AC_voltage_3 }}'
      device_class: voltage
    
    
    - name: 'PVn_Current_1'
      state_topic: 'npv/values'
      unit_of_measurement: 'A'
      value_template: '{{ value_json.AC_current_1 }}'
      device_class: current
    
    
    - name: 'PVn_Current_2'
      state_topic: 'npv/values'
      unit_of_measurement: 'A'
      value_template: '{{ value_json.AC_current_2 }}'
      device_class: current
    
    
    - name: 'PVn_Current_3'
      state_topic: 'npv/values'
      unit_of_measurement: 'A'
      value_template: '{{ value_json.AC_current_3 }}'
      device_class: current


    - name: 'PVn_Status'
      state_topic: 'npv/values'
      value_template: '{{ value_json.Status }}'

Wydaje się być w porządku, ale chyba tylko wydaje :frowning:

Gdybyś spojrzał do dokumentacji zgodnie z sugestią - po coś te logi się wyświetlają.

, please check the docs at https://www.home-assistant.io/integrations/mqtt 
# Example configuration.yaml entry
mqtt:
  sensor:
    - name: "Bedroom Temperature"
      state_topic: "home/bedroom/temperature"

to Twoja definicja sensorów mqtt wyglądałaby tak

  sensor:
    - name: 'PVn_Total_production'
      state_topic: 'npv/values'
      unit_of_measurement: 'kWh'
      value_template: '{{ value_json.Total_production }}'
      device_class: energy

...itd

bez mqtt: ponieważ to masz już wpisane przed !include…

Dziękuję Wam za pomoc, jednak sam sobie chyba nie poradzę, nie potrafię zdefiniować tego sensora. To już chyba taki wiek. :frowning:
Teraz zauważyłem w integracji mqtt

Wklej jak masz zdefiniowane mqtt w configuration.yaml

@artpc
Wklejam cały configuration.yaml


# Loads default set of integrations. Do not remove.
default_config:
logger:
  default: warning
  logs:
    custom_components.foxess: debug

# Load frontend themes from the themes folder
frontend:
  themes: !include_dir_merge_named themes

automation: !include automations.yaml
script: !include scripts.yaml
scene: !include scenes.yaml
mqtt: !include mqtt.yaml

sensor:
  - platform: foxess
    deviceID: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    deviceSN: xxxxxxxxxxxx
    apiKey: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
 
 
  - platform: command_line  
    command: curl -s -u admin:admin http://192.168.1.149/status.html | grep -E "\webdata_now_p(\s|$)" | cut -d'"' -f 2
    name: power_solar
    unit_of_measurement: 'W'
    scan_interval: 10
  - platform: command_line  
    command: curl -s -u admin:admin http://192.168.1.149/status.html | grep -E "\webdata_total_e(\s|$)" | cut -d'"' -f 2
    name: power_solar_total
    unit_of_measurement: 'kWh'
    scan_interval: 60
  - platform: command_line  
    command: curl -s -u admin:admin http://192.168.1.149/status.html | grep -E "\webdata_today_e(\s|$)" | cut -d'"' -f 2
    name: power_solar_today
    unit_of_measurement: 'kWh'
    scan_interval: 60

template:
  sensor:
  - name: "solarmanlocal_production_daily"
    state: "{{ states('sensor.solarmanlocal_power_solar_total')}}"
    unit_of_measurement: kWh
    device_class: energy
    state_class: total_increasing
    unique_id: solarmanlocal_production_daily
    

Jak napisał @RobinI30 musisz mieć wpis sensor: w twoim pliku mqtt.yaml

@artpc Zrobiłem ctr-c ctr-v ale niestety mam status nieznany
image

Nie rób bezmyślnie. Każda spacje w tych plikach ma znaczenie. Jak coś zmieniasz w plikach YAML, to masz w HA zakładkę gdzie sprawdzasz poprawność zapisu - walidację konfiguracji HA.
Jeżeli sprawdzenie przebiega prawidłowo, bez błędów, to wykonujesz restart HA → uruchom ponownie.

1 polubienie

Kolego @angler masz rację, lecz sprawdziłem i błędów brak


Dlatego nie rozumiem dlaczego to nie działa, dręczy mnie to mqtt czy dobrze skonfigurowałem ?

Zrestartuj HA i sprawdź czy twój Afore łączy się z MQTT

Dlatego krok po kroku trzeba sprawdzić działania kolejnych usług. Jeśli mgtt explorer nie zawiera odczytów to nie ma co dalej kopać.
Jak dobrze zrozumiałem cały proces odczytu zaczyna się od NR? Zacznij więć od początku umieszczać wyniki testów: NR, mqtt…

1 polubienie

Dokładnie tak jak napisał @RobinI30 - zaczynasz od końca. Zacznij od źródła wiadomości poprzez pośredników czyli MQTT (diagnozując np w MQTT Explorer) i dopiero po upewnieniu się, że broker MQTT odbiera wiadomości możesz przejść do konfiguracji w HA. Musisz poświęcić więcej czasu na zrozumienie jak to wszystko działa. Wówczas będziesz mógł diagnozować poszczególne etapy komunikacji.