From 048348f37d7a40744e47adbfdcd67fcb29d26b00 Mon Sep 17 00:00:00 2001 From: openHAB Build Server Date: Mon, 26 Feb 2024 05:33:46 +0000 Subject: [PATCH] Updated external content (Jenkins build 2001) --- _addons_bindings/ism8/readme.md | 75 +++--- _addons_bindings/knx/readme.md | 204 ++++++++++++-- _addons_bindings/mybmw/readme.md | 248 ++++++++++-------- .../resources/OH-INF/thing/thing-types.xml | 141 ++++++++-- .../OH-INF/thing/ev-vehicle-update-group.xml | 15 ++ .../main/resources/OH-INF/thing/thing-bev.xml | 3 +- .../resources/OH-INF/thing/thing-bev_rex.xml | 3 +- .../resources/OH-INF/thing/thing-conv.xml | 3 +- .../resources/OH-INF/thing/thing-phev.xml | 3 +- .../thing/vehicle-update-channel-types.xml | 21 ++ .../OH-INF/thing/vehicle-update-group.xml | 14 + 11 files changed, 536 insertions(+), 194 deletions(-) create mode 100644 _thing_types/org.openhab.binding.mybmw/src/main/resources/OH-INF/thing/ev-vehicle-update-group.xml create mode 100644 _thing_types/org.openhab.binding.mybmw/src/main/resources/OH-INF/thing/vehicle-update-channel-types.xml create mode 100644 _thing_types/org.openhab.binding.mybmw/src/main/resources/OH-INF/thing/vehicle-update-group.xml diff --git a/_addons_bindings/ism8/readme.md b/_addons_bindings/ism8/readme.md index 8281479a7..5f65612c9 100644 --- a/_addons_bindings/ism8/readme.md +++ b/_addons_bindings/ism8/readme.md @@ -49,15 +49,9 @@ The ISM8 does currently support 4 different devices at the same moment of time ( Once you have an overview of your heating system set you can start to create the channels accordingly. Each channel should be created in the following way: -| Type | Name | Description | Configuration | -|--------|---------|----------------------------|-----------------| -| Number | DpId004 | "Kesseltemperatur" | id, type, write | - -Type: - -- Switch use for boolean values -- Number use for any number -- Other types may work as well. +| Type | Name | Description | Configuration | +|--------------------|---------|--------------------|---------------| +| Number:Temperature | DpId004 | "Kesseltemperatur" | | Name: @@ -80,11 +74,18 @@ Note: Not all available types of the ISM8 interface are fully supported, but this can be extended. For the moment the following data types are implemented: -- DPT-Bool: `1.001`, `1.002`, `1.003`, `1.009` -- DPT-Scaling: `5.001` -- DPT-Value: `9.001`, `9.002`, `9.006` -- DPT-FlowRate: `13.002` -- DPT-Mode: `20.102`, `20.103`, `20.105` +| Channel type | Datapoint type | Item type | R/W | KNX-type's | +|----------------|--------------------------------|---------------------------|-----|----------------------------| +| switch-rw | Digital DataPoint | Switch | R/W | 1.001, 1.002, 1.003, 1.009 | +| switch-r | Digital Readonly DataPoint | Switch | R | 1.001, 1.002, 1.003, 1.009 | +| percentage-rw | Percentage DataPoint | Number:Dimensionless | R/W | 5.001 | +| percentage-r | Percentage Readonly DataPoint | Number:Dimensionless | R | 5.001 | +| temperature-rw | Temperature DataPoint | Number:Temperature | R/W | 9.001,9.002 | +| temperature-r | Temperature Readonly DataPoint | Number:Temperature | R | 9.002,9.002 | +| pressure-r | Pressure Readonly DataPoint | Number:Pressure | R | 9.006 | +| flowrate-r | Flowrate Readonly DataPoint | Number:VolumetricFlowRate | R | 13.002 | +| mode-rw | Mode DataPoint | Number:Dimensionless | R/W | 20.102, 20.103, 20.105 | +| mode-r | Mode Readonly DataPoint | Number:Dimensionless | R | 20.102, 20.103, 20.105 | ## Full Example @@ -93,29 +94,29 @@ For the moment the following data types are implemented: ```java Thing ism8:device:heater "Wolf Heizung" [portNumber=12004] { - Type switch-readonly : DpId001 "Störung Heizgerät" [id=1, type="1.001"] - Type number-readonly : DpId002 "Betriebsart" [id=2, type="20.105"] - Type number-readonly : DpId003 "Brennerleistung" [id=3, type="5.001"] - Type number-readonly : DpId004 "Kesseltemperatur" [id=4, type="9.001"] - Type number-readonly : DpId006 "Rücklauftemperatur" [id=6, type="9.001"] - Type number-readonly : DpId007 "Warmwassertemperatur" [id=7, type="9.001"] - Type number-readonly : DpId008 "Außentemperatur" [id=8, type="9.001"] - Type switch-readonly : DpId009 "Status Flamme" [id=9, type="1.001"] - Type number-readonly : DpId013 "Anlagendruck" [id=13, type="9.006"] - Type number-readonly : DpId053 "Störung Systemmodul" [id=53, type="1.001"] - Type number-readonly : DpId054 "Außentemperatur Systemmodul" [id=54, type="9.001"] - Type number : DpId056 "Sollwert Warmwasser" [id=56, type="9.001"] - Type number : DpId057 "Betriebsart Heizkreis" [id=57, type="20.102"] - Type number : DpId058 "Betriebsart Warmwasser" [id=58, type="20.103"] - Type number : DpId065 "Sollwertverschiebung" [id=65, type="9.002"] - Type number-readonly : DpId148 "CML Störung" [id=148, type="1.001"] - Type number : DpId149 "CWL Betriebsart" [id=149, type="20.102"] - Type number-readonly : DpId163 "CWL Lüftungsstufe" [id=163, type="5.001"] - Type number-readonly : DpId164 "CWL Ablufttemperatur" [id=164, type="9.001"] - Type number-readonly : DpId165 "CWL Zulufttemperatur" [id=165, type="9.001"] - Type number-readonly : DpId166 "CWL Luftdurchsatz Zuluft" [id=166, type="13.002"] - Type number-readonly : DpId167 "CWL Luftdurchsatz Abluft" [id=167, type="13.002"] - Type number-readonly : DpId192 "CML Filterwarnung" [id=192, type="1.001"] + Type switch-r : DpId001 "Störung Heizgerät" [id=1, type="1.001"] + Type number-r : DpId002 "Betriebsart" [id=2, type="20.105"] + Type percentage-r : DpId003 "Brennerleistung" [id=3, type="5.001"] + Type temperature-r : DpId004 "Kesseltemperatur" [id=4, type="9.001"] + Type temperature-r : DpId006 "Rücklauftemperatur" [id=6, type="9.001"] + Type temperature-r : DpId007 "Warmwassertemperatur" [id=7, type="9.001"] + Type temperature-r : DpId008 "Außentemperatur" [id=8, type="9.001"] + Type switch-r : DpId009 "Status Flamme" [id=9, type="1.001"] + Type temperature-r : DpId013 "Anlagendruck" [id=13, type="9.006"] + Type switch-r : DpId053 "Störung Systemmodul" [id=53, type="1.001"] + Type temperature-r : DpId054 "Außentemperatur Systemmodul" [id=54, type="9.001"] + Type temperature-rw : DpId056 "Sollwert Warmwasser" [id=56, type="9.001"] + Type mode-rw : DpId057 "Betriebsart Heizkreis" [id=57, type="20.102"] + Type mode-rw : DpId058 "Betriebsart Warmwasser" [id=58, type="20.103"] + Type temperature-rw : DpId065 "Sollwertverschiebung" [id=65, type="9.002"] + Type switch-rw : DpId148 "CML Störung" [id=148, type="1.001"] + Type mode-rw : DpId149 "CWL Betriebsart" [id=149, type="20.102"] + Type percentage-r : DpId163 "CWL Lüftungsstufe" [id=163, type="5.001"] + Type temperature-r : DpId164 "CWL Ablufttemperatur" [id=164, type="9.001"] + Type temperature-r : DpId165 "CWL Zulufttemperatur" [id=165, type="9.001"] + Type flowrate-r : DpId166 "CWL Luftdurchsatz Zuluft" [id=166, type="13.002"] + Type flowrate-r : DpId167 "CWL Luftdurchsatz Abluft" [id=167, type="13.002"] + Type switch-r : DpId192 "CML Filterwarnung" [id=192, type="1.001"] } ``` diff --git a/_addons_bindings/knx/readme.md b/_addons_bindings/knx/readme.md index 90dd74dab..56b45d820 100644 --- a/_addons_bindings/knx/readme.md +++ b/_addons_bindings/knx/readme.md @@ -62,7 +62,8 @@ as multicast traffic is typically not forwarded. ### IP Gateway -The IP Gateway is the most commonly used way to connect to the KNX bus. At its base, the _ip_ bridge accepts the following configuration parameters: +The IP Gateway is the most commonly used way to connect to the KNX bus. +At its base, the _ip_ bridge accepts the following configuration parameters: | Name | Required | Description | Default value | |---------------------|--------------|--------------------------------------------------------------------------------------------------------------|------------------------------------------------------| @@ -101,9 +102,10 @@ The _serial_ bridge accepts the following configuration parameters: _basic_ Things are wrappers around arbitrary group addresses on the KNX bus. They have no specific function in the KNX binding, except that if the _address_ is defined, the binding will actively poll the Individual Address on the KNX bus to detect that the KNX actuator is reachable. Under normal real-world circumstances, either all devices on a bus are reachable, or the entire bus is down. -If line couplers are installed, physical device addressing might be filtered; in this case please do not specify the addresses for devices on this line. -When _fetch_ is set to true, the binding will read-out the memory of the KNX actuator in order to detect configuration data and so forth. -This is however an experimental feature, very prone to the actual on the KNX bus. +If line couplers are installed, physical device addressing might be filtered; in this case, please do not specify the addresses for devices on this line. +When _fetch_ is set to true, the binding will read out the memory of the KNX actuator in order to detect configuration data and so forth. +This is just for information and has no effect on the functionality of the binding. +It can safely be turned off to save bandwidth on the bus or avoid problems with older devices. | Name | Required | Description | Default value | |--------------|----------|--------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------| @@ -113,7 +115,7 @@ This is however an experimental feature, very prone to the actual on the KNX bus | readInterval | N | Interval (in seconds) to actively request reading of values from the bus (0 if they should only be read once at startup) | 0 | Different kinds of channels are defined and can be used to group together Group Addresses. -All channels of a device share one configuration parameter defined on device level: _readInterval_, an optional parameter which indicates if 'readable' group addresses of that Channel should be read periodically at the given interval, in seconds. +All channels of a device share one configuration parameter defined at the device level: _readInterval_, an optional parameter that indicates if the 'readable' group addresses of that Channel should be read periodically at the given interval, in seconds. 'Readable' group addresses are marked with an `<` in the group address definition of a Channel, see below. All readable group addresses are queried by openHAB during startup. If readInterval is not specified or set to 0, no further periodic reading will be triggered (default: 0). @@ -121,10 +123,10 @@ If readInterval is not specified or set to 0, no further periodic reading will b #### Channel Types Standard channels are used most of the time. -They are used in the common case where the physical state is owned by a device within the KNX bus, e.g. by a switch actuator who "knows" whether the light is turned on or off, or by a temperature sensor which reports the room temperature regularly. +They are used in the common case where the physical state is owned by a device within the KNX bus, e.g., by a switch actuator that "knows" whether the light is turned on or off, or by a temperature sensor that reports the room temperature regularly. Control channel types (suffix `-control`) are used for cases where the KNX bus does not own the physical state of a device. -This could be the case if e.g. a lamp from another binding should be controlled by a KNX wall switch. +This could be the case if, for example, a lamp from another binding should be controlled by a KNX wall switch. When a `GroupValueRead` telegram is sent from the KNX bus to a *-control Channel, the bridge responds with a `GroupValueResponse` telegram to the KNX bus. ##### Channel Type `color`, `color-control` @@ -141,10 +143,11 @@ The `hsb` address supports DPT 232.600 (RGB), 242.600 (xyY), and 251.600 (RGBW). Some RGB/RGBW products (e.g. MDT) use HSB values for DPT 232.600 instead of RGB. This is supported as "vendor-specific DPT" with a value of 232.60000. -RGBW (DPT 251.600) can either be converted to HSBType, or be represented two items: a HSBType for RGB and an additional PercentType for W channel. +RGBW (DPT 251.600) can either be converted to HSBType, or represented by two items: a HSBType for RGB and an additional PercentType for the W channel. Default handling for RGBW is to use separate items. -Note that this also requires two frames being sent out separately when these elements are sent to the bus, as the binary representation uses a partially populated KNX frame. -Alternatively, a single HSB item can be used. Conversion to a single HSBType will loose the exact setting for W, and will reconstruct it when a conversion to RGBW is required. +Note that this also requires two frames to be sent out separately when these elements are sent to the bus, as the binary representation uses a partially populated KNX frame. +Alternatively, a single HSB item can be used. +Conversion to a single HSBType will lose the exact setting for W, and will reconstruct it when a conversion to RGBW is required. This option can be selected using the special DPT 251.60600. ##### Channel Type `contact`, `contact-control` @@ -153,7 +156,7 @@ This option can be selected using the special DPT 251.60600. |-----------|---------------|-------------| | ga | Group address | 1.009 | -*Attention:* Due to a bug in the original implementation, the states for DPT 1.009 are inverted (i.e. `1` is mapped to `OPEN` instead of `CLOSE`). +*Attention:* Due to a bug in the original implementation, the states for DPT 1.009 are inverted (i.e., `1` is mapped to `OPEN` instead of `CLOSE`). A change would break all existing installations and is therefore not implemented. ##### Channel Type `datetime`, `datetime-control` @@ -182,10 +185,10 @@ Using the UoM feature of openHAB (QuantityType) requires that the DPT value is s Automatic type conversion will be applied if required. Incoming values from the KNX bus are converted to values with units (e.g. `23 °C`). -If the channel is linked to the correct item-type (`Number:Temperature` in this case) the display unit can be controlled by item metadata (e.g. `%.1f °F` for 1 digit of precision in Fahrenheit). -The unit is stripped if the channel is linked to a plain number item (type `Number`). +If the channel is linked to the correct item-type (`Number:Temperature` in this case), the display unit can be controlled by item metadata (e.g., `%.1f °F` for 1 digit of precision in Fahrenheit). +The unit is stripped if the channel is linked to a plain number item (type `Number`). -Outgoing values with unit are first converted to the unit associated with the DPT (e.g. a value of `10 °F` is converted to `-8.33 °C` if the channel has DPT 9.001). +Outgoing values with unit are first converted to the unit associated with the DPT (e.g., a value of `10 °F` is converted to `-8.33 °C` if the channel has DPT 9.001). Values from plain number channels are sent as-is (without any conversion). ##### Channel Type `rollershutter`, `rollershutter-control` @@ -211,7 +214,7 @@ Values from plain number channels are sent as-is (without any conversion). #### Control Channel Types In contrast to the standard channels above, the control channel types are used for cases where the KNX bus does not own the physical state of a device. -This could for example be the case if a lamp from another binding should be controlled by a KNX wall switch. +This could, for example, be the case if a lamp from another binding should be controlled by a KNX wall switch. When a `GroupValueRead` telegram is sent from the KNX bus to a *-control Channel, the bridge responds with a `GroupValueResponse` telegram to the KNX bus. ##### Channel Type "switch-control" @@ -253,7 +256,7 @@ A change would break all existing installations and is therefore not implemented |-----------|---------------|-------------| | ga | Group address | 9.001 | -For UoM support see the explanations of the `number` channel. +For UoM support, see the explanations of the `number` channel. ##### Channel Type "string-control" @@ -281,16 +284,167 @@ where parts in brackets `[]` denote optional information. This is recommended if you have a dedicated status group address which is added as `listeningGA`. The optional `<` sign tells whether the group address of the datapoint accepts read requests on the KNX bus (it does, if the sign is there). -The group addresses marked with `<` are read by openHAB during startup. +The group addresses marked with `<` are read by openHAB during startup. Future versions might support reading from one GA only. With `*-control` channels, the state is not owned by any device on the KNX bus, therefore no read requests will be sent by the binding, i.e. `<` signs will be ignored for them. The element `dpt` is highly recommended and may change to a mandatory element in future versions. If omitted, the corresponding default value will be used (see the channel descriptions above). +## Mapping DPTs to openHAB Types + +Datapoint Types (DPTs) define how the content of a KNX telegram is interpreted. + +The following table is a complete list of DPTs currently supported by openHAB. +OpenHAB supports all DPTs supported by the corresponding release of the Calimero library, plus a few [specific additions](#special-dpts). + +The default mapping is given, however DPTs can be overwritten. +KNX frames do not contain information about the encoding or DPT, so any DPT with a compatible byte size and a useful encoding can be used. +A good example for this are bitfields represented as String which are mapped to a DPT of DecimalType for handling in rules. +For more details, see the KNX specification (section 3.7.2, System Specifications, Interworking, Datapoint Types). + +In case a missing DPT or subtype is needed, there is a good chance that a DPT of matching size and DecimalType is found. +Further DPTs and subtypes may be added later once implemented and released in the [Calimero library](https://github.com/calimero-project/calimero-core). + +| DPT | Primary openHAB type (things) (items with UOM) | Remark | +|-----------------|----------------------------------------------------|-----------------------------------| +| 1.001-1.007 | OnOffType (switch), OpenClosedType (contact) | | +| 1.008 | UpDownType (e.g. for dimmer, rollershutter) | | +| 1.009 | OnOffType (switch), OpenClosedType (contact) | Not according to spec, see above | +| 1.010 | StopMoveType (e.g. for rollershutter) | | +| 1.011-1.016 | OnOffType (switch), OpenClosedType (contact) | | +| 1.017 | OnOffType (switch), OpenClosedType (contact) | Trigger, use states OFF or CLOSED | +| 1.018-1.019 | OnOffType (switch), OpenClosedType (contact) | | +| 1.021 | OnOffType (switch), OpenClosedType (contact) | | +| 1.022 | DecimalType (number) | Counting from 0, use DPT if you need a DecimalType | +| 1.023-1.024 | OnOffType (switch), OpenClosedType (contact) | | +| 1.100 | OnOffType (switch), OpenClosedType (contact) | | +| 1.1200-1.1201 | OnOffType (switch), OpenClosedType (contact) | | +||| +| 2.001-2.012 | DecimalType (number) | | +||| +| 3.007 | IncreaseDecreaseType (e.g. dimmer) | | +| 3.008 | UpDownType (e.g. rollershutter) | | +||| +| 5.001 | QuantityType\<> (number) (Number:Percent) | Alternatively: PercentType | +| 5.003 | QuantityType\<> (number) (Number:Angle) | | +| 5.004 | QuantityType\<> (number) (Number:Percent) | 0-255%, no mapping to PercentType | +| 5.005 | DecimalType (number) | | +| 5.006 | DecimalType (number) | 255 is reserved | +| 5.010 | DecimalType (number) | | +||| +| 6.001 | QuantityType\<> (number) (Number:Percent) | -128..127%, no mapping to PercentType | +| 6.010 | DecimalType (number) | -128..127 | +| 6.020 | StringType (string) | Override with DPT5.010 if you need DecimalType | +||| +| 7.001 | DecimalType (number) | | +| 7.002-7.007 | QuantityType\<> (number) (Number:Time) | | +| 7.010 | DecimalType (number) | | +| 7.011 | QuantityType\<> (number) (Number:Length) | | +| 7.012 | QuantityType\<> (number) (Number:ElectricCurrent) | | +| 7.013 | QuantityType\<> (number) (Number:Length) | | +| 7.600 | QuantityType\<> (number) (Number:Temperature) | | +||| +| 8.001 | DecimalType (number) | | +| 8.002-7.007 | QuantityType\<> (number) (Number:Time) | | +| 8.010 | QuantityType\<> (number) (Number:Percent) | | +| 8.011 | QuantityType\<> (number) (Number:Angle) | | +| 8.012 | QuantityType\<> (number) (Number:Length) | | +||| +| 9.xxx | QuantityType\<> (number) (Number:...) | See [documentation on UOM](https://www.openhab.org/docs/concepts/units-of-measurement.html) | +| 9.001 | QuantityType\<> (number) (Number:...) | Lower values than absolute zero will be set to -273 °C | +| 9.002-9.003 | QuantityType\<> (number) (Number:...) | | +| 9.004-9.008 | QuantityType\<> (number) (Number:...) | No negative values allowed | +| 9.009-9.011 | QuantityType\<> (number) (Number:...) | | +| 9.020-9.027 | QuantityType\<> (number) (Number:...) | | +| 9.027-9.030 | QuantityType\<> (number) (Number:...) | No negative values allowed | +||| +| 10.001 | DateTimeType (datetime) | Time. Date is set to 1/Jan/1970 + ofs if weekday is given. KNX can represent year 1990..2089. | +||| +| 11.001 | DateTimeType (datetime) | Date only. | +||| +| 12.001 | DecimalType (number) | | +| 12.100-12.102 | QuantityType\<> (number) (Number:Time) | | +| 12.1200-12.1201 | QuantityType\<> (number) (Number:Volume) | | +||| +| 13.xxx | QuantityType\<> (number) (Number:...) | See [documentation on UOM](https://www.openhab.org/docs/concepts/units-of-measurement.html) | +| 13.001 | DecimalType (number) | | +| 13.002 | QuantityType\<> (number) (Number:VolumetricFlowRate) | | +| 13.010-13.016 | QuantityType\<> (number) (Number:...) | | +| 13.100 | QuantityType\<> (number) (Number:...) | | +| 13.1200-13.1201 | QuantityType\<> (number) (Number:Time) | | +||| +| 14.xxx | QuantityType\<> (number) (Number:...) | See [documentation on UOM](https://www.openhab.org/docs/concepts/units-of-measurement.html) | +| 14.000-14.080 | QuantityType\<> (number) (Number:...) | | +| 14.1200-14.1201 | QuantityType\<> (number) (Number:...) | | +||| +| 16.000 | StringType (string) | ASCII | +| 16.001 | StringType (string) | ISO 8859-1 | +||| +| 17.001 | DecimalType (number) | Scene 0..63 | +||| +| 18.001 | DecimalType (number) | Scene 0..63, add offset 0x80 (128) for storing scenes | +||| +| 19.001 | DateTimeType (datetime) (DateTime) | Date and Time, year can be 1900..2155 | +||| +| 20.xxx | | Incomplete, only subtypes given below are supported; override with DPT5.010 if you need enum as DecimalType | +| 20.001-20.009 | StringType (string) | | +| 20.011-20.014 | StringType (string) | | +| 20.017 | StringType (string) | | +| 20.020-20.021 | StringType (string) | | +| 20.100-20.114 | StringType (string) | | +| 20.120-20.122 | StringType (string) | | +| 20.600-20.610 | StringType (string) | | +| 20.801-20.804 | StringType (string) | | +| 20.1000-20.1005 | StringType (string) | | +| 20.1200 | StringType (string) | | +| 20.1202 | StringType (string) | | +||| +| 21.xxx | | Incomplete, only subtypes given below are supported; override with DPT5.010 if you need bitset as DecimalType | +| 21.001-20.002 | StringType (string) | | +| 21.100-20.106 | StringType (string) | | +| 21.601 | StringType (string) | | +| 21.1000-21.1002 | StringType (string) | | +| 21.1010 | StringType (string) | | +||| +| 22.xxx | | Incomplete, only subtypes given below are supported; override with DPT7.010 if you need bitset as DecimalType | +| 22.101 | StringType (string) | | +| 22.1000 | StringType (string) | | +||| +| 28.001 | StringType (string) | KNX representation is Null-terminated, do not include null characters | +||| +| 29.010-29.012 | QuantityType\<> (number) (Number:...) | | +||| +| 229.001 | DecimalType (number) | Scaling coded in KNX frame is regarded; for sending always encoded with flag "dimensionless" | +||| +| 232.600 | HSBType (color) | RGB | +| 232.60000 | HSBType (color) | Non-Standard, DPT 232.600 with HSB instead of RGB data | +||| +| 235.001 | QuantityType\<> (number) (Number:ActiveEnergy) | Composed DPT 235.001, first element ActiveEnergy (Wh), read only | +| 235.61001 | DecimalType (number) | Non-Standard, composed DPT 235.001, second element Tariff (plain number), read only | +||| +| 242.600 | HSBType (color) | xyY | +||| +| 243.600 | StringType (string) | | +||| +| 249.600 | StringType (string) | | +||| +| 250.600 | StringType (string) | | +||| +| 251.600 | HSBType (color) | RGBW, RGB part as HSBType | +| 251.600 | PercentType | RGBW, W part separately for Dimmer | +| 251.60600 | HSBType (color) | Non-Standard, lossy conversion from HSBType to RGBW | +||| +| 252.600 | StringType (string) | | +||| +| 253.600 | StringType (string) | | +||| +| 254.600 | StringType (string) | | +||| + ## Special DPTs -OpenHAB supports all DPTs supported by the corresponding release of Calimero library. +OpenHAB supports all DPTs supported by the corresponding release of the Calimero library. Additional DPTs have been introduced to add functionality: @@ -307,9 +461,9 @@ Additional DPTs have been introduced to add functionality: ### KNX IP Secure KNX IP Secure protects the traffic between openHAB and your KNX installation. -It **requires a KNX Secure Router or a Secure IP Interface** and a KNX installation **with security features enabled in ETS tool**. +It **requires a KNX Secure Router or a Secure IP Interface** and a KNX installation **with security features enabled in the ETS tool**. -For _Secure routing_ mode, the so called `backbone key` needs to be configured in openHAB. +For _Secure routing_ mode, the so-called `backbone key` needs to be configured in openHAB. It is created by the ETS tool and cannot be changed via the ETS user interface. - The backbone key can be extracted from Security report (ETS, Reports, Security, look for a 32-digit key) and specified in parameter `routerBackboneKey`. @@ -317,12 +471,16 @@ It is created by the ETS tool and cannot be changed via the ETS user interface. For _Secure tunneling_ with a Secure IP Interface (or a router in tunneling mode), more parameters are required. A unique device authentication key, and a specific tunnel identifier and password need to be available. -- All information can be looked up in ETS and provided separately: `tunnelDeviceAuthentication`, `tunnelUserPassword`. `tunnelUserId` is a number which is not directly visible in ETS, but can be looked up in keyring export or deduced (typically 2 for the first tunnel of a device, 3 for the second one, ...). `tunnelUserPasswort` is set in ETS in the properties of the tunnel (below the IP interface you will see the different tunnels listed) denoted as "Password". `tunnelDeviceAuthentication` is set in the properties of the IP interface itself, check for a tab "IP" and a description "Authentication Code". +- All information can be looked up in ETS and provided separately: `tunnelDeviceAuthentication`, `tunnelUserPassword`. + `tunnelUserId` is a number that is not directly visible in ETS, but can be looked up in keyring export or deduced (typically 2 for the first tunnel of a device, 3 for the second one, ...). + `tunnelUserPasswort` is set in ETS in the properties of the tunnel (below the IP interface, you will see the different tunnels listed) and denoted as "Password". + `tunnelDeviceAuthentication` is set in the properties of the IP interface itself; check for the tab "IP" and the description "Authentication Code". ### KNX Data Secure -KNX Data Secure protects the content of messages on the KNX bus. In a KNX installation, both classic and secure group addresses can coexist. -Data Secure does _not_ necessarily require a KNX Secure Router or a Secure IP Interface, but a KNX installation with newer KNX devices which support Data Secure and with **security features enabled in ETS tool**. +KNX Data Secure protects the content of messages on the KNX bus. +In a KNX installation, both classic and secure group addresses can coexist. +Data Secure does _not_ necessarily require a KNX Secure Router or a Secure IP Interface, but a KNX installation with newer KNX devices that support Data Secure and with **security features enabled in the ETS tool**. > NOTE: **openHAB currently ignores messages with secure group addresses.** diff --git a/_addons_bindings/mybmw/readme.md b/_addons_bindings/mybmw/readme.md index 65e03fc1c..a525e3308 100644 --- a/_addons_bindings/mybmw/readme.md +++ b/_addons_bindings/mybmw/readme.md @@ -120,10 +120,10 @@ So if want your UI in english language place _en_ as desired language. Same configuration is needed for all things -| Parameter | Type | Description | -|-----------------|---------|---------------------------------------| -| vin | text | Vehicle Identification Number (VIN) | -| refreshInterval | integer | Refresh Interval in Minutes | +| Parameter | Type | Description | +|-----------------|---------|-------------------------------------------------------------------------------------------------------------------------| +| vin | text | Vehicle Identification Number (VIN) | +| refreshInterval | integer | Refresh Interval in Minutes (by default set to 60; to be set to 0 if no automated refresh should be triggered) | #### Advanced Configuration @@ -147,9 +147,10 @@ They differ for each vehicle type, build-in sensors and activated services. | Channel Group ID | Description | conv | phev | bev_rex | bev | |----------------------------------|---------------------------------------------------|------|------|---------|-----| +| [update](#vehicle-update) | Overall vehicle status | X | X | X | X | | [status](#vehicle-status) | Overall vehicle status | X | X | X | X | +| [doors](#doors-details) | Details of all doors and windows | X | X | X | X | | [range](#range-data) | Provides mileage, range and charge / fuel levels | X | X | X | X | -| [doors](#doors-details) | Detials of all doors and windows | X | X | X | X | | [check](#check-control) | Shows current active CheckControl messages | X | X | X | X | | [service](#services) | Future vehicle service schedules | X | X | X | X | | [location](#location) | Coordinates and heading of the vehicle | X | X | X | X | @@ -160,6 +161,25 @@ They differ for each vehicle type, build-in sensors and activated services. | [tires](#tire-pressure) | Current and wanted pressure for all tires | X | X | X | X | | [image](#image) | Provides an image of your vehicle | X | X | X | X | +#### Vehicle Update + +The BMW API has limits in the requests per time period. +This leads to unexpected errors stating that some quota is reached and the next successful request can be triggered in X minutes. +In this case the bridge as well as the vehicle things can be set to offline and nothing can be done with them anymore until the next successful refresh. +To reduce the probability of the error, the default automated API update has been set to 60 Minutes, but this is often not sufficient to retrieve continuous range or charging updates. +These channels can be used to control the update behavior from openHAB, e.g. via rules. + +- Channel Group ID is status +- Available for all vehicles (charging channel only for xEV) +- switches which can be triggered by a command +- if the switches are set to ON, then immediately they will be set to OFF again for being able to trigger the next update + +| Channel ID | Type | Description | conv | phev | bev_rex | bev | +|-----------------|--------|----------------------------------------------------------------------------------------------------------|------|------|---------|-----| +| state-update | Switch | When set to ON, the state channels of the vehicle will be updated | X | X | X | X | +| charging-update | Switch | When set to ON, the charging statistics and charging sessions channels of the vehicle will be updated | | X | X | X | +| image-update | Switch | When set to ON, the image of the vehicle will be updated | X | X | X | X | + #### Vehicle Status Reflects overall status of the vehicle. @@ -168,19 +188,19 @@ Reflects overall status of the vehicle. - Available for all vehicles - Read-only values -| Channel Label | Channel ID | Type | Description | conv | phev | bev_rex | bev | -|---------------------------|---------------------|---------------|------------------------------------------------|------|------|---------|-----| -| Overall Door Status | doors | String | Combined status for all doors | X | X | X | X | -| Overall Window Status | windows | String | Combined status for all windows | X | X | X | X | -| Doors Locked | lock | String | Status if vehicle is secured | X | X | X | X | -| Next Service Date | service-date | DateTime | Date of next upcoming service | X | X | X | X | -| Mileage till Next Service | service-mileage | Number:Length | Mileage till upcoming service | X | X | X | X | -| Check Control | check-control | String | Presence of active warning messages | X | X | X | X | -| Plug Connection Status | plug-connection | String | Plug is _Connected_ or _Not connected_ | | X | X | X | -| Charging Status | charge | String | Current charging status | | X | X | X | -| Remaining Charging Time | charge-remaining | Number:Time | Remaining time for current charging session | | X | X | X | -| Last Status Timestamp | last-update | DateTime | Date and time of last status update | X | X | X | X | -| Last Fetched Timestamp | last-fetched | DateTime | Date and time of last time status fetched | X | X | X | X | +| Channel ID | Type | Description | conv | phev | bev_rex | bev | +|---------------------|---------------|------------------------------------------------|------|------|---------|-----| +| doors | String | Combined status for all doors | X | X | X | X | +| windows | String | Combined status for all windows | X | X | X | X | +| lock | String | Status if vehicle is secured | X | X | X | X | +| service-date | DateTime | Date of next upcoming service | X | X | X | X | +| service-mileage | Number:Length | Mileage till upcoming service | X | X | X | X | +| check-control | String | Presence of active warning messages | X | X | X | X | +| plug-connection | String | Plug is _Connected_ or _Not connected_ | | X | X | X | +| charge | String | Current charging status | | X | X | X | +| charge-remaining | Number:Time | Remaining time for current charging session | | X | X | X | +| last-update | DateTime | Date and time of last status update | X | X | X | X | +| last-fetched | DateTime | Date and time of last time status fetched | X | X | X | X | Overall Door Status values @@ -223,9 +243,9 @@ The _raw data channel_ is marked as _advanced_ and isn't shown by default. Target are advanced users to derive even more data out of BMW API replies. As the replies are formatted as JSON use the [JsonPath Transformation Service](https://www.openhab.org/addons/transformations/jsonpath/) to extract data for an item, -| Channel Label | Channel ID | Type | Description | -|---------------------------|---------------------|---------------|------------------------------------------------| -| Raw Data | raw | String | Unfiltered JSON String of vehicle data | +| Channel ID | Type | Description | +|---------------------|---------------|------------------------------------------------| +| raw | String | Unfiltered JSON String of vehicle data | @@ -254,19 +274,19 @@ See description [Range vs Range Radius](#range-vs-range-radius) to get more info - Availability according to table - Read-only values -| Channel Label | Channel ID | Type | conv | phev | bev_rex | bev | -|------------------------------------|----------------------------|----------------------|------|------|---------|-----| -| Mileage | mileage | Number:Length | X | X | X | X | -| Fuel Range | range-fuel | Number:Length | X | X | X | | -| Electric Range | range-electric | Number:Length | | X | X | X | -| Hybrid Range | range-hybrid | Number:Length | | X | X | | -| Battery Charge Level | soc | Number:Dimensionless | | X | X | X | -| Remaining Fuel | remaining-fuel | Number:Volume | X | X | X | | -| Estimated Fuel Consumption l/100km | estimated-fuel-l-100km | Number | X | X | X | | -| Estimated Fuel Consumption mpg | estimated-fuel-mpg | Number | X | X | X | | -| Fuel Range Radius | range-radius-fuel | Number:Length | X | X | X | | -| Electric Range Radius | range-radius-electric | Number:Length | | X | X | X | -| Hybrid Range Radius | range-radius-hybrid | Number:Length | | X | X | | +| Channel ID | Type | Description | conv | phev | bev_rex | bev | +|----------------------------|----------------------|-----------------------------------------------|------|------|---------|-----| +| mileage | Number:Length | Current mileage of the vehicle | X | X | X | X | +| range-fuel | Number:Length | Fuel range | X | X | X | | +| range-electric | Number:Length | Electric range | | X | X | X | +| range-hybrid | Number:Length | Combined hybrid range | | X | X | | +| soc | Number:Dimensionless | State of charge | | X | X | X | +| remaining-fuel | Number:Volume | Remaining fuel in l | X | X | X | | +| estimated-fuel-l-100km | Number | Estimated fuel consumption in l | X | X | X | | +| estimated-fuel-mpg | Number | Estimated fuel consumption in mpg | X | X | X | | +| range-radius-fuel | Number:Length | The calculated range radius combustion | X | X | X | | +| range-radius-electric | Number:Length | The calculated range radius electric | | X | X | X | +| range-radius-hybrid | Number:Length | The calculated range radius hybrid combined | | X | X | | #### Doors Details @@ -276,20 +296,20 @@ Detailed status of all doors and windows. - Available for all vehicles if corresponding sensors are built-in - Read-only values -| Channel Label | Channel ID | Type | -|----------------------------|-------------------------|---------------| -| Driver Door | driver-front | String | -| Driver Door Rear | driver-rear | String | -| Passenger Door | passenger-front | String | -| Passenger Door Rear | passenger-rear | String | -| Trunk | trunk | String | -| Hood | hood | String | -| Driver Window | win-driver-front | String | -| Driver Rear Window | win-driver-rear | String | -| Passenger Window | win-passenger-front | String | -| Passenger Rear Window | win-passenger-rear | String | -| Rear Window | win-rear | String | -| Sunroof | sunroof | String | +| Channel ID | Type | Description | +|-------------------------|---------------|-----------------------------------------| +| driver-front | String | Status of front door driver's side | +| driver-rear | String | Status of rear door driver's side | +| passenger-front | String | Status of front door passenger's side | +| passenger-rear | String | Status of rear door passenger's side | +| trunk | String | Status of trunk | +| hood | String | Status of hood | +| win-driver-front | String | Status of front window driver's side | +| win-driver-rear | String | Status of rear window driver's side | +| win-passenger-front | String | Status of front window passenger's side | +| win-passenger-rear | String | Status of rear window passenger's side | +| win-rear | String | Status of rear window | +| sunroof | String | Status of sunroof | Possible states @@ -308,11 +328,11 @@ If more than one message is active the channel _name_ contains all active messag - Available for all vehicles - Read/Write access -| Channel Label | Channel ID | Type | Access | -|---------------------------------|---------------------|----------------|------------| -| Check Control Description | name | String | Read/Write | -| Check Control Details | details | String | Read | -| Severity Level | severity | String | Read | +| Channel ID | Type | Access | +|---------------------|----------------|------------| +| name | String | Read/Write | +| details | String | Read | +| severity | String | Read | Severity Levels @@ -329,12 +349,12 @@ If more than one service is scheduled in the future the channel _name_ contains - Available for all vehicles - Read/Write access -| Channel Label | Channel ID | Type | Access | -|--------------------------------|---------------------|----------------|------------| -| Service Name | name | String | Read/Write | -| Service Details | details | String | Read | -| Service Date | date | DateTime | Read | -| Mileage till Service | mileage | Number:Length | Read | +| Channel ID | Type | Access | +|---------------------|----------------|------------| +| name | String | Read/Write | +| details | String | Read | +| date | DateTime | Read | +| mileage | Number:Length | Read | #### Location @@ -344,12 +364,12 @@ GPS location and heading of the vehicle. - Available for all vehicles with built-in GPS sensor. Function can be enabled/disabled in the head unit - Read-only values -| Channel Label | Channel ID | Type | -|---------------------|---------------------|---------------| -| GPS Coordinates | gps | Location | -| Heading | heading | Number:Angle | -| Address | address | String | -| Distance from Home | home-distance | Number:Length | +| Channel ID | Type | Description | +|---------------------|---------------|--------------------------------------------------------------| +| gps | Location | Current GPS coordinates of the vehicle | +| heading | Number:Angle | Current direction of the vehicle | +| address | String | Current address | +| home-distance | Number:Length | Calculated distance from configured home position of Openhab | #### Remote Services @@ -362,10 +382,10 @@ Parallel execution isn't supported. - Available for all commands mentioned in _Services Activated_. See [Vehicle Properties](#properties) for further details - Read/Write access -| Channel Label | Channel ID | Type | Access | -|-------------------------|---------------------|---------|--------| -| Remote Service Command | command | String | Write | -| Service Execution State | state | String | Read | +| Channel ID | Type | Access | +|---------------------|---------|--------| +| command | String | Write | +| state | String | Read | The channel _command_ provides options @@ -394,25 +414,25 @@ Charging options with date and time for preferred time windows and charging mode - Read access for UI. - There are 4 timers _T1, T2, T3 and T4_ available. Replace _X_ with number 1,2 or 3 to target the correct timer -| Channel Label | Channel ID | Type | -|----------------------------|---------------------------|----------| -| Charge Mode | mode | String | -| Charge Preferences | prefs | String | -| Charging Plan | control | String | -| SoC Target | target | String | -| Charging Energy Limited | limit | Switch | -| Window Start Time | window-start | DateTime | -| Window End Time | window-end | DateTime | -| A/C at Departure | climate | Switch | -| T_X_ Enabled | timer_X_-enabled | Switch | -| T_X_ Departure Time | timer_X_-departure | DateTime | -| T_X_ Monday | timer_X_-day-mon | Switch | -| T_X_ Tuesday | timer_X_-day-tue | Switch | -| T_X_ Wednesday | timer_X_-day-wed | Switch | -| T_X_ Thursday | timer_X_-day-thu | Switch | -| T_X_ Friday | timer_X_-day-fri | Switch | -| T_X_ Saturday | timer_X_-day-sat | Switch | -| T_X_ Sunday | timer_X_-day-sun | Switch | +| Channel ID | Type | +|---------------------------|----------| +| mode | String | +| prefs | String | +| control | String | +| target | String | +| limit | Switch | +| window-start | DateTime | +| window-end | DateTime | +| climate | Switch | +| timer_X_-enabled | Switch | +| timer_X_-departure | DateTime | +| timer_X_-day-mon | Switch | +| timer_X_-day-tue | Switch | +| timer_X_-day-wed | Switch | +| timer_X_-day-thu | Switch | +| timer_X_-day-fri | Switch | +| timer_X_-day-sat | Switch | +| timer_X_-day-sun | Switch | The channel _profile-mode_ supports @@ -432,11 +452,11 @@ Shows charge statistics of the current month - Available for electric and hybrid vehicles - Read-only values -| Channel Label | Channel ID | Type | -|----------------------------|-------------------------|----------------| -| Charge Statistic Month | title | String | -| Energy Charged | energy | Number:Energy | -| Charge Sessions | sessions | Number | +| Channel ID | Type | Description | +|-------------------------|----------------|-------------------------| +| title | String | Title of the statistics | +| energy | Number:Energy | Consumed energy | +| sessions | Number | Number of sessions | #### Charge Sessions @@ -447,13 +467,13 @@ If more than one message is active the channel _name_ contains all active messag - Available for electric and hybrid vehicles - Read-only values -| Channel Label | Channel ID | Type | -|---------------------------------|--------------|----------| -| Session Title | title | String | -| Session Details | subtitle | String | -| Charged Energy in Session | energy | String | -| Issues during Session | issue | String | -| Session Status | status | String | +| Channel ID | Type | Description | +|--------------|----------|-------------------------| +| title | String | Title of the session | +| subtitle | String | Subtitle of the session | +| energy | String | Consumed energy | +| issue | String | If an issue occurred | +| status | String | Status of the session | #### Tire Pressure @@ -463,16 +483,16 @@ Current and target tire pressure values - Available for all vehicles if corresponding sensors are built-in - Read-only values -| Channel Label | Channel ID | Type | -|----------------------------|-------------------------|------------------| -| Front Left | fl-current | Number:Pressure | -| Front Left Target | fl-target | Number:Pressure | -| Front Right | fr-current | Number:Pressure | -| Front Right Target | fr-target | Number:Pressure | -| Rear Left | rl-current | Number:Pressure | -| Rear Left Target | rl-target | Number:Pressure | -| Rear Right | rr-current | Number:Pressure | -| Rear Right Target | rr-target | Number:Pressure | +| Channel ID | Type | Description | +|-------------------------|------------------|------------------------------| +| fl-current | Number:Pressure | Current pressure front left | +| fl-target | Number:Pressure | Target pressure front left | +| fr-current | Number:Pressure | Current pressure front right | +| fr-target | Number:Pressure | Target pressure front right | +| rl-current | Number:Pressure | Current pressure rear left | +| rl-target | Number:Pressure | Target pressure rear left | +| rr-current | Number:Pressure | Current pressure rear right | +| rr-target | Number:Pressure | Target pressure rear right | #### Image @@ -482,10 +502,10 @@ Image representation of the vehicle. - Available for all vehicles - Read/Write access -| Channel Label | Channel ID | Type | Access | -|----------------------------|---------------------|--------|----------| -| Rendered Vehicle Image | png | Image | Read | -| Image Viewport | view | String | Write | +| Channel ID | Type | Access | Description | +|---------------------|--------|----------|---------------------------| +| png | Image | Read | The image as png | +| view | String | Write | The view port of the car | Possible view ports: diff --git a/_thing_types/org.openhab.binding.ism8/src/main/resources/OH-INF/thing/thing-types.xml b/_thing_types/org.openhab.binding.ism8/src/main/resources/OH-INF/thing/thing-types.xml index 477cf168a..e21c8946d 100644 --- a/_thing_types/org.openhab.binding.ism8/src/main/resources/OH-INF/thing/thing-types.xml +++ b/_thing_types/org.openhab.binding.ism8/src/main/resources/OH-INF/thing/thing-types.xml @@ -4,7 +4,8 @@ xmlns:thing="https://openhab.org/schemas/thing-description/v1.0.0" xsi:schemaLocation="https://openhab.org/schemas/thing-description/v1.0.0 https://openhab.org/schemas/thing-description-1.0.0.xsd"> - + ISM8 Interface @@ -17,7 +18,7 @@ - + Switch @@ -38,7 +39,7 @@ - + Switch @@ -60,9 +61,9 @@ - - Number - + + Number:Dimensionless + @@ -74,21 +75,33 @@ Put the KNX-type of the DataPoint (e.g. DPT_Value_Temp / 9.001) - - - - - - - - - Number - + + Number:Dimensionless + + + + + Put the number of the DataPoint ID to be mapped from the heating sytem. + + + + Put the KNX-type of the DataPoint (e.g. DPT_Value_Temp / 9.001) + + + + + + + + + Number:Temperature + + @@ -99,6 +112,102 @@ Put the KNX-type of the DataPoint (e.g. DPT_Value_Temp / 9.001) + + + + + + + + Number:Temperature + + + + + + Put the number of the DataPoint ID to be mapped from the heating sytem. + + + + Put the KNX-type of the DataPoint (e.g. DPT_Value_Temp / 9.001) + + + + + + + + + + Number:Pressure + + + + + + Put the number of the DataPoint ID to be mapped from the heating sytem. + + + + Put the KNX-type of the DataPoint (e.g. DPT_Value_Temp / 9.001) + + + + + + + + + Number:VolumetricFlowRate + + + + + + Put the number of the DataPoint ID to be mapped from the heating sytem. + + + + Put the KNX-type of the DataPoint (e.g. DPT_Value_Temp / 9.001) + + + + + + + + + Number:Dimensionless + + + + + Put the number of the DataPoint ID to be mapped from the heating sytem. + + + + Put the KNX-type of the DataPoint (e.g. DPT_Value_Temp / 9.001) + + + + + + + + + + + Number:Dimensionless + + + + + Put the number of the DataPoint ID to be mapped from the heating sytem. + + + + Put the KNX-type of the DataPoint (e.g. DPT_Value_Temp / 9.001) + diff --git a/_thing_types/org.openhab.binding.mybmw/src/main/resources/OH-INF/thing/ev-vehicle-update-group.xml b/_thing_types/org.openhab.binding.mybmw/src/main/resources/OH-INF/thing/ev-vehicle-update-group.xml new file mode 100644 index 000000000..1d7548ca8 --- /dev/null +++ b/_thing_types/org.openhab.binding.mybmw/src/main/resources/OH-INF/thing/ev-vehicle-update-group.xml @@ -0,0 +1,15 @@ + + + + + Triggering the vehicle update + + + + + + + diff --git a/_thing_types/org.openhab.binding.mybmw/src/main/resources/OH-INF/thing/thing-bev.xml b/_thing_types/org.openhab.binding.mybmw/src/main/resources/OH-INF/thing/thing-bev.xml index 79231853b..2cc92d329 100644 --- a/_thing_types/org.openhab.binding.mybmw/src/main/resources/OH-INF/thing/thing-bev.xml +++ b/_thing_types/org.openhab.binding.mybmw/src/main/resources/OH-INF/thing/thing-bev.xml @@ -13,6 +13,7 @@ Battery Electric Vehicle (BEV) + @@ -28,7 +29,7 @@ - 1 + 2 vin diff --git a/_thing_types/org.openhab.binding.mybmw/src/main/resources/OH-INF/thing/thing-bev_rex.xml b/_thing_types/org.openhab.binding.mybmw/src/main/resources/OH-INF/thing/thing-bev_rex.xml index 1053f4772..e21f6c544 100644 --- a/_thing_types/org.openhab.binding.mybmw/src/main/resources/OH-INF/thing/thing-bev_rex.xml +++ b/_thing_types/org.openhab.binding.mybmw/src/main/resources/OH-INF/thing/thing-bev_rex.xml @@ -13,6 +13,7 @@ Battery Electric Vehicle with Range Extender (BEV_REX) + @@ -28,7 +29,7 @@ - 1 + 2 vin diff --git a/_thing_types/org.openhab.binding.mybmw/src/main/resources/OH-INF/thing/thing-conv.xml b/_thing_types/org.openhab.binding.mybmw/src/main/resources/OH-INF/thing/thing-conv.xml index 52117d02a..1808edd81 100644 --- a/_thing_types/org.openhab.binding.mybmw/src/main/resources/OH-INF/thing/thing-conv.xml +++ b/_thing_types/org.openhab.binding.mybmw/src/main/resources/OH-INF/thing/thing-conv.xml @@ -13,6 +13,7 @@ Conventional Fuel Vehicle (CONV) + @@ -25,7 +26,7 @@ - 1 + 2 vin diff --git a/_thing_types/org.openhab.binding.mybmw/src/main/resources/OH-INF/thing/thing-phev.xml b/_thing_types/org.openhab.binding.mybmw/src/main/resources/OH-INF/thing/thing-phev.xml index 9777d60d4..8e2e0c1c9 100644 --- a/_thing_types/org.openhab.binding.mybmw/src/main/resources/OH-INF/thing/thing-phev.xml +++ b/_thing_types/org.openhab.binding.mybmw/src/main/resources/OH-INF/thing/thing-phev.xml @@ -13,6 +13,7 @@ Conventional Fuel Vehicle with supporting Electric Engine (PHEV) + @@ -28,7 +29,7 @@ - 1 + 2 vin diff --git a/_thing_types/org.openhab.binding.mybmw/src/main/resources/OH-INF/thing/vehicle-update-channel-types.xml b/_thing_types/org.openhab.binding.mybmw/src/main/resources/OH-INF/thing/vehicle-update-channel-types.xml new file mode 100644 index 000000000..b081aa998 --- /dev/null +++ b/_thing_types/org.openhab.binding.mybmw/src/main/resources/OH-INF/thing/vehicle-update-channel-types.xml @@ -0,0 +1,21 @@ + + + + Switch + + veto + + + Switch + + veto + + + Switch + + veto + + diff --git a/_thing_types/org.openhab.binding.mybmw/src/main/resources/OH-INF/thing/vehicle-update-group.xml b/_thing_types/org.openhab.binding.mybmw/src/main/resources/OH-INF/thing/vehicle-update-group.xml new file mode 100644 index 000000000..dec8a3de5 --- /dev/null +++ b/_thing_types/org.openhab.binding.mybmw/src/main/resources/OH-INF/thing/vehicle-update-group.xml @@ -0,0 +1,14 @@ + + + + + Triggering the vehicle update + + + + + +