VCX DTS-1946 jak podpiąć do HA?

Jeśli licznik się nie zmienił to zmieniła się co najwyżej konfiguracja modbus dla specyficznych sensorów

zrozum też jedno ale dość kluczowe - na działanie HA nie tyle ma wpływ wersja systemu operacyjnego (która wpływu praktycznie nie ma na żadne integracje), co wersja HA core - wyżej podałem jak dzielić się użyteczną informacją o instalacji HA

Uwaga radykalna zmiana wersji systemu operacyjnego może mieć wpływ na ścieżkę do dongla RS-485, ale skoro masz jakiekolwiek wskazania, to nic takiego się nie stało.

już wiemy, że sprzętowo połączenie z licznikiem masz, bo inne sensory z niego działają OK, więc to jest tylko kwestia konfiguracji integracji, której używasz

nie masz takich sensorów w tym co nam wkleiłeś w formacie całkowicie bezużytecznym, jeszcze raz wklej tego YAMLa ale tak

twój YAML prawdopodobnie wyglądał tak (użyłem AI by go odtworzyć, więc MUSISZ SPRAWDZIĆ czy faktycznie taki masz obecnie)

# Loads default set of integrations. Do not remove.
default_config:

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

# Text to speech
tts:
  - platform: google_translate

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

# Example configuration.yaml entry for a serial connection
modbus:
  - name: modbus_hub
    type: serial
    baudrate: 9600
    bytesize: 8
    method: rtu
    parity: N
    port: /dev/serial/by-id/usb-1a86_USB2.0-Ser_-if00-port0
    stopbits: 1
    sensors:
      - name: "U L1"
        unit_of_measurement: V
        unique_id: "L1_napiecie"
        device_class: power
        slave: 2
        address: 0x0
        input_type: input
        data_type: float32
        precision: 2
      - name: "U L2"
        unit_of_measurement: V
        unique_id: "L2_napiecie"
        device_class: power
        slave: 2
        address: 0x2
        input_type: input
        data_type: float32
        precision: 2
      - name: "U L3"
        unit_of_measurement: V
        unique_id: "L3_napiecie"
        device_class: power
        slave: 2
        address: 0x4
        input_type: input
        data_type: float32
        precision: 2
      - name: "Moc pobrana"
        unique_id: "mocpobrana"
        device_class: energy
        state_class: total_increasing
        address: 0x034
        unit_of_measurement: "kWh"
        data_type: float32
        precision: 2
      - name: "Moc oddana"
        unique_id: "mocoddana"
        device_class: energy
        state_class: total_increasing
        address: 0x036
        unit_of_measurement: "kWh"
        data_type: float32
        precision: 2
      - name: "Moc chwilowa"
        unit_of_measurement: W
        unique_id: "mocchwilowa"
        device_class: power
        slave: 2
        address: 0x18
        input_type: input
        data_type: float32
        precision: 2
        scale: 1000
      - name: "P L1"
        unit_of_measurement: W
        unique_id: "L1_moc"
        device_class: power
        slave: 2
        address: 0x12
        input_type: input
        data_type: float32
        precision: 2
        scale: 1000
      - name: "P L2"
        unique_id: "L2_moc"
        unit_of_measurement: W
        device_class: power
        slave: 2
        address: 0x14
        input_type: input
        data_type: float32
        precision: 2
        scale: 1000
      - name: "P L3"
        unique_id: "L3_moc"
        unit_of_measurement: W
        device_class: power
        slave: 2
        address: 0x16
        input_type: input
        data_type: float32
        precision: 2
        scale: 1000

no i teraz widać błędy… mylisz moc z energią i napięcie z mocą?
przy czym ja się będę upierał że energia jest typu long integer (tak twierdzi dokumentacja)

Przepuściłem go przez AI (czuję się zwolniony z odpowiedzialności, ale na oko teraz powinno działać) w celu poprawek na bazie dokumentacji integracji i dokumentacji licznika (mam na myśli typy danych, gdyby wskazania w HA były niezgodne to sobie wrócisz do float32), ale pozostały nazwy gdzie energię nazywasz mocą…

(YAML już bez nieistotnego dla wątku fragmentu kluczowej konfiguracji HA, którego broń boże nie wolno usunąć!)

modbus:
  - name: modbus_hub
    type: serial
    baudrate: 9600
    bytesize: 8
    method: rtu
    parity: N
    port: /dev/serial/by-id/usb-1a86_USB2.0-Ser_-if00-port0
    stopbits: 1
    sensors:
      - name: "U L1"
        unit_of_measurement: V
        unique_id: "L1_napiecie"
        device_class: voltage
        slave: 2
        address: 0x0
        input_type: input
        data_type: float32
        precision: 2
      - name: "U L2"
        unit_of_measurement: V
        unique_id: "L2_napiecie"
        device_class: voltage
        slave: 2
        address: 0x2
        input_type: input
        data_type: float32
        precision: 2
      - name: "U L3"
        unit_of_measurement: V
        unique_id: "L3_napiecie"
        device_class: voltage
        slave: 2
        address: 0x4
        input_type: input
        data_type: float32
        precision: 2
      - name: "Moc pobrana"
        unique_id: "mocpobrana"
        device_class: energy
        state_class: total_increasing
        slave: 2
        address: 0x034
        input_type: input
        unit_of_measurement: "kWh"
        data_type: uint32
        scale: 0.01
        precision: 2
      - name: "Moc oddana"
        unique_id: "mocoddana"
        device_class: energy
        state_class: total_increasing
        slave: 2
        address: 0x036
        input_type: input
        unit_of_measurement: "kWh"
        data_type: uint32
        scale: 0.01
        precision: 2
      - name: "Moc chwilowa"
        unit_of_measurement: W
        unique_id: "mocchwilowa"
        device_class: power
        slave: 2
        address: 0x18
        input_type: input
        data_type: float32
        precision: 2
        scale: 1000
      - name: "P L1"
        unit_of_measurement: W
        unique_id: "L1_moc"
        device_class: power
        slave: 2
        address: 0x12
        input_type: input
        data_type: float32
        precision: 2
        scale: 1000
      - name: "P L2"
        unique_id: "L2_moc"
        unit_of_measurement: W
        device_class: power
        slave: 2
        address: 0x14
        input_type: input
        data_type: float32
        precision: 2
        scale: 1000
      - name: "P L3"
        unique_id: "L3_moc"
        unit_of_measurement: W
        device_class: power
        slave: 2
        address: 0x16
        input_type: input
        data_type: float32
        precision: 2
        scale: 1000

Prawdopodobnie stracisz historyczne dane licznika z 3 lat od 2023 roku do teraz dla tych encji które od zawsze miały nieprawidłową konfigurację (ale może HA zaproponuje możliwość naprawy danych)

edit mam sygnał na PW że prawdopodobnie typy danych dla energii też powinny być float32 a nie uint32 wbrew dokumentacji licznika (ale jak zawsze i dokumentacja może zawierać błędy!)

1 polubienie