XKNX / xknx

XKNX - A KNX library written in Python
http://xknx.io/
MIT License
293 stars 107 forks source link

Weather Station Suntracer from Elsener uses DPT 14.058 (4-byte) for pressure value #1605

Open holdorr opened 3 days ago

holdorr commented 3 days ago

Description of problem:

Version information:

KNX installation:

Weather Station: Suntracer KNX sl

communication object: Air Pressure DPT 14.058 (4 bytes)

Problem-relevant configuration.yaml entries (fill out even if it seems unimportant):

  weather:
    - name: "Wetter Dach"
      address_temperature: "0/3/21"
      address_brightness_south: "0/3/11"
      address_wind_speed: "0/3/40"
      address_rain_alarm: "0/3/22"
      address_frost_alarm: "0/3/24"
      address_wind_alarm: "0/3/45"
      address_air_pressure: "0/3/23"
      sync_state: init

Diagnostic data of the config entry (only when Home Assistant is used)

Traceback (if applicable):

Logger: xknx.log
Quelle: runner.py:189
Erstmals aufgetreten: 16:07:11 (24 Vorkommnisse)
Zuletzt protokolliert: 16:31:50

    Could not sync group address '2/0/33' (Unknown - State)
    Can not process <Telegram direction="Incoming" source_address="7.0.11" destination_address="0/3/23" payload="<GroupValueWrite value="<DPTArray value="[0x47,0xc7,0xc4,0x0]" />" />" data="102280.0 Pa (DPTPressure)" /> for Schnaeggi Dach - Air pressure: <CouldNotParseTelegram description="Invalid payload length for DPTPressure2Byte" expected_length="2" payload="<DPTArray value="[0x47,0xc7,0xc4,0x0]" />"/>

Comment

In issue #405 the DPT type was changed from 14.058 to 9.006 to support a weather station from a different manufacturer. Is it possible, to allow both types to support this station as well?

farmio commented 2 days ago

Hi 👋! Since this is a read-only group, I guess we can even use DPT detection based on payload-length - like we do for climate setpoint_shift. So we wouldn't even require a new config attribute. Unit of measurement is Pa for both, so that is fine too.