[proteusecometer] Proteus Eco Meter Binding - Initial contribution (#11333)

* Proteus Eco Meter Binding

Signed-off-by: Matthias Herrmann <matthias.mh.herrmann@gmail.com>

* Fulfil some conventions and choose better tradeoffs

Signed-off-by: Matthias Herrmann <matthias.mh.herrmann@gmail.com>

* Patch shell script in another PR

Signed-off-by: Matthias Herrmann <matthias.mh.herrmann@gmail.com>

* Move 4 lines into another PR

Signed-off-by: Matthias Herrmann <matthias.mh.herrmann@gmail.com>

* Improvements

Signed-off-by: Matthias Herrmann <matthias.mh.herrmann@gmail.com>

* File based doc

Signed-off-by: Matthias Herrmann <matthias.mh.herrmann@gmail.com>

* Rename identifiers

Signed-off-by: Matthias Herrmann <matthias.mh.herrmann@gmail.com>

* Changed identifier

Signed-off-by: Matthias Herrmann <matthias.mh.herrmann@gmail.com>

* Uniformed unit pattern

Signed-off-by: Matthias Herrmann <matthias.mh.herrmann@gmail.com>
This commit is contained in:
Matthias Herrmann
2021-10-23 11:27:13 +02:00
committed by GitHub
parent 8337f8b92d
commit d2e6780140
20 changed files with 770 additions and 0 deletions

View File

@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<binding:binding id="proteusecometer" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:binding="https://openhab.org/schemas/binding/v1.0.0"
xsi:schemaLocation="https://openhab.org/schemas/binding/v1.0.0 https://openhab.org/schemas/binding-1.0.0.xsd">
<name>Proteus EcoMeter</name>
<description>Puts your EcoMeter data into openHAB</description>
</binding:binding>

View File

@@ -0,0 +1,24 @@
# binding
binding.proteusecometer.name = Proteus EcoMeter
binding.proteusecometer.description = Puts your EcoMeter data into openHAB
# thing types
thing-type.proteusecometer.EcoMeterS.label = Proteus EcoMeter S
thing-type.proteusecometer.EcoMeterS.description = Sensor for measuring water level of a cistern. Connected via USB
thing-type.config.proteusecometer.EcoMeterS.usbPort.label = USB Port
thing-type.config.proteusecometer.EcoMeterS.usbPort.description = USB port the device is connected to i.e. /dev/ttyUSB0
# channel types
channel-type.proteusecometer.Temperature.label = Temperature
channel-type.proteusecometer.Temperature.description = Temperature measured by the sensor
channel-type.proteusecometer.SensorLevel.label = Sensor Level
channel-type.proteusecometer.SensorLevel.description = The distance between the sensor and the water surface
channel-type.proteusecometer.UsableLevel.label = Usable Level in litre
channel-type.proteusecometer.UsableLevel.description = The usable level in litre
channel-type.proteusecometer.UsableLevelInPercent.label = Usable Level in percent
channel-type.proteusecometer.UsableLevelInPercent.description = The usable level in percent
channel-type.proteusecometer.TotalCapacity.label = Total Capacity
channel-type.proteusecometer.TotalCapacity.description = The total capacity of your cistern/tank

View File

@@ -0,0 +1,24 @@
# binding
binding.proteusecometer.name = Proteus EcoMeter
binding.proteusecometer.description = EcoMeter Sensordaten in openHAB
# thing types
thing-type.proteusecometer.EcoMeterS.label = Proteus EcoMeter S
thing-type.proteusecometer.EcoMeterS.description = Füllstandsanzeige für Zisterne, Wassertanks, Erdtanks
thing-type.config.proteusecometer.EcoMeterS.usbPort.label = USB Port
thing-type.config.proteusecometer.EcoMeterS.usbPort.description = USB Port des Geräts, z.B. /dev/ttyUSB0
# channel types
channel-type.proteusecometer.Temperature.label = Temperatur
channel-type.proteusecometer.Temperature.description = Umgebungstemperatur des Sensors
channel-type.proteusecometer.SensorLevel.label = Sensorhöhe
channel-type.proteusecometer.SensorLevel.description = Sensorhöhe über Flüssigkeitsoberfläche
channel-type.proteusecometer.UsableLevel.label = Füllmenge in Liter
channel-type.proteusecometer.UsableLevel.description = Füllmenge in Liter
channel-type.proteusecometer.UsableLevelInPercent.label = Füllmenge in Prozent
channel-type.proteusecometer.UsableLevelInPercent.description = Füllmenge in Prozent
channel-type.proteusecometer.TotalCapacity.label = Gesamtkapazität
channel-type.proteusecometer.TotalCapacity.description = Gesamtkapazität des Messobjekts

View File

@@ -0,0 +1,62 @@
<?xml version="1.0" encoding="UTF-8"?>
<thing:thing-descriptions bindingId="proteusecometer"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
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">
<thing-type id="EcoMeterS">
<label>Proteus EcoMeter S</label>
<description>Sensor for measuring water level of a cistern. Connected via USB</description>
<channels>
<channel id="temperature" typeId="Temperature"/>
<channel id="sensorLevel" typeId="SensorLevel"/>
<channel id="usableLevel" typeId="UsableLevel"/>
<channel id="usableLevelInPercent" typeId="UsableLevelInPercent"/>
<channel id="totalCapacity" typeId="TotalCapacity"/>
</channels>
<config-description>
<parameter name="usbPort" type="text" required="true">
<context>serial-port</context>
<label>USB Port</label>
<description>USB port the device is connected to i.e. /dev/ttyUSB0</description>
</parameter>
</config-description>
</thing-type>
<channel-type id="Temperature">
<item-type>Number:Temperature</item-type>
<label>Temperature</label>
<description>Temperature measured by the sensor</description>
<state readOnly="true" pattern="%.1f %unit%"/>
</channel-type>
<channel-type id="SensorLevel">
<item-type>Number:Length</item-type>
<label>Sensor Level</label>
<description>The distance between the sensor and the water surface</description>
<state readOnly="true" pattern="%d %unit%"/>
</channel-type>
<channel-type id="UsableLevel">
<item-type>Number:Volume</item-type>
<label>Usable Level in litre</label>
<description>The usable level in litre</description>
<state readOnly="true" pattern="%d %unit%"/>
</channel-type>
<channel-type id="UsableLevelInPercent">
<item-type>Number:Dimensionless</item-type>
<label>Usable Level in percent</label>
<description>The usable level in percent</description>
<state readOnly="true" pattern="%.2f %unit%"/>
</channel-type>
<channel-type id="TotalCapacity">
<item-type>Number:Volume</item-type>
<label>Total Capacity</label>
<description>The total capacity of your cistern/tank</description>
<state readOnly="true" pattern="%d %unit%"/>
</channel-type>
</thing:thing-descriptions>