From 39f4ea1f57a8caa300238dea9804158ad1497fc4 Mon Sep 17 00:00:00 2001 From: Leo Siepel Date: Sun, 26 Oct 2025 14:04:29 +0100 Subject: [PATCH 01/23] Q-bindings Signed-off-by: Leo Siepel --- bundles/org.openhab.binding.qbus/README.md | 49 ++++++++++--------- .../resources/OH-INF/i18n/qbus.properties | 36 +++++++------- .../resources/OH-INF/thing/thing-types.xml | 36 +++++++------- .../org.openhab.binding.qolsysiq/README.md | 10 ++-- .../resources/OH-INF/i18n/qolsysiq.properties | 28 +++++------ .../src/main/resources/OH-INF/thing/panel.xml | 6 +-- .../main/resources/OH-INF/thing/partition.xml | 8 +-- .../src/main/resources/OH-INF/thing/zone.xml | 12 ++--- 8 files changed, 92 insertions(+), 93 deletions(-) diff --git a/bundles/org.openhab.binding.qbus/README.md b/bundles/org.openhab.binding.qbus/README.md index b2685d5225822..3efb3637f218c 100644 --- a/bundles/org.openhab.binding.qbus/README.md +++ b/bundles/org.openhab.binding.qbus/README.md @@ -2,27 +2,27 @@ This binding for [Qbus](https://qbus.be) communicates with all controllers of the Qbus home automation system. -We also host a site which contains a [manual](https://iot.qbus.be/) where you can find lots of information to set up openHAB with Qbus client and server (for the moment only in Dutch). +We also host a site with a [manual](https://iot.qbus.be/) containing information to set up openHAB with Qbus client and server (currently only in Dutch). -The controllers can not communicate directly with openHAB, therefore we developed a client/server application which you must install prior to enable this binding. +The controllers cannot communicate directly with openHAB, so you must install a client/server application prior to enabling this binding. More information can be found here: [Qbus Client/Server](https://github.com/QbusKoen/QbusClientServer-Installer) -With this binding you can control and read almost every output from the Qbus system. +With this binding, you can control and read almost every output from the Qbus system. ## Supported Things The following things are supported by the Qbus binding: -- `dimmer`: Dimmer 1 button, 2 button and clc -- `onOff`: Bistabiel, Timer1-3, Interval -- `thermostats`: Thermostats - normal and PID +- `dimmer`: Dimmer (1-button, 2-button, and CLC) +- `onOff`: Bistabiel, Timer 1–3, Interval +- `thermostats`: Thermostats (normal and PID) - `scene`: Scenes - `co2`: CO2 - `rollershutter`: Rollershutter -- `rollershutter_slats`: Rollerhutter with slats +- `rollershutter_slats`: Rollershutter with slats -For now the following Qbus things are not yet supported but will come: +For now, the following Qbus things are not yet supported but will come: - DMX - Timer 4 & 5 @@ -36,9 +36,9 @@ For now the following Qbus things are not yet supported but will come: ## Discovery -The discovery service is not yet implemented but the System Manager III software of Qbus generates things and item files from the programming, which you can use directly in openHAB. +The discovery service is not yet implemented, but the System Manager III software of Qbus generates things and item files from the programming that you can use directly in openHAB. -## Bridge configuration +## Bridge Configuration ```java Bridge qbus:bridge:CTD001122 [ addr="localhost", sn="001122", port=8447, serverCheck=10 ] { @@ -48,24 +48,24 @@ Bridge qbus:bridge:CTD001122 [ addr="localhost", sn="001122", port=8447, serverC | Property | Default | Required | Description | |---------------|-----------|----------|--------------------------------------------------------------------------------------------------------------------------------------| -| `addr` | localhost | YES | The ip address of the machine where the Qbus Server runs | +| `addr` | localhost | YES | The IP address of the machine where the Qbus server runs | | `sn` | | YES | The serial number of your controller | | `port` | 8447 | YES | The communication port of the client/server | | `serverCheck` | 10 | NO | Refresh time - After x minutes there will be a check if server is still running and if client is still connected. If not - reconnect | -## Things configuration +## Things Configuration -| Thing Type ID | Channel Name | Read only | description | -| --------------------- | ------------- | --------- | ------------------------------------------------------ | -| `onOff` | switch | No | This is the channel for Bistable, Timers and Intervals | -| `dimmer` | brightness | No | This is the channel for Dimmers 1&2 buttons and CLC | -| `scene` | Switch | No | This is the channel for scenes | -| `co2` | co2 | Yes | This is the channel for CO2 sensors | -| `rollershutter` | rollershutter | No | This is the channel for rollershutters | -| `rollershutter_slats` | rollershutter | No | This is the channel for rollershutters with slats | -| `thermostat` | setpoint | No | This is the channel for thermostats setpoint | -| `thermostat` | measured | Yes | This is the channel for thermostats currenttemp | -| `thermostat` | mode | No | This is the channel for thermostats mode | +| Thing Type ID | Channel Name | Read Only | Description | +|-----------------------|---------------|-----------|---------------------------------------------------------| +| `onOff` | switch | No | This is the channel for bistabiel, timers, and intervals | +| `dimmer` | brightness | No | This is the channel for dimmers 1&2 buttons and CLC | +| `scene` | switch | No | This is the channel for scenes | +| `co2` | co2 | Yes | This is the channel for CO2 sensors | +| `rollershutter` | rollershutter | No | This is the channel for rollershutters | +| `rollershutter_slats` | rollershutter | No | This is the channel for rollershutters with slats | +| `thermostat` | setpoint | No | This is the channel for thermostat setpoint | +| `thermostat` | measured | Yes | This is the channel for thermostat current temperature | +| `thermostat` | mode | No | This is the channel for thermostat mode | ## Full Example @@ -99,4 +99,5 @@ Rollershutter Roller2 Dimmer Roller2_slats ["Blinds"] {channel="qbus:rollershutter_slats:CTD001122:121:slats"} ``` -This is the link to the [Qbus forum](https://qbusforum.be). This forum is mainly in dutch and you can find a lot of information about the pre testings of this binding and offers a way to communicate with other users. +This is the link to the [Qbus forum](). +This forum is mainly in Dutch, and you can find a lot of information about the pre-testings of this binding and offers a way to communicate with other users. diff --git a/bundles/org.openhab.binding.qbus/src/main/resources/OH-INF/i18n/qbus.properties b/bundles/org.openhab.binding.qbus/src/main/resources/OH-INF/i18n/qbus.properties index 3ea894165a315..a57c9ff54595d 100644 --- a/bundles/org.openhab.binding.qbus/src/main/resources/OH-INF/i18n/qbus.properties +++ b/bundles/org.openhab.binding.qbus/src/main/resources/OH-INF/i18n/qbus.properties @@ -8,65 +8,65 @@ addon.qbus.description = This is the binding for the Qbus home automation system thing-type.qbus.bridge.label = Qbus Bridge thing-type.qbus.bridge.description = This bridge represents a Qbus client thing-type.qbus.co2.label = CO2 -thing-type.qbus.co2.description = Qbus CO2 +thing-type.qbus.co2.description = Qbus CO2 sensor thing-type.qbus.dimmer.label = Dimmer -thing-type.qbus.dimmer.description = Qbus Dimmer Output +thing-type.qbus.dimmer.description = Qbus dimmer output thing-type.qbus.onOff.label = Switch -thing-type.qbus.onOff.description = Bistabiel-Mono-Timer-Interval Output +thing-type.qbus.onOff.description = Bistabiel-Mono-Timer-Interval output thing-type.qbus.rollershutter.label = RollerShutter thing-type.qbus.rollershutter.description = Qbus shutter (ROL02P) control thing-type.qbus.rollershutter_slats.label = RollerShutter (With Slats) thing-type.qbus.rollershutter_slats.description = Qbus shutter with slats control thing-type.qbus.scene.label = Scene -thing-type.qbus.scene.description = Qbus Scene +thing-type.qbus.scene.description = Qbus scene thing-type.qbus.thermostat.label = Thermostat -thing-type.qbus.thermostat.description = Qbus Thermostat +thing-type.qbus.thermostat.description = Qbus thermostat # thing types config thing-type.config.qbus.bridge.addr.label = Hostname -thing-type.config.qbus.bridge.addr.description = IP address or hostname of Qbus server, usually 'localhost' +thing-type.config.qbus.bridge.addr.description = IP address or hostname of Qbus server, usually localhost thing-type.config.qbus.bridge.port.label = Bridge Port -thing-type.config.qbus.bridge.port.description = Port to communicate with Qbus server, default 8447 +thing-type.config.qbus.bridge.port.description = Port to communicate with Qbus server; default 8447 thing-type.config.qbus.bridge.serverCheck.label = Server Check -thing-type.config.qbus.bridge.serverCheck.description = Time to check communication with Qbus Server (min), default 10. If set to 0 or left empty, no refresh will be scheduled +thing-type.config.qbus.bridge.serverCheck.description = Time to check communication with Qbus Server (min); default 10. If set to 0 or left empty, no refresh will be scheduled thing-type.config.qbus.bridge.sn.label = Serial Number thing-type.config.qbus.bridge.sn.description = Serial number of the CTD controller thing-type.config.qbus.co2.co2Id.label = Qbus CO2 ID thing-type.config.qbus.co2.co2Id.description = Qbus CO2 ID thing-type.config.qbus.dimmer.dimmerId.label = Output ID -thing-type.config.qbus.dimmer.dimmerId.description = Qbus Dimmer ID +thing-type.config.qbus.dimmer.dimmerId.description = Qbus dimmer ID thing-type.config.qbus.dimmer.step.label = Step Value -thing-type.config.qbus.dimmer.step.description = Step value used for increase/decrease of dimmer brightness, default 10% +thing-type.config.qbus.dimmer.step.description = Step value used for increase/decrease of dimmer brightness; default 10% thing-type.config.qbus.onOff.bistabielId.label = Qbus ID -thing-type.config.qbus.onOff.bistabielId.description = Qbus Bistabiel ID +thing-type.config.qbus.onOff.bistabielId.description = Qbus bistabiel ID thing-type.config.qbus.rollershutter.rolId.label = Rol ID thing-type.config.qbus.rollershutter.rolId.description = Qbus Rol Id thing-type.config.qbus.rollershutter_slats.rolId.label = Rol ID thing-type.config.qbus.rollershutter_slats.rolId.description = Qbus Rol Id thing-type.config.qbus.scene.sceneId.label = Qbus Scene ID -thing-type.config.qbus.scene.sceneId.description = Qbus Scene ID +thing-type.config.qbus.scene.sceneId.description = Qbus scene ID thing-type.config.qbus.thermostat.thermostatId.label = Thermostat ID -thing-type.config.qbus.thermostat.thermostatId.description = Qbus Thermostat ID +thing-type.config.qbus.thermostat.thermostatId.description = Qbus thermostat ID # channel types channel-type.qbus.co2.label = CO2 channel-type.qbus.co2.description = CO2 value for Qbus channel-type.qbus.measured.label = Measured -channel-type.qbus.measured.description = Temperature Measured by Thermostat +channel-type.qbus.measured.description = Temperature measured by thermostat channel-type.qbus.mode.label = Mode -channel-type.qbus.mode.description = Thermostat Mode +channel-type.qbus.mode.description = Thermostat mode channel-type.qbus.mode.state.option.0 = Manual channel-type.qbus.mode.state.option.1 = Freeze channel-type.qbus.mode.state.option.2 = Economic channel-type.qbus.mode.state.option.3 = Comfort channel-type.qbus.mode.state.option.4 = Night channel-type.qbus.rollershutter.label = Rollershutter -channel-type.qbus.rollershutter.description = Rollershutter Control for Qbus +channel-type.qbus.rollershutter.description = Rollershutter control for Qbus channel-type.qbus.scene.label = Scene -channel-type.qbus.scene.description = Scene Control for Qbus +channel-type.qbus.scene.description = Scene control for Qbus channel-type.qbus.setpoint.label = Setpoint -channel-type.qbus.setpoint.description = Setpoint Temperature of Thermostat +channel-type.qbus.setpoint.description = Setpoint temperature of thermostat channel-type.qbus.slats.label = Slatcontrol channel-type.qbus.slats.description = Slatcontrol for Qbus diff --git a/bundles/org.openhab.binding.qbus/src/main/resources/OH-INF/thing/thing-types.xml b/bundles/org.openhab.binding.qbus/src/main/resources/OH-INF/thing/thing-types.xml index 2a5d2aa5222b0..6e2fd784859b4 100644 --- a/bundles/org.openhab.binding.qbus/src/main/resources/OH-INF/thing/thing-types.xml +++ b/bundles/org.openhab.binding.qbus/src/main/resources/OH-INF/thing/thing-types.xml @@ -10,7 +10,7 @@ - IP address or hostname of Qbus server, usually 'localhost' + IP address or hostname of Qbus server, usually localhost localhost network-address @@ -20,13 +20,13 @@ - Port to communicate with Qbus server, default 8447 + Port to communicate with Qbus server; default 8447 8447 true - Time to check communication with Qbus Server (min), default 10. If set to 0 or left empty, no refresh + Time to check communication with Qbus Server (min); default 10. If set to 0 or left empty, no refresh will be scheduled 10 true @@ -39,7 +39,7 @@ - Bistabiel-Mono-Timer-Interval Output + Bistabiel-Mono-Timer-Interval output PowerOutlet @@ -47,7 +47,7 @@ - Qbus Bistabiel ID + Qbus bistabiel ID @@ -57,14 +57,14 @@ - Qbus Scene + Qbus scene - Qbus Scene ID + Qbus scene ID @@ -74,7 +74,7 @@ - Qbus CO2 + Qbus CO2 sensor CO2Sensor @@ -92,7 +92,7 @@ - Qbus Dimmer Output + Qbus dimmer output LightSource @@ -100,11 +100,11 @@ - Qbus Dimmer ID + Qbus dimmer ID - Step value used for increase/decrease of dimmer brightness, default 10% + Step value used for increase/decrease of dimmer brightness; default 10% 10 true @@ -153,7 +153,7 @@ - Qbus Thermostat + Qbus thermostat Thermostat @@ -163,7 +163,7 @@ - Qbus Thermostat ID + Qbus thermostat ID @@ -171,14 +171,14 @@ Switch - Scene Control for Qbus + Scene control for Qbus Scene Number:Temperature - Temperature Measured by Thermostat + Temperature measured by thermostat Temperature Measurement @@ -190,7 +190,7 @@ Number:Temperature - Setpoint Temperature of Thermostat + Setpoint temperature of thermostat Temperature Setpoint @@ -202,7 +202,7 @@ Number - Thermostat Mode + Thermostat mode Number Control @@ -233,7 +233,7 @@ Rollershutter - Rollershutter Control for Qbus + Rollershutter control for Qbus Blinds Control diff --git a/bundles/org.openhab.binding.qolsysiq/README.md b/bundles/org.openhab.binding.qolsysiq/README.md index b11319af235ce..94c4b720ff097 100644 --- a/bundles/org.openhab.binding.qolsysiq/README.md +++ b/bundles/org.openhab.binding.qolsysiq/README.md @@ -57,15 +57,15 @@ Once a partition is added, zones will be automatically discovered and appear in | Name | Type | Description | Default | Required | Advanced | |------------|---------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------|----------|----------| -| id | integer | Partition id of the panel, staring with '0' for the first partition | N/A | yes | no | -| disarmCode | text | Optional disarm code to use when receiving a disarm command without a code. Required for integrations like Alexa and Homekit who do not provide codes when disarming. Leave blank to always require a code | blank | no | no | -| armCode | text | Optional arm code to use when receiving arm commands without a code. Only required if the panel has been configured to require arm codes. Leave blank to always require a code | blank | no | yes | +| id | integer | Partition ID of the panel, starting with 0 for the first partition | N/A | yes | no | +| disarmCode | text | Optional disarm code to use when receiving a disarm command without a code. Required for integrations like Alexa and Homekit who do not provide codes when disarming. Leave blank to always require a code | blank | no | no | +| armCode | text | Optional arm code to use when receiving arm commands without a code. Only required if the panel has been configured to require arm codes. Leave blank to always require a code | blank | no | yes | ### `zone` Thing Configuration | Name | Type | Description | Default | Required | Advanced | |---------|---------|---------------------------------------------------------------------------------------------------------|---------|----------|----------| -| id | integer | Id of the zone, staring with '1' for the first zone | N/A | yes | no | +| id | integer | ID of the zone, starting with 1 for the first zone | N/A | yes | no | ## Channels @@ -77,7 +77,7 @@ None. | Channel | Type | Read/Write | Description | State Options | Command Options | |-------------|--------|------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------|----------------------------| -| armState | String | RW | Reports the current partition arm state or sends an arm or disarm command to the system. Security codes can be appended to the command using a colon delimiter (e.g. 'DISARM:123456'). Codes appended to the command will be used in place of the `armCode` configuration property if set. | ALARM, ARM_AWAY, ARM_STAY, DISARM, ENTRY_DELAY, EXIT_DELAY | ARM_AWAY, ARM_STAY, DISARM | +| armState | String | RW | Reports the current partition arm state or sends an arm or disarm command to the system. Security codes can be appended to the command using a colon delimiter (e.g. DISARM:123456). Codes appended to the command will be used in place of the `armCode` configuration property if set. | ALARM, ARM_AWAY, ARM_STAY, DISARM, ENTRY_DELAY, EXIT_DELAY | ARM_AWAY, ARM_STAY, DISARM | | alarmState | String | RW | Reports on the current alarm state, or triggers an instant alarm | AUXILIARY, FIRE, POLICE, ZONEOPEN, NONE | AUXILIARY, FIRE, POLICE | | armingDelay | Number | R | The arming delay countdown currently in progress | Seconds remaining | N/A | | errorEvent | String | R | Last error event message reported by the partition. Clears after 30 seconds | Error text | N/A | diff --git a/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/i18n/qolsysiq.properties b/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/i18n/qolsysiq.properties index a4bd7677cc683..441be736fb145 100644 --- a/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/i18n/qolsysiq.properties +++ b/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/i18n/qolsysiq.properties @@ -1,5 +1,3 @@ -## mvn i18n:generate-default-translations - # add-on addon.qolsysiq.name = QolsysIQ Binding @@ -8,33 +6,33 @@ addon.qolsysiq.description = This is the binding for Qolsys IQ Alarm Systems. # thing types thing-type.qolsysiq.panel.label = Qolsys IQ Panel -thing-type.qolsysiq.panel.description = A Qolsys IQ Panel Bridge +thing-type.qolsysiq.panel.description = A Qolsys IQ panel bridge thing-type.qolsysiq.partition.label = Partition -thing-type.qolsysiq.partition.description = A Qolsys IQ Partition +thing-type.qolsysiq.partition.description = A Qolsys IQ partition thing-type.qolsysiq.zone.label = Zone -thing-type.qolsysiq.zone.description = A Qolsys IQ Zone +thing-type.qolsysiq.zone.description = A Qolsys IQ zone # thing types config thing-type.config.qolsysiq.panel.hostname.label = Hostname thing-type.config.qolsysiq.panel.hostname.description = Hostname or IP address of the panel -thing-type.config.qolsysiq.panel.key.label = key +thing-type.config.qolsysiq.panel.key.label = Key thing-type.config.qolsysiq.panel.key.description = Key to access the device thing-type.config.qolsysiq.panel.port.label = Port -thing-type.config.qolsysiq.panel.port.description = The port to connect to on the panel. +thing-type.config.qolsysiq.panel.port.description = The port to connect to on the panel thing-type.config.qolsysiq.partition.armCode.label = Arm Code thing-type.config.qolsysiq.partition.armCode.description = Optional arm code to use when receiving arm commands without a code. Only required if the panel has been configured to require arm codes. Leave blank to always require a code thing-type.config.qolsysiq.partition.disarmCode.label = Disarm Code thing-type.config.qolsysiq.partition.disarmCode.description = Optional disarm code to use when receiving a disarm command without a code. Required for integrations like Alexa and Homekit who do not provide codes when disarming. Leave blank to always require a code thing-type.config.qolsysiq.partition.id.label = Partition ID -thing-type.config.qolsysiq.partition.id.description = The Partition ID. +thing-type.config.qolsysiq.partition.id.description = The partition ID thing-type.config.qolsysiq.zone.id.label = Zone ID -thing-type.config.qolsysiq.zone.id.description = The Zone ID. +thing-type.config.qolsysiq.zone.id.description = The zone ID # channel types channel-type.qolsysiq.alarmState.label = Partition Alarm State -channel-type.qolsysiq.alarmState.description = Reports on the current alarm state, or triggers an instant alarm. +channel-type.qolsysiq.alarmState.description = Reports on the current alarm state, or triggers an instant alarm channel-type.qolsysiq.alarmState.state.option.AUXILIARY = Auxiliary channel-type.qolsysiq.alarmState.state.option.FIRE = Fire channel-type.qolsysiq.alarmState.state.option.POLICE = Police @@ -44,7 +42,7 @@ channel-type.qolsysiq.alarmState.command.option.AUXILIARY = Auxiliary channel-type.qolsysiq.alarmState.command.option.FIRE = Fire channel-type.qolsysiq.alarmState.command.option.POLICE = Police channel-type.qolsysiq.armState.label = Partition Arm State -channel-type.qolsysiq.armState.description = Reports the current partition arm state or sends an arm or disarm command to the system. For security codes, append the 6 digit code to the command separated by a colon (e.g. 'DISARM:123456') +channel-type.qolsysiq.armState.description = Reports the current partition arm state or sends an arm or disarm command to the system. For security codes, append the 6-digit code to the command separated by a colon (e.g. DISARM:123456) channel-type.qolsysiq.armState.state.option.ALARM = In Alarm channel-type.qolsysiq.armState.state.option.ARM_AWAY = Armed Away channel-type.qolsysiq.armState.state.option.ARM_STAY = Armed Stay @@ -57,16 +55,16 @@ channel-type.qolsysiq.armState.command.option.DISARM = Disarm channel-type.qolsysiq.armingDelay.label = Partition Arming Delay channel-type.qolsysiq.armingDelay.description = The arming delay currently in progress channel-type.qolsysiq.contact.label = Zone Contact -channel-type.qolsysiq.contact.description = The zone contact state. +channel-type.qolsysiq.contact.description = The zone contact state channel-type.qolsysiq.errorEvent.label = Error Event channel-type.qolsysiq.errorEvent.description = Last error event message reported by the partition. Clears after 30 seconds channel-type.qolsysiq.zoneState.label = Zone State -channel-type.qolsysiq.zoneState.description = The zone state. +channel-type.qolsysiq.zoneState.description = The zone state channel-type.qolsysiq.zoneStatus.label = Zone Status -channel-type.qolsysiq.zoneStatus.description = The zone status. +channel-type.qolsysiq.zoneStatus.description = The zone status channel-type.qolsysiq.zoneStatus.state.option.ACTIVE = Active channel-type.qolsysiq.zoneStatus.state.option.CLOSED = Closed channel-type.qolsysiq.zoneStatus.state.option.OPEN = Open channel-type.qolsysiq.zoneStatus.state.option.FAILURE = Failure -channel-type.qolsysiq.zoneStatus.state.option.IDlE = Idle +channel-type.qolsysiq.zoneStatus.state.option.IDLE = Idle channel-type.qolsysiq.zoneStatus.state.option.TAMPER = Tamper diff --git a/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/thing/panel.xml b/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/thing/panel.xml index 279c5db839923..fc39606386a2f 100644 --- a/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/thing/panel.xml +++ b/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/thing/panel.xml @@ -5,7 +5,7 @@ xsi:schemaLocation="https://openhab.org/schemas/thing-description/v1.0.0 https://openhab.org/schemas/thing-description-1.0.0.xsd"> - A Qolsys IQ Panel Bridge + A Qolsys IQ panel bridge AlarmSystem @@ -15,13 +15,13 @@ - The port to connect to on the panel. + The port to connect to on the panel 12345 true password - + Key to access the device diff --git a/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/thing/partition.xml b/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/thing/partition.xml index ef548742968ac..3e0d70129ce4a 100644 --- a/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/thing/partition.xml +++ b/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/thing/partition.xml @@ -8,7 +8,7 @@ - A Qolsys IQ Partition + A Qolsys IQ partition AlarmZone @@ -23,7 +23,7 @@ - The Partition ID. + The partition ID @@ -44,7 +44,7 @@ String Reports the current partition arm state or sends an arm or disarm command to the system. For security - codes, append the 6 digit code to the command separated by a colon (e.g. 'DISARM:123456') + codes, append the 6-digit code to the command separated by a colon (e.g. DISARM:123456) Alarm Status @@ -72,7 +72,7 @@ String - Reports on the current alarm state, or triggers an instant alarm. + Reports on the current alarm state, or triggers an instant alarm Alarm Alarm diff --git a/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/thing/zone.xml b/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/thing/zone.xml index 716cd89c5e2d5..865573843bc22 100644 --- a/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/thing/zone.xml +++ b/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/thing/zone.xml @@ -8,7 +8,7 @@ - A Qolsys IQ Zone + A Qolsys IQ zone AlarmZone @@ -29,21 +29,21 @@ - The Zone ID. + The zone ID String - The zone status. + The zone status - + @@ -51,14 +51,14 @@ Number - The zone state. + The zone state Contact - The zone contact state. + The zone contact state From 2f5452559f09bf1d508392c25e81f53a70365ef1 Mon Sep 17 00:00:00 2001 From: Leo Siepel Date: Sun, 26 Oct 2025 14:43:04 +0100 Subject: [PATCH 02/23] R-bindings Signed-off-by: Leo Siepel --- .../README.md | 30 +++++++------- .../OH-INF/i18n/radiobrowser.properties | 40 ++++++++++++++----- .../README.md | 8 ++-- .../README.md | 16 ++++---- .../resources/OH-INF/i18n/renault.properties | 6 +-- .../resources/OH-INF/thing/thing-types.xml | 6 +-- .../resources/OH-INF/i18n/resol.properties | 2 +- .../main/resources/OH-INF/thing/bridge.xml | 2 +- .../resources/OH-INF/i18n/revogi.properties | 8 ++-- .../resources/OH-INF/thing/thing-types.xml | 8 ++-- .../resources/OH-INF/i18n/rfxcom.properties | 16 +++++++- .../resources/OH-INF/i18n/ring.properties | 40 +++++++++---------- .../resources/OH-INF/thing/thing-types.xml | 8 ++-- .../org.openhab.binding.robonect/README.md | 2 +- .../resources/OH-INF/i18n/roku.properties | 3 ++ .../resources/OH-INF/i18n/rotel.properties | 5 +++ 16 files changed, 121 insertions(+), 79 deletions(-) diff --git a/bundles/org.openhab.binding.radiobrowser/README.md b/bundles/org.openhab.binding.radiobrowser/README.md index 4bb9294cfaeda..51c55ae1908ce 100644 --- a/bundles/org.openhab.binding.radiobrowser/README.md +++ b/bundles/org.openhab.binding.radiobrowser/README.md @@ -11,32 +11,32 @@ With this binding you can use their database of more than 45,000 stations to app | Name | Type | Description | Default | Required | Advanced | |---------------|---------|--------------------------------------------------------------------------------------------|----------|----------|----------| -| filters | text | Allows you to specify your own filters from the `advanced search` of the API. | See below | yes | no | +| filters | text | Allows you to specify your own filters from the advanced search of the API. | See below | yes | no | | clicks | boolean | Helps to support the server recommend good results. | true | yes | yes | -| languageCount | integer | If you want less languages to be shown as a filter, you can raise this or create your own. | 14 | yes | yes | -| recentLimit | integer | Limit the number of stations in the recent channel list. `0` Disables the feature. | 5 | yes | no | +| languageCount | integer | If you want fewer languages to be shown as a filter, you can raise this or create your own. | 14 | yes | yes | +| recentLimit | integer | Limit the number of stations in the recent channel list. 0 disables the feature. | 5 | yes | no | ## Filters Configuration -The `advanced` configuration parameter `filters` can be used to limit the stations based on different fields like codecs, minimum quality, ordering and more. -All possible filter options are listed here +The advanced configuration parameter `filters` can be used to limit the stations based on different fields like codecs, minimum quality, ordering and more. +All possible filter options are listed here: The default filter (below) can be changed to suit your needs. ```text hidebroken=true,limit=1700,reverse=true,order=votes ``` -You can also try out the various search features on their main website, and then copy what is added to the address bar of your web browser. +You can also try out the various search features on their main website, and then copy what is added to the address bar of your web browser: ## State Option Metadata -If you wish to display only a couple of languages or custom choices to any of the filters, you can create your own using metadata>state options. +If you wish to display only a couple of languages or custom choices to any of the filters, you can create your own using Metadata > State Options. The countries need to be the country code not the full name, for example `US` and not `The United States of America`. -The binding will auto select your country based on openHAB's settings that you made when setting up openHAB. -It makes sense to do this for languages if the built in way of `languageCount` does not work for your use case. -Genres are a good example for using the metadata, only show the styles of music and other tags that you like. -If in doubt you can use the [Event Monitor in the Developer Sidebar](https://www.openhab.org/docs/tutorial/tips-and-tricks.html#event-monitor) to watch what commands are sent to the bindings channels. +The binding will auto-select your country based on openHAB's settings that you made when setting up openHAB. +It makes sense to do this for languages if the built-in way of `languageCount` does not work for your use case. +Genres are a good example for using the metadata — only show the styles of music and other tags that you like. +If in doubt, you can use the [Event Monitor in the Developer Sidebar](https://www.openhab.org/docs/tutorial/tips-and-tricks.html#event-monitor) to watch what commands are sent to the binding's channels. ## Channels @@ -60,17 +60,17 @@ The widget is probably the easiest way to get started and have a play with what ## Station Searches -Searches can be done in a few different ways and since the binding will auto select the first result, you can change what is sent to the top of the list by changing the filters config from including `order=clickcount` (default) to `votes`, `clicktrend` or even `random`. +Searches can be done in a few different ways, and since the binding will auto-select the first result, you can change what is sent to the top of the list by changing the filters config from including `order=clickcount` (default) to `votes`, `clicktrend` or even `random`. -Examples on how to do searches from rules, or you can also change an item to take input by using `oh-input-item` using metadata called `Default list item widget`. +Examples on how to do searches from rules, or you can also change an item to take input by using `oh-input-item` using Metadata called Default list item widget. -Search for all stations that contain `hit` in their name, and auto select the first result. +Search for all stations that contain `hit` in their name, and auto-select the first result. ```java Radio_Station.sendCommand("hit") ``` -Search and auto select the station if you know the UUID from the website. +Search and auto-select the station if you know the UUID from the website. ```java Radio_Station.sendCommand("b6a490e8-f498-4a7c-b024-607b3d997614") diff --git a/bundles/org.openhab.binding.radiobrowser/src/main/resources/OH-INF/i18n/radiobrowser.properties b/bundles/org.openhab.binding.radiobrowser/src/main/resources/OH-INF/i18n/radiobrowser.properties index 9de813226f069..5f6b15975cba0 100644 --- a/bundles/org.openhab.binding.radiobrowser/src/main/resources/OH-INF/i18n/radiobrowser.properties +++ b/bundles/org.openhab.binding.radiobrowser/src/main/resources/OH-INF/i18n/radiobrowser.properties @@ -5,8 +5,8 @@ addon.radiobrowser.description = This binding makes it easy to find a working ra # thing types -thing-type.radiobrowser.radio.label = RadioBrowser Thing -thing-type.radiobrowser.radio.description = RadioBrowser Cloud Connection +thing-type.radiobrowser.radio.label = Radio Thing +thing-type.radiobrowser.radio.description = Provides a way to interact with the Radio Browser database of stations # thing types config @@ -15,46 +15,66 @@ thing-type.config.radiobrowser.radio.clicks.description = Send a click for every thing-type.config.radiobrowser.radio.filters.label = Filters thing-type.config.radiobrowser.radio.filters.description = Enter your own custom filter starting with ?, to ensure a stream that works with your device thing-type.config.radiobrowser.radio.languageCount.label = Language Count -thing-type.config.radiobrowser.radio.languageCount.description = The minimum number of stations a language needs to have world wide before the binding lists it as an option. +thing-type.config.radiobrowser.radio.languageCount.description = The minimum number of stations a language needs to have, before the binding lists it as an option. +thing-type.config.radiobrowser.radio.recentLimit.label = Recent Limit +thing-type.config.radiobrowser.radio.recentLimit.description = Limit the number of stations in the recent channel list to this amount. `0` Disables the feature. # channel types -channel-type.radiobrowser.addFavorite.label = Add Favorite -channel-type.radiobrowser.addFavorite.description = Add the currently selected station to the favorite list channel-type.radiobrowser.country.label = Country channel-type.radiobrowser.country.description = Show only stations located in the selected country -channel-type.radiobrowser.favorites.label = Favorites -channel-type.radiobrowser.favorites.description = The stations you have liked and added to this list channel-type.radiobrowser.genre.label = Genre channel-type.radiobrowser.genre.description = A list of genres or tags that you can select from channel-type.radiobrowser.genre.state.option.ALL = Show All Genres channel-type.radiobrowser.genre.state.option.christian = christian +channel-type.radiobrowser.genre.state.option.christmas = christmas channel-type.radiobrowser.genre.state.option.classical = classical channel-type.radiobrowser.genre.state.option.country = country channel-type.radiobrowser.genre.state.option.dance = dance channel-type.radiobrowser.genre.state.option.disco = disco +channel-type.radiobrowser.genre.state.option.drum = drum +channel-type.radiobrowser.genre.state.option.dubstep = dubstep +channel-type.radiobrowser.genre.state.option.edm = edm +channel-type.radiobrowser.genre.state.option.electronic = electronic +channel-type.radiobrowser.genre.state.option.folk = folk channel-type.radiobrowser.genre.state.option.gospel = gospel +channel-type.radiobrowser.genre.state.option.hiphop = hiphop channel-type.radiobrowser.genre.state.option.hits = hits +channel-type.radiobrowser.genre.state.option.house = house +channel-type.radiobrowser.genre.state.option.indie = indie channel-type.radiobrowser.genre.state.option.jazz = jazz +channel-type.radiobrowser.genre.state.option.latin = latin +channel-type.radiobrowser.genre.state.option.lounge = lounge +channel-type.radiobrowser.genre.state.option.metal = metal channel-type.radiobrowser.genre.state.option.music = music channel-type.radiobrowser.genre.state.option.news = news channel-type.radiobrowser.genre.state.option.oldies = oldies channel-type.radiobrowser.genre.state.option.pop = pop +channel-type.radiobrowser.genre.state.option.punk = punk +channel-type.radiobrowser.genre.state.option.rap = rap +channel-type.radiobrowser.genre.state.option.reggae = reggae +channel-type.radiobrowser.genre.state.option.retro = retro +channel-type.radiobrowser.genre.state.option.rhythm = rhythm +channel-type.radiobrowser.genre.state.option.rnb = RnB channel-type.radiobrowser.genre.state.option.rock = rock +channel-type.radiobrowser.genre.state.option.soul = soul channel-type.radiobrowser.genre.state.option.sports = sports channel-type.radiobrowser.genre.state.option.talk = talk +channel-type.radiobrowser.genre.state.option.techno = techno +channel-type.radiobrowser.genre.state.option.top40 = top40 channel-type.radiobrowser.genre.state.option.trance = trance +channel-type.radiobrowser.genre.state.option.world = world channel-type.radiobrowser.icon.label = Icon channel-type.radiobrowser.icon.description = The currently selected stations icon channel-type.radiobrowser.language.label = Language channel-type.radiobrowser.language.description = Show only stations spoken in the selected language channel-type.radiobrowser.name.label = Name channel-type.radiobrowser.name.description = The currently selected stations name -channel-type.radiobrowser.removeFavorite.label = Remove Favorite -channel-type.radiobrowser.removeFavorite.description = Add the currently selected station to the favorite list +channel-type.radiobrowser.recent.label = Recent +channel-type.radiobrowser.recent.description = A list of recently played stations channel-type.radiobrowser.state.label = State channel-type.radiobrowser.state.description = Show only stations located in the selected state, requires country to be selected first channel-type.radiobrowser.station.label = Station -channel-type.radiobrowser.station.description = A list of stations that you can select from to fetch the URI for +channel-type.radiobrowser.station.description = A list of stations that you can select from channel-type.radiobrowser.stream.label = Stream channel-type.radiobrowser.stream.description = The stations URI that can be sent to a openHAB audio sink diff --git a/bundles/org.openhab.binding.radiothermostat/README.md b/bundles/org.openhab.binding.radiothermostat/README.md index fe7c8823bba29..d418e2b26e16c 100644 --- a/bundles/org.openhab.binding.radiothermostat/README.md +++ b/bundles/org.openhab.binding.radiothermostat/README.md @@ -52,21 +52,21 @@ In that case, the existing schedule on the thermostat will remain untouched. The MyRadioThermostat/EnergyHub cloud service that previously enabled remote control and scheduling of the thermostat is now defunct. As such, disabling cloud connectivity on a thermostat that was previously connected to the cloud service may slightly improve the speed and reliability of accessing the local API. -The thermostat can de-provisioned from the cloud by issuing the following `curl` commands: +The thermostat can be deprovisioned from the cloud by issuing the following `curl` commands: ```shell curl http://$THERMOSTAT_IP/cloud -d '{"enabled":0}' curl http://$THERMOSTAT_IP/cloud -d '{"authkey":""}' ``` -### Some notes +### Some Notes -- The main caveat for using this binding is to keep in mind that the web server in the thermostat is very slow. Do not over load it with excessive amounts of simultaneous commands. +- The main caveat for using this binding is to keep in mind that the web server in the thermostat is very slow. Do not overload it with excessive amounts of simultaneous commands. - When changing the thermostat mode, the current temperature set point is cleared and a refresh of the thermostat data is done to get the new mode's set point. - Since retrieving the thermostat's data is the slowest operation, it will take several seconds after changing the mode before the new set point is displayed. - Clock sync will not occur while the `override` flag is on (i.e. the program setpoint has been manually overridden) because syncing time will reset the temperature back to the program setpoint. - The `override` flag is not reported correctly on older thermostat versions (i.e. /tstat/model reports v1.09) -- The 'Program Mode' command is untested and according to the published API is only available on a CT80 Rev B. +- The Program Mode command is untested and according to the published API is only available on a CT80 Rev B. - Humidity information is available only when using a CT80 thermostat. - If `remote_temp` or `message` channels are used, their values in the thermostat will be cleared during binding shutdown. diff --git a/bundles/org.openhab.binding.regoheatpump/README.md b/bundles/org.openhab.binding.regoheatpump/README.md index cfed83cf6eb6c..65a6fca2d63b8 100644 --- a/bundles/org.openhab.binding.regoheatpump/README.md +++ b/bundles/org.openhab.binding.regoheatpump/README.md @@ -9,8 +9,10 @@ The Rego heat pump binding supports: The Rego 6xx controllers family is used in many heat pumps such as IVT/Bosch/Autotherm/Carrier and others. -Rego 6xx unit contain an interface marked as service. -Header of this interface is close to the control unit. This is 5V (TTL) serial interface and is connected by a 9 pin can/d-sub connector. Pinout: +The Rego 6xx unit contains an interface marked as service. +Header of this interface is close to the control unit. +This is a 5V (TTL) serial interface and is connected by a 9-pin CAN/D-sub connector. +Pinout: 2 - RxD 3 - TxD @@ -28,12 +30,12 @@ Two connection types are supported: #### TCP/IP connection -A transparent bridge between the serial interface of the heat pump and network (i.e. wifi) is used. +A transparent bridge between the serial interface of the heat pump and network (i.e. Wi-Fi) is used. This way no additional wires are required between heat pump and computer, running openHAB. There are many existing projects providing such functionality, such as [Serial to Network Proxy (ser2net)](http://ser2net.sourceforge.net/). -For my setup, I used a low budget (~5€) circuit, that is integrated into the heat pump and connects to a wifi using an ESP8266 based module. +For my setup, I used a low-budget (~5€) circuit, that is integrated into the heat pump and connects to a Wi-Fi using an ESP8266-based module. Board: @@ -56,7 +58,7 @@ Example thing definition: #### Serial connection -In order to connect directly to the rego 6xx controller, one needs to adjust the TTL levels coming from the rego unit to levels used by a RS232 serial port, used within computers, using MAX232 or similar. +In order to connect directly to the Rego 6xx controller, one needs to adjust the TTL levels coming from the Rego unit to levels used by an RS232 serial port, used within computers, using MAX232 or similar. Parameters: @@ -137,7 +139,7 @@ Below is the list of supported channels: Access: R = read only; RW = read write -**Note - breaking change:** to have all writable channels within the settings group, hotWaterTarget channel was moved from controlData to the setting group. +**Note - breaking change:** To have all writable channels within the settings group, the hotWaterTarget channel was moved from controlData to the settings group. ## The Husdata interface @@ -166,7 +168,7 @@ Two connection types are supported: #### TCP/IP connection -A transparent bridge between the Husdata interface and network (i.e. wifi) is used. +A transparent bridge between the Husdata interface and network (i.e. Wi-Fi) is used. There are many existing projects providing such functionality, such as [Serial to Network Proxy (ser2net)](http://ser2net.sourceforge.net/). diff --git a/bundles/org.openhab.binding.renault/src/main/resources/OH-INF/i18n/renault.properties b/bundles/org.openhab.binding.renault/src/main/resources/OH-INF/i18n/renault.properties index 33a199e16bccb..d26d2960b46fc 100644 --- a/bundles/org.openhab.binding.renault/src/main/resources/OH-INF/i18n/renault.properties +++ b/bundles/org.openhab.binding.renault/src/main/resources/OH-INF/i18n/renault.properties @@ -6,7 +6,7 @@ addon.renault.description = This is the binding for Renault electric cars. # thing types thing-type.renault.car.label = Renault Car -thing-type.renault.car.description = A MyRenault registered car. +thing-type.renault.car.description = A MyRenault-registered car # thing types config @@ -77,7 +77,7 @@ channel-type.renault.chargingstatus.state.option.CHARGE_ERROR = Charge error channel-type.renault.chargingstatus.state.option.UNAVAILABLE = Unavailable channel-type.renault.chargingstatus.state.option.UNKNOWN = Unknown channel-type.renault.estimatedrange.label = Estimated Range -channel-type.renault.estimatedrange.description = Estimated range of the car. +channel-type.renault.estimatedrange.description = Estimated range of the car channel-type.renault.externaltemperature.label = External Temperature channel-type.renault.externaltemperature.description = Temperature outside of the car channel-type.renault.hvacstatus.label = HVAC Status (ON | OFF | PENDING) @@ -98,7 +98,7 @@ channel-type.renault.odometer.description = Total distance travelled channel-type.renault.pause.label = Pause Charge channel-type.renault.pause.description = Pause or resume the charge. channel-type.renault.plugstatus.label = Plug Status -channel-type.renault.plugstatus.description = Status of charging plug. +channel-type.renault.plugstatus.description = Status of the charging plug channel-type.renault.plugstatus.state.option.UNPLUGGED = Unplugged channel-type.renault.plugstatus.state.option.PLUGGED = Plugged channel-type.renault.plugstatus.state.option.PLUG_ERROR = Plug error diff --git a/bundles/org.openhab.binding.renault/src/main/resources/OH-INF/thing/thing-types.xml b/bundles/org.openhab.binding.renault/src/main/resources/OH-INF/thing/thing-types.xml index 5a889342f8464..671dd1f2c8584 100644 --- a/bundles/org.openhab.binding.renault/src/main/resources/OH-INF/thing/thing-types.xml +++ b/bundles/org.openhab.binding.renault/src/main/resources/OH-INF/thing/thing-types.xml @@ -7,7 +7,7 @@ - A MyRenault registered car. + A MyRenault-registered car Vehicle @@ -127,7 +127,7 @@ String - Status of charging plug. + Status of the charging plug Status Power @@ -197,7 +197,7 @@ Number:Length - Estimated range of the car. + Estimated range of the car diff --git a/bundles/org.openhab.binding.resol/src/main/resources/OH-INF/i18n/resol.properties b/bundles/org.openhab.binding.resol/src/main/resources/OH-INF/i18n/resol.properties index 0b90fef0ab137..c1e3b945da87c 100644 --- a/bundles/org.openhab.binding.resol/src/main/resources/OH-INF/i18n/resol.properties +++ b/bundles/org.openhab.binding.resol/src/main/resources/OH-INF/i18n/resol.properties @@ -54,7 +54,7 @@ thing-type.config.resol.emulatedEM.deviceId.description = The (sub-)address of t thing-type.config.resol.vbuslan.adapterSerial.label = Adapter Serial Number thing-type.config.resol.vbuslan.adapterSerial.description = The serial number of the adapter (informative). thing-type.config.resol.vbuslan.ipAddress.label = IP Address -thing-type.config.resol.vbuslan.ipAddress.description = The IP address of the of the VBus-LAN gateway. +thing-type.config.resol.vbuslan.ipAddress.description = The IP address of the VBus-LAN gateway. thing-type.config.resol.vbuslan.password.label = Password thing-type.config.resol.vbuslan.password.description = The password for the VBusLAN connection. thing-type.config.resol.vbuslan.port.label = Live Data Port diff --git a/bundles/org.openhab.binding.resol/src/main/resources/OH-INF/thing/bridge.xml b/bundles/org.openhab.binding.resol/src/main/resources/OH-INF/thing/bridge.xml index 576c10ca6225b..bd98bc39219fa 100644 --- a/bundles/org.openhab.binding.resol/src/main/resources/OH-INF/thing/bridge.xml +++ b/bundles/org.openhab.binding.resol/src/main/resources/OH-INF/thing/bridge.xml @@ -15,7 +15,7 @@ network-address - The IP address of the of the VBus-LAN gateway. + The IP address of the VBus-LAN gateway. diff --git a/bundles/org.openhab.binding.revogi/src/main/resources/OH-INF/i18n/revogi.properties b/bundles/org.openhab.binding.revogi/src/main/resources/OH-INF/i18n/revogi.properties index bf7c8ddb86dc7..5530f98268689 100644 --- a/bundles/org.openhab.binding.revogi/src/main/resources/OH-INF/i18n/revogi.properties +++ b/bundles/org.openhab.binding.revogi/src/main/resources/OH-INF/i18n/revogi.properties @@ -6,7 +6,7 @@ addon.revogi.description = This is the binding for Revogi devices. Revogi is a v # thing types thing-type.revogi.smartstrip.label = SmartStrip -thing-type.revogi.smartstrip.description = A Thing to control Revogi SmartStrip +thing-type.revogi.smartstrip.description = A thing to control the Revogi SmartStrip thing-type.revogi.smartstrip.group.plug1.label = Plug 1 thing-type.revogi.smartstrip.group.plug2.label = Plug 2 thing-type.revogi.smartstrip.group.plug3.label = Plug 3 @@ -28,13 +28,13 @@ thing-type.config.revogi.smartstrip.serialNumber.description = Serial number of channel-group-type.revogi.overallPlugActuator.label = Overall Plug Actuator channel-group-type.revogi.overallPlugActuator.description = Switches all plugs channel-group-type.revogi.plugActuator.label = Single Plug Actuator -channel-group-type.revogi.plugActuator.description = Switches a single plug and retrieve stats for it +channel-group-type.revogi.plugActuator.description = Switches a single plug and retrieves stats for it # channel types channel-type.revogi.amps.label = Current -channel-type.revogi.amps.description = Contains the current Amp value for the given plug +channel-type.revogi.amps.description = Contains the current for the plug channel-type.revogi.single-plug.label = Switch channel-type.revogi.single-plug.description = Switch a single plug channel-type.revogi.watts.label = Power -channel-type.revogi.watts.description = Contains the current watt value for the given plug +channel-type.revogi.watts.description = Contains the current power for the plug diff --git a/bundles/org.openhab.binding.revogi/src/main/resources/OH-INF/thing/thing-types.xml b/bundles/org.openhab.binding.revogi/src/main/resources/OH-INF/thing/thing-types.xml index 1df8aefaf0b9f..772aaadd02f25 100644 --- a/bundles/org.openhab.binding.revogi/src/main/resources/OH-INF/thing/thing-types.xml +++ b/bundles/org.openhab.binding.revogi/src/main/resources/OH-INF/thing/thing-types.xml @@ -7,7 +7,7 @@ - A Thing to control Revogi SmartStrip + A thing to control the Revogi SmartStrip PowerOutlet PowerOutlet @@ -55,7 +55,7 @@ - Switches a single plug and retrieve stats for it + Switches a single plug and retrieves stats for it @@ -83,7 +83,7 @@ Number:Power - Contains the current watt value for the given plug + Contains the current power for the plug Measurement Power @@ -93,7 +93,7 @@ Number:ElectricCurrent - Contains the current Amp value for the given plug + Contains the current for the plug Measurement Current diff --git a/bundles/org.openhab.binding.rfxcom/src/main/resources/OH-INF/i18n/rfxcom.properties b/bundles/org.openhab.binding.rfxcom/src/main/resources/OH-INF/i18n/rfxcom.properties index 10e12bfa70bcd..052cf26abefc1 100644 --- a/bundles/org.openhab.binding.rfxcom/src/main/resources/OH-INF/i18n/rfxcom.properties +++ b/bundles/org.openhab.binding.rfxcom/src/main/resources/OH-INF/i18n/rfxcom.properties @@ -61,6 +61,10 @@ thing-type.rfxcom.rfxsensor.label = RFXCOM RFXSensor thing-type.rfxcom.rfxsensor.description = A RFXSensor device. thing-type.rfxcom.rfy.label = RFXCOM Rfy Actuator thing-type.rfxcom.rfy.description = A Rfy device. +thing-type.rfxcom.rfy.channel.program.label = Send Program Command +thing-type.rfxcom.rfy.channel.program.description = Sends a program command to pair with a device when switched from off to on. +thing-type.rfxcom.rfy.channel.sunWindDetector.label = Sun+Wind Detector +thing-type.rfxcom.rfy.channel.sunWindDetector.description = Enable the sun+wind detector. thing-type.rfxcom.security1.label = RFXCOM Security1 Sensor thing-type.rfxcom.security1.description = A Security1 device. thing-type.rfxcom.security2.label = RFXCOM Security2 Sensor @@ -85,6 +89,12 @@ thing-type.rfxcom.uv.label = RFXCOM UV/Temperature Sensor thing-type.rfxcom.uv.description = A UV/Temperature device. thing-type.rfxcom.wind.label = RFXCOM Wind Sensor thing-type.rfxcom.wind.description = A Wind device. +thing-type.rfxcom.wind.channel.avgWindSpeed.label = Average Wind Speed +thing-type.rfxcom.wind.channel.avgWindSpeed.description = Average wind speed in meters per second +thing-type.rfxcom.wind.channel.chillTemperature.label = Chill Temperature +thing-type.rfxcom.wind.channel.chillTemperature.description = Chill temperature in degree Celsius +thing-type.rfxcom.wind.channel.windSpeed.label = Wind Gust +thing-type.rfxcom.wind.channel.windSpeed.description = Wind gust in meters per second # thing types config @@ -114,12 +124,12 @@ thing-type.config.rfxcom.blinds1.subType.option.T20 = OZRoll thing-type.config.rfxcom.bridge.serialPort.label = Serial Port thing-type.config.rfxcom.bridge.serialPort.description = Serial port where RFXCOM transceiver is connected. thing-type.config.rfxcom.chime.deviceId.description = Sensor Id. Example 2983 +thing-type.config.rfxcom.chime.subType.option.ALFAWISE_DBELL = Alfawise, dBell thing-type.config.rfxcom.chime.subType.option.BYRONSX = Byron SX thing-type.config.rfxcom.chime.subType.option.BYRONMP001 = Byron MP001 +thing-type.config.rfxcom.chime.subType.option.ENVIVO = Envivo thing-type.config.rfxcom.chime.subType.option.SELECTPLUS = SelectPlus thing-type.config.rfxcom.chime.subType.option.SELECTPLUS3 = SelectPlus3 -thing-type.config.rfxcom.chime.subType.option.ENVIVO = Envivo -thing-type.config.rfxcom.chime.subType.option.ALFAWISE_DBELL = Alfawise, dBell thing-type.config.rfxcom.current.deviceId.description = Sensor Id. Example 5693 thing-type.config.rfxcom.current.subType.option.ELEC1 = CM113 thing-type.config.rfxcom.currentenergy.deviceId.description = Sensor Id. Example 47104 @@ -338,6 +348,8 @@ thing-type.config.rfxcom.wind.subType.option.WIND5 = UPM WDS500 thing-type.config.rfxcom.wind.subType.option.WIND6 = WS2300 thing-type.config.rfxcom.wind.subType.option.WIND7 = Alecto WS4500, Auriol H13726, Hama EWS1500, Meteoscan W155/W160, Ventus WS155 +# checked 2025-10-26 could not relate these keys, left in to prevent regression + config.bridgeId.label = Serial Number config.bridgeId.description = Serial number of the RFXCOM (FTDI) device config.disableDiscovery.label = Disable Discovery of Unknown Devices diff --git a/bundles/org.openhab.binding.ring/src/main/resources/OH-INF/i18n/ring.properties b/bundles/org.openhab.binding.ring/src/main/resources/OH-INF/i18n/ring.properties index c88c6ed51b9ce..eb067e5081112 100644 --- a/bundles/org.openhab.binding.ring/src/main/resources/OH-INF/i18n/ring.properties +++ b/bundles/org.openhab.binding.ring/src/main/resources/OH-INF/i18n/ring.properties @@ -5,14 +5,14 @@ addon.ring.description = This is the addon for ring.com devices like the Video D # thing types -thing-type.ring.account.label = Binding Bridge +thing-type.ring.account.label = Ring Account Bridge thing-type.ring.account.description = Account with ring.com to access the devices thing-type.ring.chime.label = Chime Binding Thing thing-type.ring.chime.description = Ring Chime connected to the system thing-type.ring.doorbell.label = Video Doorbell Binding Thing thing-type.ring.doorbell.description = A Ring Video Doorbell device -thing-type.ring.other.label = Other Binding Thing -thing-type.ring.other.description = A Ring Other device +thing-type.ring.otherdevice.label = Other Device Binding Thing +thing-type.ring.otherdevice.description = A Ring Other Device device thing-type.ring.stickupcam.label = Stickup Cam Binding Thing thing-type.ring.stickupcam.description = A Ring Stickup Cam device @@ -20,30 +20,40 @@ thing-type.ring.stickupcam.description = A Ring Stickup Cam device thing-type.config.ring.account.hardwareId.label = A unique hardware id thing-type.config.ring.account.hardwareId.description = Enter a hardware id that is unique for all your devices connected to Ring (e.g. computer's MAC address) +thing-type.config.ring.account.limitToOwner.label = Limit To Owner +thing-type.config.ring.account.limitToOwner.description = By default all accessible devices are discovered. When enabled, discovery is limited to devices you own. thing-type.config.ring.account.password.label = Account's Password thing-type.config.ring.account.password.description = Enter the password you used to subscribe to the Ring services. If using 2 factor authentication, leave this blank and enter the refresh token instead. thing-type.config.ring.account.refreshInterval.label = Refresh interval thing-type.config.ring.account.refreshInterval.description = How often to poll the Ring service for events in seconds -thing-type.config.ring.account.twofactorCode.label = 2 factor authentication code -thing-type.config.ring.account.twofactorCode.description = Enter the 2 factor authentication code, if enabled +thing-type.config.ring.account.twofactorCode.label = Two-factor authentication code +thing-type.config.ring.account.twofactorCode.description = Enter the two-factor authentication code, if enabled thing-type.config.ring.account.username.label = User Name thing-type.config.ring.account.username.description = Enter the user name you used to subscribe to the Ring services. If using 2 factor authentication, leave this blank and enter the refresh token instead. thing-type.config.ring.account.videoRetentionCount.label = Number of videos to keep thing-type.config.ring.account.videoRetentionCount.description = The number of video files to keep when automatically downloading the latest event video, or 0 to disable auto downloading thing-type.config.ring.account.videoStoragePath.label = Video Download Path thing-type.config.ring.account.videoStoragePath.description = The folder path to save video .mp4 files in when downloaded from ring.com. Note: the openhab user must have rights to save to this location +thing-type.config.ring.chime.id.label = ID +thing-type.config.ring.chime.id.description = The internal ID of the device. thing-type.config.ring.chime.offOffset.label = Power-off Time thing-type.config.ring.chime.offOffset.description = Offset in minutes to switch off thing-type.config.ring.chime.refreshInterval.label = Refresh Interval thing-type.config.ring.chime.refreshInterval.description = How often to poll the Ring service for events in seconds +thing-type.config.ring.doorbell.id.label = ID +thing-type.config.ring.doorbell.id.description = The internal ID of the device. thing-type.config.ring.doorbell.offOffset.label = Power-off Time thing-type.config.ring.doorbell.offOffset.description = Offset in minutes to switch off thing-type.config.ring.doorbell.refreshInterval.label = Refresh Interval thing-type.config.ring.doorbell.refreshInterval.description = How often to poll the Ring service for events in seconds -thing-type.config.ring.other.offOffset.label = Power-off Time -thing-type.config.ring.other.offOffset.description = Offset in minutes to switch off -thing-type.config.ring.other.refreshInterval.label = Refresh Interval -thing-type.config.ring.other.refreshInterval.description = How often to poll the Ring service for events in seconds +thing-type.config.ring.otherdevice.id.label = ID +thing-type.config.ring.otherdevice.id.description = The internal ID of the device. +thing-type.config.ring.otherdevice.offOffset.label = Power-off Time +thing-type.config.ring.otherdevice.offOffset.description = Offset in minutes to switch off +thing-type.config.ring.otherdevice.refreshInterval.label = Refresh Interval +thing-type.config.ring.otherdevice.refreshInterval.description = How often to poll the Ring service for events in seconds +thing-type.config.ring.stickupcam.id.label = ID +thing-type.config.ring.stickupcam.id.description = The internal ID of the device. thing-type.config.ring.stickupcam.offOffset.label = Power-off Time thing-type.config.ring.stickupcam.offOffset.description = Offset in minutes to switch off thing-type.config.ring.stickupcam.refreshInterval.label = Refresh Interval @@ -68,20 +78,10 @@ channel-type.ring.createdAt.state.pattern = %1$tF %1$tR channel-type.ring.doorbotDescription.label = Event Device Name channel-type.ring.doorbotDescription.description = The description of the Ring device (doorbell, chime, etc) that generated the currently selected event channel-type.ring.doorbotId.label = Event Device ID -channel-type.ring.doorbotId.description = The id of the Ring device (doorbell, chime, etc) that generated the currently selected event +channel-type.ring.doorbotId.description = The ID of the Ring device (doorbell, chime, etc.) that generated the currently selected event channel-type.ring.enabled.label = Enable Polling channel-type.ring.enabled.description = Account Polling Enabled (on=yes, off=no) channel-type.ring.kind.label = Event Type channel-type.ring.kind.description = The kind of event, usually 'motion' or 'ding' channel-type.ring.url.label = URL to recorded video channel-type.ring.url.description = The URL to a recorded video (only when subscribed) - -# binding - -binding.ring.name = Ring Binding -binding.ring.description = This is the binding for ring.com devices like the Video Doorbell - -# thing types config - -thing-type.config.ring.account.refreshToken.label = The Ring account's refresh token -thing-type.config.ring.account.refreshToken.description = Enter the refresh token from Ring. Use this instead of username/password when using 2 factor authentication, or if you don't wish to save the username and password in OpenHAB diff --git a/bundles/org.openhab.binding.ring/src/main/resources/OH-INF/thing/thing-types.xml b/bundles/org.openhab.binding.ring/src/main/resources/OH-INF/thing/thing-types.xml index 1097462ec3b37..f507de0876d57 100644 --- a/bundles/org.openhab.binding.ring/src/main/resources/OH-INF/thing/thing-types.xml +++ b/bundles/org.openhab.binding.ring/src/main/resources/OH-INF/thing/thing-types.xml @@ -26,8 +26,8 @@ password - - Enter the 2 factor authentication code, if enabled + + Enter the two-factor authentication code, if enabled @@ -51,7 +51,7 @@ - By default all accessible devices are discovered. When enabled, disocovery is limited to devices you + By default all accessible devices are discovered. When enabled, discovery is limited to devices you own. false true @@ -212,7 +212,7 @@ String - The id of the Ring device (doorbell, chime, etc) that generated the currently selected event + The ID of the Ring device (doorbell, chime, etc.) that generated the currently selected event Status Info diff --git a/bundles/org.openhab.binding.robonect/README.md b/bundles/org.openhab.binding.robonect/README.md index 224243bcd5cb5..b13f81ae01d38 100644 --- a/bundles/org.openhab.binding.robonect/README.md +++ b/bundles/org.openhab.binding.robonect/README.md @@ -33,7 +33,7 @@ The following configuration settings are supported for the `mower` thing. | pollInterval | no | the interval for the binding to poll for mower status information. | | offlineTimeout | no | the maximum time, the mower can be offline before the binding triggers the offlineTrigger channel | | user | no | the username if authentication is enabled in the firmware. | -| password | no | the password if authenticaiton is enabled in the firmware. | +| password | no | the password if authentication is enabled in the firmware. | | timezone | no | the timezone as configured in Robonect on the robot (default: Europe/Berlin) | An example things configuration might look like: diff --git a/bundles/org.openhab.binding.roku/src/main/resources/OH-INF/i18n/roku.properties b/bundles/org.openhab.binding.roku/src/main/resources/OH-INF/i18n/roku.properties index 5f6add8a605b7..f5cde996a5c1c 100644 --- a/bundles/org.openhab.binding.roku/src/main/resources/OH-INF/i18n/roku.properties +++ b/bundles/org.openhab.binding.roku/src/main/resources/OH-INF/i18n/roku.properties @@ -82,6 +82,7 @@ channel-type.roku.control.label = Control channel-type.roku.control.description = Control playback e.g. Play/Pause/Next/Previous channel-type.roku.endTime.label = End Time channel-type.roku.endTime.description = The date/time when the currently playing media will end +channel-type.roku.endTime.state.pattern = %1$tl:%1$tM %1$tp channel-type.roku.playMode.label = Play Mode channel-type.roku.playMode.description = The Current Playback Mode channel-type.roku.powerState.label = Power State @@ -103,8 +104,10 @@ channel-type.roku.signalQuality.label = Signal Quality channel-type.roku.signalQuality.description = The Signal Quality of the Current TV Channel channel-type.roku.timeElapsed.label = Playback Time channel-type.roku.timeElapsed.description = The Current Playback Time Elapsed +channel-type.roku.timeElapsed.state.pattern = %1$tT channel-type.roku.timeTotal.label = Total Time channel-type.roku.timeTotal.description = The Total Length of the Current Title +channel-type.roku.timeTotal.state.pattern = %1$tT # error status descriptions diff --git a/bundles/org.openhab.binding.rotel/src/main/resources/OH-INF/i18n/rotel.properties b/bundles/org.openhab.binding.rotel/src/main/resources/OH-INF/i18n/rotel.properties index 845a2b8725740..2186a38b10a81 100644 --- a/bundles/org.openhab.binding.rotel/src/main/resources/OH-INF/i18n/rotel.properties +++ b/bundles/org.openhab.binding.rotel/src/main/resources/OH-INF/i18n/rotel.properties @@ -102,6 +102,11 @@ thing-type.rotel.x3.description = Connection to the Rotel Michi X3 integrated am thing-type.rotel.x5.label = X5 Integrated Amplifier thing-type.rotel.x5.description = Connection to the Rotel Michi X5 integrated amplifier +# thing types config + +thing-type.config.rotel.serial6.baudRate.option.19200 = 19200 +thing-type.config.rotel.serial6.baudRate.option.38400 = 38400 + # channel types channel-type.rotel.balance.label = Balance Adjustment From c1e7ef59abcf7b11daddbc460fb6ebd2c7ef8991 Mon Sep 17 00:00:00 2001 From: Leo Siepel Date: Sun, 26 Oct 2025 15:07:03 +0100 Subject: [PATCH 03/23] S-bindings Signed-off-by: Leo Siepel --- .../org.openhab.binding.qolsysiq/README.md | 2 +- .../README.md | 4 +- .../README.md | 12 +- .../README.md | 38 +- bundles/org.openhab.binding.resol/README.md | 6 +- bundles/org.openhab.binding.revogi/README.md | 2 +- bundles/org.openhab.binding.rfxcom/README.md | 18 +- bundles/org.openhab.binding.ring/README.md | 2 +- .../org.openhab.binding.robonect/README.md | 4 +- .../org.openhab.binding.roborock/README.md | 4 +- bundles/org.openhab.binding.roku/README.md | 4 +- bundles/org.openhab.binding.rotel/README.md | 10 +- .../org.openhab.binding.russound/README.md | 4 +- .../org.openhab.binding.sagercaster/README.md | 42 +- .../OH-INF/i18n/sagercaster.properties | 2 +- bundles/org.openhab.binding.salus/README.md | 18 +- .../org.openhab.binding.samsungtv/README.md | 93 ++-- .../resources/OH-INF/thing/channel-types.xml | 1 + bundles/org.openhab.binding.satel/README.md | 48 +- .../resources/OH-INF/i18n/satel.properties | 183 ++++++++ bundles/org.openhab.binding.sbus/README.md | 48 +- .../resources/OH-INF/i18n/sbus.properties | 85 ++-- .../org.openhab.binding.semsportal/README.md | 26 +- .../org.openhab.binding.senechome/README.md | 2 +- bundles/org.openhab.binding.seneye/README.md | 44 +- .../resources/OH-INF/i18n/seneye.properties | 20 +- .../resources/OH-INF/thing/thing-types.xml | 20 +- .../org.openhab.binding.sensebox/README.md | 18 +- .../org.openhab.binding.senseenergy/README.md | 20 +- bundles/org.openhab.binding.sensibo/README.md | 8 +- .../resources/OH-INF/i18n/sensibo.properties | 2 +- .../main/resources/OH-INF/thing/channels.xml | 2 +- .../README.md | 2 +- bundles/org.openhab.binding.serial/README.md | 16 +- .../resources/OH-INF/i18n/serial.properties | 6 +- .../resources/OH-INF/thing/thing-types.xml | 6 +- .../README.md | 6 +- bundles/org.openhab.binding.shelly/README.md | 92 ++-- .../resources/OH-INF/i18n/shelly.properties | 160 +++++-- .../OH-INF/thing/shellyGen1_sensor.xml | 16 +- .../OH-INF/thing/shellyGen2_relay.xml | 10 +- .../OH-INF/thing/shellyGen2_sensor.xml | 2 +- .../org.openhab.binding.siemenshvac/README.md | 44 +- .../OH-INF/i18n/siemenshvac.properties | 8 +- .../src/main/resources/OH-INF/thing/ozw.xml | 11 +- .../org.openhab.binding.siemensrds/README.md | 10 +- .../OH-INF/i18n/siemensrds.properties | 8 +- .../resources/OH-INF/thing/thing-types.xml | 10 +- .../README.md | 28 +- .../i18n/silvercrestwifisocket.properties | 8 +- .../resources/OH-INF/thing/thing-types.xml | 8 +- bundles/org.openhab.binding.sinope/README.md | 26 +- .../resources/OH-INF/i18n/sinope.properties | 55 ++- bundles/org.openhab.binding.sleepiq/README.md | 10 +- .../README.md | 2 +- .../org.openhab.binding.smartmeter/README.md | 8 +- .../OH-INF/i18n/smartmeter.properties | 5 +- .../resources/OH-INF/thing/thing-types.xml | 2 +- .../org.openhab.binding.smartthings/README.md | 54 ++- .../OH-INF/i18n/smartthings.properties | 433 +++++++++++++++++- .../resources/OH-INF/thing/thing-types.xml | 16 +- bundles/org.openhab.binding.smgw/README.md | 18 +- .../resources/OH-INF/i18n/smgw.properties | 4 +- .../resources/OH-INF/thing/thing-types.xml | 4 +- bundles/org.openhab.binding.smhi/README.md | 4 +- .../resources/OH-INF/i18n/smhi.properties | 4 +- .../resources/OH-INF/thing/channel-types.xml | 2 +- .../org.openhab.binding.smsmodem/README.md | 8 +- .../resources/OH-INF/i18n/smsmodem.properties | 14 +- bundles/org.openhab.binding.sncf/README.md | 18 +- .../resources/OH-INF/i18n/sncf.properties | 2 +- .../main/resources/OH-INF/thing/station.xml | 4 +- bundles/org.openhab.binding.snmp/README.md | 10 +- .../resources/OH-INF/i18n/snmp.properties | 2 - .../org.openhab.binding.solaredge/README.md | 74 +-- .../main/resources/OH-INF/config/config.xml | 26 +- .../OH-INF/i18n/solaredge.properties | 18 +- .../resources/OH-INF/thing/generic-thing.xml | 2 +- .../README.md | 100 ++-- .../OH-INF/config/fs-site-config.xml | 2 +- .../OH-INF/i18n/solarforecast.properties | 6 +- .../resources/OH-INF/thing/channel-types.xml | 2 +- .../resources/OH-INF/thing/fs-plane-type.xml | 1 - .../resources/OH-INF/thing/fs-site-type.xml | 1 + .../resources/OH-INF/thing/sc-plane-type.xml | 2 +- .../org.openhab.binding.solarlog/README.md | 14 +- .../resources/OH-INF/thing/thing-types.xml | 12 +- .../org.openhab.binding.solarman/README.md | 9 +- .../resources/OH-INF/i18n/solarman.properties | 69 +-- .../main/resources/OH-INF/thing/channels.xml | 4 +- .../resources/OH-INF/thing/thing-types.xml | 11 +- .../org.openhab.binding.solarmax/README.md | 40 +- .../resources/OH-INF/thing/thing-types.xml | 40 +- .../main/resources/OH-INF/config/config.xml | 18 +- .../OH-INF/i18n/solarwatt.properties | 18 +- .../resources/OH-INF/thing/thing-types.xml | 2 +- bundles/org.openhab.binding.solax/README.md | 8 +- .../resources/OH-INF/i18n/solax.properties | 46 +- .../org.openhab.binding.somfycul/README.md | 2 +- .../org.openhab.binding.somfymylink/README.md | 4 +- .../resources/OH-INF/thing/thing-types.xml | 4 +- .../org.openhab.binding.somfytahoma/README.md | 18 +- .../OH-INF/i18n/somfytahoma.properties | 26 +- bundles/org.openhab.binding.somneo/README.md | 2 +- bundles/org.openhab.binding.sonnen/README.md | 8 +- .../resources/OH-INF/i18n/sonnen.properties | 36 +- .../resources/OH-INF/thing/thing-types.xml | 2 +- bundles/org.openhab.binding.sonos/README.md | 10 +- .../src/main/resources/OH-INF/thing/Amp.xml | 2 +- .../resources/OH-INF/thing/CONNECTAMP.xml | 2 +- .../src/main/resources/OH-INF/thing/One.xml | 2 +- .../src/main/resources/OH-INF/thing/OneSL.xml | 2 +- .../src/main/resources/OH-INF/thing/PLAY1.xml | 2 +- .../src/main/resources/OH-INF/thing/PLAY3.xml | 2 +- .../src/main/resources/OH-INF/thing/PLAY5.xml | 2 +- .../resources/OH-INF/thing/ZonePlayer.xml | 2 +- .../main/resources/OH-INF/thing/channels.xml | 12 +- .../org.openhab.binding.sonyaudio/README.md | 50 +- .../main/resources/OH-INF/config/config.xml | 4 +- .../OH-INF/i18n/sonyaudio.properties | 6 +- .../main/resources/OH-INF/thing/srs-zr5.xml | 4 +- .../README.md | 44 +- .../OH-INF/i18n/sonyprojector.properties | 140 +++++- .../main/resources/OH-INF/thing/channels.xml | 8 +- bundles/org.openhab.binding.souliss/README.md | 81 ++-- .../src/main/resources/OH-INF/addon/addon.xml | 2 +- .../resources/OH-INF/i18n/souliss.properties | 22 +- .../resources/OH-INF/thing/thing-types.xml | 38 +- .../org.openhab.binding.speedtest/README.md | 6 +- .../OH-INF/i18n/speedtest.properties | 3 +- .../resources/OH-INF/thing/thing-types.xml | 2 +- bundles/org.openhab.binding.spotify/README.md | 146 +++--- .../src/main/resources/OH-INF/addon/addon.xml | 2 +- .../main/resources/OH-INF/config/config.xml | 2 +- .../resources/OH-INF/i18n/spotify.properties | 92 ++-- .../resources/OH-INF/thing/thing-types.xml | 93 ++-- .../org.openhab.binding.squeezebox/README.md | 37 +- .../src/main/resources/OH-INF/addon/addon.xml | 4 +- .../OH-INF/i18n/squeezebox.properties | 48 +- .../resources/OH-INF/thing/thing-types.xml | 38 +- bundles/org.openhab.binding.sunsynk/README.md | 136 +++--- .../resources/OH-INF/i18n/sunsynk.properties | 35 +- .../resources/OH-INF/thing/thing-types.xml | 64 +-- .../org.openhab.binding.surepetcare/README.md | 80 ++-- .../src/main/resources/OH-INF/addon/addon.xml | 2 +- .../OH-INF/i18n/surepetcare.properties | 22 +- .../main/resources/OH-INF/thing/things.xml | 20 +- .../README.md | 36 +- .../src/main/resources/OH-INF/addon/addon.xml | 2 +- .../OH-INF/i18n/synopanalyzer.properties | 7 +- .../resources/OH-INF/thing/thing-types.xml | 5 +- .../org.openhab.binding.systeminfo/README.md | 95 ++-- .../OH-INF/i18n/systeminfo.properties | 19 +- .../main/resources/OH-INF/thing/channels.xml | 6 +- 154 files changed, 2421 insertions(+), 1593 deletions(-) diff --git a/bundles/org.openhab.binding.qolsysiq/README.md b/bundles/org.openhab.binding.qolsysiq/README.md index 94c4b720ff097..9fe31a79313cd 100644 --- a/bundles/org.openhab.binding.qolsysiq/README.md +++ b/bundles/org.openhab.binding.qolsysiq/README.md @@ -33,7 +33,7 @@ Panel will _reboot_ `Settings` --> `Advanced Settings` --> `Installation` --> `Devices` --> `Wi-Fi Devices` --> `Reveal Secure Token` (copy token to use in panel configuration) -At this point you may add the panel thing in openHAB using the secure token along with the IP or host name of the panel. +At this point you may add the panel Thing in openHAB using the secure token along with the IP or host name of the panel. ### Partition (Bridge) diff --git a/bundles/org.openhab.binding.radiothermostat/README.md b/bundles/org.openhab.binding.radiothermostat/README.md index d418e2b26e16c..ccef6429de3ca 100644 --- a/bundles/org.openhab.binding.radiothermostat/README.md +++ b/bundles/org.openhab.binding.radiothermostat/README.md @@ -10,7 +10,7 @@ The heating and cooling program schedules on the thermostat can also be configur ## Supported Things -There is exactly one supported thing type, which represents any of the supported thermostat models. +There is exactly one supported Thing type, which represents any of the supported thermostat models. It has the `rtherm` id. Multiple Things can be added if more than one thermostat is to be controlled. @@ -21,7 +21,7 @@ Otherwise the Thing must be manually added. ## Thing Configuration -The thing has a few configuration parameters: +The Thing has a few configuration parameters: | Parameter | Description | |-----------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| diff --git a/bundles/org.openhab.binding.regoheatpump/README.md b/bundles/org.openhab.binding.regoheatpump/README.md index 65a6fca2d63b8..8ed5501e6d6d9 100644 --- a/bundles/org.openhab.binding.regoheatpump/README.md +++ b/bundles/org.openhab.binding.regoheatpump/README.md @@ -44,13 +44,13 @@ Board: The code running on the ESP module can be found in the [esp8266-bridge repository on GitHub](https://github.com/crnjan/esp8266-bridge). There are other projects providing ESP firmware with similar functionality, such as the [ESP-LINK WiFi-Serial Bridge project on GitHub](https://github.com/jeelabs/esp-link), but did not test with those. -Configuration of the TCP/IP thing: +Configuration of the TCP/IP Thing: - address: the hostname/IP address of the transparent bridge on the local network - mandatory, - tcpPort: the port number to use to connect to the transparent bridge - optional, defaults to 9265, - refreshInterval: refresh interval in seconds, used to fetch new values from the heat pump - optional, defaults to 60 seconds. -Example thing definition: +Example Thing definition: ```java regoheatpump:ipRego6xx:ivtIP [ address="192.168.2.50", tcpPort="9265" ] @@ -65,7 +65,7 @@ Parameters: - portName: the name of the serial port on your computer - mandatory, - refreshInterval: refresh interval in seconds, used to fetch new values from the heat pump - optional, defaults to 60 seconds. -Example thing definition: +Example Thing definition: ```java regoheatpump:serialRego6xx:ivtSerial [ portName="COM3" ] @@ -172,12 +172,12 @@ A transparent bridge between the Husdata interface and network (i.e. Wi-Fi) is u There are many existing projects providing such functionality, such as [Serial to Network Proxy (ser2net)](http://ser2net.sourceforge.net/). -Configuration of the TCP/IP thing: +Configuration of the TCP/IP Thing: - address: the hostname/IP address of the transparent bridge on the local network - mandatory, - tcpPort: the port number to use to connect to the transparent bridge - optional, defaults to 9265. -Example thing definition: +Example Thing definition: ```java regoheatpump:ipHusdata:ivtIP [ address="192.168.2.50", tcpPort="9265" ] @@ -191,7 +191,7 @@ Parameters: - portName: the name of the serial port on your computer - mandatory. -Example thing definition: +Example Thing definition: ```java regoheatpump:serialHusdata:ivtSerial [ portName="COM3" ] diff --git a/bundles/org.openhab.binding.remoteopenhab/README.md b/bundles/org.openhab.binding.remoteopenhab/README.md index 0dc1f3161370e..e0d252a921744 100644 --- a/bundles/org.openhab.binding.remoteopenhab/README.md +++ b/bundles/org.openhab.binding.remoteopenhab/README.md @@ -4,8 +4,8 @@ The Remote openHAB binding allows to communicate with remote openHAB servers. The communication is bidirectional. The binding on the local server listens to any item state updates on the remote server and updates accordingly the linked channel on the local server. It transfers any item command from the local server to the remote server. -It can map any remote thing to a local thing. -Through this mapping, in your rules (local server), you can take actions based upon status updates or status changes generated by remote things and you can take actions based upon trigger events generated by the trigger channels defined in the remote thing. +It can map any remote Thing to a local Thing. +Through this mapping, in your rules (local server), you can take actions based upon status updates or status changes generated by remote things and you can take actions based upon trigger events generated by the trigger channels defined in the remote Thing. One use of this binding is to distribute your home automation system on multiple openHAB servers. @@ -17,24 +17,24 @@ A third usage is for users that would like to keep unchanged an existing openHAB ## Supported Things -There is two supported things: the `server` bridge thing representing a remote openHAB server and the `thing` thing representing a thing from the remote openHAB server. +There is two supported things: the `server` bridge Thing representing a remote openHAB server and the `thing` Thing representing a Thing from the remote openHAB server. ## Discovery All openHAB servers in the local network are automatically discovered (through mDNS) by the binding. -You will find in the inbox one discovery thing per remote server interface. +You will find in the inbox one discovery Thing per remote server interface. So if your remote server has one IPv4 address and one IPv6 address, you will discover two things in the inbox. Just choose one of the two things. -Once a bridge thing representing a remote openHAB server is created, all things from this remote server will be discovered when you scan for new things. +Once a bridge Thing representing a remote openHAB server is created, all things from this remote server will be discovered when you scan for new things. ## Binding Configuration -The binding has no configuration options, all configuration is done at thing level. +The binding has no configuration options, all configuration is done at Thing level. ## Thing Configuration -The `server` thing has the following configuration parameters: +The `server` Thing has the following configuration parameters: | Parameter | Required | Description | |-----------------------|----------|-----------------------------------------------------------------------------------------------------------| @@ -54,25 +54,25 @@ The `server` thing has the following configuration parameters: Please note that even though the default configuration is based on insecure communication over HTTP, it is recommended to adjust the configuration to be based on secure communication over HTTPS. This is of course essential if your connection to the remote openHAB server is over the Internet. -The `thing` thing has the following configuration parameters: +The `thing` Thing has the following configuration parameters: | Parameter | Required | Description | |----------------------|----------|--------------------------------------------------------------------------------------------------------------------------------------------| -| thingUID | yes | The thing UID in the remote openHAB server. | -| buildTriggerChannels | no | If set to true, a trigger channel will be automatically created and linked to each trigger channel from the remote thing. Default is true. | +| thingUID | yes | The Thing UID in the remote openHAB server. | +| buildTriggerChannels | no | If set to true, a trigger channel will be automatically created and linked to each trigger channel from the remote Thing. Default is true. | -Please note that if your remote server is an openHAB v3 server, in order for all of your things to be properly initialized, you will need to define on your bridge thing a valid API token in the parameter `token` and also define the parameter `authenticateAnyway` to true in case you are using an unsecured connection (HTTP). +Please note that if your remote server is an openHAB v3 server, in order for all of your things to be properly initialized, you will need to define on your bridge Thing a valid API token in the parameter `token` and also define the parameter `authenticateAnyway` to true in case you are using an unsecured connection (HTTP). This API token can be created on your remote server using Main UI. Setting the `buildTriggerChannels` parameter to false is for the main following advanced usages: -- you don't care about the trigger channels of this remote thing and you don't want the binding to create them locally, +- you don't care about the trigger channels of this remote Thing and you don't want the binding to create them locally, - you want to define the trigger channels in your configuration file, and only the channels that you will finally need, - you want to set a specific channel ID rather than using the channel ID created by the binding. ## Thing Status -The status of any `thing` thing is a mapping of the remote thing status. +The status of any `thing` thThinging is a mapping of the remote Thing status. A mapping is done only when the `server` bridge is ONLINE (meaning the local server is connected to the remote server). Please note that every remote status other than UNKNOWN, ONLINE and OFFLINE will then be considered as OFFLINE on the local server. @@ -80,16 +80,16 @@ Please note that every remote status other than UNKNOWN, ONLINE and OFFLINE will Channels are built dynamically and automatically by the binding. -On the `server` thing, a channel is created automatically for each item defined in the remote server. +On the `server` Thing, a channel is created automatically for each item defined in the remote server. Only basic groups (with no state) from the remote server are ignored. The channel ID of the created channel corresponds to the name of the item on the remote server. For example, if your remote item is named `MyDate`, the channel UID of the channel created by the binding will be `remoteopenhab:server:xxx:MyDate`. -On the `thing` thing, you will not find all channels from your remote thing. -Only trigger channels from your remote thing will be created. -**All state channels from your remote thing will be ignored** (use the `server` thing to link a local item to a remote (item). -if the `buildTriggerChannels` parameter is set to true, a channel is created automatically for each trigger channel defined in the remote thing. -For example, if your remote thing provides a trigger channel with this UID `astro:sun:local:night#event`, the channel UID of the channel created by the binding will be `remoteopenhab:thing:xxx:astro_sun_local_night_event`. +On the `thing` Thing, you will not find all channels from your remote Thing. +Only trigger channels from your remote Thing will be created. +**All state channels from your remote Thing will be ignored** (use the `server` Thing to link a local item to a remote (item). +if the `buildTriggerChannels` parameter is set to true, a channel is created automatically for each trigger channel defined in the remote Thing. +For example, if your remote Thing provides a trigger channel with this UID `astro:sun:local:night#event`, the channel UID of the channel created by the binding will be `remoteopenhab:thing:xxx:astro_sun_local_night_event`. ## Limitations diff --git a/bundles/org.openhab.binding.resol/README.md b/bundles/org.openhab.binding.resol/README.md index ffee4070dc3b0..b34b063b5be1c 100644 --- a/bundles/org.openhab.binding.resol/README.md +++ b/bundles/org.openhab.binding.resol/README.md @@ -18,7 +18,7 @@ In the binding might support USB-type bridges in future. ### Device -On top of the bridge things, which enable access to the VBUS, many - if not all - Resol Controllers and Modules like WMZ heat meters, HKM Heating circuit extensions etc. are supported including branded versions from different suppliers as thing type _device_. +On top of the bridge Things, which enable access to the VBUS, many - if not all - Resol Controllers and Modules like WMZ heat meters, HKM Heating circuit extensions etc. are supported including branded versions from different suppliers as Thing type _device_. The supported devices include - Solar controller DeltaSol® A/AX/AX HE @@ -55,7 +55,7 @@ A more complete list can be found in the doc of the [resol-vbus-java library](ht ### Emulated Extension Module EM -Some controllers like the Deltasol MX can be connected to an extension module, which can be emulated by the thing type _emulatedEM_. +Some controllers like the Deltasol MX can be connected to an extension module, which can be emulated by the Thing type _emulatedEM_. The emulated EM is a virtual device, visible on the VBUS to a Resol controller and provides an interface between openHAB and the controller. Relay channels are outputs from the controller point of view and therefore read-only in OH. The sensor channels as inputs for the solar or system controller and intended to be written by OH. @@ -94,7 +94,7 @@ _emulatedEM_ devices cannot be auto-discovered and require beside the bridge the ## Device Channels -The channels of a thing are determined automatically based on the received VBUS data and are highly dependent on the used device. +The channels of a Thing are determined automatically based on the received VBUS data and are highly dependent on the used device. Here is a list of the channels of a DeltaSol MX with a heat quantity meter (HQM) and an extension module EM. The channels supported for your device can be seen in the UI or in the logs if DEBUG logging is enabled for this binding after data is received from the physical device. diff --git a/bundles/org.openhab.binding.revogi/README.md b/bundles/org.openhab.binding.revogi/README.md index 871a36221e325..412dae5070222 100644 --- a/bundles/org.openhab.binding.revogi/README.md +++ b/bundles/org.openhab.binding.revogi/README.md @@ -1,7 +1,7 @@ # Revogi Binding This binding is written to control Revogi devices. -The first thing implemented is the [Revogi Smart Power Strip](https://www.revogi.com/smart-power/smart-power-strip-eu/#section6). +The first thThinging implemented is the [Revogi Smart Power Strip](https://www.revogi.com/smart-power/smart-power-strip-eu/#section6). The device has 6 power plugs that can be switched independently, or all together. It also provides information like power consumption and electric current for each plug. diff --git a/bundles/org.openhab.binding.rfxcom/README.md b/bundles/org.openhab.binding.rfxcom/README.md index 788ad69d9b411..97844ffc9762d 100644 --- a/bundles/org.openhab.binding.rfxcom/README.md +++ b/bundles/org.openhab.binding.rfxcom/README.md @@ -69,7 +69,7 @@ To do that, manually add the generic RFXCOM device named `RFXCOM USB Transceiver You will need to specify at least the serial port which has been assigned to the RFXCOM (see notes above). To configure the serial port within openHAB see the [general documentation about serial port configuration](/docs/administration/serial.html). -Alternatively you can add the RFXCOM using a thing file such as: +Alternatively you can add the RFXCOM using a Thing file such as: ```java Bridge rfxcom:bridge:usb0 [ serialPort="/dev/" ] { @@ -86,7 +86,7 @@ To start a TCP server for an RFXCOM device, you can use socat: socat tcp-listen:10001,fork,reuseaddr file:/dev/ttyUSB0,raw ``` -A TCP bridge, for use with socat on a remote host, can be configured manually, or by adding an "RFXCOM USB Transceiver over TCP/IP" device or in a thing file like this: +A TCP bridge, for use with socat on a remote host, can be configured manually, or by adding an "RFXCOM USB Transceiver over TCP/IP" device or in a Thing file like this: ```java Bridge rfxcom:tcpbridge:sunflower [ host="sunflower", port=10001 ] { @@ -136,7 +136,7 @@ Bridge rfxcom:tcpbridge:sunflower [ host="sunflower", port=10001 ] { ## Thing Configuration -Configuration parameters are listed alongside each thing type. +Configuration parameters are listed alongside each Thing type. Most devices only require a deviceId and a subType, but some things require additional configuration. The deviceId is used both when receiving and transmitting messages, the subType is mainly used when sending messages, but it can vary between device types. @@ -662,13 +662,13 @@ By convention, the first 20 bits of this is used for deviceId, and the last 4 bi Depending on your device, you may have only one command, one pair of commands (on/off), or any other multiple, for example, a set of 4 sockets with an on/off pair for each and an additional pair for "all". -Different device manufactures using this protocol will use different schemes for their commands, so to configure a thing using the lighting4 protocol, you must specify at least one commandId in the thing configuration. +Different device manufactures using this protocol will use different schemes for their commands, so to configure a Thing using the lighting4 protocol, you must specify at least one commandId in the Thing configuration. If a device has multiple sets of commands, you can configure multiple things with the same device id, but different commandIds. Some devices will expect a specific pulse length. -If required, that can also be specified as a thing configuration parameter. +If required, that can also be specified as a Thing configuration parameter. -Previously, openHAB would attempt to guess at the meaning of a commandId if it was not specified in the thing configuration based on devices seen in the wild. +Previously, openHAB would attempt to guess at the meaning of a commandId if it was not specified in the Thing configuration based on devices seen in the wild. Due to the varying nature of devices, this behaviour is deprecated and will be removed in a future openHAB version. Until then, commands 1, 3, 5-13 and 15 are considered ON and 0, 2, 4 and 14 are considered OFF when the `onCommandId` or `offCommandId` for a device is not specified. @@ -864,7 +864,7 @@ A Rain device These messages are included in the Pro firmware and represent messages for which the device does not understand the protocol. The raw message is a list of the length of the RF pulses before they have been interpreted as bytes. -You can also send raw messages by recording the pulses of an incoming message and using them to configure a raw thing item. +You can also send raw messages by recording the pulses of an incoming message and using them to configure a raw Thing item. #### Channels @@ -915,7 +915,7 @@ This can be used to transmit raw messages. The first step is to work out the right pulses for the device. You can do this using RFXmngr, or you can do this using openhab: -1. Set up a RAW thing to receive raw pulses: +1. Set up a RAW Thing to receive raw pulses: ```java Bridge rfxcom:tcpbridge:rfxtrx0 [ host="192.168.42.10", port=10001, enableUndecoded=true ] { @@ -935,7 +935,7 @@ You can do this using RFXmngr, or you can do this using openhab: Now you have the pulses, set up a send device: -1. Set up a RAW thing to send a command: +1. Set up a RAW Thing to send a command: ```java Bridge rfxcom:tcpbridge:rfxtrx0 [ host="192.168.42.10", port=10001, enableUndecoded=true ] { diff --git a/bundles/org.openhab.binding.ring/README.md b/bundles/org.openhab.binding.ring/README.md index fa9535dcc9190..340e5346f8a2e 100644 --- a/bundles/org.openhab.binding.ring/README.md +++ b/bundles/org.openhab.binding.ring/README.md @@ -20,7 +20,7 @@ After (manually) adding a Ring Account bridge, registered doorbells and chimes w Account configuration is necessary. The easiest way to do this is from the UI. -Just add a new thing, select the Ring binding, then Ring Account Binding Thing, and enter username and password. +Just add a new Thing, select the Ring binding, then Ring Account Binding Thing, and enter username and password. Optionally, you can also specify a unique hardware ID and refresh interval for how often to check ring.com for events. If hardware ID is not specified, the MAC address of the system running OpenHAB is used. diff --git a/bundles/org.openhab.binding.robonect/README.md b/bundles/org.openhab.binding.robonect/README.md index b13f81ae01d38..b1aaa452cb45a 100644 --- a/bundles/org.openhab.binding.robonect/README.md +++ b/bundles/org.openhab.binding.robonect/README.md @@ -3,7 +3,7 @@ Robonect is a piece of hardware which has to be put into your Husqvarna, Gardena and other branded automower and makes it accessible in your internal network. More details about the Robonect module can be found at [robonect.de](https://forum.robonect.de/) -This binding integrates mowers having the robonect module installed as a thing into the home automation solution, allowing to control the mower and react on mower status changes in rules. +This binding integrates mowers having the robonect module installed as a Thing into the home automation solution, allowing to control the mower and react on mower status changes in rules. ## Supported Things @@ -25,7 +25,7 @@ Automatic discovery is not supported. ## Thing Configuration -The following configuration settings are supported for the `mower` thing. +The following configuration settings are supported for the `mower` Thing. | parameter name | mandatory | description | |----------------|-----------|---------------------------------------------------------------------------------------------------| diff --git a/bundles/org.openhab.binding.roborock/README.md b/bundles/org.openhab.binding.roborock/README.md index 433c31f9838c8..16241dfce5ad6 100644 --- a/bundles/org.openhab.binding.roborock/README.md +++ b/bundles/org.openhab.binding.roborock/README.md @@ -19,7 +19,9 @@ After (manually) adding a Roborock Account bridge, registered vacuums will be au Account configuration is necessary. The easiest way to do this is from the UI. -Just add a new thing, select the Roborock binding, then Roborock Account Binding Thing, and enter the email for your Roborock account. If the email is valid, you will be send an email with a verification code. Once received, update the twofa field and hit save. +Just add a new thing, select the Roborock binding, then Roborock Account Binding Thing, and enter the email for your Roborock account. +If the email is valid, you will be send an email with a verification code. +Once received, update the twofa field and hit save. | Thing Parameter | Default Value | Required | Advanced | Description | |-----------------|---------------|----------|----------|--------------------------------------------------------------------------------------| diff --git a/bundles/org.openhab.binding.roku/README.md b/bundles/org.openhab.binding.roku/README.md index a301b5b8bd2c0..ec600e546102f 100644 --- a/bundles/org.openhab.binding.roku/README.md +++ b/bundles/org.openhab.binding.roku/README.md @@ -9,7 +9,7 @@ must be configured as `Enabled` or `Permissive`. ## Supported Things -There are two supported thing types, which represent either a standalone Roku device or a Roku TV. +There are two supported Thing types, which represent either a standalone Roku device or a Roku TV. A supported Roku streaming media player or streaming stick uses the `roku_player` id and a supported Roku TV uses the `roku_tv` id. The Roku TV type adds additional channels and button commands to the button channel dropdown for TV specific functionality. Multiple Things can be added if more than one Roku is to be controlled. @@ -25,7 +25,7 @@ The binding has no configuration options, all configuration is done at Thing lev ## Thing Configuration -The thing has a few configuration parameters: +The Thing has a few configuration parameters: | Parameter | Description | |-----------|--------------------------------------------------------------------------------------------------------------------------| diff --git a/bundles/org.openhab.binding.rotel/README.md b/bundles/org.openhab.binding.rotel/README.md index 870a9616cc6db..3fd55a1188a91 100644 --- a/bundles/org.openhab.binding.rotel/README.md +++ b/bundles/org.openhab.binding.rotel/README.md @@ -26,7 +26,7 @@ The binding has been tested with an RSP-1066, an RSP-1570 and an RX-1052. ## Supported Things -This binding supports the following thing types: +This binding supports the following Thing types: | Thing Type | Description | |------------|-------------------------------------------------------------------------------| @@ -87,11 +87,11 @@ You have to add all things manually. ## Binding Configuration There are no overall binding configuration settings that need to be set. -All settings are through thing configuration parameters. +All settings are through Thing configuration parameters. ## Thing Configuration -The thing requires the following configuration parameters: +The Thing requires the following configuration parameters: | Parameter Label | Parameter ID | Description | Accepted values | |-------------------------|------------------|-------------------------------------------------------|-----------------| @@ -178,7 +178,7 @@ The following channels are available: | speakera | Speaker-A Adjustment | Switch | Turn on/off the speaker group A | ON, OFF | | speakerb | Speaker-B Adjustment | Switch | Turn on/off the speaker group B | ON, OFF | -Here are the list of channels available for each thing type: +Here are the list of channels available for each Thing type: | Thing Type | Available channels | |------------|---------------------------------------------------------------------------------------------------------| @@ -231,7 +231,7 @@ Here are the list of channels available for each thing type: | x3 | power, source, volume, mute, bass, treble, frequency, brightness, tcbypass, balance, otherCommand | | x5 | power, source, volume, mute, bass, treble, frequency, brightness, tcbypass, balance, otherCommand | -Here are the available commands for the otherCommand channel depending on the thing type: +Here are the available commands for the otherCommand channel depending on the Thing type: | Thing Type | Available commands for the otherCommand channel | |--------------------|-------------------------------------------------------------------------------| diff --git a/bundles/org.openhab.binding.russound/README.md b/bundles/org.openhab.binding.russound/README.md index 56a4be51b2fa9..dcd20ef313388 100644 --- a/bundles/org.openhab.binding.russound/README.md +++ b/bundles/org.openhab.binding.russound/README.md @@ -67,7 +67,7 @@ The following configurations occur for each of the bridges/things: ## Channels -The following channels are supported for each bridge/thing +The following channels are supported for each bridge/Thing ### Russound System @@ -188,7 +188,7 @@ The following channels are supported for each bridge/thing 1. If you send an OnOffType to the volume will have the same affect as turning the zone on/off (ie sending OnOffType to "status") 1. The volume PercentType will be scaled to Russound's volume of 0-50 (ie 50% = volume of 25, 100% = volume of 50) 1. Initialize a media management session by sending ON to the channel. - The related source thing will then start sending out media management information in the MM channels. + The related source Thing will then start sending out media management information in the MM channels. To close the session - simply send OFF to the channel. Sending OFF to the channel when a session has not been initialized does nothing. Likewise if the related source is a tuner, this command does nothing. diff --git a/bundles/org.openhab.binding.sagercaster/README.md b/bundles/org.openhab.binding.sagercaster/README.md index d84e21c40ee04..b6d42f04e30b1 100644 --- a/bundles/org.openhab.binding.sagercaster/README.md +++ b/bundles/org.openhab.binding.sagercaster/README.md @@ -4,15 +4,15 @@ The Sager Weathercaster is a scientific instrument for accurate prediction of th ## Limitations -- To operate, this binding will need to use channel values provided by other means (e.g. Weather Binding, Netatmo, a 1-Wire personal weather station...) +- To operate, this binding will need to use channel values provided by other means (e.g. Weather Binding, Netatmo, a 1-Wire personal weather station...). -- This binding buffers readings up to 6 hours before producing reliable weather forecasts (wind direction and sea level pressure). +- This binding buffers readings for some hours before producing weather forecasts (wind direction and sea level pressure). For these reasons, this binding is not a binding in the usual sense. ## Discovery -A default `sagercaster` thing will be automatically discovered, based on system location. +A default `sagercaster` Thing will be automatically discovered, based on system location. ## Binding Configuration @@ -35,26 +35,26 @@ The binding will use some input channels, that can be configured directly with p | Name | Group | Type | Description | | ------------------- | ------ | -------------------- | --------------------------------------------------------------------- | | is-raining (*) | input | Switch | On if it is raining, else Off. | -| rain-qtty (*) | input | Number | Any value that give indication of a current rain volume | -| or | input | Number:Speed | Any value that give indication of a current rain volume eg mm/h | -| or | input | Number:Length | Any value that give indication of a current rain volume eg mm | -| cloudiness | input | Number:Dimensionless | Cloud cover percentage | -| wind-speed-beaufort | input | Number | Wind speed expressed using the Beaufort scale | -| pressure | input | Number:Pressure | Sea level pressure | -| wind-angle | input | Number:Angle | Wind direction | -| temperature | input | Number:Temperature | Outside temperature | -| timestamp | output | DateTime | Timestamp of the last forecast update | -| forecast | output | String | Description of the weather forecast | -| velocity | output | String | Description of the expected wind evolution | -| velocity-beaufort | output | Number | Expected wind evolution using the Beaufort scale | -| wind-from | output | String | Expected wind orientation | -| wind-to | output | String | Evolution of the expected wind orientation | -| wind-evolution | output | String | Wind orientation evolution over observation period | -| pressure-trend | output | String | Pressure evolution over observation period | -| temperature-trend | output | String | Temperature evolution over observation period | +| rain-qtty (*) | input | Number | Any value that gives indication of a current rain volume. | +| or | input | Number:Speed | Any value that gives indication of a current rain volume eg mm/h | +| or | input | Number:Length | Any value that gives indication of a current rain volume eg mm | +| cloudiness | input | Number:Dimensionless | Cloud cover percentage. | +| wind-speed-beaufort | input | Number | Wind speed expressed using the Beaufort scale. | +| pressure | input | Number:Pressure | Sea level pressure. | +| wind-angle | input | Number:Angle | Wind direction. | +| temperature | input | Number:Temperature | Outside temperature. | +| timestamp | output | DateTime | Timestamp of the last forecast update. | +| forecast | output | String | Description of the weather forecast. | +| velocity | output | String | Description of the expected wind evolution. | +| velocity-beaufort | output | Number | Expected wind evolution using the Beaufort scale. | +| wind-from | output | String | Expected wind orientation. | +| wind-to | output | String | Evolution of the expected wind orientation. | +| wind-evolution | output | String | Wind orientation evolution over observation period. | +| pressure-trend | output | String | Pressure evolution over observation period. | +| temperature-trend | output | String | Temperature evolution over observation period. | | reliability | output | Number:Dimensionless | Algorithm efficiency toward buffered data, grows during first 6 hours | -(*) You may use either is-raining, either rain-qtty depending upon the data available in your system. +(*) You may use either is-raining or rain-qtty depending upon the data available in your system. ## Full Example diff --git a/bundles/org.openhab.binding.sagercaster/src/main/resources/OH-INF/i18n/sagercaster.properties b/bundles/org.openhab.binding.sagercaster/src/main/resources/OH-INF/i18n/sagercaster.properties index ad2b76df67a5f..93a28a066be7f 100644 --- a/bundles/org.openhab.binding.sagercaster/src/main/resources/OH-INF/i18n/sagercaster.properties +++ b/bundles/org.openhab.binding.sagercaster/src/main/resources/OH-INF/i18n/sagercaster.properties @@ -13,7 +13,7 @@ sagercasterDescription = This thing represents a forecast for a given location. locationLabel = Location locationDescription = Your geo coordinates separated with comma (e.g. "37.8,-122.4"). observationLabel = Observation Period -observationDescription = Sager WeatherCaster needs a minimum representative period of time to produce meaningfull results (defaults to 6 hours). +observationDescription = Sager WeatherCaster needs a minimum representative period of time to produce meaningful results (defaults to 6 hours). # channel groups diff --git a/bundles/org.openhab.binding.salus/README.md b/bundles/org.openhab.binding.salus/README.md index 2fe5773825070..289aa52c0ec20 100644 --- a/bundles/org.openhab.binding.salus/README.md +++ b/bundles/org.openhab.binding.salus/README.md @@ -8,12 +8,10 @@ extensive experience, we accurately identify user needs and introduce products t ## Supported Things -- **`salus-cloud-bridge`**: This bridge connects to Salus Cloud. Multiple bridges are supported for those with multiple - accounts. +- **`salus-cloud-bridge`**: This bridge connects to Salus Cloud. Multiple bridges are supported for those with multiple accounts. - **`salus-aws-bridge`**: This bridge connects to AWS Salus Cloud. Multiple bridges are supported for those with multiple accounts. -- **`salus-device`**: A generic Salus device that exposes all properties (as channels) from the Cloud without any - modifications. -- **`salus-it600-device`**: A temperature controller with extended capabilities. +- **`salus-device`**: A generic Salus device that exposes all properties (as channels) from the Cloud without any modifications. +- **`salus-it600-device`**: A temperature controller with extended capabilities. ## Discovery @@ -41,7 +39,7 @@ assumed automatically based on the `oem_model`. | url | text | URL to Salus Cloud | `https://eu.salusconnect.io` | no | yes | | refreshInterval | integer (seconds) | Refresh time in seconds | 30 | no | yes | | propertiesRefreshInterval | integer (seconds) | How long device properties should be cached | 5 | no | yes | -| userPoolId | text | | XGRz3CgoY | no | yes | +| userPoolId | text | | eu-central-1_XGRz3CgoY | no | yes | | clientId | text | The app client ID | 4pk5efh3v84g5dav43imsv4fbj | no | yes | | region | text | Region with which the SDK should communicate | eu-central-1 | no | yes | | companyCode | text | | salus-eu | no | yes | @@ -77,10 +75,10 @@ removed. | Channel | Type | Read/Write | Description | |----------------------------|--------------------|------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| temperature | Number:Temperature | RO | Current temperature in the room | -| expected-temperature | Number:Temperature | RW | Sets the desired temperature in the room | -| work-type | String | RW | Sets the work type for the device. OFF - device is turned off MANUAL - schedules are turned off, following a manual temperature set, AUTOMATIC - schedules are turned on, following schedule, TEMPORARY_MANUAL - schedules are turned on, following manual temperature until the next schedule. | -| running-state | Switch | RO | Is the device running | +| temperature | Number:Temperature | RO | Current temperature in the room. | +| expected-temperature | Number:Temperature | RW | Sets the desired temperature in the room. | +| work-type | String | RW | Sets the work type for the device. OFF - device is turned off MANUAL - schedules are turned off, following a manual temperature set, AUTOMATIC - schedules are turned on, following schedule, TEMPORARY_MANUAL - schedules are turned on, following manual temperature until the next schedule. | +| running-state | Switch | RO | Is the device running. | ## Full Example diff --git a/bundles/org.openhab.binding.samsungtv/README.md b/bundles/org.openhab.binding.samsungtv/README.md index cb73798d738fc..1515c1f549e12 100644 --- a/bundles/org.openhab.binding.samsungtv/README.md +++ b/bundles/org.openhab.binding.samsungtv/README.md @@ -8,7 +8,7 @@ There is one Thing per TV. ## Discovery -The TV's are discovered through UPnP protocol in the local network and all devices are put in the Inbox. TV must be ON for this to work. +The TV's are discovered through UPnP protocol in the local network and all devices are put in the Inbox. The TV must be ON for this to work. ## Binding Configuration @@ -28,7 +28,7 @@ The binding has the following configuration options, which can be set for "bindi | orientationKey | Orientation Key | Key press to send to rotate auto-rotation mount | no | | smartThingsApiKey | Smartthings PAT | Smartthings Personal Access Token | no | | smartThingsDeviceId | Smartthings Device ID | Smartthings Device ID for this TV | no | -| smartThingsSubscription| Smarththings Subscription | Reduces polling on Smartthings channels, default true | no | +| smartThingsSubscription| Smartthings Subscription | Reduces polling on Smartthings channels, default true | no | ## Thing Configuration @@ -52,7 +52,7 @@ If your TV supports _websocketsecure_, you **MUST** use it, otherwise the `keyCo In order for the binding to control your TV, you will be asked to accept the remote connection (from openHAB) on your TV. You have 30 seconds to accept the connection. If you fail to accept it, then most channels will not work. Once you have accepted the connection, the returned token is stored in the binding, so you don't have to repeat this every time openHAB is restarted. -If the connection has been refused, or you don't have your TV configured to allow remote connections, the binding will not work. If you are having problems, check the settings on your TV, sometimes a family member denies the popup (because they don't know what it is), and after that nothing will work. +If the connection has been refused, or you don't have your TV configured to allow remote connections, the binding will not work. If you are having problems, check the settings on your TV. Sometimes a family member denies the popup (because they don't know what it is), and after that nothing will work. You can set the connection to `Allow` on the TV, or delete the openHAB entry, and try the connection again. The binding will try to automatically discover the correct protocol for your TV, so **don't change it** unless you know it is wrong. @@ -91,7 +91,7 @@ TVs support the following channels: | artLabel | String | RW | The currently selected art (label) - can also set the current art | | artJson | String | RW | Send/receive commands from the TV art websocket Channel | | artBrightness | Dimmer | RW | ArtMode Brightness | -| artColorTemperature | Number | RW | ArtMode Color temperature Minnimum value is -5 and maximum 5 | +| artColorTemperature | Number | RW | ArtMode Color temperature Minimum value is -5 and maximum 5 | | artOrientation | Switch | RW | TV orientation, Landscape (OFF) or Portrait (ON) | **NOTE:** channels: brightness, contrast, sharpness, colorTemperature don't work on newer TV's.
@@ -176,7 +176,7 @@ To determine the ON/ART/OFF state of your TV, you have to read both `power` and ### setArtMode -**NOTE** Samsung added back the art API in Firmware 1622 to >2021 Frame TV's. If you have this version of firmware or higher, don't use the `setArtMode` channel, as it is not neccessary. +**NOTE:** Samsung added back the art API in Firmware 1622 to >2021 Frame TV's. If you have this version of firmware or higher, don't use the `setArtMode` channel, as it is not necessary. `setArtMode` is a Switch channel. Since Samsung removed the art api in 2022, the TV has no way of knowing if it is in art mode or playing a TV source. This switch is to allow you to manually tell the TV what mode it is in. @@ -187,11 +187,11 @@ This input allows you to set the internal art mode state from an external source ### artImage -`artImage` is an Image channel that receives a thumbnail of the art that would be displayed in artMode (even if the TV is on). It receives iimages only (you can't send a command to it due to openHAB lmitations). +`artImage` is an Image channel that receives a thumbnail of the art that would be displayed in artMode (even if the TV is on). It receives images only (you can't send a command to it due to openHAB limitations). ### artLabel -`artlabel` is a String channel that receives the _internal_ label of the artwork displayed. This will be something like `MY_0010` or `SAM-0123`. `MY` means it's art you uploaded, `SAM` means its from the Samsung art gallery. +`artLabel` is a String channel that receives the _internal_ label of the artwork displayed. This will be something like `MY_0010` or `SAM-0123`. `MY` means it's art you uploaded, `SAM` means it's from the Samsung art gallery. You have to figure out what the label actually represents. You can send commands to the channel. It accepts, Strings, string representations of a `Rawtype` image and `RawType` Images. If you send a String, such as `MY-0013`, it will display that art on the TV. If the TV is ON, playing live TV, then the Tv will switch to artMode. @@ -288,12 +288,12 @@ TV_ArtJson.sendCommand("{\"request\":\"select_image\", \"content_id\":\"MY_0009\ These are just the commands I know, there are probably others, let me know if you find more that work. -### artbrightness +### artBrightness `artBrightness` is a dimmer channel that sets the brightness of the art in ArtMode. It does not affect the TV brightness. Normally the brightness of the artwork is controlled automatically, and the current value is polled and reported via this channel. You can change the brightness of the artwork (but automatic control is still enabled, unless you turn it off). -There are only 10 levels of brighness, so you could use a `Setpoint` control for this channel in your `sitemap` - eg: +There are only 10 levels of brightness, so you could use a `Setpoint` control for this channel in your `sitemap` - e.g.: ```java Slider item=TV_ArtBrightness visibility=[TV_ArtMode==ON] @@ -303,7 +303,7 @@ Setpoint item=TV_ArtBrightness minValue=0 maxValue=100 step=10 visibility=[TV_Ar ### artColorTemperature `artColorTemperature` is a Number channel, it reports the "warmth" of the artwork from -5 to 5 (default 0). It's not polled, but is updated when artmode status is updated. -You can use a `Setpoint` contol for this item in your `sitemap` eg: +You can use a `Setpoint` control for this item in your `sitemap` e.g.: ```java Setpoint item=TV_ArtColorTemperature minValue=-5 maxValue=5 step=1 visibility=[TV_ArtMode==ON] @@ -312,10 +312,10 @@ Setpoint item=TV_ArtColorTemperature minValue=-5 maxValue=5 step=1 visibility=[T ### artOrientation `artOrientation` is a Switch channel, it reports the current orientation of the TV, OFF for Landscape, and ON for Portrait. This channel is polled. If you send an ON or OFF command to this channel, then the binding will send a long (4s) press of the key defined in the configuration for orientationKey.
-For 2023- TV's `orientationKey` should be KEY_MULTI_VIEW (default), for 2024+ TV's this should be KEY_HOME. +For 2023- TV's, `orientationKey` should be KEY_MULTI_VIEW (default). For 2024+ TV's, this should be KEY_HOME. ```java -Switch item=TV_ArtOrientation mappings[OFF="Landscape", ON="Portrait"] +Switch item=TV_ArtOrientation mappings=[OFF="Landscape", ON="Portrait"] ``` **NOTE:** You should only send commands to the `artOrientation` channel if you have the auto-rotation mount paired to the TV. @@ -356,7 +356,7 @@ Switch TV_ArtOrient "Art Orientation [%s]" (gLivingRoomTV) ## WOL -Wake on Lan is supported by Samsung TV’s after 2016. The binding will attempt to use WOL to turn on a TV, if `power` (or `artMode`) is commanded ON. +Wake on LAN is supported by Samsung TV's after 2016. The binding will attempt to use WOL to turn on a TV, if `power` (or `artMode`) is commanded ON. This only works on TV's after 2016, and has some quirks. - Does not work on TV's <2016 @@ -389,7 +389,7 @@ TV_SourceApp.sendCommand("shuffleslideshow,1440") or a sitemap entry: ```java -Switch item=TV_SourceApp label="Slideshow" mappings=["shuffleslideshow,1440"="shuffle 1 day","suffleslideshow,3"="shuffle 3 mins","slideshow,1440"="slideshow 1 day","slideshow,off"="Off"] +Switch item=TV_SourceApp label="Slideshow" mappings=["shuffleslideshow,1440"="shuffle 1 day","shuffleslideshow,3"="shuffle 3 mins","slideshow,1440"="slideshow 1 day","slideshow,off"="Off"] ``` Sending `slideshow,off` turns the slideshow feature of the TV off. @@ -413,11 +413,11 @@ Values are confirmed to work on UE50MU6179. To discover all installed apps names, you can enable the DEBUG log output from the binding to see a list of apps that have been discovered as installed. This list is displayed once, shortly after the TV is turned On. -If you have a TV >2019, then the list of apps will not be discovered. Instead, a default list of known appID's is built into the binding, these cover most common apps. The binding will attempt to discover these apps, and, if you are lucky, your app will be found and you have nothing further to do. It is possible that new apps have been added, or are specific to your country that are not in the built in list, in which case you can add these apps manually. +If you have a TV >2019, then the list of apps will not be discovered. Instead, a default list of known appID's is built into the binding, these cover most common apps. The binding will attempt to discover these apps, and, if you are lucky, your app will be found and you have nothing further to do. It is possible that new apps have been added, or are specific to your country that are not in the built-in list, in which case you can add these apps manually. #### Adding apps manually -If the app you need is not discovered, a file `samsungtv.cfg` will need to be be created in the openHAB config services directory (`/etc/openhab/services/` for Linux systems). +If the app you need is not discovered, a file `samsungtv.cfg` will need to be created in the openHAB config services directory (`/etc/openhab/services/` for Linux systems). You need to edit the file `samsungtv.cfg`, and add in the name, appID, and type of the apps you have installed on your TV. Here is a sample for the contents of the `samsungtv.cfg` file: @@ -521,36 +521,49 @@ You need to edit the file `samsungtv.cfg`, and add in the name, appID, and type { "name":"Viafree" , "appId":"hs9ONwyP2U.ViafreeBigscreen" , "type":2 } ``` -Enter this into the `samsungtv.cfg` file and save it. The file contents are read automatically every time the file is updated. The binding will check to see if the app is installed, and start polling the status every 10 seconds (or more if your refresh interval is set higher). -Apps that are not installed are deleted from the list (internally, the file is not updated). If you install an app on the TV, which is not in the built in list, you have to update the file with it's appID, or at least touch the file for the new app to be registered with the binding. +Enter this into the `samsungtv.cfg` file and save it. +The file contents are read automatically every time the file is updated. +The binding will check to see if the app is installed, and start polling the status every 10 seconds (or more if your refresh interval is set higher). +Apps that are not installed are deleted from the list (internally, the file is not updated). +If you install an app on the TV, which is not in the built-in list, you have to update the file with its appID, or at least touch the file for the new app to be registered with the binding. -The entry for `Internet` is important, as this is the TV web browser App. on older TV's it's `org.tizen.browser`, but this is not correct on later TV's (>2019). This is the app used for the `url` channel, so it needs to be set correctly if you use this channel. -`org.tizen.browser` is the internal default, and does launch the browser on all TV's, but on later TV's this is just an alias for the actual app, so the `sourceApp` channel will not be updated correctly unless the correct appID is entered here. The built in list has the correct current appID for the browser, but if it changes or is incorrect for your TV, you can update it here. +The entry for `Internet` is important, as this is the TV web browser App. +On older TV's it's `org.tizen.browser`, but this is not correct on later TV's (>2019). +This is the app used for the `url` channel, so it needs to be set correctly if you use this channel. +`org.tizen.browser` is the internal default, and does launch the browser on all TV's, but on later TV's this is just an alias for the actual app, so the `sourceApp` channel will not be updated correctly unless the correct appID is entered here. +The built-in list has the correct current appID for the browser, but if it changes or is incorrect for your TV, you can update it here. You can use any name you want in this list, as long as the appID is valid. The binding will then allow you to launch the app using your name, the official name, or the appID. ## Smartthings -In order to be able to control the TV input (HDMI1, HDMI2 etc), you have to link the binding to the smartthngs API, as there is no local control capable of switching the TV input. -There are several steps required to enable this feature, and no hub is needed. +In order to be able to control the TV input (HDMI1, HDMI2 etc), you have to link the binding to the Smartthings API, as there is no local control capable of switching the TV input. +There are several steps required to enable this feature, and no hub is required. In order to connect to the Smartthings cloud, there are a few steps to take. -1. Set the samsungtv logs to at least DEBUG -1. Create a Samsung account (probably already have one when you set up your TV) -1. Add Your TV to the Smartthings App -1. Go to and create a Personal Access Token (PAT). check off all the features you want (I would add them all). +1. Set the samsungtv logs to at least DEBUG. +1. Create a Samsung account (probably already have one when you set up your TV). +1. Add your TV to the Smartthings App. +1. Go to and create a Personal Access Token (PAT). Check off all the features you want (I would add them all). 1. Go to the openHAB Samsung TV Thing, and update the configuration with your PAT (click on advanced). You will fill in Device ID later if necessary. 1. Save the Thing, and watch the logs. -The binding will attempt to find the Device ID for your TV. If you have several TV’s of the same type, you will have to manually identify the Device ID for the current Thing from the logs. The device ID should look something like 996ff19f-d12b-4c5d-1989-6768a7ad6271. If you have only one TV of each type, Device ID should get filled in for you. -You can now link the `sourceName`, `sourceId`, `channel` and `channelName` channels, and should see the values updating. You can change the TV input source by sending `"HDMI1"`, or `"HDMI2"` to the `sourceName` channel, the exact string will depend on your TV, and how many inputs you have. You can also send a number to the `sourceId` channel. +The binding will attempt to find the Device ID for your TV. +If you have several TV's of the same type, you will have to manually identify the Device ID for the current Thing from the logs. +The device ID should look something like 996ff19f-d12b-4c5d-1989-6768a7ad6271. +If you have only one TV of each type, Device ID should get filled in for you. +You can now link the `sourceName`, `sourceId`, `channel` and `channelName` channels, and should see the values updating. +You can change the TV input source by sending `"HDMI1"` or `"HDMI2"` to the `sourceName` channel. +The exact string will depend on your TV, and how many inputs you have. You can also send a number to the `sourceId` channel. **NOTE:** You may not get anything for `channelName`, as most TV’s don’t report it. You can only send commands to `channel`, `sourceName` and `sourceId`, `channelName` is read only. ## Smartthings Subscriptions -Smartthings Subscriptions are supported. This is a feature which reduces the polling of Smartthings channels (on by default). -If the Smarthings channels only update with the Smartthings app open, turn subscription off, and the channels will be polled instead. Channels are only polled when the TV is ON. +Smartthings Subscriptions are supported. +This is a feature which reduces the polling of Smartthings channels (on by default). +If the Smartthings channels only update with the Smartthings app open, turn subscription off, and the channels will be polled instead. +Channels are only polled when the TV is ON. ## UPnP Subscriptions @@ -617,7 +630,8 @@ You should get `volume` and `mute` channels working at the minnimum. Other chann If you see errors that say `no route to host` or similar things, it means your TV is off. The binding cannot discover, control or poll a TV that is off. For the binding to function properly it is very important that your network config allows the machine running openHAB to receive UPnP multicast traffic. -Multicast traffic is not propogated between different subnets, or VLANS, unless you specifically configure your router to do this. Many switches have IGMP Snooping enabled by default, which filters out multicast traffic. +Multicast traffic is not propagated between different subnets, or VLANs, unless you specifically configure your router to do this. +Many switches have IGMP Snooping enabled by default, which filters out multicast traffic. If you want to check the communication between the machine and the TV is working, you can try the following: ### Check if your Linux machine receives multicast traffic @@ -660,8 +674,9 @@ Where the ip address in `LOCATION` is the ip address of your TV, and the `USN` v If you now turn your TV off, you will see similar messages, but with `NTS: ssdp:byebye`. This is how the binding detects that your TV has turned OFF. -Try this several times over a period of 30 minutes after you have discovered the TV and added the binding. This is because when you discover the binding, a UPnP `M-SEARCH` packet is broadcast, which will enable mulicast traffic, but your network (router or switches) can eventually start filtering out multicast traffic, leading to unrealiable behaviour. -If you see these messages, then basic communications is working, and you should be able to turn your TV Off (and on later TV's) ON, and have the status reported correctly. +Try this several times over a period of 30 minutes after you have discovered the TV and added the binding. +This is because when you discover the binding, a UPnP `M-SEARCH` packet is broadcast, which will enable multicast traffic, but your network (router or switches) can eventually start filtering out multicast traffic, leading to unreliable behaviour. +If you see these messages, then basic communications is working, and you should be able to turn your TV Off (and on later TV's ON), and have the status reported correctly. ### Multiple network interfaces @@ -675,7 +690,7 @@ If you have more than one network interface on your openHAB machine, you may hav - Make sure the openHAB machine and the TV are in the same subnet/VLAN. - disable `IGMP Snooping` if it is enabled on your switches. - enable/disable `Enable multicast enhancement (IGMPv3)` if you have it (sometimes this helps). - - Try to connect your openHAB machine or TV via Ethernet instead of WiFi (AP's can filter Multicasts). + - Try to connect your openHAB machine or TV via Ethernet instead of WiFi (AP's can filter multicasts). - Make sure you don't have any firewall rules blocking multicast. - if you are using a Docker container, ensure you use the `--net=host` setting, as Docker filters multicast broadcasts by default. If device discovery still does not work, try other jupnp environment variables as described in [openHAB Docker documentation](https://www.openhab.org/docs/installation/docker.html#universal-plug-and-play-upnp) @@ -692,17 +707,17 @@ There are several other common issues that you can check for: - Protocol None is not valid - Protocol Legacy will not work on >2016 TV's - Protocol websocket only works with port 8001 - - Protocol websocketsecure only works with port 8002. If your TV supports websocketsecure on port 8002, you _must_ use it, or many things will not work. + - Protocol websocketsecure only works with port 8002. If your TV supports websocketsecure on port 8002, you _must_ use it, or many things will not work.. - The channel you are trying to use is not supported on your TV. - Only some channels are supported on different TV's - Some channels require additional configuration on >2016 TV's. eg `SmartThings` configuration, or Apps confguration. - Some channels are read only on certain TV's - I can't turn my TV ON. - - Older TV's (<2016) do not support tuning ON - - WOL is not enabled on your TV (you have to specifically enable it) + - Older TV's (<2016) do not support turning ON. + - WOL is not enabled on your TV (you have to specifically enable it). - You have a soundbar connected to your TV and are connected using wired Ethernet. - - The MAC address in the binding configuratiion is blank/wrong. - - You have to wait up to 60 seconds after turning OFF, before you can turn back ON (This is a Samsung feature called "instant on") + - The MAC address in the binding configuration is blank/wrong. + - You have to wait up to 60 seconds after turning OFF, before you can turn back ON (This is a Samsung feature called "instant on"). - My TV asks me to accept the connection every time I turn the TV on - You have the TV set to "Always Ask" for external connections. You need to set it to "Only ask the First Time". To get to the Device Manager, press the home button on your TV remote and navigate to Settings → General → External Device Manager → Device Connect Manager and change the setting. - You are using a text `.things` file entry for the TV `thing`, and you haven't entered the `webSocketToken` in the text file definition. The token is shown on the binding config page. See [Binding Configuration](#binding-configuration). diff --git a/bundles/org.openhab.binding.samsungtv/src/main/resources/OH-INF/thing/channel-types.xml b/bundles/org.openhab.binding.samsungtv/src/main/resources/OH-INF/thing/channel-types.xml index 8ec545752d843..3e5049ca1192c 100644 --- a/bundles/org.openhab.binding.samsungtv/src/main/resources/OH-INF/thing/channel-types.xml +++ b/bundles/org.openhab.binding.samsungtv/src/main/resources/OH-INF/thing/channel-types.xml @@ -178,6 +178,7 @@ Set/get color temperature of the artwork displayed. Minimum value is -5 and maximum 5. +
diff --git a/bundles/org.openhab.binding.satel/README.md b/bundles/org.openhab.binding.satel/README.md index f2085164dc63e..ff460af261648 100644 --- a/bundles/org.openhab.binding.satel/README.md +++ b/bundles/org.openhab.binding.satel/README.md @@ -14,7 +14,7 @@ More details and all documentation about Integra system you can find on their si ## Supported Things -This binding supports following thing types: +This binding supports following Thing types: | Thing type | Description | | ---------- | ---------------------------------------------------------------------------------------------------------------------------------------- | @@ -24,8 +24,8 @@ This binding supports following thing types: | zone | A physical device: reed switch, motion sensor or a virtual zone | | output | An output defined in the system | | shutter | Two outputs that control a roller shutter, one for "up" direction, another one for "down" | -| system | A virtual thing describing general status of the alarm system | -| event-log | A virtual thing that allows reading records from the alarm system event log | +| system | A virtual Thing describing general status of the alarm system | +| event-log | A virtual Thing that allows reading records from the alarm system event log | | atd-100 | Wireless temperature detector [ATD-100](https://www.satel.pl/en/produktid/503) | ## Discovery @@ -40,7 +40,7 @@ You can configure the following settings for this bridge: | Name | Required | Description | | ------------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| host | yes | Host name or IP addres of ETHM-1 module. | +| host | yes | Host name or IP address of ETHM-1 module. | | port | no | TCP port for the integration protocol, defaults to 7094. | | timeout | no | Timeout value in milliseconds for connect, read and write operations, defaults to 5000 (5secs). | | refresh | no | Polling interval in milliseconds, defaults to 5000 (5secs). As of version 2.03 ETHM-1 Plus firmware the module disconnects after 25 seconds of inactivity. Setting this parameter to value greater than 25000 will cause inability to correctly communicate with the module. | @@ -117,7 +117,7 @@ You can configure the following settings for an output: | ----------- | -------- | --------------------------------------------------------------------- | | id | yes | Output number | | invertState | no | Changes active (ON) state to 0 | -| commandOnly | no | Accepts commands only, does not update state of the thing | +| commandOnly | no | Accepts commands only, does not update state of the Thing | | wireless | no | This output controls a wireless device like ASP-100 R, ASW-100 E, etc | Example: @@ -134,7 +134,7 @@ You can configure the following settings for a shutter: | ----------- | -------- | --------------------------------------------------------- | | upId | yes | Output number for "up" direction | | downId | yes | Output number for "down" direction | -| commandOnly | no | Accepts commands only, does not update state of the thing | +| commandOnly | no | Accepts commands only, does not update state of the Thing | Example: @@ -144,7 +144,7 @@ Thing shutter shutter1 [ upId=10, downId=11, commandOnly=true ] ### system -This thing type does not have any configuration parameters. +This Thing type does not have any configuration parameters. Example: @@ -154,7 +154,7 @@ Thing system System [ ] ### event-log -This thing type does not have any configuration parameters. +This Thing type does not have any configuration parameters. Example: @@ -239,24 +239,24 @@ Thing atd-100 KitchenTemp [ id=10, refresh=30 ] ### system -| Name | Type | Description | -| --------------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------- | -| date_time | DateTime | Date and time on the alarm system | -| troubles | Switch | Active when the system has troubles (trouble LED is blinking on a panel) | -| troubles_memory | Switch | Memorized state of system troubles | -| service_mode | Switch | Active when the system is in service mode | -| acu100_present | Switch | Active when there is an ACU-100 module installed in the system | -| intrx_present | Switch | Active when there is an INT-RX module installed in the system | -| grade23_set | Switch | Active when Grade2/Grade3 option is set in the system | +| Name | Type | Description | +| ----------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------- | +| date_time | DateTime | Date and time on the alarm system. | +| troubles | Switch | Active when the system has troubles (trouble LED is blinking on a panel). | +| troubles_memory | Switch | Memorized state of system troubles. | +| service_mode | Switch | Active when the system is in service mode. | +| acu100_present | Switch | Active when there is an ACU-100 module installed in the system. | +| intrx_present | Switch | Active when there is an INT-RX module installed in the system. | +| grade23_set | Switch | Active when Grade2/Grade3 option is set in the system. | | user_code | String | Accepts string commands that override configured user code. Send empty string to revert user code to the one in the configuration. | ### event-log (deprecated) -These channels and the thing will be removed in the future release of the binding. Please use `readEvent` rule action instead. +These channels and the Thing will be removed in the future release of the binding. Please use `readEvent` rule action instead. | Name | Type | Description | | ----------- | -------- | -------------------------------------------------------------------------------------- | -| index | Number | Index of the current record in the event log. Send '-1' to get most recent record. | +| index | Number | Index of the current record in the event log. Send '-1' to get most recent record. | | prev_index | Number | Index of the previous record in the event log. Use this value to iterate over the log. | | timestamp | DateTime | Date and time when the event happened. | | description | String | Textual description of the event. | @@ -266,16 +266,16 @@ These channels and the thing will be removed in the future release of the bindin | Name | Type | Description | | ------------- | ------------------ | --------------------------------------------------------- | -| temperature | Number:Temperature | Current temperature in the zone | -| device_lobatt | Switch | Indicates low battery level in the wireless device | -| device_nocomm | Switch | Indicates communication troubles with the wireless device | +| temperature | Number:Temperature | Current temperature in the zone. | +| device_lobatt | Switch | Indicates low battery level in the wireless device. | +| device_nocomm | Switch | Indicates communication troubles with the wireless device. | ## Rule Actions ### readEvent This action allows you to read one record from the event log placed at index given by input parameter. -The result of this action is compatible with channels of `event-log` thing and contains following values: +The result of this action is compatible with channels of `event-log` Thing and contains following values: | Name | Type | Description | | ----------- | ------------- | -------------------------------------------------------------------------------------- | @@ -293,7 +293,7 @@ val eventRec = actions.readEvent(-1) logInfo("EventLog", eventRec.get("description")) ``` -**NOTE:** To have this action available, you must have `event-log` thing configured in openHAB. +**NOTE:** To have this action available, you must have `event-log` Thing configured in openHAB. ## Full Example diff --git a/bundles/org.openhab.binding.satel/src/main/resources/OH-INF/i18n/satel.properties b/bundles/org.openhab.binding.satel/src/main/resources/OH-INF/i18n/satel.properties index 619fdeea861f8..db71df95ff4c2 100644 --- a/bundles/org.openhab.binding.satel/src/main/resources/OH-INF/i18n/satel.properties +++ b/bundles/org.openhab.binding.satel/src/main/resources/OH-INF/i18n/satel.properties @@ -1,8 +1,191 @@ +# add-on + +addon.satel.name = Satel Binding +addon.satel.description = This is the binding for Satel INTEGRA alarm systems using either ETHM-1 or INT-RS communication module + +# thing types + +thing-type.satel.atd-100.label = ATD-100 +thing-type.satel.atd-100.description = Wireless temperature detector designed for operation as part of the ABAX two-way wireless system. +thing-type.satel.ethm-1.label = ETHM-1 +thing-type.satel.ethm-1.description = Ethernet communication module +thing-type.satel.event-log.label = Event Log +thing-type.satel.event-log.description = A virtual thing that allows reading records from the alarm system event log.
Event log must read sequentially starting from the most recent record. +thing-type.satel.int-rs.label = INT-RS +thing-type.satel.int-rs.description = RS-232 communication module +thing-type.satel.output.label = Output +thing-type.satel.output.description = An output from the alarm system.
The system supports the following outputs:
  • hardwired - on the control panel electronics board and in expanders. The number of available hardwired outputs is determined by the control panel during identification procedure.
  • wireless - in the INTEGRA 128-WRL control panel and/or when the ACU-120, ACU-270, ACU-100 or ACU-250 controller is connected. The number of available wireless outputs depends on the number of wireless devices registered in the system and is determined during the procedure of adding wireless devices.
  • virtual - the outputs which do not exist physically, but can be used e.g. for execution of logical functions.
+thing-type.satel.partition.label = Partition +thing-type.satel.partition.description = The partition is a separated area within the premises protected by the security alarm system.
The subdivision into partitions enables arming/disarming the system only in part of the protected area, as well as limiting access to some portion of the premises to selected users. +thing-type.satel.shutter.label = Roller Shutter +thing-type.satel.shutter.description = A roller shutter connected to two subsequent outputs. +thing-type.satel.system.label = Alarm System +thing-type.satel.system.description = A virtual thing describing general status of the alarm system. +thing-type.satel.zone.label = Zone +thing-type.satel.zone.description = A separated part of the protected area that can supervised by a detector connected to the alarm system.
The system supports the following zones:
  • hardwired - on the control panel electronics board, in keypads and expanders. The number of available hardwired zones is determined by the control panel during identification procedure.
  • wireless - in the INTEGRA 128-WRL control panel and/or when the ACU-120, ACU-270, ACU-100 or ACU-250 controller is connected. The number of available wireless zones depends on the number of wireless devices registered in the system and is determined during the procedure of adding the devices.
  • virtual - zones which physically do not exist, but have been programmed as FOLLOW OUTPUT or are controlled by means of a keyfob.
+ +# thing types config + +thing-type.config.satel.atd-100.id.label = Zone Number +thing-type.config.satel.atd-100.id.description = Zone number in the alarm system monitored by this detector +thing-type.config.satel.atd-100.refresh.label = Refresh Interval +thing-type.config.satel.atd-100.refresh.description = Polling interval in minutes. +thing-type.config.satel.ethm-1.encoding.label = Encoding +thing-type.config.satel.ethm-1.encoding.description = Encoding used for all the texts received from the module. +thing-type.config.satel.ethm-1.encryptionKey.label = Encryption Key +thing-type.config.satel.ethm-1.encryptionKey.description = Encryption key used to encrypt data sent and received, if empty communication is not encrypted. +thing-type.config.satel.ethm-1.extCommands.label = Extended Commands Support +thing-type.config.satel.ethm-1.extCommands.description = Check this option to enable extended commands supported only by ETHM-1 Plus and newer versions of ETHM-1. Turn off in case of communication timeouts. +thing-type.config.satel.ethm-1.host.label = Host or IP +thing-type.config.satel.ethm-1.host.description = Host name or IP address of ETHM-1 module. +thing-type.config.satel.ethm-1.port.label = Port Number +thing-type.config.satel.ethm-1.port.description = TCP port for the integration protocol. +thing-type.config.satel.ethm-1.refresh.label = Refresh Interval +thing-type.config.satel.ethm-1.refresh.description = Polling interval in milliseconds. +thing-type.config.satel.ethm-1.timeout.label = Timeout +thing-type.config.satel.ethm-1.timeout.description = Timeout value in milliseconds for connect, read and write operations. +thing-type.config.satel.ethm-1.userCode.label = User Code +thing-type.config.satel.ethm-1.userCode.description = Security code of the user in behalf of all operations will be executed. If empty, only read operations are allowed. +thing-type.config.satel.int-rs.encoding.label = Encoding +thing-type.config.satel.int-rs.encoding.description = Encoding for all the texts received from the module. +thing-type.config.satel.int-rs.extCommands.label = Extended Commands Support +thing-type.config.satel.int-rs.extCommands.description = Check this option to enable extended commands supported only by version 2.xx of INT-RS. Turn off in case of communication timeouts. +thing-type.config.satel.int-rs.port.label = Serial Port +thing-type.config.satel.int-rs.port.description = Serial port connected to the module. +thing-type.config.satel.int-rs.refresh.label = Refresh Interval +thing-type.config.satel.int-rs.refresh.description = Current state polling interval, in milliseconds. +thing-type.config.satel.int-rs.timeout.label = Timeout +thing-type.config.satel.int-rs.timeout.description = Timeout value in milliseconds for connect, read and write operations. +thing-type.config.satel.int-rs.userCode.label = User Code +thing-type.config.satel.int-rs.userCode.description = Security code of the user in behalf of all operations will be executed. +thing-type.config.satel.output.commandOnly.label = Command Only +thing-type.config.satel.output.commandOnly.description = Accepts commands only, does not update state of the thing +thing-type.config.satel.output.id.label = Output Number +thing-type.config.satel.output.id.description = Number that identifies the output in the alarm system +thing-type.config.satel.output.invertState.label = Invert State +thing-type.config.satel.output.invertState.description = Changes active (ON) state to 0 +thing-type.config.satel.output.wireless.label = Wireless Output +thing-type.config.satel.output.wireless.description = This output controls a wireless device like ASP-100 R, ASW-100 E, etc. +thing-type.config.satel.partition.forceArming.label = Force Arming +thing-type.config.satel.partition.forceArming.description = Forces arming the partition regardless of ongoing troubles and violations. +thing-type.config.satel.partition.id.label = Partition Number +thing-type.config.satel.shutter.commandOnly.label = Command Only +thing-type.config.satel.shutter.commandOnly.description = Accepts commands only, does not update state of the thing +thing-type.config.satel.shutter.downId.label = Down Output +thing-type.config.satel.shutter.downId.description = Output number for "down" direction. +thing-type.config.satel.shutter.upId.label = Up Output +thing-type.config.satel.shutter.upId.description = Output number for "up" direction. +thing-type.config.satel.zone.id.label = Zone Number +thing-type.config.satel.zone.id.description = Number that identifies the zone in the alarm system +thing-type.config.satel.zone.invertState.label = Invert State +thing-type.config.satel.zone.invertState.description = Changes active (ON) state to 0 +thing-type.config.satel.zone.wireless.label = Wireless Zone +thing-type.config.satel.zone.wireless.description = This zone is monitored by a wireless detector like APD-100, AFD-100, etc + +# channel types + +channel-type.satel.acu100_present.label = ACU-100 Present +channel-type.satel.acu100_present.description = Active when there is an ACU-100 module installed in the system +channel-type.satel.alarm.label = Alarm +channel-type.satel.alarm.description = Active when there is ongoing alarm in the patition +channel-type.satel.alarm.label = Alarm +channel-type.satel.alarm.description = Active when violation is detected in the zone and zone is armed +channel-type.satel.alarm_memory.label = Alarm Memory +channel-type.satel.alarm_memory.description = Active when there had been an alarm in the patition +channel-type.satel.alarm_memory.label = Alarm Memory +channel-type.satel.alarm_memory.description = Memorized alarm state for the zone +channel-type.satel.armed.label = Armed +channel-type.satel.armed.description = Active when the partion is armed in any mode or arming is in progress +channel-type.satel.armed_mode_1.label = Armed in Mode 1 +channel-type.satel.armed_mode_1.description = Active when the partion is armed in mode 1 +channel-type.satel.armed_mode_2.label = Armed in Mode 2 +channel-type.satel.armed_mode_2.description = Active when the partion is armed in mode 2 +channel-type.satel.armed_mode_3.label = Armed in Mode 3 +channel-type.satel.armed_mode_3.description = Active when the partion is armed in mode 3 +channel-type.satel.blocked_for_guard.label = Blocked for Guard +channel-type.satel.blocked_for_guard.description = Active when the partition is blocked for guard round +channel-type.satel.bypass.label = Bypass +channel-type.satel.bypass.description = Active when zone is bypassed +channel-type.satel.date_time.label = Date and Time +channel-type.satel.date_time.description = Current date and time in the alarm system +channel-type.satel.description.label = Description +channel-type.satel.description.description = Textual description of the event. +channel-type.satel.details.label = Details +channel-type.satel.details.description = Additional details about the event, like names of partitions, zones, users, etc. +channel-type.satel.device_nocomm.label = No Communication +channel-type.satel.device_nocomm.description = Indicates communication troubles with the wireless device +channel-type.satel.entry_time.label = Entry Time +channel-type.satel.entry_time.description = Active in entry time +channel-type.satel.exit_time_gt_10.label = Exit Time > 10s +channel-type.satel.exit_time_gt_10.description = Active when arming is in progress and time to exit is greater than ten seconds +channel-type.satel.exit_time_lt_10.label = Exit Time < 10s +channel-type.satel.exit_time_lt_10.description = Active when arming is in progress and time to exit is less than ten seconds +channel-type.satel.fire_alarm.label = Fire Alarm +channel-type.satel.fire_alarm.description = Active when there is ongoing fire alarm in the patition +channel-type.satel.fire_alarm_memory.label = Fire Alarm Memory +channel-type.satel.fire_alarm_memory.description = Active when there had been a fire alarm in the patition +channel-type.satel.first_code_entered.label = First Code Entered +channel-type.satel.first_code_entered.description = Active when first code of required two codes has been entered +channel-type.satel.grade23_set.label = Grade2/Grade3 Set +channel-type.satel.grade23_set.description = Active when Grade2/Grade3 option is set in the system +channel-type.satel.index.label = Current Index +channel-type.satel.index.description = Index of the current record in the event log. Send '-1' to get most recent record. +channel-type.satel.intrx_present.label = INT-RX Present +channel-type.satel.intrx_present.description = Active when there is an INT-RX module installed in the system +channel-type.satel.isolate.label = Isolate +channel-type.satel.isolate.description = Active when zone is isolated +channel-type.satel.long_violation_trouble.label = Long Violation Trouble +channel-type.satel.long_violation_trouble.description = Active when violation in the zone lasts longer than configured time +channel-type.satel.masked.label = Masked +channel-type.satel.masked.description = Active when zone is masked +channel-type.satel.masked_memory.label = Masked Memory +channel-type.satel.masked_memory.description = Memorized masked state for the zone +channel-type.satel.no_violation_trouble.label = No Violation Trouble +channel-type.satel.no_violation_trouble.description = Active when no violation has been detected in the zone for configured time +channel-type.satel.output_state.label = Output State +channel-type.satel.output_state.description = Represents state of the output +channel-type.satel.prev_index.label = Previous Index +channel-type.satel.prev_index.description = Index of the previous record in the event log. Use this value to iterate over the log. +channel-type.satel.really_armed.label = Really Armed +channel-type.satel.really_armed.description = Active when the partion is armed in any mode +channel-type.satel.service_mode.label = Service Mode +channel-type.satel.service_mode.description = Active when the system is in service mode +channel-type.satel.shutter_state.label = Shutter State +channel-type.satel.shutter_state.description = Represents state of the roller shutter +channel-type.satel.tamper.label = Tamper +channel-type.satel.tamper.description = Active when detector in the zone is tampered +channel-type.satel.tamper_alarm.label = Tamper Alarm +channel-type.satel.tamper_alarm.description = Active when detector in the zone is tampered and zone is armed +channel-type.satel.tamper_alarm_memory.label = Tamper Alarm Memory +channel-type.satel.tamper_alarm_memory.description = Memorized tamper alarm state for the zone +channel-type.satel.temporary_blocked.label = Temporary Blocked +channel-type.satel.temporary_blocked.description = Active when the partition is blocked after arming +channel-type.satel.timestamp.label = Date and Time +channel-type.satel.timestamp.description = Date and time when the event happened. +channel-type.satel.troubles.label = Troubles +channel-type.satel.troubles.description = Active when the system has troubles (trouble led is blinking on a panel) +channel-type.satel.troubles_memory.label = Troubles Memory +channel-type.satel.troubles_memory.description = Memorized state of system troubles +channel-type.satel.user_code.label = User Code +channel-type.satel.user_code.description = Accepts string commands that override configured user code. Send empty string to revert user code to the one in the binding configuration. +channel-type.satel.verified_alarms.label = Verified Alarms +channel-type.satel.verified_alarms.description = Active when two zones triggered an alarm during verification time +channel-type.satel.violated_zones.label = Violated Zones +channel-type.satel.violated_zones.description = Active when there are violated zones in the partition +channel-type.satel.violation.label = Violation +channel-type.satel.violation.description = Active when violation is detected in the zone +channel-type.satel.warning_alarms.label = Warning Alarms +channel-type.satel.warning_alarms.description = Active when there are warning alarms in the partition +channel-type.satel.zoneTemperature.label = Temperature +channel-type.satel.zoneTemperature.description = Current temperature in the zone + # config status + config-status.hostEmpty = Host name or IP of ETHM-1 must be provided. config-status.portEmpty = Serial port of INT-RS must be provided. # actions + actionReadEventLabel = read an event actionReadEventDesc = Reads a single record from the event log. actionInputIndexLabel = Event index diff --git a/bundles/org.openhab.binding.sbus/README.md b/bundles/org.openhab.binding.sbus/README.md index 1800257f4e8fb..89c5d822b1026 100644 --- a/bundles/org.openhab.binding.sbus/README.md +++ b/bundles/org.openhab.binding.sbus/README.md @@ -2,7 +2,7 @@ This binding integrates Sbus-compatible hardware with openHAB, allowing control and monitoring over UDP networks. Sbus is a protocol used for home automation that communicates via UDP broadcast messages. -The binding supports various thing types including RGB/RGBW controllers, temperature sensors, switch controllers, and multiple sensor types. +The binding supports various Thing types including RGB/RGBW controllers, temperature sensors, switch controllers, and multiple sensor types. ## Supported Things @@ -34,27 +34,27 @@ The Sbus Bridge has the following configuration parameters: | Name | Type | Description | Default | Required | Advanced | |:--------|:--------|:-----------------------------------------------------|:-------:|:--------:|:---------:| -| host | text | IP address for Sbus communication (typically broadcast) | N/A | yes | no | +| host | text | IP address for Sbus communication (typically broadcast). | N/A | yes | no | | port | integer | UDP port number | 6000 | no | no | -| timeout | integer | Response timeout in milliseconds | 3000 | no | yes | +| timeout | integer | Response timeout in milliseconds. | 3000 | no | yes | ### Thing Configuration -Most thing types share the same basic configuration parameters: +Most Thing types share the same basic configuration parameters: | Name | Type | Description | Default | Required | Advanced | |:--------|:--------|:-----------------------------------------------------|:-------:|:--------:|:---------:| -| subnetId| integer | Subnet ID | 1 | yes | no | -| id | integer | Unit ID | N/A | yes | no | -| refresh | integer | Refresh interval in seconds (0 = listen-only mode) | 30 | no | yes | +| subnetId| integer | Subnet ID. | 1 | yes | no | +| id | integer | Unit ID. | N/A | yes | no | +| refresh | integer | Refresh interval in seconds (0 = listen-only mode). | 30 | no | yes | **Contact Sensor Additional Configuration:** -The `contact-sensor` thing type has an additional `type` parameter: +The `contact-sensor` Thing type has an additional `type` parameter: | Name | Type | Description | Default | Required | Advanced | |:--------|:--------|:-----------------------------------------------------|:-------:|:--------:|:---------:| -| type | text | Sensor type: `012c` (dry contact) or `02ca` (multi-sensor) | 012c | no | no | +| type | text | Sensor type: `012c` (dry contact) or `02ca` (multi-sensor). | 012c | no | no | **Listen-Only Mode:** Setting `refresh=0` enables listen-only mode where the binding only processes broadcast messages without actively polling. This is useful for sensors that automatically broadcast their status updates. @@ -64,47 +64,47 @@ The `contact-sensor` thing type has an additional `type` parameter: | Channel | Type | Read/Write | Description | |:--------|:-------|:----------:|:-----------------------------------------------------------| -| color | Color | RW | HSB color picker that controls RGBW components (0-100%). Can be configured to disable the white channel. | -| switch | Switch | RW | On/Off control for the RGBW output with optional timer | +| color | Color | RW | HSB color picker that controls RGBW components (0-100%). Can be configured to disable the white channel.| +| switch | Switch | RW | On/Off control for the RGBW output with optional timer. | The color channel of RGBW controllers supports these additional parameters: | Parameter | Type | Description | Default | Required | Advanced | |:------------|:--------|:-----------------------------------------------------|:-------:|:--------:|:---------:| -| channelNumber | integer | The physical channel number | N/A | yes | no | -| enableWhite | boolean | Controls the white component support for RGB palette | true | no | yes | +| channelNumber | integer | The physical channel number. | N/A | yes | no | +| enableWhite | boolean | Controls the white component support for RGB palette. | true | no | yes | ### Temperature Sensor Channels | Channel | Type | Read/Write | Description | |:------------|:--------------------|:----------:|:-------------------------------| -| temperature | Number:Temperature | R | Current temperature reading. Can be configured to use Celsius (default) or Fahrenheit units | +| temperature | Number:Temperature | R | Current temperature reading. Can be configured to use Celsius (default) or Fahrenheit units. | ### Switch Controller Channels | Channel | Type | Read/Write | Description | |:--------|:---------------|:----------:|:----------------------------------------------------------| -| switch | Switch | RW | Basic ON/OFF state control | -| dimmer | Dimmer | RW | ON/OFF state with timer transition | -| paired | Rollershutter | RW | UP/DOWN/STOP control for two paired channels (e.g., rollershutters)| +| switch | Switch | RW | Basic ON/OFF state control. | +| dimmer | Dimmer | RW | ON/OFF state with timer transition. | +| paired | Rollershutter | RW | UP/DOWN/STOP control for two paired channels (e.g., rollershutters).| ### Contact Sensor Channels | Channel | Type | Read/Write | Description | |:--------|:--------|:----------:|:----------------------------------------------------------| -| contact | Contact | R | Contact state (OPEN/CLOSED) | +| contact | Contact | R | Contact state (OPEN/CLOSED). | ### Motion Sensor Channels | Channel | Type | Read/Write | Description | |:--------|:--------|:----------:|:----------------------------------------------------------| -| motion | Switch | R | Motion detection state (ON=motion detected, OFF=no motion)| +| motion | Switch | R | Motion detection state (ON=motion detected, OFF=no motion).| ### Lux Sensor Channels | Channel | Type | Read/Write | Description | |:--------|:--------|:----------:|:----------------------------------------------------------| -| lux | Number | R | Light level in LUX units | +| lux | Number | R | Light level in LUX units. | **Note:** All sensor channels require a `channelNumber` parameter to specify the physical channel number. @@ -217,14 +217,14 @@ Thing lux-sensor sensor_lux [ id=85, refresh=0 ] { **Benefits of this approach:** -- Clear separation of concerns - each thing handles one sensor type +- Clear separation of concerns - each Thing handles one sensor type - Flexible configuration - only create the things you need -- Follows openHAB best practices for thing organization -- Each thing can be configured independently +- Follows openHAB best practices for Thing organization +- Each Thing can be configured independently ### Contact Sensor Types -The `contact-sensor` thing type supports two different sensor types via the `type` parameter: +The `contact-sensor` Thing type supports two different sensor types via the `type` parameter: - **`012c`** (default): 012C dry contact sensors - **`02ca`**: 02CA multi-sensor dry contacts diff --git a/bundles/org.openhab.binding.sbus/src/main/resources/OH-INF/i18n/sbus.properties b/bundles/org.openhab.binding.sbus/src/main/resources/OH-INF/i18n/sbus.properties index 7bda40eb86c0d..73732e7f6bc8c 100644 --- a/bundles/org.openhab.binding.sbus/src/main/resources/OH-INF/i18n/sbus.properties +++ b/bundles/org.openhab.binding.sbus/src/main/resources/OH-INF/i18n/sbus.properties @@ -5,6 +5,12 @@ addon.sbus.description = Binding for Sbus # thing types +thing-type.sbus.contact-sensor.label = Contact Sensor +thing-type.sbus.contact-sensor.description = Sbus contact sensor device +thing-type.sbus.lux-sensor.label = Lux Sensor +thing-type.sbus.lux-sensor.description = Sbus light level sensor device +thing-type.sbus.motion-sensor.label = Motion Sensor +thing-type.sbus.motion-sensor.description = Sbus motion sensor device thing-type.sbus.rgbw.label = Sbus RGBW Controller thing-type.sbus.rgbw.description = Sbus RGBW lighting controller thing-type.sbus.switch.label = Sbus Switch @@ -13,29 +19,11 @@ thing-type.sbus.temperature-sensor.label = Temperature Sensor thing-type.sbus.temperature-sensor.description = Sbus temperature sensor thing-type.sbus.temperature.label = Sbus Temperature Sensor (Deprecated) thing-type.sbus.temperature.description = Sbus temperature sensor device (deprecated, use temperature-sensor instead) -thing-type.sbus.contact-sensor.label = Sbus Contact Sensor -thing-type.sbus.contact-sensor.description = Sbus contact sensor device -thing-type.sbus.motion-sensor.label = Sbus Motion Sensor -thing-type.sbus.motion-sensor.description = Sbus motion sensor device -thing-type.sbus.lux-sensor.label = Sbus Lux Sensor -thing-type.sbus.lux-sensor.description = Sbus light level sensor device thing-type.sbus.udp.label = Sbus UDP Bridge thing-type.sbus.udp.description = Endpoint for Sbus UDP slaves # thing types config -thing-type.config.sbus.rgbw.id.label = Device ID -thing-type.config.sbus.rgbw.id.description = The ID of the Sbus device -thing-type.config.sbus.rgbw.refresh.label = Refresh Interval -thing-type.config.sbus.rgbw.refresh.description = Refresh interval in seconds -thing-type.config.sbus.rgbw.subnetId.label = SubnetId -thing-type.config.sbus.rgbw.subnetId.description = Slave subnet id. Can take any value between 1 and 255. 255 for broadcast. -thing-type.config.sbus.rgbw.subnetId.option.1 = 1 -thing-type.config.sbus.rgbw.subnetId.option.255 = 255 -thing-type.config.sbus.contact-sensor.type.label = Device Type -thing-type.config.sbus.contact-sensor.type.description = Type of contact sensor device -thing-type.config.sbus.contact-sensor.type.option.012c = 012C (Dry Contact Sensor) -thing-type.config.sbus.contact-sensor.type.option.02ca = 02CA (Multi-Sensor) thing-type.config.sbus.contact-sensor.id.label = Device ID thing-type.config.sbus.contact-sensor.id.description = The ID of the Sbus device thing-type.config.sbus.contact-sensor.refresh.label = Refresh Interval @@ -44,6 +32,34 @@ thing-type.config.sbus.contact-sensor.subnetId.label = SubnetId thing-type.config.sbus.contact-sensor.subnetId.description = Slave subnet id. Can take any value between 1 and 255. 255 for broadcast. thing-type.config.sbus.contact-sensor.subnetId.option.1 = 1 thing-type.config.sbus.contact-sensor.subnetId.option.255 = 255 +thing-type.config.sbus.contact-sensor.type.label = Device Type +thing-type.config.sbus.contact-sensor.type.description = Type of contact sensor device +thing-type.config.sbus.contact-sensor.type.option.012c = 012C (Dry Contact Sensor) +thing-type.config.sbus.contact-sensor.type.option.02ca = 02CA (Multi-Sensor) +thing-type.config.sbus.lux-sensor.id.label = Device ID +thing-type.config.sbus.lux-sensor.id.description = The ID of the Sbus device +thing-type.config.sbus.lux-sensor.refresh.label = Refresh Interval +thing-type.config.sbus.lux-sensor.refresh.description = Refresh interval in seconds (0 = listen-only mode for broadcast messages) +thing-type.config.sbus.lux-sensor.subnetId.label = SubnetId +thing-type.config.sbus.lux-sensor.subnetId.description = Slave subnet id. Can take any value between 1 and 255. 255 for broadcast. +thing-type.config.sbus.lux-sensor.subnetId.option.1 = 1 +thing-type.config.sbus.lux-sensor.subnetId.option.255 = 255 +thing-type.config.sbus.motion-sensor.id.label = Device ID +thing-type.config.sbus.motion-sensor.id.description = The ID of the Sbus device +thing-type.config.sbus.motion-sensor.refresh.label = Refresh Interval +thing-type.config.sbus.motion-sensor.refresh.description = Refresh interval in seconds (0 = listen-only mode for broadcast messages) +thing-type.config.sbus.motion-sensor.subnetId.label = SubnetId +thing-type.config.sbus.motion-sensor.subnetId.description = Slave subnet id. Can take any value between 1 and 255. 255 for broadcast. +thing-type.config.sbus.motion-sensor.subnetId.option.1 = 1 +thing-type.config.sbus.motion-sensor.subnetId.option.255 = 255 +thing-type.config.sbus.rgbw.id.label = Device ID +thing-type.config.sbus.rgbw.id.description = The ID of the Sbus device +thing-type.config.sbus.rgbw.refresh.label = Refresh Interval +thing-type.config.sbus.rgbw.refresh.description = Refresh interval in seconds +thing-type.config.sbus.rgbw.subnetId.label = SubnetId +thing-type.config.sbus.rgbw.subnetId.description = Slave subnet id. Can take any value between 1 and 255. 255 for broadcast. +thing-type.config.sbus.rgbw.subnetId.option.1 = 1 +thing-type.config.sbus.rgbw.subnetId.option.255 = 255 thing-type.config.sbus.switch.id.label = Device ID thing-type.config.sbus.switch.id.description = The ID of the Sbus device thing-type.config.sbus.switch.refresh.label = Refresh Interval @@ -71,35 +87,45 @@ thing-type.config.sbus.temperature.subnetId.option.255 = 255 thing-type.config.sbus.udp.host.label = IP Address or Hostname thing-type.config.sbus.udp.host.description = Network address of the device thing-type.config.sbus.udp.port.label = Port -thing-type.config.sbus.udp.port.description = Port of the slave +thing-type.config.sbus.udp.port.description = Port for UDP connection +thing-type.config.sbus.udp.timeout.label = Response Timeout +thing-type.config.sbus.udp.timeout.description = Timeout in milliseconds to wait for response after sending a request # channel types channel-type.sbus.color-channel.label = Color channel-type.sbus.color-channel.description = Color control +channel-type.sbus.contact-channel.label = Contact State +channel-type.sbus.contact-channel.description = Contact state (OPEN/CLOSED) channel-type.sbus.dimmer-channel.label = Dimmer State channel-type.sbus.dimmer-channel.description = Dimmer state (0-100%) -channel-type.sbus.paired-channel.label = Paired Channel State -channel-type.sbus.paired-channel.description = Paired channel state (OPEN/CLOSED) - controls two opposite channels +channel-type.sbus.lux-channel.label = Light Level +channel-type.sbus.lux-channel.description = Light level in LUX units +channel-type.sbus.motion-channel.label = Motion Detection +channel-type.sbus.motion-channel.description = Motion detection state (ON=motion detected, OFF=no motion) +channel-type.sbus.paired-channel.label = Rollershutter Control +channel-type.sbus.paired-channel.description = Rollershutter control (UP/DOWN) - controls two opposite channels channel-type.sbus.switch-channel.label = Switch State channel-type.sbus.switch-channel.description = Switch state (ON/OFF) channel-type.sbus.temperature-channel.label = Temperature channel-type.sbus.temperature-channel.description = Temperature reading from the device -channel-type.sbus.contact-channel.label = Contact State -channel-type.sbus.contact-channel.description = Contact state (OPEN/CLOSED) -channel-type.sbus.motion-channel.label = Motion Detection -channel-type.sbus.motion-channel.description = Motion detection state (ON=motion detected, OFF=no motion) -channel-type.sbus.lux-channel.label = Light Level -channel-type.sbus.lux-channel.description = Light level in LUX units # channel types config channel-type.config.sbus.color-channel.channelNumber.label = Channel Number channel-type.config.sbus.color-channel.channelNumber.description = The physical channel number on the Sbus device +channel-type.config.sbus.color-channel.enableWhite.label = Enable White Channel +channel-type.config.sbus.color-channel.enableWhite.description = Whether to use the white channel component in addition to RGB +channel-type.config.sbus.contact-channel.channelNumber.label = Channel Number +channel-type.config.sbus.contact-channel.channelNumber.description = The physical channel number on the Sbus device channel-type.config.sbus.dimmer-channel.channelNumber.label = Channel Number channel-type.config.sbus.dimmer-channel.channelNumber.description = The physical channel number on the Sbus device channel-type.config.sbus.dimmer-channel.timer.label = Timer channel-type.config.sbus.dimmer-channel.timer.description = Timer in seconds to automatically turn off the switch (0 = disabled) +channel-type.config.sbus.lux-channel.channelNumber.label = Channel Number +channel-type.config.sbus.lux-channel.channelNumber.description = The physical channel number on the Sbus device +channel-type.config.sbus.motion-channel.channelNumber.label = Channel Number +channel-type.config.sbus.motion-channel.channelNumber.description = The physical channel number on the Sbus device channel-type.config.sbus.paired-channel.channelNumber.label = Channel Number channel-type.config.sbus.paired-channel.channelNumber.description = The physical channel number on the Sbus device channel-type.config.sbus.paired-channel.pairedChannelNumber.label = Paired Channel Number @@ -112,8 +138,6 @@ channel-type.config.sbus.temperature-channel.unit.label = Temperature Unit channel-type.config.sbus.temperature-channel.unit.description = The unit to use for temperature readings (°C or °F) channel-type.config.sbus.temperature-channel.unit.option.CELSIUS = Celsius channel-type.config.sbus.temperature-channel.unit.option.FAHRENHEIT = Fahrenheit -channel-type.config.sbus.contact-channel.channelNumber.label = Channel Number -channel-type.config.sbus.contact-channel.channelNumber.description = The physical channel number on the Sbus device # thing types config @@ -144,6 +168,7 @@ channel-group-type.sbus.switches.label = Switch Channels channel-group-type.sbus.switches.description = Group of switch channels # error messages + error.bridge.host-not-configured = Host address not configured error.bridge.service-not-available = Sbus service not available error.device.no-bridge = No bridge configured @@ -154,5 +179,3 @@ error.device.adapter-not-initialized = Sbus adapter not initialized error.device.communication = Communication error with device error.device.read-state = Error reading device state error.device.send-command = Error sending command to device - -# info messages diff --git a/bundles/org.openhab.binding.semsportal/README.md b/bundles/org.openhab.binding.semsportal/README.md index 1d9ed550ff158..7dea40a1b526e 100644 --- a/bundles/org.openhab.binding.semsportal/README.md +++ b/bundles/org.openhab.binding.semsportal/README.md @@ -22,14 +22,14 @@ The discovered Power Stations will appear as new Things. The configuration of the Portal Thing (Bridge) is pretty straight forward. You need to have your power station set up in the SEMS portal, and you need to have an account that is allowed to view the power station data. -You should log in at least once in the portal with this account to activate it. +You should have logged in at least once in the portal with this account to activate it. The Portal needs the username and password to connect and retrieve the data. You can configure the update frequency between 1 and 60 minutes. The default is 5 minutes. Power Stations have no settings and will be auto discovered when you add a Portal Bridge. -If you prefer manual configuration of things in thing files, you need to supply the power station UUID. +If you prefer manual configuration of things in Thing files, you need to supply the power station UUID. It can be found in the SEMS portal URL after you have logged in. The URL will look like this: @@ -54,30 +54,30 @@ The Power Station Thing has the following channels: | channel | type | description | | ------------- | ------------- | ---------------------------------------------------------------------------------------------------------- | -| lastUpdate | DateTime | Last time the powerStation sent information to the portal | -| currentOutput | Number:Power | The current output of the powerStation in Watt | -| todayTotal | Number:Energy | Todays total generation of the station in kWh | -| monthTotal | Number:Energy | This month's total generation of the station in kWh | -| overallTotal | Number:Energy | The total generation of the station since installation, in kWh | -| todayIncome | Number | Todays income as reported by the portal, if you have configured the power rates of your energy provider | -| totalIncome | Number | The total income as reported by the portal, if you have configured the power rates of your energy provider | +| lastUpdate | DateTime | Last time the powerStation sent information to the portal. | +| currentOutput | Number:Power | The current output of the powerStation in Watt. | +| todayTotal | Number:Energy | Todays total generation of the station in kWh. | +| monthTotal | Number:Energy | This month's total generation of the station in kWh. | +| overallTotal | Number:Energy | The total generation of the station since installation, in kWh. | +| todayIncome | Number | Todays income as reported by the portal, if you have configured the power rates of your energy provider. | +| totalIncome | Number | The total income as reported by the portal, if you have configured the power rates of your energy provider. | ## Parameters The Power Station Thing has no configuration parameters when auto discovered. -When using thing files you need to provide the station UUID. +When using Thing files you need to provide the station UUID. | Parameter | Required? | Description | | ----------- | :-------: | -------------------------------------------------------------------------------- | -| stationUUID | X | UUID of the station. Can be found on the SEMS portal URL (see description above) | +| stationUUID | X | UUID of the station. Can be found on the SEMS portal URL (see description above). | The Bridge has the following configuration parameters: | Parameter | Required? | Description | | --------- | :-------: | ----------------------------------------------------------------------------------------------------- | | username | X | Account name (email address) at the SEMS portal. Account must have been used at least once to log in. | -| password | X | Password of the SEMS portal | -| interval | | Number of minutes between two updates. Between 1 and 60 minutes, defaults to 5 minutes | +| password | X | Password of the SEMS portal. | +| interval | | Number of minutes between two updates. Between 1 and 60 minutes, defaults to 5 minutes. | ## Credits diff --git a/bundles/org.openhab.binding.senechome/README.md b/bundles/org.openhab.binding.senechome/README.md index e8cf32de62e41..307c207fe7cb7 100644 --- a/bundles/org.openhab.binding.senechome/README.md +++ b/bundles/org.openhab.binding.senechome/README.md @@ -31,7 +31,7 @@ demo.things Thing senechome:senechome:pvbattery [ hostname="192.168.0.128", refreshInterval=60, limitationTresholdValue=70, limitationDuration=60, useHttp=false ] ``` -If the thing goes online then the connection to the web interface is successful. +If the Thing goes online then the connection to the web interface is successful. In case it is offline you should see an error message. The refresh interval is 15 seconds by default, but you can optionally provide your own value adding the `refreshInterval` key. diff --git a/bundles/org.openhab.binding.seneye/README.md b/bundles/org.openhab.binding.seneye/README.md index 1cbbc09863a61..11f36fa1a9626 100644 --- a/bundles/org.openhab.binding.seneye/README.md +++ b/bundles/org.openhab.binding.seneye/README.md @@ -7,13 +7,13 @@ This binding integrates the [Seneye aquarium monitoring system](https://www.sene The seneye monitor monitors what is happening inside your aquarium to ensure that the aquatic life remains healthy. The monitor allows you to continuously track the changes in the water parameters, alerting you to the problems before they affect the fish. -At least one Seneye monitor is required ([Home / pond or reef](https://www.seneye.com/devices/compare)) and the measure results must be synced to the seneye cloud by using a seneye web server (see [shop](https://www.seneye.com/store), there is one for wifi and one for a wired network) -Each monitor is represented by one seneye thing. +At least one Seneye monitor is required ([Home / pond or reef](https://www.seneye.com/devices/compare)) and the measure results must be synchronized to the seneye cloud by using a seneye web server (see [shop](https://www.seneye.com/store), there is one for wifi and one for a wired network). +Each monitor is represented by one seneye Thing. ## Supported Things -This binding provides one thing type: 'seneye'. -You can have multiple seneye devices in your home, just make sure that your aquarium_name is properly set for each seneye thing. +This binding provides one Thing type: 'seneye'. +You can have multiple seneye devices in your home, just make sure that your aquarium_name is properly set for each seneye Thing. ## Discovery @@ -21,15 +21,15 @@ Discovery is not supported, the seneye monitor must be configured manually. ## Thing Configuration -The following settings must be configured in order to make your seneye binding work: +The following settings must be configured in order to make the seneye binding work: | Setting | | | ------------- | ------------------------------------------------------------------------------ | | aquarium_name | The name of the aquarium, as specified in [seneye.me](https://www.seneye.me/). | | | Useful to distinguish multiple seneye installations. | -| username | Your login name for [seneye.me](https://www.seneye.me/) | -| password | Your password for [seneye.me](https://www.seneye.me/) | -| poll_time | How often (in minutes) should the seneye account be checked. | +| username | Your login name for [seneye.me](https://www.seneye.me/). | +| password | Your password for [seneye.me](https://www.seneye.me/). | +| poll_time | How often (in minutes) the seneye account should be checked. | ## Channels @@ -37,20 +37,20 @@ The following channels are supported: | Channel Type ID | Item Type | Description | | --------------- | --------- | --------------------------------------------------------------- | -| temperature | String | The water temperature | -| ph | String | The PH level of the water | -| nh3 | String | The level of Ammonia (NH3) in the water | -| nh4 | String | The level of Ammonium (NH4) in the water | -| O2 | String | The level of oxygene in the water | -| lux | String | The lux level of your aquarium lightning, if available | -| par | String | The par level of your aquarium lightning, if available | -| kelvin | String | The kelvin level of your aquarium lightning, if available | -| lastreading | DateTime | The moment when the last readings are received from the monitor | -| slideexpires | DateTime | The moment when the current slide will expire | -| wrongslide | String | The Slide is not valid (normally expired) | -| slideserial | String | The serial number of the Slide | -| outofwater | String | The Slide is reporting being out of the water | -| disconnected | String | The Seneye has not uploaded any updates recently | +| temperature | String | The water temperature. | +| ph | String | The PH level of the water. | +| nh3 | String | The level of Ammonia (NH3) in the water. | +| nh4 | String | The level of Ammonium (NH4) in the water. | +| O2 | String | The level of oxygen in the water. | +| lux | String | The lux level of your aquarium lighting, if available. | +| par | String | The par level of your aquarium lighting, if available. | +| kelvin | String | The kelvin level of your aquarium lighting, if available. | +| lastreading | DateTime | The moment when the last readings are received from the monitor. | +| slideexpires | DateTime | The moment when the current slide will expire. | +| wrongslide | String | The Slide is not valid (normally expired). | +| slideserial | String | The serial number of the Slide. | +| outofwater | String | The Slide is reporting being out of the water. | +| disconnected | String | The Seneye has not uploaded any updates recently. | ## Full example diff --git a/bundles/org.openhab.binding.seneye/src/main/resources/OH-INF/i18n/seneye.properties b/bundles/org.openhab.binding.seneye/src/main/resources/OH-INF/i18n/seneye.properties index ecd646acff979..852ab2822ff53 100644 --- a/bundles/org.openhab.binding.seneye/src/main/resources/OH-INF/i18n/seneye.properties +++ b/bundles/org.openhab.binding.seneye/src/main/resources/OH-INF/i18n/seneye.properties @@ -15,7 +15,7 @@ thing-type.config.seneye.monitor.aquarium_name.description = The name of your aq thing-type.config.seneye.monitor.password.label = Password thing-type.config.seneye.monitor.password.description = The password of My Seneye thing-type.config.seneye.monitor.poll_time.label = Polling Time -thing-type.config.seneye.monitor.poll_time.description = How often (in minutes) does the seneye needs to be checked ? +thing-type.config.seneye.monitor.poll_time.description = How often (in minutes) the seneye needs to be checked thing-type.config.seneye.monitor.username.label = Username thing-type.config.seneye.monitor.username.description = The email address used to login to My Seneye @@ -24,28 +24,28 @@ thing-type.config.seneye.monitor.username.description = The email address used t channel-type.seneye.disconnected.label = Disconnected channel-type.seneye.disconnected.description = No readings have been uploaded for a while, check connection channel-type.seneye.kelvin.label = Kelvin -channel-type.seneye.kelvin.description = The Kelvin Light Level +channel-type.seneye.kelvin.description = The kelvin light level channel-type.seneye.lastreading.label = Last Reading -channel-type.seneye.lastreading.description = The last time your seneye is checked +channel-type.seneye.lastreading.description = The last time the seneye was checked channel-type.seneye.lux.label = LUX -channel-type.seneye.lux.description = The LUX Light Level +channel-type.seneye.lux.description = The lux light level channel-type.seneye.nh3.label = NH3 channel-type.seneye.nh3.description = The NH3 Level channel-type.seneye.nh4.label = NH4 channel-type.seneye.nh4.description = The NH4 Level channel-type.seneye.o2.label = O2 -channel-type.seneye.o2.description = The O2 Level +channel-type.seneye.o2.description = The oxygen level channel-type.seneye.outofwater.label = Out of Water -channel-type.seneye.outofwater.description = The Sensor is reporting being out of the water +channel-type.seneye.outofwater.description = The sensor is reporting being out of the water channel-type.seneye.par.label = PAR -channel-type.seneye.par.description = The PAR Light Level +channel-type.seneye.par.description = The PAR light level channel-type.seneye.ph.label = PH channel-type.seneye.ph.description = The PH Level channel-type.seneye.slideexpires.label = Slide Expiration -channel-type.seneye.slideexpires.description = The time your slide expires +channel-type.seneye.slideexpires.description = The time the slide expires channel-type.seneye.slideserial.label = Slide Serial Number -channel-type.seneye.slideserial.description = The serial Number of the currently installed slide +channel-type.seneye.slideserial.description = The serial number of the currently installed slide channel-type.seneye.temperature.label = Temperature channel-type.seneye.temperature.description = The water temperature channel-type.seneye.wrongslide.label = Wrong Slide -channel-type.seneye.wrongslide.description = The Wrong Slide is in use (becomes 1 when the slide has expired) +channel-type.seneye.wrongslide.description = Wrong slide is in use (becomes 1 when the slide has expired) diff --git a/bundles/org.openhab.binding.seneye/src/main/resources/OH-INF/thing/thing-types.xml b/bundles/org.openhab.binding.seneye/src/main/resources/OH-INF/thing/thing-types.xml index a80352d1e8a2d..07be124307e8f 100644 --- a/bundles/org.openhab.binding.seneye/src/main/resources/OH-INF/thing/thing-types.xml +++ b/bundles/org.openhab.binding.seneye/src/main/resources/OH-INF/thing/thing-types.xml @@ -43,7 +43,7 @@ - How often (in minutes) does the seneye needs to be checked ? + How often (in minutes) the seneye needs to be checked 5 @@ -91,7 +91,7 @@ Number - The O2 Level + The oxygen level Measurement @@ -100,7 +100,7 @@ Number - The LUX Light Level + The lux light level Measurement Illuminance @@ -110,13 +110,13 @@ Number - The PAR Light Level + The PAR light level Number - The Kelvin Light Level + The kelvin light level Measurement ColorTemperature @@ -126,31 +126,31 @@ DateTime - The last time your seneye is checked + The last time the seneye was checked DateTime - The time your slide expires + The time the slide expires String - The Wrong Slide is in use (becomes 1 when the slide has expired) + Wrong slide is in use (becomes 1 when the slide has expired) String - The serial Number of the currently installed slide + The serial number of the currently installed slide String - The Sensor is reporting being out of the water + The sensor is reporting being out of the water Alarm Level diff --git a/bundles/org.openhab.binding.sensebox/README.md b/bundles/org.openhab.binding.sensebox/README.md index 03fdb543eeb2f..9fb08e407cc85 100644 --- a/bundles/org.openhab.binding.sensebox/README.md +++ b/bundles/org.openhab.binding.sensebox/README.md @@ -5,10 +5,10 @@ Citizen Science Toolkit. ## Prerequisites -The API server uses Letsencrypt certificates. -Therefore, one needs to either import the Letsencrypt root certificates into the local keystore (see the description in the +The API server uses Let's Encrypt certificates. +Therefore, one needs to either import the Let's Encrypt root certificates into the local keystore (see the description in the [Netatmo Binding](https://www.openhab.org/addons/bindings/netatmo/#missing-certificate-authority)). -Another way would be to simply update the JDK to at least JDK 1.8.0_111 +Another way would be to simply update the JDK to at least JDK 1.8.0_111. ## Supported Things @@ -21,11 +21,11 @@ The desired senseBox must be configured manually or via a things file. ## Binding configuration -The binding has no configuration options itself, all configuration is done at 'Things' level. +The binding has no configuration options itself; all configuration is done at the Things level. ## Thing configuration -The senseBox thing requires the box Id (which can be obtained on the map) and an interval in seconds for the API polling. +The senseBox Thing requires the box ID (which can be obtained on the map) and an interval in seconds for the API polling. The senseBox support team wrote in an email that polling even every five minutes is still o.k., therefore the minimum is hardcoded to be 300 seconds. ```java @@ -46,7 +46,7 @@ The binding introduces the following channels: | measurements#humidity | Humidity | Number:Dimensionless | False | | measurements#temperature | Temperature | Number:Temperature | False | | measurements#particulateMatter2dot5 | Particulate Matter 2.5 µm in diameter | Number:Density | False | -| measurements#particulateMatter10 | Temperature Matter 10 µm in diameter | Number:Density | False | +| measurements#particulateMatter10 | Particulate Matter 10 µm in diameter | Number:Density | False | | lastReported#uvIntensityLastReported | The timestamp when uv radiation intensity was last reported | DateTime | True | | lastReported#illuminanceLastReported | The timestamp when illuminance was last reported | DateTime | True | | lastReported#pressureLastReported | The timestamp when pressure was last reported | DateTime | True | @@ -59,8 +59,8 @@ Channels starting with "descriptors" are defined on the API server. ## Example -The Temperature and Pressure items are defined two times, one with the native unit and one with a localized unit. -This is to show an example of using Units of Measurements to display data without explicit recalculation is rules. +The Temperature and Pressure items are defined twice: one with the native unit and one with a localized unit. +This shows an example of using Units of Measurement to display data without explicit recalculation in rules. sensebox.things: @@ -89,7 +89,7 @@ sitemap sensebox label="SenseBox Davos" { Text item=Davos_Temperature Text item=Davos_Pressure Text item=Davos_Humidity - Text item=Davos_Luminance + Text item=Davos_Illuminance Text item=Davos_UVIntensity Text item=Davos_PM2dot5 Text item=Davos_PM10 diff --git a/bundles/org.openhab.binding.senseenergy/README.md b/bundles/org.openhab.binding.senseenergy/README.md index 7b6de45d0c257..97025b3c84a25 100644 --- a/bundles/org.openhab.binding.senseenergy/README.md +++ b/bundles/org.openhab.binding.senseenergy/README.md @@ -31,7 +31,7 @@ This binding builds off the following works in understanding the Sense API: ## Discovery -Initial configurtion involes creating a cloud-connector device with the email and password for the Sense cloud account. +Initial configuration involves creating a cloud-connector device with the email and password for the Sense cloud account. Once the cloud-connector has been created and initialized, the monitor(s) associated with the account will be auto-discovered. Virtual proxy devices are created manually attached to the monitor bridge. @@ -51,7 +51,7 @@ At present, the binding does not support multi-factor authentication which shoul The monitor will be auto-discovered after the `cloud-connector` bridge goes online. The only configuration parameter is the id, however, this is not available via the Sense app or sense.com. -When supporting textual configuration, you can monitor the openhab.log in order to see the id for your monitor device. +When supporting textual configuration, you can monitor the openhab.log in order to see the ID for your monitor device. | Name | Type | Description | Default | Required | Advanced | |------|---------|---------------------------|---------|----------|----------| @@ -60,7 +60,7 @@ When supporting textual configuration, you can monitor the openhab.log in order ### Virtual Proxy Device Emulation Virtual proxy devices can be created in order to notify Sense of specific power usage of devices in your home. -These emulate a TP-Link Kasa HS110 smart plug and will report to Sense the power usage based on on the configuration of the proxy device and the state. +These emulate a TP-Link Kasa HS110 smart plug and will report to Sense the power usage based on the configuration of the proxy device and the state. In order to use, you need to enable "TP-Link HS110/HS300 Smart Plug" in the Sense app. | Name | Type | Description | Default | Required | Advanced | @@ -78,14 +78,14 @@ Here are several examples of how this can be configured: |------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------| | 10 W | The device is a simple ON/OFF switch or Dimmer with 0 W in the OFF or 0% state, and 10 W in the full ON or 100% state. For a dimmer, the power will be linearly interpolated over the full range [0 W, 10 W] depending on current dim level. | Light | | 800 mW,10 W | The device is a simple ON/OFF switch or Dimmer with 800 mW in the OFF or 0% state, and 10 W in the full ON or 100% state. For a dimmer, the power will be linearly interpolated over the full range [800 mW, 10 W] depending on current dim level. | TV which standby power > 0 W | -| 0 W,1 W,3 W,8 W, 15 W | A device which has non-linear power usage at different dim levels. This configuration would use 0 W at 0%, 1 W at 25%, 3 W at 50%, 8 W at 75% and 15 W at the full 100%. Other levels are linearly interpolated within the bounding points of the sub-range. | Dimmable light with non-linear usage profile | +| 0 W,1 W,3 W,8 W, 15 W | A device that has non-linear power usage at different dim levels. This configuration would use 0 W at 0%, 1 W at 25%, 3 W at 50%, 8 W at 75%, and 15 W at the full 100%. Other levels are linearly interpolated within the bounding points of the sub-range. | Dimmable light with non-linear usage profile | | OFF=0 W,LOW=200 W,HIGH=400 W | A device with several power states with different power levels in state represented by a String. | A fan with OFF, LOW, HIGH states | #### MAC Each proxy device must be configured with a MAC address. The virtual device creates a random MAC address which is used in identification of the device to Sense. -Note, if configuring via the textual interace, it is important to provide the MAC field, otherwise a different MAC address will be randomized whenever openHAB restarts and the proxy device will appear as a new additional device to Sense. +Note, if configuring via the textual interface, it is important to provide the MAC field; otherwise a different MAC address will be randomized whenever openHAB restarts and the proxy device will appear as a new additional device to Sense. ## Channels @@ -189,12 +189,12 @@ The binding also supports querying of trend totals over a periods of time. #### Map queryEnergyTrend(String scale, Instant datetime) -This function will query tthe Sense cloud for usage totals for a given period of time. +This function will query the Sense cloud for usage totals for a given period of time. ##### Parameters `scale` - the time scale for which the query should be over ("DAY", "WEEK", "MONTH", "YEAR"). -`datetime` - the datetime in the period. this can be null to select the current datetime. +`datetime` - the datetime in the period. This can be null to select the current datetime. ##### Returns @@ -234,9 +234,9 @@ end ## Special Notes -For proxy device to work, openHAB must be on the same sub-net as the Sense monitor and be able to receive broadcast Datagram packets on port 9999. +For proxy devices to work, openHAB must be on the same subnet as the Sense monitor and be able to receive broadcast datagram packets on port 9999. While the binding has not been tested in a Docker configuration, there are some potential issues with being able to receive on port 9999 (see ). -The Sense Energy Monitor can be configured in two different modes depending on whether the secondary current monitor is either attaced to the Solar circuit of another circuit in your house. -Unfortunately, the JSON format from the API is different depending on the mode and currently the binding has only been tested and will work in the Solar mode. +The Sense Energy Monitor can be configured in two different modes depending on whether the secondary current monitor is either attached to the solar circuit or another circuit in your house. +Unfortunately, the JSON format from the API is different depending on the mode, and currently the binding has only been tested to work in the solar mode. If there are others wanting to use the setup in a different mode, I would be interested in enabling support. diff --git a/bundles/org.openhab.binding.sensibo/README.md b/bundles/org.openhab.binding.sensibo/README.md index 1f6423aabede4..7f5692441d6ba 100644 --- a/bundles/org.openhab.binding.sensibo/README.md +++ b/bundles/org.openhab.binding.sensibo/README.md @@ -1,6 +1,6 @@ # Sensibo Binding -This binding integrates the Sensibo Sky aircondition remote control +This binding integrates the Sensibo Sky air conditioner remote control. See ## Supported Things @@ -12,12 +12,12 @@ This binding supports Sensibo Sky only. ## Discovery -In order to do discovery, add a thing of type Sensibo API and add the API key. -API key can be obtained here: +To perform discovery, add a Thing of type Sensibo API and provide the API key. +An API key can be obtained here: . ## Thing Configuration -See full example below for how to configure using thing files. +See full example below for how to configure using Thing files. ### Account diff --git a/bundles/org.openhab.binding.sensibo/src/main/resources/OH-INF/i18n/sensibo.properties b/bundles/org.openhab.binding.sensibo/src/main/resources/OH-INF/i18n/sensibo.properties index 66eec8034d73a..09113b1ecdb9a 100644 --- a/bundles/org.openhab.binding.sensibo/src/main/resources/OH-INF/i18n/sensibo.properties +++ b/bundles/org.openhab.binding.sensibo/src/main/resources/OH-INF/i18n/sensibo.properties @@ -24,4 +24,4 @@ channel-type.sensibo.currentHumidity.label = Current Humidity channel-type.sensibo.currentTemperature.label = Current Temperature channel-type.sensibo.masterSwitch.label = Master Switch channel-type.sensibo.timer.label = Off Timer -channel-type.sensibo.timer.description = Number of seconds until turning off +channel-type.sensibo.timer.description = Number of seconds until turning off. diff --git a/bundles/org.openhab.binding.sensibo/src/main/resources/OH-INF/thing/channels.xml b/bundles/org.openhab.binding.sensibo/src/main/resources/OH-INF/thing/channels.xml index 7adc61337cc20..d0a379398cfb7 100644 --- a/bundles/org.openhab.binding.sensibo/src/main/resources/OH-INF/thing/channels.xml +++ b/bundles/org.openhab.binding.sensibo/src/main/resources/OH-INF/thing/channels.xml @@ -35,7 +35,7 @@ Number - Number of seconds until turning off + Number of seconds until turning off. diff --git a/bundles/org.openhab.binding.sensorcommunity/README.md b/bundles/org.openhab.binding.sensorcommunity/README.md index 55885f4970ef9..0bb05c5b8df0d 100644 --- a/bundles/org.openhab.binding.sensorcommunity/README.md +++ b/bundles/org.openhab.binding.sensorcommunity/README.md @@ -40,7 +40,7 @@ Perform the following steps to get the appropriate Sensor ID - Go to to [Sensor.Community map](https://deutschland.maps.sensor.community/) - Choose your desired value in bottom list - now only the Sensors are displayed which are supporting this - Click on your / any Sensor and the ID is displayed in the top right corner. Note: Sensor ID is just the number without beginning hash # -- Enter this Sensor ID into the thing configuration +- Enter this Sensor ID into the Thing configuration ![Sensor.Community Logo](doc/SensorCommunity-Map.png) diff --git a/bundles/org.openhab.binding.serial/README.md b/bundles/org.openhab.binding.serial/README.md index 425221a4b1d5e..662df3e7c70ee 100644 --- a/bundles/org.openhab.binding.serial/README.md +++ b/bundles/org.openhab.binding.serial/README.md @@ -13,13 +13,13 @@ The Serial binding represents a serial port as a bridge thing, a TCP socket as a ### Serial Bridge -A Serial Bridge thing (`serialBridge`) represents a single serial port. +A Serial Bridge Thing (`serialBridge`) represents a single serial port. The bridge supports a String channel which is set to the currently received data from the serial port. Sending a command to this channel sends the command as a string to the serial port. To communicate with protocols requiring binary data it is possible to select a special 'HEX' charset. -This results into all binary data being converted into space-separacted hexadecimal strings that can be parsed using regular expressions. +This results in all binary data being converted into space-separated hexadecimal strings that can be parsed using regular expressions. In this mode, the input data is also expected to be encoded as hexadecimal characters. The bridge also supports a String channel which encodes the received data as the string representation of a RawType to handle data that is @@ -39,17 +39,17 @@ Currently, only one connection per bridge is allowed. ### Serial Device -A Serial Device thing (`serialDevice`) can be used to represent data matching a defined pattern as a device. +A Serial Device Thing (`serialDevice`) can be used to represent data matching a defined pattern as a device. The serial port may be providing data for many different devices/sensors, such as a temperature sensor or a doorbell. Usually such devices can be identified by performing a pattern match on the received data. For example, a Serial Device could be configured to represent a temperature sensor. -The thing will only update its channels if the received data matches the defined pattern. +The Thing will only update its channels if the received data matches the defined pattern. -The thing supports generic String and Number channels which can apply a transform on the received data to set the channel state. +The Thing supports generic String and Number channels which can apply a transform on the received data to set the channel state. Commands sent to the channels can be formatted and transformed before being sent to the device. -The thing also supports Switch and Rollershutter channels which provide simple mappings for the ON, OFF, UP, DOWN and STOP commands. +The Thing also supports Switch and Rollershutter channels which provide simple mappings for the ON, OFF, UP, DOWN and STOP commands. When using a Serial Device the expectation is that the received data for each device is terminated by a line break. @@ -65,7 +65,7 @@ The configuration for the `serialBridge` consists of the following parameters: | parity | Set the parity. Valid values: N(one), O(dd), E(even), M(ark), S(pace) (default N) | | stopBits | Set the stop bits. Valid values: 1, 1.5, 2 (default 1) | | charset | The charset to use for converting between bytes and string (e.g. UTF-8,ISO-8859-1). Enter 'HEX' to convert binary data into hexadecimal strings separated by space. | -| eolPattern | In charset=HEX mode, a regular expression is required to match the binaries equivalent of an 'End of line' character. For example, '\bFF' would match a byte value of 255 as end of the current response. | +| eolPattern | In charset=HEX mode, a regular expression is required to match the binary equivalent of an 'End of line' character. For example, '\\bFF' matches a byte value of 255 as the end of the current response. | The configuration for the `tcpBridge` consists of the following parameters: @@ -83,7 +83,7 @@ The configuration for the `tcpServerBridge` consists of the following parameters | Parameter | Description | |-------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| port | The number of the TCP port to listen to | +| port | The number of the TCP port to listen to. | | bindAddress | The IP to bind to. | | timeout | Socket timeout in seconds (0 = no timeout) | | keepAlive | Enable socket keep-alive | diff --git a/bundles/org.openhab.binding.serial/src/main/resources/OH-INF/i18n/serial.properties b/bundles/org.openhab.binding.serial/src/main/resources/OH-INF/i18n/serial.properties index 5cbddfd408ea1..83b358937fa80 100644 --- a/bundles/org.openhab.binding.serial/src/main/resources/OH-INF/i18n/serial.properties +++ b/bundles/org.openhab.binding.serial/src/main/resources/OH-INF/i18n/serial.properties @@ -49,13 +49,13 @@ thing-type.config.serial.serialBridge.stopBits.description = Set the stop bits thing-type.config.serial.serialBridge.stopBits.option.1 = 1 thing-type.config.serial.serialBridge.stopBits.option.1.5 = 1.5 thing-type.config.serial.serialBridge.stopBits.option.2 = 2 -thing-type.config.serial.serialDevice.patternMatch.label = Patern Match +thing-type.config.serial.serialDevice.patternMatch.label = Pattern Match thing-type.config.serial.serialDevice.patternMatch.description = Regular expression used to identify device from received data (must match the whole line) thing-type.config.serial.tcpBridge.address.label = Address thing-type.config.serial.tcpBridge.address.description = The IP address or hostname thing-type.config.serial.tcpBridge.charset.label = Charset or HEX thing-type.config.serial.tcpBridge.charset.description = The charset to use for converting between bytes and string (e.g. UTF-8, ISO-8859-1). Enter 'HEX' to convert binary data into hexadecimal strings, separated by space. -thing-type.config.serial.tcpBridge.eolPattern.label = EOL pattern +thing-type.config.serial.tcpBridge.eolPattern.label = EOL Pattern thing-type.config.serial.tcpBridge.eolPattern.description = Only for Charset = HEX: 'End of line' pattern as regular expression. For example, "0D 10" matches \r\n, "\\bFF" matches 0xFF. Please note that the matched pattern will be part of the result string. thing-type.config.serial.tcpBridge.keepAlive.label = Keep-Alive thing-type.config.serial.tcpBridge.keepAlive.description = Send keep-alive @@ -69,7 +69,7 @@ thing-type.config.serial.tcpServerBridge.bindAddress.label = Address thing-type.config.serial.tcpServerBridge.bindAddress.description = The IP address to bind to (default: 0.0.0.0) thing-type.config.serial.tcpServerBridge.charset.label = Charset or HEX thing-type.config.serial.tcpServerBridge.charset.description = The charset to use for converting between bytes and string (e.g. UTF-8, ISO-8859-1). Enter 'HEX' to convert binary data into hexadecimal strings, separated by space. -thing-type.config.serial.tcpServerBridge.eolPattern.label = EOL pattern +thing-type.config.serial.tcpServerBridge.eolPattern.label = EOL Pattern thing-type.config.serial.tcpServerBridge.eolPattern.description = Only for Charset = HEX: 'End of line' pattern as regular expression. For example, "0D 10" matches \r\n, "\\bFF" matches 0xFF. Please note that the matched pattern will be part of the result string. thing-type.config.serial.tcpServerBridge.keepAlive.label = Keep-Alive thing-type.config.serial.tcpServerBridge.keepAlive.description = Send keep-alive diff --git a/bundles/org.openhab.binding.serial/src/main/resources/OH-INF/thing/thing-types.xml b/bundles/org.openhab.binding.serial/src/main/resources/OH-INF/thing/thing-types.xml index b30abc7cada68..848a82e8fbb51 100644 --- a/bundles/org.openhab.binding.serial/src/main/resources/OH-INF/thing/thing-types.xml +++ b/bundles/org.openhab.binding.serial/src/main/resources/OH-INF/thing/thing-types.xml @@ -134,7 +134,7 @@
true - + Only for Charset = HEX: 'End of line' pattern as regular expression. For example, "0D 10" matches \r\n, "\\bFF" matches 0xFF. Please note that the matched pattern will be part of the result string. @@ -176,7 +176,7 @@
true - + Only for Charset = HEX: 'End of line' pattern as regular expression. For example, "0D 10" matches \r\n, "\\bFF" matches 0xFF. Please note that the matched pattern will be part of the result string. @@ -195,7 +195,7 @@ - + pattern-match Regular expression used to identify device from received data (must match the whole line) diff --git a/bundles/org.openhab.binding.serialbutton/README.md b/bundles/org.openhab.binding.serialbutton/README.md index fb4048cb2de6a..438c09014fe5f 100644 --- a/bundles/org.openhab.binding.serialbutton/README.md +++ b/bundles/org.openhab.binding.serialbutton/README.md @@ -1,16 +1,16 @@ # Serial Button Binding -This is a binding for probably one of the simplest devices possible: A simple push button which short-cuts two pins on a serial port. +This is a binding for probably one of the simplest devices possible: a simple push button which shorts two pins on a serial port. ## Supported Things -The binding defines a single thing type called `button`. +The binding defines a single Thing type called `button`. A button requires the single configuration parameter `port`, which specifies the serial port that should be used. The only available channel is a `SYSTEM_RAWBUTTON` channel called `button`, which emits `PRESSED` events (no `RELEASED` events though) whenever data is available on the serial port (which will be read and discarded). -The use case is simple: Connect any push button to pins 2 and 7 of an RS-232 interface as short-cutting those will signal that data is available. +The use case is simple: Connect any push button to pins 2 and 7 of an RS-232 interface; shorting those will signal that data is available. Using the default toggle profile, this means that you can use this channel to toggle any Switch item through the button. ## Full Example diff --git a/bundles/org.openhab.binding.shelly/README.md b/bundles/org.openhab.binding.shelly/README.md index 1ea8bd4b39680..663d15280f688 100644 --- a/bundles/org.openhab.binding.shelly/README.md +++ b/bundles/org.openhab.binding.shelly/README.md @@ -187,7 +187,7 @@ In this case autoCoIoT should be disabled, CoIoT events will not work, because t `Generation 1`: The binding requires firmware version 1.9.2 or newer to enable all features. `Generation 2+3` Those Shelly devices require firmware version 1.0.0 or newer (1.10.0+ is recommended). -`Shelly BLU deries`: Use the Shelly App to update to 1.0+ version of the firmware. +`Shelly BLU series`: Use the Shelly app to update to version 1.0+ of the firmware. Some of the features are enabled dynamically or are not available depending on device type and firmware release. The Web UI of the Shelly device displays the current firmware version under Settings:Firmware and shows an update option when a newer version is available. @@ -225,15 +225,15 @@ The BLU devices use Bluetooth Low Energy (BLE). The binding can't communicate directly with the device, so a Shelly Plus/Pro device is required with enabled Bluetooth to use those devices as a hub. The binding automatically installs a script on the Shelly Device (oh-blu-scanner.js), which forwards the BLU events to the binding. -Follow these steps to add the Shelly BLU Device to openHAB +Follow these steps to add the Shelly BLU Device to openHAB: -- Make sure a Shelly is near by the BLU device, enable Bluetooh on this device (**disable the 'Bluetooth Gateway' mode** in the Shelly app/UI is recommended) -- Add this thing to openHAB, make sure thing gets online -- Enable "BLU Gateway Support" in the thing configuration of the Shelly device acting as gateway. +- Make sure a Shelly is nearby the BLU device, and enable Bluetooth on this device (**disabling the 'Bluetooth Gateway' mode** in the Shelly app/UI is recommended). +- Add this Thing to openHAB, make sure Thing gets online +- Enable "BLU Gateway Support" in the Thing configuration of the Shelly device acting as gateway. - Now press the button on your BLU device, this wakes up the device and the script forwards this event to the binding -- As a result the corresponding thing should show up in the Inbox -- Add the thing (at this point no channels are created), the new thing will show status CONFIG_PENDING -- Click the device button again, the binding gets another event and creates the channels and thing changes status to ONLINE +- As a result the corresponding Thing should show up in the Inbox +- Add the Thing (at this point no channels are created), the new Thing will show status CONFIG_PENDING +- Click the device button again, the binding gets another event and creates the channels and Thing changes status to ONLINE - Finally link the channels to the equipment in the model `Note`: @@ -246,7 +246,7 @@ Try moving the device to force status updates. Every time an event is received sensors#lastUpdate and channels are updated with the reported values. `device#wifiSignal` indicates the Bluetooth signal strength and gets updated when the device sends an event. -The binding supports multiple Shelly Plus/Pro as gateway devices unless they are added as thing and are ONLINE. +The binding supports multiple Shelly Plus/Pro as gateway devices unless they are added as Thing and are ONLINE. In this scenario the channel `device#gatewayDevice` will report the last hub device, which forwarded a status update. ### Password Protected Devices @@ -262,22 +262,22 @@ In this case the credentials are persisted as part of the Thing configuration. ### Range Extender Mode The Plus/Pro devices support the so-called Range Extender Mode (not available for Gen1). -This allows connect Shellys, which are normally no reachable, because of a lack of WiFi signal. +This allows connecting Shellys that are normally not reachable due to a lack of Wi-Fi signal. Once enabled the Shelly acts as a hub to the linked devices, like a WiFi repeater. The hub device enables the access point, which can be seen by the linked device. -The binding could then get access to the secondary device using <ub shelly ip>:<special port>. -A special port on the hub device will be created for every linked device so one hub device could supported multiple linked devices. +The binding can then access the secondary device using <hub Shelly IP>:<special port>. +A special port on the hub device will be created for every linked device, so one hub device can support multiple linked devices. The binding communicates with the Shelly hub device, which then forwards the request to the secondary device. -Once the thing for the primary Shelly goes online the binding detects the enabled range extender mode and adds all connected secondary devices to the Inbox. +Once the Thing for the primary Shelly goes online the binding detects the enabled range extender mode and adds all connected secondary devices to the Inbox. This means: The primary Shelly has to complete initialization before linked secondary devices are discovered. - Discover primary/hub Shelly -- Add thing and wait until it goes ONLINE +- Add Thing and wait until it goes ONLINE - Check Inbox to find the secondary/linked devices - Add secondary device as usual -If you are adding another secondary device to the same hub device you need to suspend and resume the primary thing, this will run a new initialization and adds the new secondary device to the Inbox. +If you add another secondary device to the same hub device, suspend and resume the primary thing; this will run a new initialization and add the new secondary device to the Inbox. ### Dynamic creation of channels @@ -381,8 +381,8 @@ Every device has a channel group `device` with the following channels: | | alarm | Trigger | yes | Self-Test result not_completed/completed/running/pending | | | supplyVoltage | Number | yes | Shelly 1PM, 1L, 2.5: Supply voltage (fixed or measured depending on device) | | | accumulatedWatts | Number | yes | Accumulated power in W of the device (including all meters) | -| | accumulatedTotal | Number | yes | Accumulated total power in kwh of the device (including all meters) | -| | accumulatedReturned | Number | yes | Accumulated returned power in kwh of the device (including all meters) | +| | accumulatedTotal | Number | yes | Accumulated total energy in kWh for the device (including all meters) | +| | accumulatedReturned | Number | yes | Accumulated returned energy in kWh for the device (including all meters) | | | heartBeat | DateTime | yes | Timestamp of the last successful device communication | | | updateAvailable | Switch | yes | ON: A firmware update is available | | | statusLed | Switch | r/w | ON: Status LED is disabled, OFF: LED enabled | @@ -400,7 +400,7 @@ The LED channels are available for the Plug-S with firmware 1.6x and for various ### Generation 1: Action URLs vs. CoIoT -Depending on the firmware release the Shelly devices supports 2 different mechanims to report sensor updates or events. +Depending on the firmware release, Shelly devices support two different mechanisms to report sensor updates or events. 1. Action URLs Usually the binding polls the device to update the status and maps the returned values to the various channels. @@ -564,7 +564,7 @@ In this case the is no real measurement based on power consumption, but the Shel | | button | Trigger | yes | Event trigger, see section Button Events | | meter | currentWatts | Number | yes | Current power consumption in Watts | | | lastPower1 | Number | yes | The average power for the previous minute | -| | totalKWH | Number | yes | Total energy consumption in kwh since the device powered up (resets on restart) | +| | totalKWH | Number | yes | Total energy consumption in kWh since the device powered up (resets on restart) | | | frequency | Number | yes | Measure frequency (Hz) - Gen4 only | | | | | | | | | lastUpdate | DateTime | yes | Timestamp of the last measurement | @@ -588,15 +588,15 @@ In this case the is no real measurement based on power consumption, but the Shel | | autoOff | Number | r/w | Relay #1: Sets a timer to turn the device OFF after every ON command; in seconds | | | timerActive | Switch | yes | Relay #1: ON: An auto-on/off timer is active | | meter1 | currentWatts | Number | yes | Current power consumption in Watts | -| | totalKWH | Number | yes | Total energy consumption in kwh since the device powered up (resets on restart) | -| | returnedKWH | Number | yes | Total returned energy, kwh | +| | totalKWH | Number | yes | Total energy consumption in kWh since the device powered up (resets on restart) | +| | returnedKWH | Number | yes | Total returned energy, kWh | | | reactiveWatts | Number | yes | Instantaneous reactive power, Watts | | | voltage | Number | yes | RMS voltage, Volts | | | powerFactor | Number | yes | Power Factor in percent | | | lastUpdate | DateTime | yes | Timestamp of the last measurement | | meter2 | currentWatts | Number | yes | Current power consumption in Watts | -| | totalKWH | Number | yes | Total energy consumption in kwh since the device powered up (resets on restart) | -| | returnedKWH | Number | yes | Total returned energy, kwh | +| | totalKWH | Number | yes | Total energy consumption in kWh since the device powered up (resets on restart) | +| | returnedKWH | Number | yes | Total returned energy, kWh | | | reactiveWatts | Number | yes | Instantaneous reactive power, Watts | | | voltage | Number | yes | RMS voltage, Volts | | | powerFactor | Number | yes | Power Factor in percent | @@ -619,28 +619,28 @@ The Thing id is derived from the service name, so that's the reason why the Thin | | autoOff | Number | r/w | Relay #1: Sets a timer to turn the device OFF after every ON command; in seconds | | | timerActive | Switch | yes | Relay #1: ON: An auto-on/off timer is active | | meter1 | currentWatts | Number | yes | Current power consumption in Watts | -| | totalKWH | Number | yes | Total energy consumption in kwh since the device powered up (resets on restart) | -| | returnedKWH | Number | yes | Total returned energy, kwh | +| | totalKWH | Number | yes | Total energy consumption in kWh since the device powered up (resets on restart) | +| | returnedKWH | Number | yes | Total returned energy, kWh | | | reactiveWatts | Number | yes | Instantaneous reactive power, Watts | -| | voltage | Number | yes | RMS voltage, Volts | +| | returnedKWH | Number | yes | Total returned energy, kWh | | | current | Number | yes | Current in A | | | powerFactor | Number | yes | Power Factor in percent | | | resetTotals | Switch | yes | ON: Resets total values for the power meter | | | lastUpdate | DateTime | yes | Timestamp of the last measurement | | meter2 | currentWatts | Number | yes | Current power consumption in Watts | -| | totalKWH | Number | yes | Total energy consumption in kwh since the device powered up (resets on restart) | -| | returnedKWH | Number | yes | Total returned energy, kwh | +| | totalKWH | Number | yes | Total energy consumption in kWh since the device powered up (resets on restart) | +| | returnedKWH | Number | yes | Total returned energy, kWh | | | reactiveWatts | Number | yes | Instantaneous reactive power, Watts | -| | voltage | Number | yes | RMS voltage, Volts | +| | returnedKWH | Number | yes | Total returned energy, kWh | | | current | Number | yes | Current in A | | | powerFactor | Number | yes | Power Factor in percent | | | resetTotals | Switch | yes | ON: Resets total values for the power meter | | | lastUpdate | DateTime | yes | Timestamp of the last measurement | | meter3 | currentWatts | Number | yes | Current power consumption in Watts | -| | totalKWH | Number | yes | Total energy consumption in kwh since the device powered up (resets on restart) | -| | returnedKWH | Number | yes | Total returned energy, kwh | +| | totalKWH | Number | yes | Total energy consumption in kWh since the device powered up (resets on restart) | +| | returnedKWH | Number | yes | Total returned energy, kWh | | | reactiveWatts | Number | yes | Instantaneous reactive power, Watts | -| | voltage | Number | yes | RMS voltage, Volts | +| | returnedKWH | Number | yes | Total returned energy, kWh | | | current | Number | yes | Current in A | | | powerFactor | Number | yes | Power Factor in percent | | | resetTotals | Switch | yes | ON: Resets total values for the power meter | @@ -674,10 +674,10 @@ Check the Shelly documentation for details._ | | button | Trigger | yes | Event trigger, see section Button Events | | meter | currentWatts | Number | yes | Current power consumption in Watts | | | lastPower1 | Number | yes | Energy consumption for a round minute, 1 minute ago | -| | totalKWH | Number | yes | Total energy consumption in kwh since the device powered up (resets on restart) | +| | totalKWH | Number | yes | Total energy consumption in kWh since the device powered up (resets on restart) | | | lastUpdate | DateTime | yes | Timestamp of the last measurement | -### Shelly 2 - roller mode thing-type: shelly2-roller) +| | returnedKWH | Number | yes | Total returned energy, kWh | | Group | Channel | Type | read-only | Description | | ------ | ------------ | ------------- | --------- | ------------------------------------------------------------------------------------- | @@ -691,7 +691,7 @@ Check the Shelly documentation for details._ | | safety | Switch | yes | Indicates status of the Safety Switch, ON=problem detected, powered off | | meter | currentWatts | Number | yes | Current power consumption in Watts | | | lastPower1 | Number | yes | Accumulated energy consumption in Watts for the full last minute | -| | totalKWH | Number | yes | Total energy consumption in kwh since the device powered up (reset on restart) | +| | totalKWH | Number | yes | Total energy consumption in kWh since the device powered up (reset on restart) | | | lastUpdate | DateTime | yes | Timestamp of the last measurement | _Note: The Roller should be calibrated using the device Web UI or Shelly App, otherwise the position can't be set._ @@ -773,7 +773,7 @@ The Shelly 4Pro provides 4 relays and 4 power meters. | | timerActive | Switch | yes | Relay #1: ON: An auto-on/off timer is active | | meter | currentWatts | Number | yes | Current power consumption in Watts | | | lastPower1 | Number | yes | Energy consumption for a round minute, 1 minute ago | -| | totalKWH | Number | yes | Total energy consumption in kwh since the device powered up (resets on restart) | +| | totalKWH | Number | yes | Total energy consumption in kWh since the device powered up (resets on restart) | | | lastUpdate | DateTime | yes | Timestamp of the last measurement | `Note: The Dimmer should be calibrated using the device Web UI or Shelly App.` @@ -855,7 +855,7 @@ This information applies to the Shelly Duo-1 as well as the Duo White for the G1 | | brightness | Dimmer | | Brightness: 0..100% or 0..100 | | meter | currentWatts | Number | yes | Current power consumption in Watts | | | lastPower1 | Number | yes | Energy consumption in Watts for a round minute, 1 minute ago | -| | totalKWH | Number | yes | Total energy consumption in kwh since the device powered up (resets on restart) | +| | totalKWH | Number | yes | Total energy consumption in kWh since the device powered up (resets on restart) | | | lastUpdate | DateTime | yes | Timestamp of the last measurement | ### Shelly Vintage (thing-type: shellyvintage) @@ -910,7 +910,7 @@ Using the Thing configuration option `brightnessAutoOn` you could decide if the | | autoOff | Number | r/w | Sets a timer to turn the device OFF after every ON command; in seconds | | | timerActive | Switch | yes | ON: An auto-on/off timer is active | | color | | | | Color settings: only valid in COLOR mode | -| | hsb | HSB | r/w | Represents the color picker (HSBType), control r/g/b, bight not white | +| | hsb | HSB | r/w | Represents the color picker (HSBType); control r/g/b, bright, not white | | | full | String | r/w | Set Red / Green / Blue / Yellow / White mode and switch mode | | | | | r/w | Valid settings: "red", "green", "blue", "yellow", "white" or "r,g,b,w" | | | red | Dimmer | r/w | Red brightness: 0..100% or 0..255 (control only the red channel) | @@ -936,7 +936,7 @@ Using the Thing configuration option `brightnessAutoOn` you could decide if the | | autoOn | Number | r/w | Sets a timer to turn the device ON after every OFF command; in seconds | | | autoOff | Number | r/w | Sets a timer to turn the device OFF after every ON command; in seconds | | | timerActive | Switch | yes | ON: An auto-on/off timer is active | -| color | hsb | HSB | r/w | Represents the color picker (HSBType), control r/g/b, bight not white | +| color | hsb | HSB | r/w | Represents the color picker (HSBType); control r/g/b, bright, not white | | | full | String | r/w | Set Red / Green / Blue / Yellow / White mode and switch mode | | | | | r/w | Valid settings: "red", "green", "blue", "yellow", "white" or "r,g,b,w" | | | red | Dimmer | r/w | Red brightness: 0..100% or 0..255 (control only the red channel) | @@ -1052,7 +1052,7 @@ While the device is in low power mode (usual operation) it will not respond to d Use case for the 'sensorSleepTime': You have a Motion controlling your light. You switch off the light and want to leave the room, but the motion sensor immediately switches light back on. -Using 'sensorSleepTime' you could suppress motion events while leaving the room, e.g. for 5sec and the light doesn's switch on. +Using 'sensorSleepTime' you can suppress motion events while leaving the room (e.g., for 5 seconds) so the light doesn't switch on. ### Shelly Motion 2 (thing-type: shellymotion2) @@ -1327,14 +1327,14 @@ Refer to [Smartify Roller Shutters with openHAB and Shelly](doc/UseCaseSmartRoll | | totalKWH | Number | yes | Total energy consumption in kwh since the device powered up (resets on restart) | | | returnedKWH | Number | yes | Total returned energy, kwh | | | reactiveWatts | Number | yes | Instantaneous reactive power, Watts | -| | voltage | Number | yes | RMS voltage, Volts | +| | returnedKWH | Number | yes | Total returned energy, kWh | | | powerFactor | Number | yes | Power Factor in percent | | | lastUpdate | DateTime | yes | Timestamp of the last measurement | | meter2 | currentWatts | Number | yes | Current power consumption in Watts | | | totalKWH | Number | yes | Total energy consumption in kwh since the device powered up (resets on restart) | | | returnedKWH | Number | yes | Total returned energy, kwh | | | reactiveWatts | Number | yes | Instantaneous reactive power, Watts | -| | voltage | Number | yes | RMS voltage, Volts | +| | returnedKWH | Number | yes | Total returned energy, kWh | | | powerFactor | Number | yes | Power Factor in percent | | | lastUpdate | DateTime | yes | Timestamp of the last measurement | @@ -1355,7 +1355,7 @@ Refer to [Smartify Roller Shutters with openHAB and Shelly](doc/UseCaseSmartRoll | | totalKWH | Number | yes | Total energy consumption in kwh since the device powered up (resets on restart) | | | returnedKWH | Number | yes | Total returned energy, kwh | | | reactiveWatts | Number | yes | Instantaneous reactive power, Watts | -| | voltage | Number | yes | RMS voltage, Volts | +| | returnedKWH | Number | yes | Total returned energy, kWh | | | current | Number | yes | Current in A | | | powerFactor | Number | yes | Power Factor in percent | | | resetTotals | Switch | yes | ON: Resets total values for the power meter | @@ -1364,7 +1364,7 @@ Refer to [Smartify Roller Shutters with openHAB and Shelly](doc/UseCaseSmartRoll | | totalKWH | Number | yes | Total energy consumption in kwh since the device powered up (resets on restart) | | | returnedKWH | Number | yes | Total returned energy, kwh | | | reactiveWatts | Number | yes | Instantaneous reactive power, Watts | -| | voltage | Number | yes | RMS voltage, Volts | +| | returnedKWH | Number | yes | Total returned energy, kWh | | | current | Number | yes | Current in A | | | powerFactor | Number | yes | Power Factor in percent | | | resetTotals | Switch | yes | ON: Resets total values for the power meter | @@ -1373,7 +1373,7 @@ Refer to [Smartify Roller Shutters with openHAB and Shelly](doc/UseCaseSmartRoll | | totalKWH | Number | yes | Total energy consumption in kwh since the device powered up (resets on restart) | | | returnedKWH | Number | yes | Total returned energy, kwh | | | reactiveWatts | Number | yes | Instantaneous reactive power, Watts | -| | voltage | Number | yes | RMS voltage, Volts | +| | returnedKWH | Number | yes | Total returned energy, kWh | | | current | Number | yes | Current in A | | | powerFactor | Number | yes | Power Factor in percent | | | resetTotals | Switch | yes | ON: Resets total values for the power meter | @@ -1514,7 +1514,7 @@ Channels lastEvent and eventCount are only available if input type is set to mom | | totalKWH | Number | yes | Total energy consumption in kwh since the device powered up (resets on restart) | | | returnedKWH | Number | yes | Total returned energy, kwh | | | reactiveWatts | Number | yes | Instantaneous reactive power, Watts | -| | voltage | Number | yes | RMS voltage, Volts | +| | returnedKWH | Number | yes | Total returned energy, kWh | | | powerFactor | Number | yes | Power Factor in percent | | | lastUpdate | DateTime | yes | Timestamp of the last measurement | | | frequency | Number | yes | Measure frequency (Hz) | diff --git a/bundles/org.openhab.binding.shelly/src/main/resources/OH-INF/i18n/shelly.properties b/bundles/org.openhab.binding.shelly/src/main/resources/OH-INF/i18n/shelly.properties index 1a2e0a43f89e6..2682e2d7d27e9 100644 --- a/bundles/org.openhab.binding.shelly/src/main/resources/OH-INF/i18n/shelly.properties +++ b/bundles/org.openhab.binding.shelly/src/main/resources/OH-INF/i18n/shelly.properties @@ -1,6 +1,105 @@ # add-on + addon.shelly.name = Shelly Binding addon.shelly.description = This binding integrates Shelly devices that can be controlled via WiFi. + +# thing types + +thing-type.shelly.shelly1.label = Shelly 1 +thing-type.shelly.shelly1l.label = Shelly 1L +thing-type.shelly.shelly1mini.label = ShellyPlus 1 Mini +thing-type.shelly.shelly1pm.label = Shelly 1PM +thing-type.shelly.shelly1pmmini.label = ShellyPlus 1PM Mini +thing-type.shelly.shelly2-relay.label = Shelly 2 Relay +thing-type.shelly.shelly2-roller.label = Shelly 2 Roller +thing-type.shelly.shelly25-relay.label = Shelly 2.5 Relay +thing-type.shelly.shelly25-roller.label = Shelly 2.5 Roller +thing-type.shelly.shelly4pro.label = Shelly 4 Pro Relay +thing-type.shelly.shellyblubutton.label = Shelly BLU Button +thing-type.shelly.shellybludistance.label = Shelly BLU Distance +thing-type.shelly.shellybludw.label = Shelly BLU Door/Window +thing-type.shelly.shellyblugw.label = Shelly BLU Gateway +thing-type.shelly.shellybluht.label = Shelly BLU H&T +thing-type.shelly.shellyblumotion.label = Shelly BLU Motion +thing-type.shelly.shellyblurcbutton4.label = Shelly BLU RC Button 4 +thing-type.shelly.shellybluremote.label = Shelly BLU Remote +thing-type.shelly.shellybluwallswitch4.label = Shelly BLU Wallswitch 4 +thing-type.shelly.shellybulb.label = Shelly Bulb +thing-type.shelly.shellybulbduo.label = Shelly Duo +thing-type.shelly.shellybutton1.label = Shelly Button 1 +thing-type.shelly.shellybutton2.label = Shelly Button 2 +thing-type.shelly.shellycolorbulb.label = Shelly Color Bulb +thing-type.shelly.shellydevice.label = Shelly Device +thing-type.shelly.shellydimmer.label = Shelly Dimmer +thing-type.shelly.shellydimmer2.label = Shelly Dimmer 2 +thing-type.shelly.shellydw.label = Shelly Door/Window +thing-type.shelly.shellydw2.label = Shelly Door/Window +thing-type.shelly.shellyem.label = Shelly EM +thing-type.shelly.shellyem3.label = Shelly EM3 +thing-type.shelly.shellyemmini.label = ShellyPlus EM Mini +thing-type.shelly.shellyflood.label = Shelly Flood +thing-type.shelly.shellygas.label = Shelly Gas +thing-type.shelly.shellyht.label = Shelly H&T +thing-type.shelly.shellyix3.label = Shelly ix3 +thing-type.shelly.shellymotion.label = Shelly Motion +thing-type.shelly.shellyplug.label = Shelly Plug +thing-type.shelly.shellyplugs.label = Shelly Plug-S +thing-type.shelly.shellyplugu1.label = Shelly Plug US +thing-type.shelly.shellyplus1.label = ShellyPlus 1 +thing-type.shelly.shellyplus10v.label = Shelly Plus Dimmer 10V +thing-type.shelly.shellyplus1l.label = ShellyPlus 1L +thing-type.shelly.shellyplus1pm.label = ShellyPlus 1PM +thing-type.shelly.shellyplus2l.label = ShellyPlus 2L +thing-type.shelly.shellyplus2pm-relay.label = ShellyPlus 2PM Relay +thing-type.shelly.shellyplus2pm-roller.label = ShellyPlus 2PM Roller +thing-type.shelly.shellyplus3em63.label = Shelly Plus 3EM-63 +thing-type.shelly.shellyplusdimmer.label = Shelly Plus Dimmer +thing-type.shelly.shellyplusem.label = Shelly Plus EM +thing-type.shelly.shellyplusht.label = ShellyPlus H&T +thing-type.shelly.shellyplusi4.label = ShellyPlus i4 +thing-type.shelly.shellyplusi4dc.label = ShellyPlus i4DC +thing-type.shelly.shellyplusplug.label = ShellyPlus Plug +thing-type.shelly.shellyplusplugus.label = ShellyPlus Plug US +thing-type.shelly.shellyplusrgbwpm.label = Shelly Plus RGBW +thing-type.shelly.shellyplusshutter.label = ShellyPlus Shutter +thing-type.shelly.shellyplussmoke.label = Shelly Plus Smoke +thing-type.shelly.shellyplusstrip.label = ShellyPlus Power Strip +thing-type.shelly.shellyplusuni.label = Shelly Plus UNI +thing-type.shelly.shellypluswdus.label = Shelly Plus Dimmer US +thing-type.shelly.shellypmmini.label = ShellyPlus PM Mini +thing-type.shelly.shellypro1.label = ShellyPro 1 +thing-type.shelly.shellypro1cb.label = ShellyPro 1CB +thing-type.shelly.shellypro1pm.label = ShellyPro 1PM +thing-type.shelly.shellypro2.label = Shelly Pro 2 +thing-type.shelly.shellypro2pm-relay.label = ShellyPro 2PM Relay +thing-type.shelly.shellypro2pm-roller.label = ShellyPro 2PM Roller +thing-type.shelly.shellypro3.label = ShellyPro 3 +thing-type.shelly.shellypro3em.label = Shelly Pro 3EM +thing-type.shelly.shellypro3em3ct63.label = Shelly Pro 3EM-3CT63 +thing-type.shelly.shellypro3em400.label = Shelly Pro 3EM-400 +thing-type.shelly.shellypro4pm.label = ShellyPro 4PM +thing-type.shelly.shellyproem50.label = Shelly Pro EM-50 +thing-type.shelly.shellyrgbw2-color.label = Shelly RGBW2 Color Mode +thing-type.shelly.shellyrgbw2-white.label = Shelly RGBW2 White Mode +thing-type.shelly.shellysense.label = Shelly Sense +thing-type.shelly.shellysmoke.label = Shelly Smoke +thing-type.shelly.shellytrv.label = Shelly TRV +thing-type.shelly.shellyuni.label = Shelly UNI +thing-type.shelly.shellyunknown.label = Unknown Shelly Device +thing-type.shelly.shellyvintage.label = Shelly Vintage +thing-type.shelly.shellywalldisplay.label = Shelly Wall Display + +# thing types config + +thing-type.config.shelly.dimmer.eventsCoIoT.label = Enable CoIoT Events +thing-type.config.shelly.dimmer.eventsCoIoT.description = If enabled, the CoAP protocol is used to receive status updates. + +# channel types + +channel-type.shelly.motionActive.description = channel-type.shelly.motionActive.description + +# add-on + addon.shelly.config.defaultUserId.label = Default UserId addon.shelly.config.defaultUserId.description = This default user id will be used for device access if no one is specified in the thing configuration. addon.shelly.config.defaultPassword.label = Default Password @@ -10,12 +109,14 @@ addon.shelly.config.localIP.description = This interface will be used to setup C addon.shelly.config.autoCoIoT.label = Auto-CoIoT addon.shelly.config.autoCoIoT.description = If enabled CoIoT will be automatically used when the devices runs a firmware version 1.6 or newer; false: Use thing configuration to enabled/disable CoIoT events. -# Config status messages +# config status messages + message.config-status.error.network-config = Invalid system or openHAB network configuration was detected (local IP {0}). message.config-status.error.missing-device-address = IP/MAC Address of the Shelly device is missing. message.config-status.error.missing-userid = No user ID in the Thing configuration -# Thing status descriptions +# thing status descriptions + message.offline.device-unsupported = Device model is currently not supported. message.offline.conf-error-no-credentials = Device is password protected, but no credentials have been configured. message.offline.conf-error-access-denied = Access denied, check user id and password. @@ -29,7 +130,8 @@ message.offline.status-error-restarted = The device has restarted and will be re message.offline.status-error-fwupgrade = Firmware upgrade in progress. message.offline.status-error-fwcompleted = Firmware upgrade completed, device is restarting. -# General messages +# general messages + message.versioncheck.beta = Device is running a Beta version: {0}/{1} message.versioncheck.tooold = WARNING: Firmware might be too old, installed: {0}/{1}, minimal required {2} message.versioncheck.update = INFO: New firmware available: current version: {0}, new version: {1} @@ -50,9 +152,8 @@ message.roller.calibrating = Device is not calibrated, use Shelly App to perform message.roller.favmissing = Roller position favorites are not supported by installed firmware or not configured in the Shelly App # thing types - descriptions only -thing-type.shelly.shellydevice.label = Password protected Shelly Device + thing-type.shelly.shellydevice.description = A password protected or unknown device -thing-type.shelly.shellyunknown.label = Unknown Shelly Device thing-type.shelly.shellyunknown.description = This device is currently not supported thing-type.shelly.shelly1.description = Shelly 1 (Single Relay Switch) thing-type.shelly.shelly1l.description = Shelly 1L (Single Relay Switch, no Neutral required) @@ -91,9 +192,10 @@ thing-type.shelly.shellyix3.description = Shelly ix3 (Activation Device with 3 i thing-type.shelly.shellypludht.description = Shelly Plus HT - Temperature and Humidity Sensor thing-type.shelly.shellyplusrgbw.description = Shelly Plus RGBW PM - LED Controller with Power Meter -# Plus Devices +# plus devices + thing-type.shelly.shellyplus1.description = Shelly Plus 1 (Single Relay Switch) -thing-type.shelly.shellyplus1pm.description = Shelly Plus 1PM - Single Relay Switch with Power Meter +thing-type.shelly.shellyplus1pm.description = Shelly Plus 1PM - Single Relay Switch with Power Meter thing-type.shelly.shellyplus1l.description = Shelly Plus 1L (Single Relay Switch) thing-type.shelly.shellyplus2pm-relay.description = Shelly Plus 2PM - Dual Relay Switch with Power Meter thing-type.shelly.shellyplus2pm-roller.description = Shelly Plus 2PM - Roller Control with Power Meter @@ -110,23 +212,25 @@ thing-type.shelly.shellypluswdus.description = Shelly Wall Dimmer US Device thing-type.shelly.shellyplusdimmer.description = Shelly Plus Dimmer thing-type.shelly.shellyplus10v.description = Shelly Plus Dimmer 10V thing-type.shelly.shellyplusrgbwpm-color.description = Shelly Plus RGBW PM - RGBW Dimmer with Power Meter -thing-type.shelly.shellyplusstrip.description = Shelly Plus Power Strip 4 +thing-type.shelly.shellyplusstrip.description = Shelly Plus Power Strip 4 thing-type.shelly.shellyplusem.description = Shelly Plus EM Power Meter thing-type.shelly.shellyplus3em63.description = Shelly Plus 3EM-63 - 3 Phase Power Meter, 63 Amp thing-type.shelly.shellyblugw.description = Shelly BLU Gateway -# Plus Mini Devices +# plus mini devices + thing-type.shelly.shelly1mini.description = Shelly Plus Mini 1 - Single Relay Switch -thing-type.shelly.shellypmmini.description = Shelly Plus Mini PM - Power Meter -thing-type.shelly.shelly1pmmini.description = Shelly Plus Mini 1PM - Single Relay Switch with Power Meter +thing-type.shelly.shellypmmini.description = Shelly Plus Mini PM - Power Meter +thing-type.shelly.shelly1pmmini.description = Shelly Plus Mini 1PM - Single Relay Switch with Power Meter thing-type.shelly.shellyemmini.description = Shelly Plus Mini EM (with integrated Power Meter) -# Pro Devices +# pro devices + thing-type.shelly.shellypro1.description = Shelly Pro 1 - Single Relay Switch thing-type.shelly.shellypro1pm.description = Shelly Pro 1PM - Single Relay Switch with Power Meter thing-type.shelly.shellypro1cb.description = Shelly Pro 1CB - Single Circuit Breaker with Voltmeter thing-type.shelly.shellypro2.description = Shelly Pro 2 - Dual Relay Switch -thing-type.shelly.shellypro2pm-relay.description= Shelly Pro 2PM - Dual Relay Switch with Power Meter +thing-type.shelly.shellypro2pm-relay.description = Shelly Pro 2PM - Dual Relay Switch with Power Meter thing-type.shelly.shellypro2pm-roller.description = Shelly Pro 2PM - Roller Control with Power Meter thing-type.shelly.shellypro3.description = Shelly Pro 3 - 3xRelay Switch thing-type.shelly.shellypro4pm.description = Shelly Pro 4PM - DIN rail mountable four-channel smart switch with power measurement capabilities (4xRelay Switch with Power Meter) @@ -135,20 +239,23 @@ thing-type.shelly.shellypro3em.description = DIN rail mountable 3-phase power co thing-type.shelly.shellypro3em3ct63.description = DIN rail mountable single or 3-phase energy meter with a combined 63A, 3-phase current transformer thing-type.shelly.shellypro3em400.description = DIN rail mountable 3-phase Energy Meter with LAN, Wi-Fi and Bluetooth. Monitor the consumption of any home appliance -# BLU devices +# blu devices + thing-type.shelly.shellyblubutton.description = Shelly BLU Button 1 / Button Tough: Single button thing-type.shelly.shellybluwallswitch4.description = Shelly BLU Wallswitch 4 thing-type.shelly.shellyblurcbutton4.description = Shelly BLU RC Button 4 -thing-type.shelly.shellybluht.description = Shelly BLU Shelly H&T: Detect Humidity and Temperature, has a single button -thing-type.shelly.shellybludw.description = Shelly BLU Door/Window: Detect Window State (open/closed), Illuminance, Rotation +thing-type.shelly.shellybluht.description = Shelly BLU Shelly H&T: Detect Humidity and Temperature, has a single button +thing-type.shelly.shellybludw.description = Shelly BLU Door/Window: Detect Window State (open/closed), Illuminance, Rotation thing-type.shelly.shellyblumotion.description = Shelly BLU Motion: Detect Motion and Illuminance thing-type.shelly.shellybludistance.description = Shelly BLU Distance: Measure distance using ultrasonic technology thing-type.shelly.shellybluremote.description = Shelly BLU Remote: Smart Multi Channel Remote Control -# Wall Displays +# wall displays + thing-type.shelly.shellywalldisplay.description = Shelly Wall Display with sensors and input/output # thing config - shellydevice + thing-type.config.shelly.deviceIp.label = IP Address thing-type.config.shelly.deviceIp.description = IP Address of the Shelly device thing-type.config.shelly.deviceAddress.label = MAC Address @@ -175,6 +282,7 @@ thing-type.config.shelly.eventsSensorReport.label = Enable Sensor Events thing-type.config.shelly.eventsSensorReport.description = True: Register event URL for sensor updates. # thing config - roller + thing-type.config.shelly.roller.favoriteUP.label = Favorite ID for UP thing-type.config.shelly.roller.favoriteUP.description = Specifies the favorite ID that is used during the command UP on the roller#control channel (use the Shelly App to configure favorites) thing-type.config.shelly.roller.favoriteDOWN.label = Favorite ID for DOWN @@ -183,14 +291,17 @@ thing-type.config.shelly.roller.eventsRoller.label = Roller Events thing-type.config.shelly.roller.eventsRoller.description = Activates the Roller Action URLS # thing config - light + thing-type.config.shelly.light.brightnessAutoOn.label = Brightness Auto-ON thing-type.config.shelly.light.brightnessAutoOn.description = ON: Light is switched on when a brightness value greater than 0 is set; OFF: Brightness is set, but the device is not switched on # thing config - battery + thing-type.config.shelly.battery.lowBattery.label = Low Battery Treshold (%) thing-type.config.shelly.battery.lowBattery.description = An alarm is triggered when the device reports a battery charge lower than this threshold. Default: 20% # channel groups + channel-group-type.shelly.sensorData.label = Sensor Data channel-group-type.shelly.sensorData.description = Data from the various sensors channel-group-type.shelly.batteryStatus.label = Battery Status @@ -255,6 +366,7 @@ channel-group-type.shelly.externalSensors.label = External Sensors channel-group-type.shelly.externalSensors.description = Temperatures from external sensors connected to the optional Addon # channels + channel-type.shelly.outputName.label = Output Name channel-type.shelly.outputName.description = Output/Channel Name as configured in the Shelly App channel-type.shelly.timerAutoOn.label = Auto-ON Timer @@ -434,7 +546,6 @@ channel-type.shelly.sensorExtDigitalInput.description = State of digital input c channel-type.shelly.sensorExtAnalogInput.label = Analog Input channel-type.shelly.sensorExtAnalogInput.description = Percentage of analog input from external sensor channel-type.shelly.motionActive.label = Motion Active -channel-type.shelly.motionActive.description = Indicates if motion sensor is active or within sleep time channel-type.shelly.motionTimestamp.label = Last Motion channel-type.shelly.motionTimestamp.description = Timestamp when last motion was detected channel-type.shelly.sensorValve.label = Valve @@ -461,7 +572,7 @@ channel-type.shelly.sensorState.state.option.fault = Fault channel-type.shelly.sensorState.state.option.unknown = Unknown channel-type.shelly.sensorWakeup.label = Wakeup Reason channel-type.shelly.sensorWakeup.description = Last reason which woke up the device (button/battery/perodic/poweron/sensor/alarm/ext_power) -channel-type.shelly.sensorWakeup.state.option.button= Button +channel-type.shelly.sensorWakeup.state.option.button = Button channel-type.shelly.sensorWakeup.state.option.battery = Battery channel-type.shelly.sensorWakeup.state.option.periodic = Periodic channel-type.shelly.sensorWakeup.state.option.poweron = Power-On @@ -577,11 +688,7 @@ channel-type.shelly.system.brightness.label = Brightness channel-type.shelly.deviceFirmware.label = Device Firmware channel-type.shelly.deviceFirmware.description = Current firmware version of the device -# Shelly Manager -message.manager.invalid-url = Invalid URL or syntax - -message.manager.buttons.ok = OK -message.manager.buttons.abort = Abort +# shelly manager message.manager.action.unknown = Action {0} is unknown message.manager.action.reset-stats = Reset Statistics @@ -634,14 +741,14 @@ message.manager.action.debug-enable = Device Debug will be enabled. Use this fea message.manager.action.debug-disable = Device Debug will be disabled. message.manager.action.debug-confirm = Device Debug was {0}. message.manager.action.getdebug-failed = Unable to get Debug Log: {0} - +message.manager.buttons.ok = OK +message.manager.buttons.abort = Abort message.manager.coiot.multicast-not-supported = Device doesn't support CoIoT Multicast updates.
Make sure to setup openHAB as CoIoT Peer Address ({0}). message.manager.coiot.mode-not-suppored = Device doesn't support request CoIoT Mode ({0}), check product documentation. message.manager.coiot.current-peer = CoIoT Peer Address is currently set to {0}. message.manager.coiot.new-peer = CoIoT mode/address will be set to {0}. message.manager.coiot.mode-mcast = The device starts sending CoIoT updates using IP Multicast.
Please make sure that your network setup supports Multicast routing when devices are on different IP subnets. message.manager.coiot.mode-peer = The device will no longer send IP Multicast CoIoT updates to the network, just to the openHAB host. - message.manager.fwupdate.initiated = Firmware update initiated, device returned status {0} message.manager.fwupdate.confirm = Do not power-off or restart device while updating the firmware! message.manager.fwupdate.info = Update firmware (deviceType={0}, version={1}, URL={2}) @@ -649,3 +756,4 @@ message.manager.fwupdate.failed = Firmware updated failed: {0} message.manager.fwupdate.notfound = Unable to find firmware for device type {0}, version={1} (URL={2}) message.manager.fwupdate.nofile = No firmware files found for device type {0} message.manager.fwupdate.success = Firmware successfully loaded - size={0}, ETag={1}, last modified={2} +message.manager.invalid-url = Invalid URL or syntax diff --git a/bundles/org.openhab.binding.shelly/src/main/resources/OH-INF/thing/shellyGen1_sensor.xml b/bundles/org.openhab.binding.shelly/src/main/resources/OH-INF/thing/shellyGen1_sensor.xml index b28025315213c..8c457c2ac7e5e 100644 --- a/bundles/org.openhab.binding.shelly/src/main/resources/OH-INF/thing/shellyGen1_sensor.xml +++ b/bundles/org.openhab.binding.shelly/src/main/resources/OH-INF/thing/shellyGen1_sensor.xml @@ -414,7 +414,7 @@ Switch - channel-type.shelly.motionActive.description + @text/channel-type.shelly.motionActive.description Contact @@ -493,14 +493,14 @@ Control Level - + String @text/channel-type.shelly.sensorValve.description - Pressure + Valve @@ -566,7 +566,7 @@ Number:Dimensionless @text/channel-type.shelly.sensorExtAnalogInput.description - Humidity + Status @@ -596,19 +596,19 @@ Number:Angle @text/channel-type.shelly.sensorRotationX.description - + Number:Angle @text/channel-type.shelly.sensorRotationY.description - + Number:Angle @text/channel-type.shelly.sensorRotationZ.description - + @@ -638,7 +638,7 @@ Measurement - + diff --git a/bundles/org.openhab.binding.shelly/src/main/resources/OH-INF/thing/shellyGen2_relay.xml b/bundles/org.openhab.binding.shelly/src/main/resources/OH-INF/thing/shellyGen2_relay.xml index fcc9471824f6e..a90bae289bb47 100644 --- a/bundles/org.openhab.binding.shelly/src/main/resources/OH-INF/thing/shellyGen2_relay.xml +++ b/bundles/org.openhab.binding.shelly/src/main/resources/OH-INF/thing/shellyGen2_relay.xml @@ -63,7 +63,7 @@ - + @@ -152,7 +152,7 @@ - @text/thing-type.shelly.shellyplusstripdescription + @text/thing-type.shelly.shellyplusstrip.description ControlDevice @@ -566,7 +566,7 @@ - + @text/thing-type.shelly.shellyplusem.description ElectricMeter @@ -600,7 +600,7 @@ - + @text/thing-type.shelly.shellyplus3em63.description ElectricMeter @@ -611,7 +611,7 @@ - + diff --git a/bundles/org.openhab.binding.shelly/src/main/resources/OH-INF/thing/shellyGen2_sensor.xml b/bundles/org.openhab.binding.shelly/src/main/resources/OH-INF/thing/shellyGen2_sensor.xml index 693cfd7070c84..e4eca4009ec23 100644 --- a/bundles/org.openhab.binding.shelly/src/main/resources/OH-INF/thing/shellyGen2_sensor.xml +++ b/bundles/org.openhab.binding.shelly/src/main/resources/OH-INF/thing/shellyGen2_sensor.xml @@ -6,7 +6,7 @@ - @text/thing-type.shelly.shellypludht.description + @text/thing-type.shelly.shellyplusht.description Sensor Sensor diff --git a/bundles/org.openhab.binding.siemenshvac/README.md b/bundles/org.openhab.binding.siemenshvac/README.md index cecc0c0218cbd..ec4a2122dca8d 100644 --- a/bundles/org.openhab.binding.siemenshvac/README.md +++ b/bundles/org.openhab.binding.siemenshvac/README.md @@ -5,16 +5,16 @@ A typical system is composed of: ![Diagram](doc/Diagram.png) -There's a lot of different HVAC controllers depending on model in lot of different PAC constructors. -Siemens RVS41.813/327 inside a Atlantic Hybrid Duo was used for the development, and is fully supported and tested. +There are many different HVAC controllers depending on model, from many different PAC manufacturers. +A Siemens RVS41.813/327 inside an Atlantic Hybrid Duo was used for development, and is fully supported and tested. -Siemens have a complete set of controller references under the name "Siemens Albatros". -Here is a picture of such device. -You can also find this device in other types of heating systems: boiler or solar based. +Siemens has a complete set of controller references under the name "Siemens Albatros". +Here is a picture of such a device. +You can also find this device in other types of heating systems, such as boiler- or solar-based systems. ![Siemens Albatros Controller](doc/Albatros.jpg) -You will find some information about the OZW672.01 gateway on the Siemens web site: +You can find information about the OZW672.01 gateway on the Siemens website: [OZW 672 Page](https://hit.sbt.siemens.com/RWD/app.aspx?rc=FR&lang=fr&module=Catalog&action=ShowProduct&key=BPZ:OZW672.01) @@ -29,39 +29,39 @@ If you use another language, and find some issues, you can report them on the op ## Discovery -Discovery of Gateway can be done using UPnP. -Just switch off/on your gateway to make it annonce itself on the network. +Discovery of the gateway can be done using UPnP. +Switch the gateway off and on to make it announce itself on the network. The gateway should appear in the Inbox a few minutes after. -Be aware what you will have to modify the password in Gateway parameters just after the discovery to make it work properly. -Be also aware that first initialization is a little long because the binding needs to read all the metadata from the device. +Be aware that you'll need to modify the password in the gateway parameters right after discovery to make it work properly. +Also note that the first initialization can take a little longer because the binding needs to read all metadata from the device. -Currently test was done with the OZW672.x series. -No test was conducted using the OZW772.x series, the code will currently not handle initialization of an OZW772 gateway. -You can request support in the community forum, if you have the gateway model and want it to be supported. +Currently, testing was done with the OZW672.x series. +No tests were conducted with the OZW772.x series; the code currently doesn't handle initialization of an OZW772 gateway. +You can request support in the community forum if you have this gateway model and want it to be supported. -Discovery of HVAC device inside your PAC (controller of type RVS...) have to be done through the Scan button inside the binding. +Discovery of the HVAC device inside your PAC (controller of type RVS...) has to be done through the Scan button inside the binding. Go to the Thing page, click on the "+" button, select the SiemensHVAC binding, and then click Scan. Your device should appear on the page after a few seconds. -Only test in real conditions with RVS41.813/327 have been done, but it should work with all other types as the API interface is standard. +Only tests in real conditions with the RVS41.813/327 have been done, but it should work with other types as the API interface is standard. ## Bridge Configuration Parameter | Required | Default | Description ----------------|----------------|----------------|------------------ -baseUrl | yes | | The address of the OZW672 devices +baseUrl | yes | | The address of the OZW672 device userName | yes | Administrator | The user name to log into the OZW672 -userPass | yes | | The user password to log into the OZW672 +userPassword | yes | | The user password to log into the OZW672 ## Channels -Channels are auto-discovered, you will find them on the RVS things. -They are organized the same way as the LCD screen of your PAC device, by top level menu functionality, and sub-functionalities. +Channels are auto-discovered; you'll find them on the RVS things. +They are organized the same way as on the LCD screen of your PAC device: by top-level menu and sub-functions. Each channel is strongly typed, so for example, for heating mode, openHAB will provide you with a list of choices supported by the device. Channel | Description | Type | Unit | Security Access Level | ReadOnly | Advanced --------------------------------|---------------------------------------------------------------------------------------------------|-------------------------------|----------|-------------------------|-----------|---------- 1724#1725-optgmode-hc1 | Set Operating mode heat circuit 1 (`Automatic`, `Comfort`, `Reduced`, `Protection`) | operating-mode-hc | | | R/W | true -1724#1726-roomtemp-comfsetp-hc1 | Romm temperature comfort setpoint HC1 | room-temp-comfort-setpoint-hc | | | R/W | true +1724#1726-roomtemp-comfsetp-hc1 | Room temperature comfort setpoint HC1 | room-temp-comfort-setpoint-hc | | | R/W | true ## Full Example @@ -83,11 +83,11 @@ Items file `.items` ```java Contact Boiler_State_Pump_HWSb "HWS Pump State [%s]" { channel = "siemenshvac:rvs41-813-327:ozw672_FF00F445:00770000756A:2237#2259-ppechargeecs" } Number Boiler_State_HWS "HWS State [%s]" { channel = "siemenshvac:rvs41-813-327:ozw672_FF00F445:00770000756A:2032#2035-etat-ecs" } -Number:Temperature Flow_Temperature_Real "Flow Temparature Real [%.1f °C]" { channel = "siemenshvac:rvs41-813-327:ozw672_FF00F445:00770000756A:2237#2248-valreelletempdep-cc1" } +Number:Temperature Flow_Temperature_Real "Flow Temperature Real [%.1f °C]" { channel = "siemenshvac:rvs41-813-327:ozw672_FF00F445:00770000756A:2237#2248-valreelletempdep-cc1" } Number:Temperature Flow_Temperature_Setpoint "Flow Temperature Setpoint [%.1f °C]" { channel = "siemenshvac:rvs41-813-327:ozw672_FF00F445:00770000756A:2237#2249-constdepresultcc1" } Number Hour_fct_HWS "HWS Hour function" { channel = "siemenshvac:rvs41-813-327:ozw672_FF00F445:00770000756A:2237#2263-heuresfoncpompeecs" } Number Nb_Start_HWS "HWS Number of start [%.1f]" { channel = "siemenshvac:rvs41-813-327:ozw672_FF00F445:00770000756A:2237#2266-comptdemarresel-ecs" } -Number:Temperature Thermostat_Temperature "Thermostat tempeature [%.1f °C]" { channel = "siemenshvac:rvs41-813-327:ozw672_FF00F445:00770000756A:2237#2246-tambact-cc1" } +Number:Temperature Thermostat_Temperature "Thermostat temperature [%.1f °C]" { channel = "siemenshvac:rvs41-813-327:ozw672_FF00F445:00770000756A:2237#2246-tambact-cc1" } Number:Temperature Thermostat_Setpoint "Thermostat setpoint [%.1f °C]" { channel = "siemenshvac:rvs41-813-327:ozw672_FF00F445:00770000756A:1724#1726-consconfort-ta-cc1" } Number Heat_Mode "Heat mode [%s]" { channel = "siemenshvac:rvs41-813-327:ozw672_FF00F445:00770000756A:1724#1725-regime-cc1" } diff --git a/bundles/org.openhab.binding.siemenshvac/src/main/resources/OH-INF/i18n/siemenshvac.properties b/bundles/org.openhab.binding.siemenshvac/src/main/resources/OH-INF/i18n/siemenshvac.properties index 3703557f28d68..6c3c5b6e6a581 100644 --- a/bundles/org.openhab.binding.siemenshvac/src/main/resources/OH-INF/i18n/siemenshvac.properties +++ b/bundles/org.openhab.binding.siemenshvac/src/main/resources/OH-INF/i18n/siemenshvac.properties @@ -6,16 +6,16 @@ addon.siemenshvac.description = This is the binding for SiemensHvac. # thing types thing-type.siemenshvac.ozw.label = OZW IP Gateway -thing-type.siemenshvac.ozw.description = This is a OZW IP interface +thing-type.siemenshvac.ozw.description = This is an OZW IP interface # thing types config thing-type.config.siemenshvac.ozw.baseUrl.label = Base URL -thing-type.config.siemenshvac.ozw.baseUrl.description = The URL of the Siemens Hvac IP gateway. Must be in format http://hostname/ or https://hostname/. Don't forget the trailing '/' +thing-type.config.siemenshvac.ozw.baseUrl.description = The URL of the Siemens HVAC IP gateway. Must be in the format http://hostname/ or https://hostname/. Don't forget the trailing '/'. thing-type.config.siemenshvac.ozw.userName.label = User Name -thing-type.config.siemenshvac.ozw.userName.description = User name of the Siemens Hvac gateway +thing-type.config.siemenshvac.ozw.userName.description = User name of the Siemens HVAC gateway thing-type.config.siemenshvac.ozw.userPassword.label = User Password -thing-type.config.siemenshvac.ozw.userPassword.description = User password of the Siemens Hvac gateway +thing-type.config.siemenshvac.ozw.userPassword.description = User password of the Siemens HVAC gateway # offline message diff --git a/bundles/org.openhab.binding.siemenshvac/src/main/resources/OH-INF/thing/ozw.xml b/bundles/org.openhab.binding.siemenshvac/src/main/resources/OH-INF/thing/ozw.xml index c5831be56922a..ddc2cbb10bbf4 100644 --- a/bundles/org.openhab.binding.siemenshvac/src/main/resources/OH-INF/thing/ozw.xml +++ b/bundles/org.openhab.binding.siemenshvac/src/main/resources/OH-INF/thing/ozw.xml @@ -7,25 +7,26 @@ - This is a OZW IP interface + This is an OZW IP interface NetworkAppliance url - The URL of the Siemens Hvac IP gateway. Must be in format http://hostname/ or https://hostname/. Don't - forget the trailing '/' + The URL of the Siemens HVAC IP gateway. Must be in the format http://hostname/ or https://hostname/. + Don't + forget the trailing '/'. true - User name of the Siemens Hvac gateway + User name of the Siemens HVAC gateway false Administrator password - User password of the Siemens Hvac gateway + User password of the Siemens HVAC gateway false password diff --git a/bundles/org.openhab.binding.siemensrds/README.md b/bundles/org.openhab.binding.siemensrds/README.md index 09181e8cf7950..2ee94f1f434da 100644 --- a/bundles/org.openhab.binding.siemensrds/README.md +++ b/bundles/org.openhab.binding.siemensrds/README.md @@ -6,11 +6,11 @@ The Siemens RDS binding provides the infrastructure for connecting openHAB to th ## Supported Things -The binding supports two types of Thing as follows.. +The binding supports two types of Thing as follows: | Thing Type | Description | | -------------------- | ------------------------------------------------------------------------------------------------------------------------ | -| Climatix IC Account | User account on the Siemens Climatix IC cloud server (bridge) to connect with respective Smart Thermostat Things below.. | +| Climatix IC Account | User account on the Siemens Climatix IC cloud server (bridge) to connect with respective Smart Thermostat Things below. | | RDS Smart Thermostat | Siemens RDS model Smart Thermostat devices | ## Discovery @@ -108,10 +108,10 @@ Number:Dimensionless Upstairs_RoomHumidity "Room Humidity" { channel="siemensrds String Upstairs_RoomAirQuality "Room Air Quality" { channel="siemensrds:rds:mybridgename:myupstairs:roomAirQuality" } Number:Temperature Upstairs_OutsideTemperature "Outside Temperature" { channel="siemensrds:rds:mybridgename:myupstairs:outsideTemperature" } String Upstairs_EnergySavingsLevel "Energy Savings Level" { channel="siemensrds:rds:mybridgename:myupstairs:energySavingsLevel" } -Switch Upstairs_OccupancModePresent "Occupancy Mode Present" { channel="siemensrds:rds:mybridgename:myupstairs:occupancyModePresent" } +Switch Upstairs_OccupancyModePresent "Occupancy Mode Present" { channel="siemensrds:rds:mybridgename:myupstairs:occupancyModePresent" } Switch Upstairs_ThermostatAutoMode "Thermostat Auto Mode" { channel="siemensrds:rds:mybridgename:myupstairs:thermostatAutoMode" } -Switch Upstairs_HotWaterAutoMode "Hotwater Auto Mode" { channel="siemensrds:rds:mybridgename:myupstairs:hotWaterAutoMode" } -Switch Upstairs_HotWaterOutputState "Hotwater Output State" { channel="siemensrds:rds:mybridgename:myupstairs:hotWaterOutputState" } +Switch Upstairs_HotWaterAutoMode "Hot Water Auto Mode" { channel="siemensrds:rds:mybridgename:myupstairs:hotWaterAutoMode" } +Switch Upstairs_HotWaterOutputState "Hot Water Output State" { channel="siemensrds:rds:mybridgename:myupstairs:hotWaterOutputState" } ``` ### `demo.sitemap` File diff --git a/bundles/org.openhab.binding.siemensrds/src/main/resources/OH-INF/i18n/siemensrds.properties b/bundles/org.openhab.binding.siemensrds/src/main/resources/OH-INF/i18n/siemensrds.properties index 36af7119dd1e6..9fbf7f99bb56b 100644 --- a/bundles/org.openhab.binding.siemensrds/src/main/resources/OH-INF/i18n/siemensrds.properties +++ b/bundles/org.openhab.binding.siemensrds/src/main/resources/OH-INF/i18n/siemensrds.properties @@ -30,7 +30,7 @@ thing-type.siemensrds.rds.channel.targetTemperature.description = Target tempera thing-type.siemensrds.rds.channel.thermostatAutoMode.label = Thermostat Auto Mode thing-type.siemensrds.rds.channel.thermostatAutoMode.description = The thermostat is in Automatic Mode (Off = Manual Mode) thing-type.siemensrds.rds.channel.thermostatOutputState.label = Thermostat Output State -thing-type.siemensrds.rds.channel.thermostatOutputState.description = The output state of the the thermostat (Heating, Cooling) +thing-type.siemensrds.rds.channel.thermostatOutputState.description = The output state of the thermostat (Heating, Cooling) # thing types config @@ -49,9 +49,9 @@ thing-type.config.siemensrds.rds.plantId.description = The Plant Id of the therm channel-type.siemensrds.energySavingsLevel.label = Energy Savings Level channel-type.siemensrds.energySavingsLevel.description = Energy savings level (Green Leaf) -channel-type.siemensrds.hotWaterAutoMode.label = Hotwater Auto Mode +channel-type.siemensrds.hotWaterAutoMode.label = Hot Water Auto Mode channel-type.siemensrds.hotWaterAutoMode.description = The domestic water heating is in Automatic Mode (Off = Manual Mode) -channel-type.siemensrds.hotWaterOutputState.label = Hotwater Output State +channel-type.siemensrds.hotWaterOutputState.label = Hot Water Output State channel-type.siemensrds.hotWaterOutputState.description = The On/Off state of the domestic water heating channel-type.siemensrds.occupancyModePresent.label = Occupancy Mode Present channel-type.siemensrds.occupancyModePresent.description = The thermostat is in Present Occupancy Mode (Off = Away Mode) @@ -66,4 +66,4 @@ channel-type.siemensrds.temperature.description = Measured temperature value channel-type.siemensrds.thermostatAutoMode.label = Thermostat Auto Mode channel-type.siemensrds.thermostatAutoMode.description = The thermostat is in Automatic Mode (Off = Manual Mode) channel-type.siemensrds.thermostatOutputState.label = Thermostat Output State -channel-type.siemensrds.thermostatOutputState.description = The output state of the the thermostat (Heating, Cooling) +channel-type.siemensrds.thermostatOutputState.description = The output state of the thermostat (Heating, Cooling) diff --git a/bundles/org.openhab.binding.siemensrds/src/main/resources/OH-INF/thing/thing-types.xml b/bundles/org.openhab.binding.siemensrds/src/main/resources/OH-INF/thing/thing-types.xml index 19b2511cbf0a8..d8392d461149c 100644 --- a/bundles/org.openhab.binding.siemensrds/src/main/resources/OH-INF/thing/thing-types.xml +++ b/bundles/org.openhab.binding.siemensrds/src/main/resources/OH-INF/thing/thing-types.xml @@ -66,7 +66,7 @@ - The output state of the the thermostat (Heating, Cooling) + The output state of the thermostat (Heating, Cooling) @@ -153,7 +153,7 @@ String - The output state of the the thermostat (Heating, Cooling) + The output state of the thermostat (Heating, Cooling) fire Status @@ -163,7 +163,7 @@ - Number:Dimensionless + Number:Dimensionless Measured humidity value humidity @@ -222,7 +222,7 @@ Switch - + The domestic water heating is in Automatic Mode (Off = Manual Mode) Switch @@ -233,7 +233,7 @@ Switch - + The On/Off state of the domestic water heating Switch diff --git a/bundles/org.openhab.binding.silvercrestwifisocket/README.md b/bundles/org.openhab.binding.silvercrestwifisocket/README.md index 21757f6bb34d0..3ce505dc7c019 100644 --- a/bundles/org.openhab.binding.silvercrestwifisocket/README.md +++ b/bundles/org.openhab.binding.silvercrestwifisocket/README.md @@ -1,29 +1,29 @@ -# Silvercrest Wifi Plug Binding +# Silvercrest WiFi Plug Binding -This binding integrates the Silvercrest Wifi Socket SWS-A1 sold by Lidl and the EasyHome Wifi Socket DIS-124 sold by Aldi. +This binding integrates the Silvercrest WiFi Socket SWS-A1 sold by Lidl and the EasyHome WiFi Socket DIS-124 sold by Aldi. ## Supported Things -- Silvercrest Wifi Socket SWS-A1 - [(Owner Manual)](https://www.lidl-service.com/static/118127777/103043_FI.pdf) -- Tested with firmware version: 1.41, 1.60, 1.70 -- EasyHome Wifi Socket DIS-124 +- Silvercrest WiFi Socket SWS-A1 - [(Owner Manual)](https://www.lidl-service.com/static/118127777/103043_FI.pdf) -- Tested with firmware version: 1.41, 1.60, 1.70 +- EasyHome WiFi Socket DIS-124 ## Discovery -The Discovery of Wifi Sockets is always running in the background. -If a command is sent to wifi socket using the Android/iOS app or if the physical button in the device is pressed, the device will be recognized and will be placed in the Inbox. +The discovery of WiFi Sockets is always running in the background. +If a command is sent to the WiFi socket using the Android/iOS app or if the physical button on the device is pressed, the device will be recognized and placed in the Inbox. ## Binding Configuration The binding does not require any special configuration. -The Wifi Socket should be connected to the same wifi network. +The WiFi Socket should be connected to the same WiFi network. ## Thing Configuration -To configure a Wifi Socket manually the mac address and the vendor is required. -You can check the Wifi Socket mac address in your router or using some mobile app. +To configure a WiFi Socket manually, the MAC address and the vendor are required. +You can check the WiFi Socket MAC address in your router or using a mobile app. Supported vendors are either Silvercrest (Lidl) or EasyHome (Aldi). -Wifi Socket thing parameters: +WiFi Socket Thing parameters: | Parameter ID | Parameter Type | Mandatory | Description | Default | | -------------- | -------------- | --------- | ----------------------------------------------------------------------------- | ---------------- | @@ -40,8 +40,8 @@ Thing silvercrestwifisocket:wifiSocket:lamp [ macAddress="ACCF23343C50", vendor= ## Channels -The Silvercrest Wifi Socket support the following channel: +The Silvercrest WiFi Socket supports the following channel: -| Channel Type ID | Item Type | Description | -| --------------- | --------- | ------------------- | -| switch | Switch | Wifi Socket Switch. | +| Channel Type ID | Item Type | Description | +| --------------- | --------- | -------------------- | +| switch | Switch | WiFi Socket Switch. | diff --git a/bundles/org.openhab.binding.silvercrestwifisocket/src/main/resources/OH-INF/i18n/silvercrestwifisocket.properties b/bundles/org.openhab.binding.silvercrestwifisocket/src/main/resources/OH-INF/i18n/silvercrestwifisocket.properties index 7c530debce58e..666fc43a7c55b 100644 --- a/bundles/org.openhab.binding.silvercrestwifisocket/src/main/resources/OH-INF/i18n/silvercrestwifisocket.properties +++ b/bundles/org.openhab.binding.silvercrestwifisocket/src/main/resources/OH-INF/i18n/silvercrestwifisocket.properties @@ -5,13 +5,13 @@ addon.silvercrestwifisocket.description = This is the binding for Silvercrest Wi # thing types -thing-type.silvercrestwifisocket.wifiSocket.label = Silvercrest Wifi Socket -thing-type.silvercrestwifisocket.wifiSocket.description = Supports Silvercrest Wifi Socket SWS-A1. +thing-type.silvercrestwifisocket.wifiSocket.label = Silvercrest WiFi Socket +thing-type.silvercrestwifisocket.wifiSocket.description = Supports Silvercrest WiFi Socket SWS-A1. # thing types config thing-type.config.silvercrestwifisocket.wifiSocket.hostAddress.label = Host Address -thing-type.config.silvercrestwifisocket.wifiSocket.hostAddress.description = The socket Host address. The binding is able to discover the host address. +thing-type.config.silvercrestwifisocket.wifiSocket.hostAddress.description = The socket host address. The binding is able to discover the host address. thing-type.config.silvercrestwifisocket.wifiSocket.macAddress.label = MAC Address thing-type.config.silvercrestwifisocket.wifiSocket.macAddress.description = The socket MAC address. thing-type.config.silvercrestwifisocket.wifiSocket.updateInterval.label = Update Interval @@ -24,4 +24,4 @@ thing-type.config.silvercrestwifisocket.wifiSocket.vendor.option.ALDI_EASYHOME = # channel types channel-type.silvercrestwifisocket.switch.label = Socket Switch -channel-type.silvercrestwifisocket.switch.description = Silvercrest Wifi Socket Switch to turn on or off. +channel-type.silvercrestwifisocket.switch.description = Silvercrest WiFi socket switch to turn on or off. diff --git a/bundles/org.openhab.binding.silvercrestwifisocket/src/main/resources/OH-INF/thing/thing-types.xml b/bundles/org.openhab.binding.silvercrestwifisocket/src/main/resources/OH-INF/thing/thing-types.xml index 1603fed8cc462..30a1a640e819b 100644 --- a/bundles/org.openhab.binding.silvercrestwifisocket/src/main/resources/OH-INF/thing/thing-types.xml +++ b/bundles/org.openhab.binding.silvercrestwifisocket/src/main/resources/OH-INF/thing/thing-types.xml @@ -6,8 +6,8 @@ - - Supports Silvercrest Wifi Socket SWS-A1. + + Supports Silvercrest WiFi Socket SWS-A1. PowerOutlet @@ -21,7 +21,7 @@ network-address - The socket Host address. The binding is able to discover the host address. + The socket host address. The binding is able to discover the host address. @@ -43,7 +43,7 @@ Switch - Silvercrest Wifi Socket Switch to turn on or off. + Silvercrest WiFi socket switch to turn on or off. Switch Power diff --git a/bundles/org.openhab.binding.sinope/README.md b/bundles/org.openhab.binding.sinope/README.md index 01e8a3172eaa8..366d586442b71 100644 --- a/bundles/org.openhab.binding.sinope/README.md +++ b/bundles/org.openhab.binding.sinope/README.md @@ -13,20 +13,20 @@ Right now, only the thermostat devices (3000W and 4000W) (TH1120RF) are supporte ## Discovery The Sinopé Gateway (bridge) discovery is not supported for now. -It will be added in future release. -The Sinopé devices discovery is implemented. +It will be added in a future release. +The Sinopé device discovery is implemented. ## Prerequisites ### Bridge or the Sinopé Gateway -First, you will need to get your API key from your Sinopé gateway. +First, you will need to get your API key from your Sinopé Gateway. Grab the latest release of the [sinope-core library]() On Windows, you can run the SinopeProtocol.exe (in the zip release). -The gateway parameter is written on the back of the SinopéGateway (example, 002f-c2c2-dd88-aaaa). -The addr parameter is the IP given to your gateway. +The gateway parameter is written on the back of the Sinopé Gateway (e.g., 002f-c2c2-dd88-aaaa). +The addr parameter is the IP address given to your gateway. ```shell SinopeProtocol.exe -addr [YOUR_GATEWAY_IP_OR_HOSTNAME] -gateway [YOUR_GATEWAY_ID] -login @@ -45,21 +45,21 @@ Your api Key is: 0x12 0x57 0x55 0xD5 0xCD 0x4A 0xD5 0x33 ### Thing Discovery You can use the same procedure to discover each device you want to use. -You will need to provide the api key from the previous step. -If you use spaces, please, use double quotes to pass the api key (i.e. "0x12 0x57 0x55 0xD5 0xCD 0x4A 0xD5 0x33") +You will need to provide the API key from the previous step. +If you use spaces, please use double quotes to pass the API key (i.e., "0x12 0x57 0x55 0xD5 0xCD 0x4A 0xD5 0x33"). Use the device procedure to discover it. For a thermostat, you need to push both buttons. -The application will loop forever, press ctrl-c to exit. +The application will loop forever; press Ctrl+C to exit. ```shell SinopeProtocol.exe -addr [YOUR_GATEWAY_IP_OR_HOSTNAME] -gateway [YOUR_GATEWAY_ID] -api "[YOUR_API_KEY]" -discover It is now time to push both buttons on your device! -Press crtl-c to exit! +Press Ctrl+C to exit! Your device id is: 0x00 0x00 0x35 0x86 It is now time to push both buttons on your device! -Press crtl-c to exit! +Press Ctrl+C to exit! ``` On other operating systems, using only a JVM, you can invoke directly the java command: @@ -68,16 +68,16 @@ On other operating systems, using only a JVM, you can invoke directly the java c java -jar core-0.0.3-shaded.jar -addr [YOUR_GATEWAY_IP_OR_HOSTNAME] -gateway [YOUR_GATEWAY_ID] -api "[YOUR_API_KEY]" -discover It is now time to push both buttons on your device! -Press crtl-c to exit! +Press Ctrl+C to exit! Your device id is: 0x00 0x00 0x35 0x86 It is now time to push both buttons on your device! -Press crtl-c to exit! +Press Ctrl+C to exit! ``` ## Thing Configuration The Sinopé bridge requires the address, the gateway id and the API key in order for the binding to know where and how to access it. -In the thing file, this looks e.g. like +In the Thing file, this looks e.g. like ```java Bridge sinope:gateway:home [ hostname="[YOUR_GATEWAY_IP_OR_HOSTNAME]", gatewayId="[YOUR_GATEWAY_ID]", apiKey="0x1F 0x5D 0xC8 0xD5 0xCD 0x3A 0xD7 0x23"] diff --git a/bundles/org.openhab.binding.sinope/src/main/resources/OH-INF/i18n/sinope.properties b/bundles/org.openhab.binding.sinope/src/main/resources/OH-INF/i18n/sinope.properties index 65fe0c17e43ad..bc3f203292a4b 100644 --- a/bundles/org.openhab.binding.sinope/src/main/resources/OH-INF/i18n/sinope.properties +++ b/bundles/org.openhab.binding.sinope/src/main/resources/OH-INF/i18n/sinope.properties @@ -1,4 +1,51 @@ -config-status.error.missing-host-configuration=No host for the sinopé gateway has been provided. -config-status.error.missing-port-configuration=No port for the sinopé gateway has been provided. -invalid-gateway-id-configuration=Missing or invalid gateway id. -invalid-api-key-configuration=Missing or invalid API key. +# add-on + +addon.sinope.name = Sinopé Binding +addon.sinope.description = This is the binding for Sinopé. Sinopé provides high-quality, energy-efficient products and with innovative technology solutions that will meet customer's current and future needs: low and high voltage thermostats, light switches, water leak detectors and load controllers. + +# thing types + +thing-type.sinope.gateway.label = Sinopé Gateway +thing-type.sinope.gateway.description = A Sinopé Gateway +thing-type.sinope.thermostat.label = Sinopé Thermostat +thing-type.sinope.thermostat.description = Sinopé Thermostat control + +# thing types config + +thing-type.config.sinope.gateway.apiKey.label = API Key +thing-type.config.sinope.gateway.apiKey.description = Use sinope-core application to generate your api key +thing-type.config.sinope.gateway.gatewayId.label = Gateway ID +thing-type.config.sinope.gateway.gatewayId.description = The Sinopé gateway ID (as printed on the back-side, e.g. "xxxx xxxx xxxx xxxx") +thing-type.config.sinope.gateway.hostname.label = Hostname +thing-type.config.sinope.gateway.hostname.description = Hostname of the Sinopé Gateway +thing-type.config.sinope.gateway.port.label = Port +thing-type.config.sinope.gateway.port.description = The port that the Sinopé Gateway listens on +thing-type.config.sinope.gateway.refresh.label = Refresh Interval +thing-type.config.sinope.gateway.refresh.description = The number of seconds between fetches from the Sinopé Gateway. +thing-type.config.sinope.thermostat.deviceId.label = Thermostat Device ID + +# channel types + +channel-type.sinope.heatingLevel.label = Heat Level +channel-type.sinope.heatingLevel.description = Heating Level +channel-type.sinope.insideTemperature.label = Temperature +channel-type.sinope.insideTemperature.description = Current inside temperature +channel-type.sinope.outsideTemperature.label = Temperature +channel-type.sinope.outsideTemperature.description = Current outside temperature +channel-type.sinope.setpointMode.label = Setpoint Mode +channel-type.sinope.setpointMode.description = Thermostat setpoint mode +channel-type.sinope.setpointMode.state.option.0 = Off +channel-type.sinope.setpointMode.state.option.1 = Freeze Protect +channel-type.sinope.setpointMode.state.option.2 = Manual +channel-type.sinope.setpointMode.state.option.3 = Auto +channel-type.sinope.setpointMode.state.option.5 = Away +channel-type.sinope.setpointMode.state.option.129 = Bypass Freeze Protect +channel-type.sinope.setpointMode.state.option.131 = Bypass Auto +channel-type.sinope.setpointMode.state.option.133 = Bypass Away +channel-type.sinope.setpointTemperature.label = Temperature +channel-type.sinope.setpointTemperature.description = Setpoint temperature + +config-status.error.missing-host-configuration = No host for the sinopé gateway has been provided. +config-status.error.missing-port-configuration = No port for the sinopé gateway has been provided. +invalid-gateway-id-configuration = Missing or invalid gateway id. +invalid-api-key-configuration = Missing or invalid API key. diff --git a/bundles/org.openhab.binding.sleepiq/README.md b/bundles/org.openhab.binding.sleepiq/README.md index be1302c9fd3f8..cefe0294dc3f3 100644 --- a/bundles/org.openhab.binding.sleepiq/README.md +++ b/bundles/org.openhab.binding.sleepiq/README.md @@ -17,11 +17,11 @@ Currently, only dual-chamber beds are supported by this binding. ## Discovery -The SleepIQ cloud thing must be added manually with the username and password used to register with the service. +The SleepIQ cloud Thing must be added manually with the username and password used to register with the service. After that, beds are discovered automatically by querying the service. If the bed has a foundation, it will be auto-discovered by the binding. If a foundation is discovered, the channels for controlling presets, position and outlets can be operated. -The thing properties will show whether or not a foundation is installed. +The Thing properties will show whether or not a foundation is installed. ## Binding Configuration @@ -106,7 +106,7 @@ Here is a sample item configuration: ```java Switch MasterBR_SleepIQ_InBed_Alice "In Bed [%s]" { channel="sleepiq:dualBed:1:master:left#inBed" } Number MasterBR_SleepIQ_SleepNumber_Alice "Sleep Number [%s]" { channel="sleepiq:dualBed:1:master:left#sleepNumber" } -Number:Time MasterBR_SleepIQ_SleepGoal_Alice "Sleep Goal [%d min]" { channel="sleepiq:dualBed:1:master:left#sleepGoalMinutes" +Number:Time MasterBR_SleepIQ_SleepGoal_Alice "Sleep Goal [%d min]" { channel="sleepiq:dualBed:1:master:left#sleepGoalMinutes" } Number MasterBR_SleepIQ_Pressure_Alice "Pressure [%s]" { channel="sleepiq:dualBed:1:master:left#pressure" } Switch MasterBR_SleepIQ_PrivacyMode_Alice "Privacy Mode [%s]" { channel="sleepiq:dualBed:1:master:left#privacyMode" } String MasterBR_SleepIQ_LastLink_Alice "Last Update [%s]" { channel="sleepiq:dualBed:1:master:left#lastLink" } @@ -132,8 +132,8 @@ Switch MasterBR_SleepIQ_FoundationNightLight_Alice "Night Light [%d]" Switch MasterBR_SleepIQ_InBed_Bob "In Bed [%s]" { channel="sleepiq:dualBed:1:master:right#inBed" } Number MasterBR_SleepIQ_SleepNumber_Bob "Sleep Number [%s]" { channel="sleepiq:dualBed:1:master:right#sleepNumber" } -Number MasterBR_SleepIQ_SleepGoal_Bob "Sleep Goal [%d min]" { channel="sleepiq:dualBed:1:master:left#sleepGoalMinutes" -Number:Time MasterBR_SleepIQ_Pressure_Bob "Pressure [%s]" { channel="sleepiq:dualBed:1:master:right#pressure" } +Number:Time MasterBR_SleepIQ_SleepGoal_Bob "Sleep Goal [%d min]" { channel="sleepiq:dualBed:1:master:right#sleepGoalMinutes" } +Number MasterBR_SleepIQ_Pressure_Bob "Pressure [%s]" { channel="sleepiq:dualBed:1:master:right#pressure" } Switch MasterBR_SleepIQ_PrivacyMode_Bob "Privacy Mode [%s]" { channel="sleepiq:dualBed:1:master:right#privacyMode" } String MasterBR_SleepIQ_LastLink_Bob "Last Update [%s]" { channel="sleepiq:dualBed:1:master:right#lastLink" } Number MasterBR_SleepIQ_AlertId_Bob "Alert ID [%s]" { channel="sleepiq:dualBed:1:master:right#alertId" } diff --git a/bundles/org.openhab.binding.smaenergymeter/README.md b/bundles/org.openhab.binding.smaenergymeter/README.md index c22d7bf485ae1..3a2718bde0a57 100644 --- a/bundles/org.openhab.binding.smaenergymeter/README.md +++ b/bundles/org.openhab.binding.smaenergymeter/README.md @@ -27,7 +27,7 @@ Optionally, a refresh interval (in seconds) can be defined. | `port` | Port | Port number used by meter. | no | 9522 | | `pollingPeriod` | Polling Period | Polling period used to publish meter reading (in seconds). | no | 30 | -The polling period parameter is used to trigger readout of meter. In case if two consecutive readout attempts fail thing will report offline status. +The polling period parameter is used to trigger readout of meter. In case if two consecutive readout attempts fail Thing will report offline status. ## Channels diff --git a/bundles/org.openhab.binding.smartmeter/README.md b/bundles/org.openhab.binding.smartmeter/README.md index f511b352bfc88..16eb0ac632f2f 100644 --- a/bundles/org.openhab.binding.smartmeter/README.md +++ b/bundles/org.openhab.binding.smartmeter/README.md @@ -12,15 +12,15 @@ Discovery is not available, as the binding only reads from serial ports. ## Thing Configuration -The smartmeter thing requires the serial port where the meter device is connected and optionally a refresh interval. +The smartmeter Thing requires the serial port where the meter device is connected and optionally a refresh interval. | Parameter | Name | Description | Required | Default | | --------------------- | ------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------- | ------- | | `port` | The serial port to connect to | URL to use for reading SML data, e.g. `/dev/ttyUSB0`, `rfc2217://xxx.xxx.xxx.xxx:3002` | yes | | | `refresh` | The refresh interval in seconds | Defines at which interval the values of the meter device shall be read | no | 20 | -| `mode` | The protocol mode to use | Can be `SML` (PUSH mode), `ABC` (PULL) or `D` (PUSH) | no | `SML` | -| `baudrateChangeDelay` | Delay of baudrate change in ms | USB to serial converters often require a delay of up to 250ms after the ACK before changing baudrate (only relevant for 'C' mode) | no | 0 | -| `baudrate` | (initial) Baudrate | The baudrate of the serial port. If set to `AUTO`, it will be negotiated with the meter. The default is `300` baud for modes A, B, and C and `2400` baud for mode D, and `9600` baud for SML. | no | `AUTO` | +| `mode` | The protocol mode to use | Can be `SML` (PUSH mode), `ABC` (PULL), or `D` (PUSH) | no | `SML` | +| `baudrateChangeDelay` | Delay of baudrate change in ms | USB to serial converters often require a delay of up to 250ms after the ACK before changing the baudrate (only relevant for mode C) | no | 0 | +| `baudrate` | (initial) Baudrate | The baudrate of the serial port. If set to `AUTO`, it will be negotiated with the meter. The default is `300` baud for modes A, B, and C; `2400` baud for mode D; and `9600` baud for SML. | no | `AUTO` | ## Channels diff --git a/bundles/org.openhab.binding.smartmeter/src/main/resources/OH-INF/i18n/smartmeter.properties b/bundles/org.openhab.binding.smartmeter/src/main/resources/OH-INF/i18n/smartmeter.properties index adcfa059e3101..85676075c0568 100644 --- a/bundles/org.openhab.binding.smartmeter/src/main/resources/OH-INF/i18n/smartmeter.properties +++ b/bundles/org.openhab.binding.smartmeter/src/main/resources/OH-INF/i18n/smartmeter.properties @@ -17,8 +17,11 @@ thing-type.config.smartmeter.meter.baudrateChangeDelay.description = USB to seri thing-type.config.smartmeter.meter.conformity.label = Conform to Specific Standard Semantics thing-type.config.smartmeter.meter.conformity.description = Reserved to conform to special semantics specified in specific standards. EDL_FNN: Currently applies the energy direction to WATT channels (which are absolute values) (see fnn lastenheft edl) thing-type.config.smartmeter.meter.mode.label = The Protocol Mode to Use -thing-type.config.smartmeter.meter.mode.description = Can be SML (PUSH mode), Mode A,B,C (PULL)or D (PUSH) +thing-type.config.smartmeter.meter.mode.description = Can be SML (PUSH mode), Mode A, B, C (PULL), or D (PUSH) thing-type.config.smartmeter.meter.port.label = Serial Port thing-type.config.smartmeter.meter.port.description = The device serial port (e.g. /dev/tty0 or COM1) thing-type.config.smartmeter.meter.refresh.label = Refresh Rate thing-type.config.smartmeter.meter.refresh.description = Refresh rate in seconds + +channel-type.config.smartmeter.obis.negate.label = Negate Property +channel-type.config.smartmeter.obis.negate.description = e.g. 1-0_1-8-0:5:1:status //negate if status(1-0_1-8-0) and 2^5 = 1 diff --git a/bundles/org.openhab.binding.smartmeter/src/main/resources/OH-INF/thing/thing-types.xml b/bundles/org.openhab.binding.smartmeter/src/main/resources/OH-INF/thing/thing-types.xml index 0a2c2b4537912..120e24eb3d20d 100644 --- a/bundles/org.openhab.binding.smartmeter/src/main/resources/OH-INF/thing/thing-types.xml +++ b/bundles/org.openhab.binding.smartmeter/src/main/resources/OH-INF/thing/thing-types.xml @@ -42,7 +42,7 @@ true SML - Can be SML (PUSH mode), Mode A,B,C (PULL)or D (PUSH) + Can be SML (PUSH mode), Mode A, B, C (PULL), or D (PUSH) true diff --git a/bundles/org.openhab.binding.smartthings/README.md b/bundles/org.openhab.binding.smartthings/README.md index 26ae64a178c06..e7ddcdd5050a8 100644 --- a/bundles/org.openhab.binding.smartthings/README.md +++ b/bundles/org.openhab.binding.smartthings/README.md @@ -2,29 +2,30 @@ This binding integrates the Samsung Smartthings Hub into openHAB. -## Supported things +## Supported Things -This binding supports most of the Smartthings devices that are defined in the [Smartthings Capabilities list](https://developer.smartthings.com/docs/devices/capabilities/capabilities-reference/). +This binding supports most of the SmartThings devices that are defined in the [SmartThings Capabilities list](https://developer.smartthings.com/docs/devices/capabilities/capabilities-reference/). If you find a device that doesn't work [follow these instructions](doc/Troubleshooting.md) to collect the required data so it can be added in a future release. ## Discovery Discovery allows openHAB to examine a binding and automatically find the Things available on that binding. -Discovery is supported by the Smartthings binding and is run automatically on startup. +Discovery is supported by the SmartThings binding and is run automatically on startup. -## Smartthings Configuration +## SmartThings Configuration -Prior to running the binding the Smartthings hub must have the required openHAB software installed. [Follow these instructions](doc/SmartthingsInstallation.md) +Prior to running the binding the SmartThings hub must have the required openHAB software installed. [Follow these instructions](doc/SmartthingsInstallation.md) **The binding will not work until this part has been completed, do not skip this part of the setup.** ## openHAB Configuration -This binding is an openHAB binding and uses the Bridge / Thing design with the Smartthings Hub being the Bridge and the controlled modules being the Things. The following definitions are specified in the .things file. +This binding is an openHAB binding and uses the Bridge / Thing design with the SmartThings Hub being the Bridge and the controlled modules being the Things. +The following definitions are specified in the .things file. ### Bridge Configuration -The bridge requires the IP address and port used to connect the openHAB server to the Smartthings Hub. +The bridge requires the IP address and port used to connect the openHAB server to the SmartThings Hub. ```java Bridge smartthings:smartthings:Home [ smartthingsIp="192.168.1.12", smartthingsPort=39500 ] { @@ -32,20 +33,20 @@ Bridge smartthings:smartthings:Home [ smartthingsIp="192.168.1.12", smartthin where: -- **smartthings:smartthings:Home** identifies this is a smartthings hub named Home. +- **smartthings:smartthings:Home** identifies this is a SmartThings hub named Home. The first two segments must be smartthings:smartthings. - You can choose any unique name for the the last segment. + You can choose any unique name for the last segment. The last segment is used when you identify items connected to this hubthingTypeId. -- **smartthingsIp** is the IP address of the Smartthings Hub. - Your router should be configured such that the Smartthings Hub is always assigned to this IP address. -- **smartthingsPort** is the port the Smartthings hub listens on. 39500 is the port assigned by Smartthings so it should be used unless you have a good reason for using another port. +- **smartthingsIp** is the IP address of the SmartThings Hub. + Your router should be configured such that the SmartThings Hub is always assigned to this IP address. +- **smartthingsPort** is the port the SmartThings hub listens on. 39500 is the port assigned by SmartThings so it should be used unless you have a good reason for using another port. **Warning** This binding only supports one Bridge. If you try to configure a second bridge it will be ignored. ### Thing Configuration -Each attached thing must specify the type of device and it's Smartthings device name. The format of the Thing description is: +Each attached Thing must specify the type of device and its SmartThings device name. The format of the Thing description is: ```java Thing name [ smartthingsName="", {smartthingsTimeout=} ] @@ -53,9 +54,9 @@ Thing name [ smartthingsName="", {smartthingsTimeout=< where: -- **[thingTypeId](https://developer-preview.smartthings.com/docs/devices/capabilities/capabilities-reference/)** corresponds to the "Preferences Reference" in the Smartthings Capabilities document but without the capability.prefix. i.e. A dimmer switch in the Capabilities document has a Preferences reference of capability.switchLevel, therefore the <thingTypeId> is switchLevel. -- **name** is what you want to call this thing and is used in defining the items that use this thing. -- **deviceName** is the name you assigned to the device when you discovered and connected to it in the Smartthings App +- **[thingTypeId](https://developer-preview.smartthings.com/docs/devices/capabilities/capabilities-reference/)** corresponds to the "Preferences Reference" in the SmartThings Capabilities document but without the capability.prefix. i.e. A dimmer switch in the Capabilities document has a Preferences reference of capability.switchLevel, therefore the <thingTypeId> is switchLevel. +- **name** is what you want to call this Thing and is used in defining the items that use this Thing. +- **deviceName** is the name you assigned to the device when you discovered and connected to it in the SmartThings App - Optional: **timeout** is how long openHAB will wait for a response to the request before throwing a timeout exception. The default is 3 seconds. #### Example @@ -76,7 +77,7 @@ Bridge smartthings:smartthings:Home [ smartthingsIp="192.168.1.12", smartthin These are specified in the .items file. This section describes the specifics related to this binding. Please see the [Items documentation](https://www.openhab.org/docs/configuration/items.html) for a full explanation of configuring items. -The most important thing is getting the **channel** specification correct. The general format is: +The most important Thing is getting the **channel** specification correct. The general format is: ```java { channel="smartthings::::" } @@ -84,11 +85,11 @@ The most important thing is getting the **channel** specification correct. The g The parts (separated by :) are defined as: -1. **smartthings** to specify this is a smartthings device -1. **thingTypeId** specifies the type of the thing you are connecting to. This is the same as described in the last section. +1. **smartthings** to specify this is a SmartThings device +1. **thingTypeId** specifies the type of the Thing you are connecting to. This is the same as described in the last section. 1. **hubName** identifies the name of the hub specified above. This corresponds to the third segment in the **Bridge** definition. -1. **thingName** identifes the thing this is attached to and is the "name" you specified in the **Thing** definition. -1. **channelId** corresponds the the attribute in the [Smartthings Capabilities list](https://docs.smartthings.com/en/latest/capabilities-reference.html). For switch it would be "switch". +1. **thingName** identifies the Thing this is attached to and is the "name" you specified in the **Thing** definition. +1. **channelId** corresponds to the attribute in the [SmartThings Capabilities list](https://docs.smartthings.com/en/latest/capabilities-reference.html). For switch it would be "switch". ### Example @@ -103,7 +104,10 @@ String SimulatedValve "Simulated valve" { chan ``` **Special note about Valves** -Smarttings includes a **valve** which can be Open or Closed but openHAB does not include a Valve item type. Therefore, the valve is defined as a having an item type of String. And, therefore the item needs to be defined with an item type of string. It can be controlled in the sitemap by specifying the Element type of Switch and providing a mapping of: mappings=[open="Open", closed="Close"]. Such as: +SmartThings includes a **valve** which can be Open or Closed but openHAB does not include a Valve item type. +Therefore, the valve is defined as having an item type of String. +And, therefore the item needs to be defined with an item type of string. +It can be controlled in the sitemap by specifying the Element type of Switch and providing a mapping of: mappings=[open="Open", closed="Close"]. Such as: ```java Switch item=SimulatedValve mappings=[open="Open", closed="Close"] @@ -146,6 +150,6 @@ Frame label="Sengled RGBW Bulb" { ## References 1. [openHAB configuration documentation](https://openhab.org/docs/configuration/index.html) -1. [Smartthings Capabilities Reference](https://docs.smartthings.com/en/latest/capabilities-reference.html) -1. [Smartthings Developers Documentation](https://docs.smartthings.com/en/latest/index.html) -1. [Smartthings Development Environment](https://graph.api.smartthings.com/) +1. [SmartThings Capabilities Reference](https://docs.smartthings.com/en/latest/capabilities-reference.html) +1. [SmartThings Developers Documentation](https://docs.smartthings.com/en/latest/index.html) +1. [SmartThings Development Environment](https://graph.api.smartthings.com/) diff --git a/bundles/org.openhab.binding.smartthings/src/main/resources/OH-INF/i18n/smartthings.properties b/bundles/org.openhab.binding.smartthings/src/main/resources/OH-INF/i18n/smartthings.properties index af094cdf360fe..90320aa3c886a 100644 --- a/bundles/org.openhab.binding.smartthings/src/main/resources/OH-INF/i18n/smartthings.properties +++ b/bundles/org.openhab.binding.smartthings/src/main/resources/OH-INF/i18n/smartthings.properties @@ -1,7 +1,428 @@ -# Config status messages -config-status.error.missing-ip-configuration=No IP address for the Smartthings bridge has been provided. -config-status.error.missing-port-configuration=No port for the Smartthings bridge has been provided. -config-status.error.missing-smartthings-name=No Smartthings name has been provided +# add-on -addon.smartthings.name = Smartthings -addon.smartthings.description = Samsung Smartthings hub +addon.smartthings.name = Samsung Smartthings Binding +addon.smartthings.description = This is the binding for the Samsung Smartthings hub. + +# thing types + +thing-type.smartthings.accelerationSensor.label = Acceleration Sensor +thing-type.smartthings.accelerationSensor.description = Acceleration Sensor +thing-type.smartthings.accelerationSensor.channel.acceleration.label = Acceleration +thing-type.smartthings.airConditionerMode.label = Air Conditioner Mode +thing-type.smartthings.airConditionerMode.description = Air Conditioner Mode +thing-type.smartthings.airConditionerMode.channel.airConditionerMode.label = Air Conditioner Mode +thing-type.smartthings.alarm.label = Alarm +thing-type.smartthings.alarm.description = Alarm +thing-type.smartthings.alarm.channel.alarm.label = Alarm +thing-type.smartthings.battery.label = Battery Status +thing-type.smartthings.battery.description = An indication of the status of the battery +thing-type.smartthings.battery.channel.battery.label = Battery +thing-type.smartthings.beacon.label = Beacon +thing-type.smartthings.beacon.description = The presence value of the beacon +thing-type.smartthings.beacon.channel.presence.label = Presence +thing-type.smartthings.bulb.label = Bulb +thing-type.smartthings.bulb.description = Allows for the control of a bulb device +thing-type.smartthings.bulb.channel.switch.label = Bulb +thing-type.smartthings.button.label = Button +thing-type.smartthings.button.description = Button +thing-type.smartthings.button.channel.button.label = Button +thing-type.smartthings.carbonDioxideMeasurement.label = Carbon Dioxide Measurement +thing-type.smartthings.carbonDioxideMeasurement.description = Carbon Dioxide Measurement +thing-type.smartthings.carbonDioxideMeasurement.channel.carbonDioxide.label = Carbon Dioxide +thing-type.smartthings.carbonMonoxideDetector.label = Carbon Monoxide Detector +thing-type.smartthings.carbonMonoxideDetector.description = Carbon Monoxide Detector +thing-type.smartthings.carbonMonoxideDetector.channel.carbonMonoxide.label = Carbon Monoxide +thing-type.smartthings.color.label = Color +thing-type.smartthings.color.description = Color +thing-type.smartthings.color.channel.colorValue.label = Color Value +thing-type.smartthings.color.channel.switchlevel.label = Switch Level +thing-type.smartthings.colorControl.label = Color Control +thing-type.smartthings.colorControl.description = Color Control +thing-type.smartthings.colorControl.channel.color.label = Color +thing-type.smartthings.colorControl.channel.hue.label = Hue +thing-type.smartthings.colorControl.channel.saturation.label = Saturation +thing-type.smartthings.colorTemperature.label = Color Temperature +thing-type.smartthings.colorTemperature.description = Color Temperature +thing-type.smartthings.colorTemperature.channel.colorTemperature.label = Color Temperature +thing-type.smartthings.consumable.label = Consumable +thing-type.smartthings.consumable.description = Consumable +thing-type.smartthings.consumable.channel.consumable.label = Consumable +thing-type.smartthings.contactSensor.label = Contact Sensor +thing-type.smartthings.contactSensor.description = Allows reading the value of a contact sensor device +thing-type.smartthings.contactSensor.channel.contact.label = Contact +thing-type.smartthings.doorControl.label = Door Control +thing-type.smartthings.doorControl.description = Allow for the control of a door +thing-type.smartthings.doorControl.channel.door.label = Door +thing-type.smartthings.dryerMode.label = Dryer Mode +thing-type.smartthings.dryerMode.description = Controls a dryer temperature +thing-type.smartthings.dryerMode.channel.dryerMode.label = Dryer Mode +thing-type.smartthings.dryerOperatingState.label = Dryer Operating State +thing-type.smartthings.dryerOperatingState.description = Dryer operating state info +thing-type.smartthings.dryerOperatingState.channel.completionTime.label = Completion Time +thing-type.smartthings.dryerOperatingState.channel.dryerJobState.label = Dryer Job State +thing-type.smartthings.dryerOperatingState.channel.machineState.label = Machine State +thing-type.smartthings.energyMeter.label = Energy Meter +thing-type.smartthings.energyMeter.description = Read the energy consumption of an energy metering device +thing-type.smartthings.energyMeter.channel.energy.label = Energy +thing-type.smartthings.estimatedTimeOfArrival.label = Estimated Time of Arrival +thing-type.smartthings.estimatedTimeOfArrival.description = Estimated Time of Arrival +thing-type.smartthings.estimatedTimeOfArrival.channel.estimatedTimeOfArrival.label = Estimated Time of Arrival +thing-type.smartthings.garageDoorControl.label = Garage Door Control +thing-type.smartthings.garageDoorControl.description = Garage Door Control +thing-type.smartthings.garageDoorControl.channel.door.label = Door +thing-type.smartthings.holdableButton.label = Holdable Button +thing-type.smartthings.holdableButton.description = holdableButton +thing-type.smartthings.holdableButton.channel.button.label = Button +thing-type.smartthings.holdableButton.channel.numberOfButtons.label = Button +thing-type.smartthings.illuminanceMeasurement.label = Illuminance Measurement +thing-type.smartthings.illuminanceMeasurement.description = Illuminance Measurement +thing-type.smartthings.illuminanceMeasurement.channel.illuminance.label = Illuminance Measurement +thing-type.smartthings.imageCapture.label = Image Capture +thing-type.smartthings.imageCapture.description = Allows for the capture of an image on devices that support it +thing-type.smartthings.imageCapture.channel.imageCapture.label = Image Capture +thing-type.smartthings.indicator.label = Indicator +thing-type.smartthings.indicator.description = The indicator capability gives you the ability to set the indicator LED light on a Z-Wave switch +thing-type.smartthings.indicator.channel.indicatorStatus.label = Indicator +thing-type.smartthings.infraredLevel.label = Infrared Level +thing-type.smartthings.infraredLevel.description = Allows for the control of the infrared level attribute of a device +thing-type.smartthings.infraredLevel.channel.infraredLevel.label = Infrared Level +thing-type.smartthings.light.label = Light +thing-type.smartthings.light.description = Light +thing-type.smartthings.light.channel.switch.label = Switch +thing-type.smartthings.lock.label = Lock +thing-type.smartthings.lock.description = Allow for the control of a lock device +thing-type.smartthings.lock.channel.lock.label = Lock +thing-type.smartthings.lockOnly.label = Lock Only +thing-type.smartthings.lockOnly.description = Allow for the lock control of a lock device +thing-type.smartthings.lockOnly.channel.lock.label = Lock Only +thing-type.smartthings.mediaController.label = Media Controller +thing-type.smartthings.mediaController.description = Allows for the control of a media controller device +thing-type.smartthings.mediaController.channel.activities.label = Activities +thing-type.smartthings.mediaController.channel.currentActivity.label = Current Activity +thing-type.smartthings.motionSensor.label = Motion Sensor +thing-type.smartthings.motionSensor.description = Allows for the ability to read motion sensor device states +thing-type.smartthings.motionSensor.channel.motion.label = Motion +thing-type.smartthings.musicPlayer.label = Music Player +thing-type.smartthings.musicPlayer.description = Allows for control of a music playing device +thing-type.smartthings.musicPlayer.channel.level.label = Level +thing-type.smartthings.musicPlayer.channel.mute.label = Mute +thing-type.smartthings.musicPlayer.channel.status.label = Status +thing-type.smartthings.musicPlayer.channel.trackData.label = Track Data +thing-type.smartthings.musicPlayer.channel.trackDescription.label = Track Description +thing-type.smartthings.outlet.label = Outlet +thing-type.smartthings.outlet.description = Allows for the control of an outlet device +thing-type.smartthings.outlet.channel.switch.label = Outlet +thing-type.smartthings.pHMeasurement.label = pH Measurement +thing-type.smartthings.pHMeasurement.description = Read the pH value off of a pH measurement capable device +thing-type.smartthings.pHMeasurement.channel.pH.label = pH Measurement +thing-type.smartthings.powerMeter.label = PowerMeter +thing-type.smartthings.powerMeter.description = Allows for reading the power consumption from devices that report it +thing-type.smartthings.powerMeter.channel.power.label = Power +thing-type.smartthings.powerSource.label = Power Source +thing-type.smartthings.powerSource.description = The current power source for the device +thing-type.smartthings.powerSource.channel.powerSource.label = Power Source +thing-type.smartthings.presenceSensor.label = Presence Sensor +thing-type.smartthings.presenceSensor.description = The ability to see the current status of a presence sensor device +thing-type.smartthings.presenceSensor.channel.presence.label = Presence +thing-type.smartthings.relativeHumidityMeasurement.label = Humidity Sensor +thing-type.smartthings.relativeHumidityMeasurement.description = Allow reading the relative humidity from devices that support it +thing-type.smartthings.relativeHumidityMeasurement.channel.humidity.label = Humidity +thing-type.smartthings.relaySwitch.label = Relay Switch +thing-type.smartthings.relaySwitch.description = Relay Switch +thing-type.smartthings.relaySwitch.channel.switch.label = Switch +thing-type.smartthings.shockSensor.label = Shock Sensor +thing-type.smartthings.shockSensor.description = A Device that senses whether or not there is a shock +thing-type.smartthings.shockSensor.channel.shock.label = Shock +thing-type.smartthings.signalStrength.label = Signal Strength +thing-type.smartthings.signalStrength.description = Gives the ability to read the signal strength of devices that support it +thing-type.smartthings.signalStrength.channel.lqi.label = Link Quality Indicator +thing-type.smartthings.signalStrength.channel.rssi.label = Received Signal Strength Indication +thing-type.smartthings.sleepSensor.label = Sleep Sensor +thing-type.smartthings.sleepSensor.description = A Device that senses whether or not someone is sleeping +thing-type.smartthings.sleepSensor.channel.sleeping.label = Sleeping Value +thing-type.smartthings.smartthings.label = SmartThings Hub +thing-type.smartthings.smartthings.description = SmartThings Hub V2 that is attached to the same network +thing-type.smartthings.smokeDetector.label = Smoke Detector +thing-type.smartthings.smokeDetector.description = Measure smoke and optionally carbon monoxide levels +thing-type.smartthings.smokeDetector.channel.carbonMonoxide.label = Carbon Monoxide +thing-type.smartthings.smokeDetector.channel.smoke.label = Smoke +thing-type.smartthings.soundPressureLevel.label = Sound Pressure Level +thing-type.smartthings.soundPressureLevel.description = Sound Pressure Level +thing-type.smartthings.soundPressureLevel.channel.soundPressureLevel.label = Sound Pressure Level +thing-type.smartthings.soundSensor.label = Sound Sensor +thing-type.smartthings.soundSensor.description = A Device that senses sound +thing-type.smartthings.soundSensor.channel.sound.label = Sound Sensor +thing-type.smartthings.speechRecognition.label = Speech Recognition +thing-type.smartthings.speechRecognition.description = Speech Recognition +thing-type.smartthings.speechRecognition.channel.phraseSpoken.label = Speech Recognition +thing-type.smartthings.stepSensor.label = Step Sensor +thing-type.smartthings.stepSensor.description = A Device that works as a step counter +thing-type.smartthings.stepSensor.channel.goal.label = Step Goal +thing-type.smartthings.stepSensor.channel.steps.label = Current Step Count +thing-type.smartthings.switch.label = Switch +thing-type.smartthings.switch.description = Switch +thing-type.smartthings.switch.channel.switch.label = Switch +thing-type.smartthings.switchLevel.label = Switch Level +thing-type.smartthings.switchLevel.description = Allows for the control of the level attribute of a light +thing-type.smartthings.switchLevel.channel.level.label = Level +thing-type.smartthings.switchLevel.channel.switch.label = Switch +thing-type.smartthings.tamperAlert.label = Tamper Alert +thing-type.smartthings.tamperAlert.description = Tamper Alert +thing-type.smartthings.tamperAlert.channel.tamper.label = Tamper +thing-type.smartthings.temperatureMeasurement.label = Temperature Measurement +thing-type.smartthings.temperatureMeasurement.description = Get the temperature from a Device that reports current temperature +thing-type.smartthings.temperatureMeasurement.channel.temperature.label = Temperature +thing-type.smartthings.thermostat.label = Thermostat +thing-type.smartthings.thermostat.description = Allows for the control of a thermostat device +thing-type.smartthings.thermostat.channel.coolingSetpoint.label = Cooling Setpoint +thing-type.smartthings.thermostat.channel.heatingSetpoint.label = Heating Setpoint +thing-type.smartthings.thermostat.channel.thermostatFanMode.label = Thermostat Fan Mode +thing-type.smartthings.thermostat.channel.thermostatMode.label = Thermostat Mode +thing-type.smartthings.thermostat.channel.thermostatOperatingState.label = Thermostat Operating State +thing-type.smartthings.thermostat.channel.thermostatSetpoint.label = Thermostat Setpoint +thing-type.smartthings.thermostatCoolingSetpoint.label = Thermostat Cooling Setpoint +thing-type.smartthings.thermostatCoolingSetpoint.description = Thermostat Cooling Setpoint +thing-type.smartthings.thermostatCoolingSetpoint.channel.coolingSetpoint.label = Cooling Setpoint +thing-type.smartthings.thermostatFanMode.label = Thermostat Fan Mode +thing-type.smartthings.thermostatFanMode.description = Thermostat Fan Mode +thing-type.smartthings.thermostatFanMode.channel.thermostatFanMode.label = Thermostat Fan Mode +thing-type.smartthings.thermostatHeatingSetpoint.label = Thermostat Heating Setpoint +thing-type.smartthings.thermostatHeatingSetpoint.description = Thermostat Heating Setpoint +thing-type.smartthings.thermostatHeatingSetpoint.channel.heatingSetpoint.label = Heating Setpoint +thing-type.smartthings.thermostatMode.label = Thermostat Mode +thing-type.smartthings.thermostatMode.description = Thermostat Mode +thing-type.smartthings.thermostatMode.channel.thermostatMode.label = Thermostat Mode +thing-type.smartthings.thermostatOperatingState.label = Thermostat Operating State +thing-type.smartthings.thermostatOperatingState.description = Thermostat Operating State +thing-type.smartthings.thermostatOperatingState.channel.thermostatOperatingState.label = Thermostat Operating State +thing-type.smartthings.thermostatSetpoint.label = Thermostat Setpoint +thing-type.smartthings.thermostatSetpoint.description = Thermostat Setpoint +thing-type.smartthings.thermostatSetpoint.channel.thermostatSetpoint.label = Thermostat Setpoint +thing-type.smartthings.threeAxis.label = Three Axis +thing-type.smartthings.threeAxis.description = Gives the three axis coordinates for devices that support it +thing-type.smartthings.threeAxis.channel.threeAxis.label = Three Axis +thing-type.smartthings.timedSession.label = Timed Session +thing-type.smartthings.timedSession.description = Timed Session +thing-type.smartthings.timedSession.channel.sessionStatus.label = Session Status +thing-type.smartthings.timedSession.channel.timeRemaining.label = Time Remaining +thing-type.smartthings.touchSensor.label = Touch Sensor +thing-type.smartthings.touchSensor.description = Touch Sensor +thing-type.smartthings.touchSensor.channel.touch.label = Touch +thing-type.smartthings.ultravioletIndex.label = Ultraviolet Index +thing-type.smartthings.ultravioletIndex.description = Gives the ability to get the ultraviolet index from devices that report it +thing-type.smartthings.ultravioletIndex.channel.ultravioletIndex.label = Ultraviolet Index +thing-type.smartthings.valve.label = Valve +thing-type.smartthings.valve.description = Allows for the control of a valve device +thing-type.smartthings.valve.channel.valve.label = Valve +thing-type.smartthings.voltageMeasurement.label = Voltage Measurement +thing-type.smartthings.voltageMeasurement.description = Get the value of voltage measured from devices that support it +thing-type.smartthings.voltageMeasurement.channel.voltage.label = Voltage +thing-type.smartthings.washerMode.label = Washer Mode +thing-type.smartthings.washerMode.description = Controls a washer temperature +thing-type.smartthings.washerMode.channel.washerMode.label = Washer Mode +thing-type.smartthings.washerOperatingState.label = Washer Operating State +thing-type.smartthings.washerOperatingState.description = Washer operating state info +thing-type.smartthings.washerOperatingState.channel.completionTime.label = Completion Time +thing-type.smartthings.washerOperatingState.channel.machineState.label = Machine State +thing-type.smartthings.washerOperatingState.channel.washerJobState.label = Washer Job State +thing-type.smartthings.waterSensor.label = Water Sensor +thing-type.smartthings.waterSensor.description = Get the status off of a water sensor device +thing-type.smartthings.waterSensor.channel.water.label = Water +thing-type.smartthings.windowShade.label = Window Shade +thing-type.smartthings.windowShade.description = Window Shade +thing-type.smartthings.windowShade.channel.windowShade.label = Window Shade + +# thing types config + +thing-type.config.smartthings.smartthings.smartthingsIp.label = IP Address +thing-type.config.smartthings.smartthings.smartthingsIp.description = IP address of the SmartThings Hub +thing-type.config.smartthings.smartthings.smartthingsPort.label = IP Port Number +thing-type.config.smartthings.smartthings.smartthingsPort.description = Port number of the SmartThings Hub +thing-type.config.smartthings.thing-type-parameters.smartthingsLocation.label = Smartthings Location +thing-type.config.smartthings.thing-type-parameters.smartthingsLocation.description = Where the device is located +thing-type.config.smartthings.thing-type-parameters.smartthingsName.label = Smartthings Name +thing-type.config.smartthings.thing-type-parameters.smartthingsName.description = User assigned Smartthings device name + +# channel types + +channel-type.smartthings.acceleration-channel.label = Acceleration +channel-type.smartthings.acceleration-channel.description = Acceleration +channel-type.smartthings.acceleration-channel.state.option.active = Active +channel-type.smartthings.acceleration-channel.state.option.inactive = Inactive +channel-type.smartthings.activities-channel.label = Media Activity +channel-type.smartthings.airConditionerMode-channel.label = Air Conditioner Mode +channel-type.smartthings.airConditionerMode-channel.state.option.auto = Auto +channel-type.smartthings.airConditionerMode-channel.state.option.cool = Cool +channel-type.smartthings.airConditionerMode-channel.state.option.dry = Dry +channel-type.smartthings.airConditionerMode-channel.state.option.coolClean = Cool clean +channel-type.smartthings.airConditionerMode-channel.state.option.dryClean = Dry clean +channel-type.smartthings.airConditionerMode-channel.state.option.fanOn = Fan on +channel-type.smartthings.airConditionerMode-channel.state.option.fanAuto = Fan auto +channel-type.smartthings.airConditionerMode-channel.state.option.fanCirculate = Fan circulate +channel-type.smartthings.airConditionerMode-channel.state.option.heat = Heat +channel-type.smartthings.airConditionerMode-channel.state.option.emergencyHeat = Emergency heat +channel-type.smartthings.alarm-channel.label = Alarm +channel-type.smartthings.alarm-channel.state.option.both = Both +channel-type.smartthings.alarm-channel.state.option.off = Off +channel-type.smartthings.alarm-channel.state.option.siren = Siren +channel-type.smartthings.alarm-channel.state.option.strobe = Strobe +channel-type.smartthings.battery-channel.label = Battery +channel-type.smartthings.button-channel.label = Button +channel-type.smartthings.button-channel.state.option.pushed = Pushed +channel-type.smartthings.button-channel.state.option.held = Held +channel-type.smartthings.carbonDioxide-channel.label = Carbon Dioxide +channel-type.smartthings.carbonMonoxide-channel.label = Carbon Monoxide +channel-type.smartthings.carbonMonoxide-channel.state.option.clear = Clear +channel-type.smartthings.carbonMonoxide-channel.state.option.detected = Detected +channel-type.smartthings.carbonMonoxide-channel.state.option.tested = Test button activated +channel-type.smartthings.color-channel.label = Color +channel-type.smartthings.colorTemperature-channel.label = Color Temperature +channel-type.smartthings.colorValue-channel.label = Color Value +channel-type.smartthings.completion-time-channel.label = Completion Time +channel-type.smartthings.consumable-channel.label = Consumable Status +channel-type.smartthings.consumable-channel.state.option.good = Good +channel-type.smartthings.consumable-channel.state.option.maintenance_required = Maintenance required +channel-type.smartthings.consumable-channel.state.option.missing = Missing +channel-type.smartthings.consumable-channel.state.option.order = Order +channel-type.smartthings.consumable-channel.state.option.replace = Replace +channel-type.smartthings.contact-channel.label = Contact +channel-type.smartthings.coolingSetpoint-channel.label = Cooling Setpoint +channel-type.smartthings.currentActivity-channel.label = Current Media Activity +channel-type.smartthings.door-control-channel.label = Door Status +channel-type.smartthings.door-control-channel.state.option.closed = Closed +channel-type.smartthings.door-control-channel.state.option.closing = Closing +channel-type.smartthings.door-control-channel.state.option.open = Open +channel-type.smartthings.door-control-channel.state.option.opening = Opening +channel-type.smartthings.door-control-channel.state.option.unknown = Unknown +channel-type.smartthings.dryer-job-state-channel.label = Dryer Job State +channel-type.smartthings.dryer-mode-channel.label = Dryer Temperature +channel-type.smartthings.dryer-mode-channel.state.option.regular = Regular +channel-type.smartthings.dryer-mode-channel.state.option.lowHeat = Low heat +channel-type.smartthings.dryer-mode-channel.state.option.highHeat = High heat +channel-type.smartthings.energy-channel.label = Energy +channel-type.smartthings.estimatedTimeOfArrival-channel.label = Estimated Time of Arrival +channel-type.smartthings.goal-channel.label = Current Step Goal +channel-type.smartthings.heatingSetpoint-channel.label = Heating Setpoint +channel-type.smartthings.hue-channel.label = Hue +channel-type.smartthings.humidity-channel.label = Relative Humidity +channel-type.smartthings.illuminance-channel.label = Illuminance +channel-type.smartthings.imageCapture-channel.label = Image Capture +channel-type.smartthings.indicatorStatus-channel.label = Indicator Status +channel-type.smartthings.infraredLevel-channel.label = Current Infrared Light Level +channel-type.smartthings.level-channel.label = Light Level +channel-type.smartthings.lock-channel.label = Lock State +channel-type.smartthings.lock-channel.state.option.locked = Locked +channel-type.smartthings.lock-channel.state.option.unknown = Unknown +channel-type.smartthings.lock-channel.state.option.unlocked = Unlocked +channel-type.smartthings.lock-channel.state.option.unlocked\ with\ timeout = Unlocked with timeout +channel-type.smartthings.lock-only-channel.label = Lock Only State +channel-type.smartthings.lock-only-channel.state.option.locked = Locked +channel-type.smartthings.lqi-channel.label = Link Quality Indication +channel-type.smartthings.machine-state-channel.label = Machine Operating State +channel-type.smartthings.machine-state-channel.state.option.pause = Pause +channel-type.smartthings.machine-state-channel.state.option.run = Run +channel-type.smartthings.machine-state-channel.state.option.stop = Stop +channel-type.smartthings.motion-channel.label = Motion Sensor +channel-type.smartthings.motion-channel.state.option.active = Active +channel-type.smartthings.motion-channel.state.option.inactive = Inactive +channel-type.smartthings.mute-channel.label = Mute +channel-type.smartthings.mute-channel.state.option.muted = Muted +channel-type.smartthings.mute-channel.state.option.unmuted = Unmuted +channel-type.smartthings.numberOfButtons-channel.label = Number of Buttons +channel-type.smartthings.pH-channel.label = pH Level +channel-type.smartthings.phraseSpoken-channel.label = Spoken Phrase +channel-type.smartthings.power-channel.label = Power +channel-type.smartthings.powerSource-channel.label = Power Source +channel-type.smartthings.powerSource-channel.state.option.battery = Battery power +channel-type.smartthings.powerSource-channel.state.option.dc = DC power +channel-type.smartthings.powerSource-channel.state.option.mains = AC power +channel-type.smartthings.powerSource-channel.state.option.unknown = Unknown +channel-type.smartthings.presence-channel.label = Presence +channel-type.smartthings.presence-channel.state.option.not\ present = Not present +channel-type.smartthings.presence-channel.state.option.present = Present +channel-type.smartthings.rssi-channel.label = Received Signal Strength Indication +channel-type.smartthings.saturation-channel.label = Saturation +channel-type.smartthings.sessionStatus-channel.label = Timed Session Status +channel-type.smartthings.sessionStatus-channel.state.option.canceled = Canceled +channel-type.smartthings.sessionStatus-channel.state.option.paused = Paused +channel-type.smartthings.sessionStatus-channel.state.option.running = Running +channel-type.smartthings.sessionStatus-channel.state.option.stopped = Stopped +channel-type.smartthings.shock-channel.label = Shock +channel-type.smartthings.shock-channel.state.option.clear = Clear +channel-type.smartthings.shock-channel.state.option.detected = Detected +channel-type.smartthings.sleeping-channel.label = Sleeping +channel-type.smartthings.sleeping-channel.state.option.not\ sleeping = Not sleeping +channel-type.smartthings.sleeping-channel.state.option.sleeping = Sleeping +channel-type.smartthings.smoke-channel.label = Smoke +channel-type.smartthings.smoke-channel.state.option.clear = Clear +channel-type.smartthings.smoke-channel.state.option.detected = Detected +channel-type.smartthings.smoke-channel.state.option.tested = Test button activated +channel-type.smartthings.sound-channel.label = Sound Detected +channel-type.smartthings.sound-channel.state.option.detected = Detected +channel-type.smartthings.sound-channel.state.option.not_detected = Not detected +channel-type.smartthings.soundPressureLevel-channel.label = Sound Pressure Level +channel-type.smartthings.status-channel.label = Current Status +channel-type.smartthings.steps-channel.label = Current Step Count +channel-type.smartthings.switch-channel.label = Switch +channel-type.smartthings.switch-channel.description = This is a switch +channel-type.smartthings.tamper-channel.label = Tamper Alert Sensor +channel-type.smartthings.tamper-channel.state.option.clear = Clear +channel-type.smartthings.tamper-channel.state.option.detected = Detected +channel-type.smartthings.temperature-channel.label = Current Temperature +channel-type.smartthings.thermostatFanMode-channel.label = Fan Mode +channel-type.smartthings.thermostatFanMode-channel.state.option.auto = Auto +channel-type.smartthings.thermostatFanMode-channel.state.option.circulate = Circulate +channel-type.smartthings.thermostatFanMode-channel.state.option.on = On +channel-type.smartthings.thermostatMode-channel.label = Thermostat Mode +channel-type.smartthings.thermostatMode-channel.state.option.auto = Auto +channel-type.smartthings.thermostatMode-channel.state.option.eco = Eco +channel-type.smartthings.thermostatMode-channel.state.option.cool = Cool +channel-type.smartthings.thermostatMode-channel.state.option.heat = Heat +channel-type.smartthings.thermostatMode-channel.state.option.emergency\ heat = Emergency heat +channel-type.smartthings.thermostatMode-channel.state.option.rush\ hourheat = Rush hour +channel-type.smartthings.thermostatMode-channel.state.option.off = Off +channel-type.smartthings.thermostatOperatingState-channel.label = Operating State +channel-type.smartthings.thermostatOperatingState-channel.state.option.cooling = Cooling +channel-type.smartthings.thermostatOperatingState-channel.state.option.fan\ only = Fan only +channel-type.smartthings.thermostatOperatingState-channel.state.option.heating = Heating +channel-type.smartthings.thermostatOperatingState-channel.state.option.idle = Idle +channel-type.smartthings.thermostatOperatingState-channel.state.option.pending\ cool = Pending cool +channel-type.smartthings.thermostatOperatingState-channel.state.option.pending\ heat = Pending heat +channel-type.smartthings.thermostatOperatingState-channel.state.option.vent\ economizer = Vent economizer +channel-type.smartthings.thermostatSetpoint-channel.label = Current Setpoint +channel-type.smartthings.three-axis-channel.label = Three Axis +channel-type.smartthings.three-axis-channel.description = This string contains the x, y, z coordinates +channel-type.smartthings.timeRemaining-channel.label = Time Remaining +channel-type.smartthings.touch-channel.label = Device Touched, or Not +channel-type.smartthings.touch-channel.state.option.touched = Touched +channel-type.smartthings.touch-channel.state.option. = Not touched +channel-type.smartthings.trackData-channel.label = Track Data +channel-type.smartthings.trackDescription-channel.label = Description of Current Track +channel-type.smartthings.ultravioletIndex-channel.label = Ultraviolet Index +channel-type.smartthings.valve-channel.label = Valve status +channel-type.smartthings.valve-channel.state.option.closed = Closed +channel-type.smartthings.valve-channel.state.option.open = Open +channel-type.smartthings.voltage-channel.label = Voltage Measurement +channel-type.smartthings.volumeLevel-channel.label = Volume Level +channel-type.smartthings.washer-job-state-channel.label = Washer Job State +channel-type.smartthings.washer-mode-channel.label = Washer Mode +channel-type.smartthings.washer-mode-channel.state.option.regular = Regular +channel-type.smartthings.washer-mode-channel.state.option.heavy = Heavy +channel-type.smartthings.washer-mode-channel.state.option.rinse = Rinse +channel-type.smartthings.washer-mode-channel.state.option.spinDry = Spin dry +channel-type.smartthings.water-channel.label = Water Sensor +channel-type.smartthings.water-channel.state.option.dry = Dry +channel-type.smartthings.water-channel.state.option.wet = Wet +channel-type.smartthings.windowShade-channel.label = Window Shade +channel-type.smartthings.windowShade-channel.state.option.closed = Closed +channel-type.smartthings.windowShade-channel.state.option.closing = Closing +channel-type.smartthings.windowShade-channel.state.option.open = Open +channel-type.smartthings.windowShade-channel.state.option.opening = Opening +channel-type.smartthings.windowShade-channel.state.option.partially\ open = Partially open +channel-type.smartthings.windowShade-channel.state.option.unknown = Unknown + +# config status messages + +config-status.error.missing-ip-configuration = No IP address for the Smartthings bridge has been provided. +config-status.error.missing-port-configuration = No port for the Smartthings bridge has been provided. +config-status.error.missing-smartthings-name = No Smartthings name has been provided diff --git a/bundles/org.openhab.binding.smartthings/src/main/resources/OH-INF/thing/thing-types.xml b/bundles/org.openhab.binding.smartthings/src/main/resources/OH-INF/thing/thing-types.xml index 3fa8195dbc9ed..a5b3765c0540c 100644 --- a/bundles/org.openhab.binding.smartthings/src/main/resources/OH-INF/thing/thing-types.xml +++ b/bundles/org.openhab.binding.smartthings/src/main/resources/OH-INF/thing/thing-types.xml @@ -6,18 +6,18 @@ - - Smartthings Hub V2 that is attached to the same network + + SmartThings Hub V2 that is attached to the same network NetworkAppliance network-address - IP address of the Smartthings Hub + IP address of the SmartThings Hub - Port number of the Smartthings Hub + Port number of the SmartThings Hub 39500 @@ -150,7 +150,7 @@ - + Carbon Monoxide Detector COSensor @@ -332,8 +332,8 @@ - - Estimated Time Of Arrival + + Estimated Time of Arrival @@ -685,7 +685,7 @@ - Gives the ability to read the signal stregth of Devices that support it + Gives the ability to read the signal strength of devices that support it Sensor diff --git a/bundles/org.openhab.binding.smgw/README.md b/bundles/org.openhab.binding.smgw/README.md index 1e0b3a10513a2..a988908c41d77 100644 --- a/bundles/org.openhab.binding.smgw/README.md +++ b/bundles/org.openhab.binding.smgw/README.md @@ -14,11 +14,11 @@ To use the HAN interface you need to connect it to your local network with an et ### `smgw` Thing Configuration -| Name | Type | Description | Default | Required | Advanced | -|------------|------|--------------------------------------|----------------|----------|----------| -| `hostname` | text | Hostname or IP address of the device | `192.168.1.200 | no | no | -| `username` | text | Username to access the device | N/A | yes | no | -| `password` | text | Password to access the device | N/A | yes | no | +| Name | Type | Description | Default | Required | Advanced | +|------------|------|--------------------------------------|-----------------|----------|----------| +| `hostname` | text | Hostname or IP address of the device | `192.168.1.200` | no | no | +| `username` | text | Username to access the device | N/A | yes | no | +| `password` | text | Password to access the device | N/A | yes | no | The default value for the hostname matches the default value according to PPC's documentation. Check with your network operator's documentation if DHCP has been enabled or a different fixed address has been set. @@ -28,9 +28,9 @@ Login with certificate is not supported. ## Channels -| Channel | Type | Read/Write | Description | -|-------------|---------------|------------|------------------------------------------------| -| `meter` | Number:Energy | R | The meter reading of the smart meter. | -| `timestamp` | DateTime | R | The date and time for which the meter reading. | +| Channel | Type | Read/Write | Description | +|-------------|---------------|------------|--------------------------------------------------------| +| `meter` | Number:Energy | R | The meter reading of the smart meter. | +| `timestamp` | DateTime | R | The date and time for which the meter reading is taken | Channels are refreshed every 900s. diff --git a/bundles/org.openhab.binding.smgw/src/main/resources/OH-INF/i18n/smgw.properties b/bundles/org.openhab.binding.smgw/src/main/resources/OH-INF/i18n/smgw.properties index 5ceb32877312c..20c70e230c402 100644 --- a/bundles/org.openhab.binding.smgw/src/main/resources/OH-INF/i18n/smgw.properties +++ b/bundles/org.openhab.binding.smgw/src/main/resources/OH-INF/i18n/smgw.properties @@ -5,8 +5,8 @@ addon.smgw.description = This integrates the PPC Smart Meter Gateways. # thing types -thing-type.smgw.smgw.label = Smartmeter Gateway -thing-type.smgw.smgw.description = A Smartmeter Gateway +thing-type.smgw.smgw.label = Smart Meter Gateway +thing-type.smgw.smgw.description = A Smart Meter Gateway thing-type.smgw.smgw.channel.meter.label = Meter Reading # thing types config diff --git a/bundles/org.openhab.binding.smgw/src/main/resources/OH-INF/thing/thing-types.xml b/bundles/org.openhab.binding.smgw/src/main/resources/OH-INF/thing/thing-types.xml index 40c1283e6bcf8..52778f8b6f961 100644 --- a/bundles/org.openhab.binding.smgw/src/main/resources/OH-INF/thing/thing-types.xml +++ b/bundles/org.openhab.binding.smgw/src/main/resources/OH-INF/thing/thing-types.xml @@ -6,8 +6,8 @@ - - A Smartmeter Gateway + + A Smart Meter Gateway ElectricMeter diff --git a/bundles/org.openhab.binding.smhi/README.md b/bundles/org.openhab.binding.smhi/README.md index a414e13495d52..becdc04f1dfea 100644 --- a/bundles/org.openhab.binding.smhi/README.md +++ b/bundles/org.openhab.binding.smhi/README.md @@ -6,7 +6,7 @@ It can get forecasts for the nordic countries (Sweden, Norway, Denmark and Finla ## Supported Things The binding support only one thing-type: forecast. -The thing can be configured to get hourly forecasts for up to 24 hours, and daily forecasts for up to 10 days. +The Thing can be configured to get hourly forecasts for up to 24 hours, and daily forecasts for up to 10 days. ## Discovery @@ -14,7 +14,7 @@ This binding does not support automatic discovery. ## Thing Configuration -The forecast thing needs to be configured with the latitude and longitude for the location of the forecast. +The forecast Thing needs to be configured with the latitude and longitude for the location of the forecast. You can also choose for which hours and which days you would like to get forecasts. | Parameter | Description | Required | diff --git a/bundles/org.openhab.binding.smhi/src/main/resources/OH-INF/i18n/smhi.properties b/bundles/org.openhab.binding.smhi/src/main/resources/OH-INF/i18n/smhi.properties index 4b81988b8cabf..1ddaa9fb3e57e 100644 --- a/bundles/org.openhab.binding.smhi/src/main/resources/OH-INF/i18n/smhi.properties +++ b/bundles/org.openhab.binding.smhi/src/main/resources/OH-INF/i18n/smhi.properties @@ -261,7 +261,7 @@ channel-type.smhi.wsymb2.state.option.-1 = Missing data channel-type.smhi.wsymb2.state.option.1 = Clear sky channel-type.smhi.wsymb2.state.option.2 = Nearly clear sky channel-type.smhi.wsymb2.state.option.3 = Variable cloudiness -channel-type.smhi.wsymb2.state.option.4 = Halfclear sky +channel-type.smhi.wsymb2.state.option.4 = Half Clear Sky channel-type.smhi.wsymb2.state.option.5 = Cloudy sky channel-type.smhi.wsymb2.state.option.6 = Overcast channel-type.smhi.wsymb2.state.option.7 = Fog @@ -288,4 +288,6 @@ channel-type.smhi.wsymb2.state.option.27 = Heavy snowfall # TODO: end +# channel types + thing-status.invalidCoordinates = Coordinates outside valid area diff --git a/bundles/org.openhab.binding.smhi/src/main/resources/OH-INF/thing/channel-types.xml b/bundles/org.openhab.binding.smhi/src/main/resources/OH-INF/thing/channel-types.xml index c847fb2c243b2..7ff1b1d197c9c 100644 --- a/bundles/org.openhab.binding.smhi/src/main/resources/OH-INF/thing/channel-types.xml +++ b/bundles/org.openhab.binding.smhi/src/main/resources/OH-INF/thing/channel-types.xml @@ -513,7 +513,7 @@ - + diff --git a/bundles/org.openhab.binding.smsmodem/README.md b/bundles/org.openhab.binding.smsmodem/README.md index 0f45c5575c5c5..f274b4aad7c3c 100644 --- a/bundles/org.openhab.binding.smsmodem/README.md +++ b/bundles/org.openhab.binding.smsmodem/README.md @@ -27,8 +27,8 @@ Two things are supported by this binding: ## Discovery -There is no discovery process for _smsmodembridge_ or _smsmodemremotebridge_ thing. -A _smsconversation_ thing will be discovered and added to the inbox everytime the modem should receive a SMS by a new sender. +There is no discovery process for _smsmodembridge_ or _smsmodemremotebridge_ Thing. +A _smsconversation_ Thing will be discovered and added to the inbox everytime the modem should receive a SMS by a new sender. ## Thing Configuration @@ -56,7 +56,7 @@ The other parameters are optional: | pollingInterval | integer | Delay between two checks for new message (in seconds) | | delayBetweenSend | integer | Delay to wait between two messages post (in milliseconds, could be necessary for slow modem) | -The _smsconversation_ thing is just a shortcut to address/receive messages with a specific msisdn. It is not mandatory to use the binding, as you can use action and trigger channel to send/receive a message once the smsmodem bridge is configured. +The _smsconversation_ Thing is just a shortcut to address/receive messages with a specific msisdn. It is not mandatory to use the binding, as you can use action and trigger channel to send/receive a message once the smsmodem bridge is configured. | Parameter Name | type | description | | -------------- | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | @@ -96,7 +96,7 @@ val smsAction = getActions("smsmodem","smsmodem:smsmodembridge:") var smsAction = actions.get("smsmodem","smsmodem:smsmodembridge:"); ``` -Where uid is the Bridge UID of the _smsmodembridge_ thing. +Where uid is the Bridge UID of the _smsmodembridge_ Thing. Once this action instance is retrieved, you can invoke the 'send' method on it: diff --git a/bundles/org.openhab.binding.smsmodem/src/main/resources/OH-INF/i18n/smsmodem.properties b/bundles/org.openhab.binding.smsmodem/src/main/resources/OH-INF/i18n/smsmodem.properties index 7dccaf3984ae7..86a8db4ee0dcb 100644 --- a/bundles/org.openhab.binding.smsmodem/src/main/resources/OH-INF/i18n/smsmodem.properties +++ b/bundles/org.openhab.binding.smsmodem/src/main/resources/OH-INF/i18n/smsmodem.properties @@ -1,23 +1,27 @@ # add-on addon.smsmodem.name = SMSModem Binding -addon.smsmodem.description = This binding handle a GSM modem connected to the openHAB server (Serial), or exposed on the network. It can send and receive SMS. +addon.smsmodem.description = This binding handles a GSM modem connected to the openHAB server (Serial), or exposed on the network. It can send and receive SMS. # thing types thing-type.smsmodem.smsconversation.label = SMS Conversation thing-type.smsmodem.smsconversation.description = Represents a conversation with a SMS recipient. thing-type.smsmodem.smsmodembridge.label = SMSModem Bridge -thing-type.smsmodem.smsmodembridge.description = This bridge represents a serial modem. +thing-type.smsmodem.smsmodembridge.description = This bridge represents a modem. thing-type.smsmodem.smsmodemremotebridge.label = SMSModem Remote Bridge -thing-type.smsmodem.smsmodemremotebridge.description = This bridge represents a modem exposed over the network. +thing-type.smsmodem.smsmodemremotebridge.description = This bridge represents a modem on a network controlled computer. # thing types config thing-type.config.smsmodem.smsconversation.deliveryReport.label = Delivery Report thing-type.config.smsmodem.smsconversation.deliveryReport.description = Ask network for delivery report. thing-type.config.smsmodem.smsconversation.encoding.label = Encoding -thing-type.config.smsmodem.smsconversation.encoding.description = Encoding for the message to send. Default Enc7. +thing-type.config.smsmodem.smsconversation.encoding.description = Encoding for the message to send. Default Enc7 +thing-type.config.smsmodem.smsconversation.encoding.option.Enc7 = Enc7 +thing-type.config.smsmodem.smsconversation.encoding.option.Enc8 = Enc8 +thing-type.config.smsmodem.smsconversation.encoding.option.EncUcs2 = EncUcs2 +thing-type.config.smsmodem.smsconversation.encoding.option.EncCustom = EncCustom thing-type.config.smsmodem.smsconversation.recipient.label = Recipient Number thing-type.config.smsmodem.smsconversation.recipient.description = The SMS number of the recipient. thing-type.config.smsmodem.smsmodembridge.baud.label = Baud @@ -29,7 +33,7 @@ thing-type.config.smsmodem.smsmodembridge.serialPort.description = Serial port o thing-type.config.smsmodem.smsmodembridge.simPin.label = Pin Code thing-type.config.smsmodem.smsmodembridge.simPin.description = The pin (if set) for the sim card. thing-type.config.smsmodem.smsmodemremotebridge.delayBetweenSend.description = Delay between two messages (in milliseconds). Useful for slow modem. -thing-type.config.smsmodem.smsmodemremotebridge.ip.label = Address +thing-type.config.smsmodem.smsmodemremotebridge.ip.label = IP Address thing-type.config.smsmodem.smsmodemremotebridge.ip.description = IP address of the remote computer. thing-type.config.smsmodem.smsmodemremotebridge.networkPort.label = Network Port thing-type.config.smsmodem.smsmodemremotebridge.networkPort.description = Network port to join the remote service (a.k.a. ser2net). diff --git a/bundles/org.openhab.binding.sncf/README.md b/bundles/org.openhab.binding.sncf/README.md index 6814df1209278..0daace5d35d45 100644 --- a/bundles/org.openhab.binding.sncf/README.md +++ b/bundles/org.openhab.binding.sncf/README.md @@ -3,17 +3,17 @@ The SNCF binding provides real-time data(*) for each train, bus, tramway... station in France. This is based on live API provided by DIGITALSNCF. -Get your API key on [DIGITALSNCF web site](https://www.digital.sncf.com/startup/api/token-developpeur) +Get your API key on the [DIGITALSNCF website](https://www.digital.sncf.com/startup/api/token-developpeur). -Note: SNCF Api is based on the open [API Navitia](https://doc.navitia.io/#getting-started). +Note: SNCF API is based on the open [API Navitia](https://doc.navitia.io/#getting-started). This binding uses a very small subset of it, restricted to its primary purpose. (*) According to DIGITALSNCF Transilien may only be available for schedule, maybe not real-time. ## Supported Things -Bridge: The binding supports a bridge to connect to the [DIGITALSNCF service]( developpeur). -A bridge uses the thing ID "api". +Bridge: The binding supports a bridge to connect to the [DIGITALSNCF service](https://www.digital.sncf.com/startup/api/token-developpeur). +A bridge uses the Thing ID "api". Station: Represents a given bus, train station. @@ -21,11 +21,11 @@ Of course, you can add as many stations as needed. ## Discovery -This binding takes care of auto discovery. This method is strongly recommended as it is the only way to get proper station ID depending upon transportation type. +This binding takes care of auto-discovery. This method is strongly recommended as it is the only way to get the proper station ID depending upon transportation type. To enable auto-discovery, your location system setting must be defined. Once done, at first launch, discovery will search every station in a radius of 2000 m around the system, extending it by step of 500 m until it finds a first set of results. -Every following manual successive launch will extend this radius by 500 m, increasing the number of stations discovered. +Each subsequent manual launch will extend this radius by 500 m, increasing the number of stations discovered. ## Binding Configuration @@ -41,17 +41,17 @@ The bridge configuration only holds the api key: ## Thing Configuration -The 'Station' thing has only one configuration parameter: +The 'Station' Thing has only one configuration parameter: | Parameter | Description | | ----------- | ----------------------------------------------------- | | stopPointId | Identifier of the station in the DIGITALSNCF network. | -The thing will auto-update depending on the timestamp of the earliest event detected to trigger (arrival or departure). +The Thing will auto-update depending on the timestamp of the earliest event detected to trigger (arrival or departure). ## Channels -The Station thing holds two groups of channels (arrivals and departures) containing these channels: +The Station thThinging holds two groups of channels (arrivals and departures) containing these channels: | Channel ID | Item Type | Description | | ---------- | --------- | ------------------------------------------- | diff --git a/bundles/org.openhab.binding.sncf/src/main/resources/OH-INF/i18n/sncf.properties b/bundles/org.openhab.binding.sncf/src/main/resources/OH-INF/i18n/sncf.properties index 68ccf324b0cef..175efe5a0693f 100644 --- a/bundles/org.openhab.binding.sncf/src/main/resources/OH-INF/i18n/sncf.properties +++ b/bundles/org.openhab.binding.sncf/src/main/resources/OH-INF/i18n/sncf.properties @@ -23,7 +23,7 @@ thing-type.config.sncf.station.stopPointId.description = The stop point ID of th # channel group types -channel-group-type.sncf.passage.label = Other +channel-group-type.sncf.passage.label = Passage # channel types diff --git a/bundles/org.openhab.binding.sncf/src/main/resources/OH-INF/thing/station.xml b/bundles/org.openhab.binding.sncf/src/main/resources/OH-INF/thing/station.xml index 65ec4d2fc4903..953d6fe04e368 100644 --- a/bundles/org.openhab.binding.sncf/src/main/resources/OH-INF/thing/station.xml +++ b/bundles/org.openhab.binding.sncf/src/main/resources/OH-INF/thing/station.xml @@ -34,7 +34,7 @@ - + @@ -76,7 +76,7 @@ DateTime Timestamp of the future event. - time + Time Forecast Timestamp diff --git a/bundles/org.openhab.binding.snmp/README.md b/bundles/org.openhab.binding.snmp/README.md index 46d87e6804b68..10fc364fd057b 100644 --- a/bundles/org.openhab.binding.snmp/README.md +++ b/bundles/org.openhab.binding.snmp/README.md @@ -60,12 +60,12 @@ It defaults to 161. By using the `timeout` and `retries` parameters the timeout/error behaviour can be defined. A single request times out after `timeout` ms. -After `retries` timeouts the refresh operation is considered to be fails and the status of the thing set accordingly. +After `retries` timeouts the refresh operation is considered to have failed and the status of the Thing is set accordingly. The default values are `timeout=1500` and `retries=2`. ### `target` -The `target` thing has two optional configuration parameters: `community` and `version`. +The `target` Thing has two optional configuration parameters: `community` and `version`. The SNMP community for SNMP version 2c can be set with the `community` parameter. It defaults to `public`. @@ -77,7 +77,7 @@ The default is `v1`. ### `target3` -The `target3` thing has an additional mandatory parameter: `user`. +The `target3` Thing has an additional mandatory parameter: `user`. This value of this parameter is named "securityName" or "userName" in most agents. Optional configuration parameters are: `securityModel`, `authProtocol`, `authPassphrase`, `privProtocol` and `privPassphrase`. @@ -98,7 +98,7 @@ Other possible values for `privProtocol` are `DES3`, `AES128`, `AES192` and `AES ## Channels -The `target` thing has no fixed channels. +The `target` Thing has no fixed channels. It can be extended with channels of type `number`, `string`, `switch`. All channel-types have one mandatory parameter: `oid`. @@ -123,7 +123,7 @@ The `HEXSTRING` datatype converts a hexadecimal string (e.g. `aa bb 11`) to the `number`-type channels can have a parameter `unit` if their `mode` is set to `READ`. This will result in a state update applying [UoM](https://www.openhab.org/docs/concepts/units-of-measurement.html) to the received data if the UoM symbol is recognised. -`switch`-type channels send a pre-defined value if they receive `ON` or `OFF` command in `WRITE` or `READ_WRITE` mode. +`switch`-type channels send a predefined value if they receive `ON` or `OFF` commands in `WRITE` or `READ_WRITE` mode. In `READ`, `READ_WRITE` or `TRAP` mode they change to either `ON` or `OFF` on these values. The parameters used for defining the values are `onvalue` and `offvalue`. The `datatype` parameter is used to convert the configuration strings to the needed values. diff --git a/bundles/org.openhab.binding.snmp/src/main/resources/OH-INF/i18n/snmp.properties b/bundles/org.openhab.binding.snmp/src/main/resources/OH-INF/i18n/snmp.properties index 322261c92e565..f0d5fd12e56b0 100644 --- a/bundles/org.openhab.binding.snmp/src/main/resources/OH-INF/i18n/snmp.properties +++ b/bundles/org.openhab.binding.snmp/src/main/resources/OH-INF/i18n/snmp.properties @@ -36,8 +36,6 @@ thing-type.config.snmp.target3.authProtocol.option.HMAC128SHA224 = HMAC128SHA224 thing-type.config.snmp.target3.authProtocol.option.HMAC192SHA256 = HMAC192SHA256 thing-type.config.snmp.target3.authProtocol.option.HMAC256SHA384 = HMAC256SHA384 thing-type.config.snmp.target3.authProtocol.option.HMAC384SHA512 = HMAC384SHA512 -thing-type.config.snmp.target3.engineId.label = Engine ID -thing-type.config.snmp.target3.engineId.description = The authorization engine ID of this target in hexadecimal notation (22-64 characters) thing-type.config.snmp.target3.hostname.label = Target Host thing-type.config.snmp.target3.hostname.description = Hostname or IP address of target host thing-type.config.snmp.target3.port.label = Port diff --git a/bundles/org.openhab.binding.solaredge/README.md b/bundles/org.openhab.binding.solaredge/README.md index 69f1b7e29ebaa..6e2864efc53dd 100644 --- a/bundles/org.openhab.binding.solaredge/README.md +++ b/bundles/org.openhab.binding.solaredge/README.md @@ -1,17 +1,17 @@ # SolarEdge Binding -The SolarEdge binding is used to get live data from from SolarEdge inverters via the central web api. This binding should in general be compatible with all inverter models that upload data to the solaredge portal. +The SolarEdge binding retrieves live data from SolarEdge inverters via the central web API. This binding should in general be compatible with all inverter models that upload data to the SolarEdge portal. Only read access is supported. ## Supported Things -This binding provides only one thing type: "generic" which is the inverter itself. -As the name suggests it is generic which means it applies to all available inverters. -Create one inverter thing per physical inverter installation available in your home(s). -Additional stuff like batteries is automatically supported. -Inverters which have a meter attached allow more detailed measuring. -Either a SolarEdge modbus meter or a S0 meter (export or consumption meter) can be used. -While on the one hand the S0 meter is the cheaper solution the solaredge meter on the other hand can be used as combined import+export meter and therefore allows even more detailed measurements. +This binding provides only one Thing type: "generic," which is the inverter itself. +As the name suggests, it is generic, which means it applies to all available inverters. +Create one inverter Thing per physical inverter installation available in your home(s). +Additional components such as batteries are automatically supported. +Inverters that have a meter attached allow more detailed measurements. +Either a SolarEdge Modbus meter or an S0 meter (export or consumption meter) can be used. +While the S0 meter is the cheaper solution, the SolarEdge meter can be used as a combined import and export meter and therefore allows even more detailed measurements. For more details please see here: - [SolarEdge meter](https://www.solaredge.com/products/pv-monitoring/accessories/css-wattnode-modbus-meter) @@ -24,49 +24,49 @@ Auto-Discovery is not supported, as access requires authentication. ## Thing Configuration -The following configuration parameters are available for this thing: +The following configuration parameters are available for this Thing: - **tokenOrApiKey** (required) -Either the [official API Key](https://www.youtube.com/watch?v=iR26nmL5bXg) for using the public API or when using the inofficial private API: a token which can be retrieved from browser's cookie store when logged into the SolarEdge website. +Either the [official API key](https://www.youtube.com/watch?v=iR26nmL5bXg) for using the public API, or when using the unofficial private API: a token that can be retrieved from your browser cookie store when logged into the SolarEdge website. It is called "SPRING_SECURITY_REMEMBER_ME_COOKIE". When using this token, see also `usePrivateApi` and `meterInstalled`. -E.g. for Firefox, use the built-in [Storage Inspector](https://developer.mozilla.org/en-US/docs/Tools/Storage_Inspector) to retrieve the token. +For Firefox, use the built-in [Storage Inspector](https://developer.mozilla.org/en-US/docs/Tools/Storage_Inspector) to retrieve the token. - **solarId** (required)
-Id of your inverter at SolarEdge (can be found in the URL after successful login: **<solarId>** /#/dashboard) +ID of your inverter at SolarEdge (can be found in the URL after successful login: **<solarId>** /#/dashboard) - **usePrivateApi** (optional)
-can be set to true to use the private API. -Private API has no limit regarding query frequency but is less stable. -Private API will only gather live data if a meter is available. -The official public API has a limit of 300 queries per day but should be much more reliable/stable. -Set this to true when using token retrieved from browser in `tokenOrApiKey`. -See also `meterInstalled`. (default = false) +Can be set to true to use the private API. +The private API has no limit regarding query frequency but is less stable. +The private API will only gather live data if a meter is available. +The official public API has a limit of 300 queries per day but should be more reliable and stable. +Set this to true when using a token retrieved from the browser in `tokenOrApiKey`. +See also `meterInstalled`. (Default: false) - **meterInstalled** (optional)
-can be set to true for setups that contain a meter which is connected to the inverter. +Can be set to true for setups that contain a meter that is connected to the inverter. A meter allows more detailed data retrieval. -This must be set to true when using token retrieved from browser in `tokenOrApiKey`. -This can be set either to true or false when using the API key. (default = false) +This must be set to true when using a token retrieved from the browser in `tokenOrApiKey`. +This can be set either to true or false when using the API key. (Default: false) - **liveDataPollingInterval** (optional)
-interval (minutes) in which live data values are retrieved from Solaredge. -Setting less than 10 minutes is only allowed when using private API. (default = 10) +Interval (minutes) in which live data values are retrieved from SolarEdge. +Setting less than 10 minutes is only allowed when using the private API. (Default: 10) - **aggregateDataPollingInterval** (optional)
- interval (minutes) in which aggregate data values are retrieved from Solaredge. - Setting less than 60 is only allowed when using private API. (default = 60) +Interval (minutes) in which aggregate data values are retrieved from SolarEdge. +Setting less than 60 minutes is only allowed when using the private API. (Default: 60) ## Channels -Available channels depend on the specific setup e.g. if a meter and/or a battery is present. +Available channels depend on the specific setup, e.g., if a meter and/or a battery is present. All numeric channels use the [UoM feature](https://openhab.org/blog/2018/02/22/units-of-measurement.html). -This means you can easily change the desired unit e.g. MWh instead of kWh just in your item definition. -Following channels are currently available: +This means you can easily change the desired unit (e.g., MWh instead of kWh) just in your item definition. +The following channels are currently available: | Channel Type ID | Item Type | Description | Remark | | --------------------------------------------- | -------------------- | ------------------------------------------------ | ------------------------------------------------ | -| live#production | Number:Power | Current PV production | general available | +| live#production | Number:Power | Current PV production | generally available | | live#pv_status | String | Current PV status | requires meter attached and 'meterInstalled' set | | live#consumption | Number:Power | Current power consumption | requires meter attached and 'meterInstalled' set | | live#load_status | String | Current load status | requires meter attached and 'meterInstalled' set | @@ -82,28 +82,28 @@ Following channels are currently available: | aggregate_day#production | Number:Energy | Day Aggregate PV production | general available | | aggregate_day#consumption | Number:Energy | Day Aggregate power consumption | requires meter attached and 'meterInstalled' set | | aggregate_day#selfConsumptionForConsumption | Number:Energy | Day Aggregate self consumption (incl battery) | requires meter attached and 'meterInstalled' set | -| aggregate_day#selfConsumptionCoverage | Number:Dimensionless | Day Coverage of consumption by self production | requires meter attached and 'meterInstalled' set | +| aggregate_day#selfConsumptionCoverage | Number:Dimensionless | Day coverage of consumption by self‑production | requires meter attached and 'meterInstalled' set | | aggregate_day#batterySelfConsumption | Number:Energy | Day Aggregate self consumption from battery | requires battery and private API activated | | aggregate_day#import | Number:Energy | Day Aggregate import from grid | requires meter attached and 'meterInstalled' set | | aggregate_day#export | Number:Energy | Day Aggregate export to grid | requires meter attached and 'meterInstalled' set | | aggregate_week#production | Number:Energy | Week Aggregate PV production | requires meter attached and 'meterInstalled' set | | aggregate_week#consumption | Number:Energy | Week Aggregate power consumption | requires meter attached and 'meterInstalled' set | | aggregate_week#selfConsumptionForConsumption | Number:Energy | Week Aggregate self consumption (incl battery) | requires meter attached and 'meterInstalled' set | -| aggregate_week#selfConsumptionCoverage | Number:Dimensionless | Week Coverage of consumption by self production | requires meter attached and 'meterInstalled' set | +| aggregate_week#selfConsumptionCoverage | Number:Dimensionless | Week coverage of consumption by self‑production | requires meter attached and 'meterInstalled' set | | aggregate_week#batterySelfConsumption | Number:Energy | Week Aggregate self consumption from battery | requires battery and private API activated | | aggregate_week#import | Number:Energy | Week Aggregate import from grid | requires meter attached and 'meterInstalled' set | | aggregate_week#export | Number:Energy | Week Aggregate export to grid | requires meter attached and 'meterInstalled' set | | aggregate_month#production | Number:Energy | Month Aggregate PV production | general available | | aggregate_month#consumption | Number:Energy | Month Aggregate power consumption | requires meter attached and 'meterInstalled' set | | aggregate_month#selfConsumptionForConsumption | Number:Energy | Month Aggregate self consumption (incl battery) | requires meter attached and 'meterInstalled' set | -| aggregate_month#selfConsumptionCoverage | Number:Dimensionless | Month Coverage of consumption by self production | requires meter attached and 'meterInstalled' set | +| aggregate_month#selfConsumptionCoverage | Number:Dimensionless | Month coverage of consumption by self‑production | requires meter attached and 'meterInstalled' set | | aggregate_month#batterySelfConsumption | Number:Energy | Month Aggregate self consumption from battery | requires battery and private API activated | | aggregate_month#import | Number:Energy | Month Aggregate import from grid | requires meter attached and 'meterInstalled' set | | aggregate_month#export | Number:Energy | Month Aggregate export to grid | requires meter attached and 'meterInstalled' set | | aggregate_year#production | Number:Energy | Year Aggregate PV production | general available | | aggregate_year#consumption | Number:Energy | Year Aggregate power consumption | requires meter attached and 'meterInstalled' set | | aggregate_year#selfConsumptionForConsumption | Number:Energy | Year Aggregate self consumption (incl battery) | requires meter attached and 'meterInstalled' set | -| aggregate_year#selfConsumptionCoverage | Number:Dimensionless | Year Coverage of consumption by self production | requires meter attached and 'meterInstalled' set | +| aggregate_year#selfConsumptionCoverage | Number:Dimensionless | Year coverage of consumption by self‑production | requires meter attached and 'meterInstalled' set | | aggregate_year#batterySelfConsumption | Number:Energy | Year Aggregate self consumption from battery | requires battery and private API activated | | aggregate_year#import | Number:Energy | Year Aggregate import from grid | requires meter attached and 'meterInstalled' set | | aggregate_year#export | Number:Energy | Year Aggregate export to grid | requires meter attached and 'meterInstalled' set | @@ -112,25 +112,25 @@ Following channels are currently available: ### Thing -- minimum configuration +- Minimum configuration ```java solaredge:generic:se2200 [ tokenOrApiKey="...", solarId="..."] ``` -- with pollingIntervals +- With polling intervals ```java solaredge:generic:se2200[ tokenOrApiKey="...", solarId="...", liveDataPollingInterval=..., aggregateDataPollingInterval=... ] ``` -- maximum version +- Full configuration ```java solaredge:generic:se2200 [ tokenOrApiKey="secret", solarId="4711", meterInstalled=true, usePrivateApi=true, liveDataPollingInterval=15, aggregateDataPollingInterval=60 ] ``` -- multiple inverters +- Multiple inverters ```java solaredge:generic:home1 [ tokenOrApiKey="...", solarId="..."] diff --git a/bundles/org.openhab.binding.solaredge/src/main/resources/OH-INF/config/config.xml b/bundles/org.openhab.binding.solaredge/src/main/resources/OH-INF/config/config.xml index 658fa975a1096..ad002c6395c6b 100644 --- a/bundles/org.openhab.binding.solaredge/src/main/resources/OH-INF/config/config.xml +++ b/bundles/org.openhab.binding.solaredge/src/main/resources/OH-INF/config/config.xml @@ -19,38 +19,38 @@ - API Key to access the official solaredge API. If using Private API this must be fills with Spring - Security Token (Check Browser Cookies when logged into website) + API key to access the official SolarEdge API. If using the private API, this must be filled with the + Spring Security token (check browser cookies when logged into the website). password - The ID to identify the solarplant at SolarEdge. + The ID that identifies the solar plant at SolarEdge. - If your setup contains a modbus meter, please activate this, to get more detailed data. + If your setup contains a Modbus meter, enable this to get more detailed data. false - Private API allows to avoid the limit of 300 API calls per day but is less documented and therefore less - stable. If no meter is available you cannot use the private API, it does not provide live data for this kind of - setup. + The private API allows avoiding the limit of 300 API calls per day but is less documented and therefore + less stable. If no meter is available you cannot use the private API, as it does not provide live data for this kind + of setup. false - - Interval in which live data is polled from SolarEdge (in minutes). If not using private API this should - not be less than 10 minutes. + + Interval in which live data is polled from SolarEdge (in minutes). If not using the private API this + should not be less than 10 minutes. 10 - - Interval in which aggregate data is polled from SolarEdge (in minutes). If not using private API this - must not be less than 60 minutes. + + Interval in which aggregate data is polled from SolarEdge (in minutes). If not using the private API + this must not be less than 60 minutes. 60
diff --git a/bundles/org.openhab.binding.solaredge/src/main/resources/OH-INF/i18n/solaredge.properties b/bundles/org.openhab.binding.solaredge/src/main/resources/OH-INF/i18n/solaredge.properties index d553da644fa14..96712f4e9c29a 100644 --- a/bundles/org.openhab.binding.solaredge/src/main/resources/OH-INF/i18n/solaredge.properties +++ b/bundles/org.openhab.binding.solaredge/src/main/resources/OH-INF/i18n/solaredge.properties @@ -6,28 +6,28 @@ addon.solaredge.description = This is the binding for SolarEdge. # thing types thing-type.solaredge.generic.label = SolarEdge -thing-type.solaredge.generic.description = data retrieved from SolarEdge web interface +thing-type.solaredge.generic.description = Data retrieved from the SolarEdge web interface. # thing types config -thing-type.config.solaredge.web.aggregateDataPollingInterval.label = Polling Interval -thing-type.config.solaredge.web.aggregateDataPollingInterval.description = Interval in which aggregate data is polled from SolarEdge (in minutes). If not using private API this must not be less than 60 minutes. +thing-type.config.solaredge.web.aggregateDataPollingInterval.label = Aggregate Data Polling Interval +thing-type.config.solaredge.web.aggregateDataPollingInterval.description = Interval in which aggregate data is polled from SolarEdge (in minutes). If not using the private API this must not be less than 60 minutes. thing-type.config.solaredge.web.group.authentication.label = Authentication thing-type.config.solaredge.web.group.authentication.description = Authentication settings. thing-type.config.solaredge.web.group.connection.label = Connection thing-type.config.solaredge.web.group.connection.description = Connection settings. thing-type.config.solaredge.web.group.general.label = General thing-type.config.solaredge.web.group.general.description = General settings. -thing-type.config.solaredge.web.liveDataPollingInterval.label = Polling Interval -thing-type.config.solaredge.web.liveDataPollingInterval.description = Interval in which live data is polled from SolarEdge (in minutes). If not using private API this should not be less than 10 minutes. +thing-type.config.solaredge.web.liveDataPollingInterval.label = Live Data Polling Interval +thing-type.config.solaredge.web.liveDataPollingInterval.description = Interval in which live data is polled from SolarEdge (in minutes). If not using the private API this should not be less than 10 minutes. thing-type.config.solaredge.web.meterInstalled.label = Meter Installed -thing-type.config.solaredge.web.meterInstalled.description = If your setup contains a modbus meter, please activate this, to get more detailed data. +thing-type.config.solaredge.web.meterInstalled.description = If your setup contains a Modbus meter, enable this to get more detailed data. thing-type.config.solaredge.web.solarId.label = Solar ID -thing-type.config.solaredge.web.solarId.description = The ID to identify the solarplant at SolarEdge. +thing-type.config.solaredge.web.solarId.description = The ID that identifies the solar plant at SolarEdge. thing-type.config.solaredge.web.tokenOrApiKey.label = Token or API Key -thing-type.config.solaredge.web.tokenOrApiKey.description = API Key to access the official solaredge API. If using Private API this must be fills with Spring Security Token (Check Browser Cookies when logged into website) +thing-type.config.solaredge.web.tokenOrApiKey.description = API key to access the official SolarEdge API. If using the private API, this must be filled with the Spring Security token (check browser cookies when logged into the website). thing-type.config.solaredge.web.usePrivateApi.label = Private API -thing-type.config.solaredge.web.usePrivateApi.description = Private API allows to avoid the limit of 300 API calls per day but is less documented and therefore less stable. If no meter is available you cannot use the private API, it does not provide live data for this kind of setup. +thing-type.config.solaredge.web.usePrivateApi.description = The private API allows avoiding the limit of 300 API calls per day but is less documented and therefore less stable. If no meter is available you cannot use the private API, as it does not provide live data for this kind of setup. # channel group types diff --git a/bundles/org.openhab.binding.solaredge/src/main/resources/OH-INF/thing/generic-thing.xml b/bundles/org.openhab.binding.solaredge/src/main/resources/OH-INF/thing/generic-thing.xml index aaea43fa68b18..9ed5191e4fcf5 100644 --- a/bundles/org.openhab.binding.solaredge/src/main/resources/OH-INF/thing/generic-thing.xml +++ b/bundles/org.openhab.binding.solaredge/src/main/resources/OH-INF/thing/generic-thing.xml @@ -5,7 +5,7 @@ xsi:schemaLocation="https://openhab.org/schemas/thing-description/v1.0.0 https://openhab.org/schemas/thing-description-1.0.0.xsd"> - data retrieved from SolarEdge web interface + Data retrieved from the SolarEdge web interface. WebService diff --git a/bundles/org.openhab.binding.solarforecast/README.md b/bundles/org.openhab.binding.solarforecast/README.md index ddc28e0be819f..72bc0c8823423 100644 --- a/bundles/org.openhab.binding.solarforecast/README.md +++ b/bundles/org.openhab.binding.solarforecast/README.md @@ -1,21 +1,21 @@ # SolarForecast Binding -This binding provides data from Solar Forecast services. -Use it to estimate your daily production, plan electric consumers like Electric Vehicle charging, heating or HVAC. -Look ahead the next days in order to identify surplus / shortages in your energy planning. +This binding provides data from solar forecast services. +Use it to estimate your daily production and plan electric consumers like EV charging, heating, or HVAC. +Look ahead to the next days to identify surpluses/shortages in your energy planning. -Supported Services +## Supported Services - [Solcast](https://solcast.com/) - Free [Hobbyist Plan](https://toolkit.solcast.com.au/register/hobbyist) with registration - [Forecast.Solar](https://forecast.solar/) - Public, Personal and Professional [plans](https://forecast.solar/#accounts) available -Display Power values of Forecast and PV Inverter items +Display power values of forecast and PV inverter items ![Solar Forecast Power Chart](doc/SolcastPower.png) -Display Energy values of Forecast and PV inverter items +Display energy values of forecast and PV inverter items Yellow line shows _Daily Total Forecast_. ![Solar Forecast Energy Chart](doc/SolcastCumulated.png) @@ -27,23 +27,23 @@ Each service needs one `xx-site` for your location and at least one photovoltaic | Thing Type ID | Label | Subscription | |-----------------------|-----------------------------------|---------------| | sc-site | Solcast service site definition | yes (free) | -| sc-plane | Solcast PV Plane | yes (free) | -| fs-site | Forecast Solar Site | no | -| fs-plane | Forecast Solar Plane | no | -| adjustable-fs-site | Adjustable Forecast Solar Site | yes (paid) | -| adjustable-fs-plane | Adjustable Forecast Solar Plane | yes (paid) | -| smart-fs-site | Smart Forecast Solar Site | no | -| smart-fs-plane | Smart Forecast Solar Plane | no | +| sc-plane | Solcast PV plane | yes (free) | +| fs-site | Forecast Solar site | no | +| fs-plane | Forecast Solar plane | no | +| adjustable-fs-site | Adjustable Forecast Solar site | yes (paid) | +| adjustable-fs-plane | Adjustable Forecast Solar plane | yes (paid) | +| smart-fs-site | Smart Forecast Solar site | no | +| smart-fs-plane | Smart Forecast Solar plane | no | ## Solcast Configuration -[Solcast service](https://solcast.com/) requires a personal registration with an e-mail address. +[Solcast service](https://solcast.com/) requires a personal registration with an email address. A free version for your personal home PV system is available in [Hobbyist Plan](https://toolkit.solcast.com.au/register/hobbyist) (Limited to 10 API requests per day). You need to configure your home photovoltaic system within the web interface. The `resourceId` for each PV plane is provided afterwards. -In order to receive proper timestamps double check your time zone in _openHAB - Settings - Regional Settings_. +In order to receive proper timestamps, double-check your time zone in _openHAB - Settings - Regional Settings_. Correct time zone is necessary to show correct forecast times in UI. ### Solcast Bridge Configuration @@ -55,14 +55,14 @@ Correct time zone is necessary to show correct forecast times in UI. `apiKey` can be obtained in your [Account Settings](https://toolkit.solcast.com.au/account) -`timeZone` can be left empty to evaluate Regional Settings of your openHAB installation. +`timeZone` can be left empty to evaluate the Regional Settings of your openHAB installation. See [DateTime](#date-time) section for more information. ### Solcast Plane Configuration | Name | Type | Description | Default | Required | Advanced | |-----------------|---------|--------------------------------------------------------------------------|-----------------|----------|----------| -| resourceId | text | Resource Id of Solcast rooftop site | N/A | yes | no | +| resourceId | text | Resource ID of Solcast rooftop site | N/A | yes | no | | refreshInterval | integer | Forecast Refresh Interval in minutes (0 = disable automatic refresh) | 150 | yes | no | | guessActuals | boolean | Guess actual forecast values instead of placing an API call | true | yes | no | @@ -70,27 +70,27 @@ See [DateTime](#date-time) section for more information. `refreshInterval` of forecast data needs to respect the throttling of the Solcast service. -With parameter `guessActuals=true` a plane needs 1 API call per update. +With parameter `guessActuals=true`, a plane needs 1 API call per update. If not 2 API calls per update are placed. A refresh interval of 150 minutes will result in approx 10 calls per day. -With `refreshInterval = 0` the forecast data will not be updated by binding. +With `refreshInterval = 0`, the forecast data will not be updated by the binding. This gives the user the possibility to define an own update strategy in rules. See [manual update rule example](#solcast-manual-update) to update Solcast forecast data - after startup - every 2 hours only during daytime using [Astro Binding](https://www.openhab.org/addons/bindings/astro/) -With boolean configuration `guessActuals` `true` the binding will take over the previous forecast data and use them as _actual values_. -This will spare one API call. +With boolean configuration `guessActuals = true`, the binding will take the previous forecast data and use them as _actual values_. +This will save one API call. If set to `false` the 2 API calls are placed as in the previous versions. ## Solcast Channels Each `sc-plane` reports its own values. -The `sc-site` bridge sums up all attached `sc-plane` values and provides total forecast for your home location. +The `sc-site` bridge sums up all attached `sc-plane` values and provides the total forecast for your home location. -Channels are covering today's actual data with current, remaining and today's total prediction. +Channels cover today's actual data with current, remaining, and today's total prediction. Forecasts are delivered up to 6 days in advance. Scenarios are clustered in groups: @@ -114,7 +114,7 @@ Technical channels observing the update behavior are reported in `update` group. | Channel | Type | Description | |-------------------------|---------------|--------------------------------------------------------------| -| api-count | String | Number of requests send to Solcast API starting 0:00 UTC | +| api-count | String | Number of requests sent to the Solcast API starting 0:00 UTC | | latest-update | DateTime | Date and time of the latest forecast update | The `api-count` channel delivers a JSON object with 3 different counters: @@ -129,26 +129,26 @@ The `api-count` channel delivers a JSON object with 3 different counters: API Count Transformation Example -You can connect a Number item to this channel using a [JSONPATH transformation](https://www.openhab.org/addons/transformations/jsonpath/) referring the wanted JSON key e.g. `$.200`. +You can connect a Number item to this channel using a [JSONPATH transformation](https://www.openhab.org/addons/transformations/jsonpath/), referring to the desired JSON key, e.g., `$.200`. ## ForecastSolar Configuration -[ForecastSolar service](https://forecast.solar/) provides a [public free](https://forecast.solar/#accounts) plan. +[Forecast.Solar service](https://forecast.solar/) provides a [public free](https://forecast.solar/#accounts) plan. You can try it without any registration or other preconditions. ### ForecastSolar Bridge Configuration -| Name | Type | Description | Default | Required | -|------------------------|---------|---------------------------------------|--------------|----------| -| location | text | Location of Photovoltaic system. | empty | no | -| inverterKwp | decimal | Inverter Kilowatt Peak | N/A | no | -| apiKey | text | API Key | N/A | yes / no | +| Name | Type | Description | Default | Required | +|------------------------|---------|--------------------------------------|--------------|----------| +| location | text | Location of photovoltaic system | empty | no | +| inverterKwp | decimal | Inverter Kilowatt Peak | N/A | no | +| apiKey | text | API Key | N/A | yes / no | -`location` defines latitude, longitude values of your PV system. -In case of empty the location configured in openHAB is obtained. +`location` defines latitude and longitude values of your PV system. +If left empty, the location configured in openHAB is used. `inverterKwp` defines the maximum possible kilo watt capability of your inverter. -Used if your installed plane kWp is greater than inverter kWp. +Used if your installed plane kWp is greater than the inverter kWp. `apiKey` is mandatory for `adjustable-fs-site` commercial plan to calculate [forecast adjustment by forecast.solar](https://doc.forecast.solar/actual). It's optional for `fs-site` and `smart-fs-site` but can be used for comparison of forecasts. @@ -159,17 +159,17 @@ Following parameters are needed for each `fs-plane`. | Name | Type | Description | Default | Required | Advanced | |-----------------|---------|------------------------------------------------------------------------------|---------|----------|----------| -| refreshInterval | integer | Forecast Refresh Interval in minutes | 30 | yes | false | -| declination | integer | Plane Declination: 0 for horizontal till 90 for vertical declination | N/A | yes | false | -| azimuth | integer | Plane Azimuth: -180 = north, -90 = east, 0 = south, 90 = west, 180 = north | N/A | yes | false | -| kwp | decimal | Installed Kilowatt Peak | N/A | yes | false | +| refreshInterval | integer | Forecast refresh interval in minutes | 30 | yes | false | +| declination | integer | Plane declination: 0 for horizontal to 90 for vertical | N/A | yes | false | +| azimuth | integer | Plane azimuth: -180 = north, -90 = east, 0 = south, 90 = west, 180 = north | N/A | yes | false | +| kwp | decimal | Installed kilowatt-peak | N/A | yes | false | `refreshInterval` of forecast data needs to respect the throttling of the ForecastSolar service. 12 calls per hour allowed from your caller IP address so for 2 planes lowest possible refresh rate is 10 minutes. #### Advanced Configuration -Advanced configuration parameters are available to _fine tune_ your forecast data. +Advanced configuration parameters are available to _fine-tune_ your forecast data. Read linked documentation in order to know what you're doing. | Name | Type | Description | Default | Required | Advanced | @@ -180,13 +180,13 @@ Read linked documentation in order to know what you're doing. [Damping factors](https://doc.forecast.solar/doku.php?id=damping) for morning and evening. -[Horizon information](https://doc.forecast.solar/doku.php?id=api) as comma-separated integer list. +[Horizon information](https://doc.forecast.solar/doku.php?id=api) as a comma-separated integer list. This configuration item is aimed to expert users. You need to understand the [horizon concept](https://joint-research-centre.ec.europa.eu/pvgis-photovoltaic-geographical-information-system/getting-started-pvgis/pvgis-user-manual_en#ref-2-using-horizon-information). -Shadow obstacles like mountains, hills, buildings can be expressed here. -First step can be a download from [PVGIS tool](https://re.jrc.ec.europa.eu/pvg_tools/en/) and downloading the _terrain shadows_. +Shadow obstacles like mountains, hills, and buildings can be expressed here. +A first step can be downloading from the [PVGIS tool](https://re.jrc.ec.europa.eu/pvg_tools/en/) and downloading the _terrain shadows_. But it doesn't fit 100% to the required configuration. -Currently there's no tool available which is providing the configuration information 1 to 1. +Currently there's no tool available that provides the configuration information one-to-one. So you need to know what you're doing. #### Energy Feedback Configuration @@ -218,7 +218,7 @@ E.g. forecast predicts 0.1 kWh but real production is 0.001 kWh results into [ma Each `fs-plane` reports its own values. The `fs-site` bridge sums up all attached `fs-plane` values and provides the total forecast for your home location. -Channels are covering today's actual data with current, remaining and total prediction. +Channels cover today's actual data with current, remaining, and total prediction. Forecasts are delivered up to 3 days for paid personal plans. | Channel | Type | Unit | Description | TimeSeries | @@ -320,7 +320,7 @@ Examples are showing - how to translate `Instant` to `ZonedDateTime` objects and - how to translate `ZonedDateTime` to `Instant` objects -## Forecast Solar Example +## Forecast.Solar Example ### Thing file @@ -392,7 +392,7 @@ Number:Energy Solcast_Site_Pessimistic_Remaining "Today's remaining Number:Energy Solcast_Site_Pessimistic_Today "Today's total energy forecast" {channel="solarforecast:sc-site:homeSite:pessimistic#energy-today", stateDescription=" "[ pattern="%.1f %unit%" ], unit="kWh"} // site API call counter -Number Solcast_Site_API_Sucess_Counter "Site API Counter" {channel="solarforecast:sc-site:homeSite:update#api-count" [ profile="transform:JSONPATH", function="$.200"]} +Number Solcast_Site_API_Success_Counter "Site API Counter" {channel="solarforecast:sc-site:homeSite:update#api-count" [ profile="transform:JSONPATH", function="$.200"]} Number Solcast_Site_API_Throttle_Counter "Site API Throttle Counter" {channel="solarforecast:sc-site:homeSite:update#api-count" [ profile="transform:JSONPATH", function="$.429"]} Number Solcast_Site_API_Error_Counter "Site API ErrorCounter" {channel="solarforecast:sc-site:homeSite:update#api-count" [ profile="transform:JSONPATH", function="$.other"]} DateTime Solcast_Site_API_LastUpdate "Site API Last Update" {channel="solarforecast:sc-site:homeSite:update#latest-update"} @@ -425,7 +425,7 @@ Number:Energy Solcast_Plane_Pessimistic_Remaining_SW "SW Today's pessim Number:Energy Solcast_Plane_Pessimistic_Today_SW "SW Today's pessimistic total energy forecast" {channel="solarforecast:sc-plane:homeSite:planeSouthWest:pessimistic#energy-today", stateDescription=" "[ pattern="%.1f %unit%" ], unit="kWh"} // plane API call counter -Number Solcast_Plane_API_Sucess_Counter "Plane API Counter" {channel="solarforecast:sc-plane:homeSite:planeSouthWest:update#api-count" [ profile="transform:JSONPATH", function="$.200"]} +Number Solcast_Plane_API_Success_Counter "Plane API Counter" {channel="solarforecast:sc-plane:homeSite:planeSouthWest:update#api-count" [ profile="transform:JSONPATH", function="$.200"]} Number Solcast_Plane_API_Throttle_Counter "Plane API Throttle Counter" {channel="solarforecast:sc-plane:homeSite:planeSouthWest:update#api-count" [ profile="transform:JSONPATH", function="$.429"]} Number Solcast_Plane_API_Error_Counter "Plane API ErrorCounter" {channel="solarforecast:sc-plane:homeSite:planeSouthWest:update#api-count" [ profile="transform:JSONPATH", function="$.other"]} DateTime Solcast_Plane_API_LastUpdate "Plane API Last Update" {channel="solarforecast:sc-plane:homeSite:planeSouthWest:update#latest-update"} @@ -433,8 +433,8 @@ DateTime Solcast_Plane_API_LastUpdate "Plane API Last Up // plane estimation items Number:Power Solcast_Plane_Average_Power_Estimate "Plane Average Power estimations" (influxdb) {channel="solarforecast:sc-plane:homeSite:planeSouthWest:average#power-estimate", stateDescription=" "[ pattern="%.0f %unit%" ], unit="W"} Number:Energy Solcast_Plane_Average_Energy_Estimate "Plane Average Energy estimations" (influxdb) {channel="solarforecast:sc-plane:homeSite:planeSouthWest:average#energy-estimate", stateDescription=" "[ pattern="%.3f %unit%" ], unit="kWh"} -Number:Power Solcast_Plane_Optimistic_Power_Estimate "Plane Optiisitc Power estimations" (influxdb) {channel="solarforecast:sc-plane:homeSite:planeSouthWest:optimistic#power-estimate", stateDescription=" "[ pattern="%.0f %unit%" ], unit="W"} -Number:Energy Solcast_Plane_Optimistic_Energy_Estimate "Plane Optiisitc Energy estimations" (influxdb) {channel="solarforecast:sc-plane:homeSite:planeSouthWest:optimistic#energy-estimate", stateDescription=" "[ pattern="%.3f %unit%" ], unit="kWh"} +Number:Power Solcast_Plane_Optimistic_Power_Estimate "Plane Optimistic Power estimations" (influxdb) {channel="solarforecast:sc-plane:homeSite:planeSouthWest:optimistic#power-estimate", stateDescription=" "[ pattern="%.0f %unit%" ], unit="W"} +Number:Energy Solcast_Plane_Optimistic_Energy_Estimate "Plane Optimistic Energy estimations" (influxdb) {channel="solarforecast:sc-plane:homeSite:planeSouthWest:optimistic#energy-estimate", stateDescription=" "[ pattern="%.3f %unit%" ], unit="kWh"} Number:Power Solcast_Plane_Pessimistic_Power_Estimate "Plane Pessimistic Power estimations" (influxdb) {channel="solarforecast:sc-plane:homeSite:planeSouthWest:pessimistic#power-estimate", stateDescription=" "[ pattern="%.0f %unit%" ], unit="W"} Number:Energy Solcast_Plane_Pessimistic_Energy_Estimate "Plane Pessimistic Energy estimations" (influxdb) {channel="solarforecast:sc-plane:homeSite:planeSouthWest:pessimistic#energy-estimate", stateDescription=" "[ pattern="%.3f %unit%" ], unit="kWh"} ``` @@ -535,7 +535,7 @@ rule "Daylight Start" PV_Daytime.postUpdate(ON) end -rule "Solacast Updates" +rule "Solcast Updates" when Thing "solarforecast:sc-plane:homeSite:homeSouthWest" changed to INITIALIZING or // Thing status changed to INITIALIZING Time cron "0 30 0/2 ? * * *" // every 2 hours at minute 30 diff --git a/bundles/org.openhab.binding.solarforecast/src/main/resources/OH-INF/config/fs-site-config.xml b/bundles/org.openhab.binding.solarforecast/src/main/resources/OH-INF/config/fs-site-config.xml index 83dbe5950ddc3..4605fec1dbf14 100644 --- a/bundles/org.openhab.binding.solarforecast/src/main/resources/OH-INF/config/fs-site-config.xml +++ b/bundles/org.openhab.binding.solarforecast/src/main/resources/OH-INF/config/fs-site-config.xml @@ -8,7 +8,7 @@ location - Location of photovoltaic system. Location from openHAB settings is used in case of empty value. + Location of the photovoltaic system. If left empty, the location from openHAB settings is used. diff --git a/bundles/org.openhab.binding.solarforecast/src/main/resources/OH-INF/i18n/solarforecast.properties b/bundles/org.openhab.binding.solarforecast/src/main/resources/OH-INF/i18n/solarforecast.properties index ce5f9e8c7e8d0..cffb53e270cdd 100644 --- a/bundles/org.openhab.binding.solarforecast/src/main/resources/OH-INF/i18n/solarforecast.properties +++ b/bundles/org.openhab.binding.solarforecast/src/main/resources/OH-INF/i18n/solarforecast.properties @@ -14,7 +14,7 @@ thing-type.solarforecast.fs-plane.description = PV Plane attached to forecast so thing-type.solarforecast.fs-site.label = Forecast Solar Site thing-type.solarforecast.fs-site.description = Site location for forecast solar public subscription thing-type.solarforecast.sc-plane.label = Solcast PV Plane -thing-type.solarforecast.sc-plane.description = One PV Plane of Multi Plane Bridge +thing-type.solarforecast.sc-plane.description = A PV plane of a multi-plane bridge thing-type.solarforecast.sc-site.label = Solcast Site thing-type.solarforecast.sc-site.description = Solcast service site definition thing-type.solarforecast.smart-fs-plane.label = Smart Forecast Solar Plane @@ -69,7 +69,7 @@ thing-type.config.solarforecast.fs-site.apiKey.description = If you have a paid thing-type.config.solarforecast.fs-site.inverterKwp.label = Inverter Kilowatt Peak thing-type.config.solarforecast.fs-site.inverterKwp.description = Inverter maximum kilowatt peak capability thing-type.config.solarforecast.fs-site.location.label = PV Location -thing-type.config.solarforecast.fs-site.location.description = Location of photovoltaic system. Location from openHAB settings is used in case of empty value. +thing-type.config.solarforecast.fs-site.location.description = Location of the photovoltaic system. If left empty, the location from openHAB settings is used. thing-type.config.solarforecast.sc-plane.guessActuals.label = Guess Actual Values thing-type.config.solarforecast.sc-plane.guessActuals.description = Guess actual forecast values instead of placing an API call thing-type.config.solarforecast.sc-plane.refreshInterval.label = Forecast Refresh Interval @@ -130,7 +130,7 @@ channel-type.solarforecast.energy-estimate.label = Energy Forecast channel-type.solarforecast.energy-estimate.description = Energy forecast for next hours/days channel-type.solarforecast.energy-remain.label = Remaining Energy Forecast channel-type.solarforecast.energy-remain.description = Today's remaining forecast till sunset -channel-type.solarforecast.energy-today.label = Todays Energy Forecast +channel-type.solarforecast.energy-today.label = Today's Energy Forecast channel-type.solarforecast.energy-today.description = Today's total energy forecast channel-type.solarforecast.latest-update.label = Latest Update channel-type.solarforecast.latest-update.description = Date and time of the latest forecast update diff --git a/bundles/org.openhab.binding.solarforecast/src/main/resources/OH-INF/thing/channel-types.xml b/bundles/org.openhab.binding.solarforecast/src/main/resources/OH-INF/thing/channel-types.xml index 5cc949f238993..a1561b7982e62 100644 --- a/bundles/org.openhab.binding.solarforecast/src/main/resources/OH-INF/thing/channel-types.xml +++ b/bundles/org.openhab.binding.solarforecast/src/main/resources/OH-INF/thing/channel-types.xml @@ -46,7 +46,7 @@
Number:Energy - + Today's total energy forecast Forecast diff --git a/bundles/org.openhab.binding.solarforecast/src/main/resources/OH-INF/thing/fs-plane-type.xml b/bundles/org.openhab.binding.solarforecast/src/main/resources/OH-INF/thing/fs-plane-type.xml index ec112e9aa6696..3331c8d81622d 100644 --- a/bundles/org.openhab.binding.solarforecast/src/main/resources/OH-INF/thing/fs-plane-type.xml +++ b/bundles/org.openhab.binding.solarforecast/src/main/resources/OH-INF/thing/fs-plane-type.xml @@ -8,7 +8,6 @@ - PV Plane attached to forecast solar public subscription site SolarPanel diff --git a/bundles/org.openhab.binding.solarforecast/src/main/resources/OH-INF/thing/fs-site-type.xml b/bundles/org.openhab.binding.solarforecast/src/main/resources/OH-INF/thing/fs-site-type.xml index 9722f3f3c56d7..404293a47f470 100644 --- a/bundles/org.openhab.binding.solarforecast/src/main/resources/OH-INF/thing/fs-site-type.xml +++ b/bundles/org.openhab.binding.solarforecast/src/main/resources/OH-INF/thing/fs-site-type.xml @@ -7,6 +7,7 @@ Site location for forecast solar public subscription + WebService diff --git a/bundles/org.openhab.binding.solarforecast/src/main/resources/OH-INF/thing/sc-plane-type.xml b/bundles/org.openhab.binding.solarforecast/src/main/resources/OH-INF/thing/sc-plane-type.xml index 78d8f99486db0..9f2543afc12c4 100644 --- a/bundles/org.openhab.binding.solarforecast/src/main/resources/OH-INF/thing/sc-plane-type.xml +++ b/bundles/org.openhab.binding.solarforecast/src/main/resources/OH-INF/thing/sc-plane-type.xml @@ -10,7 +10,7 @@ - One PV Plane of Multi Plane Bridge + A PV plane of a multi-plane bridge SolarPanel diff --git a/bundles/org.openhab.binding.solarlog/README.md b/bundles/org.openhab.binding.solarlog/README.md index fe6056919d042..dca193b70e592 100644 --- a/bundles/org.openhab.binding.solarlog/README.md +++ b/bundles/org.openhab.binding.solarlog/README.md @@ -2,22 +2,22 @@ The [Solar-Log Family](https://www.solar-log.com/en/) of monitoring devices for PV installations provide a MODBUS (TCP) and JSON-based API to access a number of internal data related to power generation and consumption. This binding implements access to the data via the JSON API. -## Use of the binding +## Usage -The Solar-Log is exposed as one thing with a number of channels that can be used to read the values for different aspects of your Solar-Log installation. +The Solar-Log is exposed as one Thing with a number of channels that can be used to read the values for different aspects of your Solar-Log installation. -## Setup of the binding +## Configuration You can either configure the Thing via the openHAB UI or via a `*.things` file, according to the following example: -`Thing solarlog:meter:pv "Solar-Log 300" @ "Utility Room" [ url="http://solar-log", refreshInterval=15]` +`Thing solarlog:meter:pv "Solar-Log 300" @ "Utility Room" [ url="http://solar-log", refreshInterval=15 ]` The parameters to be used are simple: - `url` denotes the URL of your Solar-Log. If you have not changed anything, this defaults to `http://solar-log`. -- `refreshInterval` is the interval to fetch new data. Solar-Log updates its data every 15 - 60 seconds. `15` is the default value. Values lower than this will return the result from the last 15 seconds period. No value lower than this can be set in the UI. +- `refreshInterval` is the interval to fetch new data. Solar-Log updates its data every 15–60 seconds. `15` is the default value. Values lower than this will return the same result within the last 15-second period. Values lower than this cannot be set in the UI. -Currently, the binding does not support authenticated access to the Solar-Log JSON API (which was introduced with newer firmwares). If must set the API access to `Open` in the Solar-Log configuration in order for the binding to work. +Currently, the binding does not support authenticated access to the Solar-Log JSON API (which was introduced with newer firmware). You must set the API access to `Open` in the Solar-Log configuration in order for the binding to work. ## Available channels @@ -29,7 +29,7 @@ The following table is taken from the official manual and contains all available | ------------------ | ---------------------------------------------- | -------------------------------------------------------------------------- | | lastupdate | Time in the format dd.mm.yy; hh.minmin, secsec | 100 Time | | pac | W | 101 Total output PAC from all of the inverters and meters in inverter mode | -| pdc | W | 102 Total output PAC from all of the inverters | +| pdc | W | 102 Total output PDC from all of the inverters | | uac | V | 103 Average voltage UAC from the inverter | | udc | V | 104 Average voltage UDC from the inverter | | yieldday | Wh | 105 Total yield for the day from all of the inverters | diff --git a/bundles/org.openhab.binding.solarlog/src/main/resources/OH-INF/thing/thing-types.xml b/bundles/org.openhab.binding.solarlog/src/main/resources/OH-INF/thing/thing-types.xml index 38b456029bcc2..60644a05ef465 100644 --- a/bundles/org.openhab.binding.solarlog/src/main/resources/OH-INF/thing/thing-types.xml +++ b/bundles/org.openhab.binding.solarlog/src/main/resources/OH-INF/thing/thing-types.xml @@ -29,12 +29,12 @@ - URL of the Solar-Log web interface (e.g. http://solar-log) + URL of the Solar-Log web interface (e.g., http://solar-log) http://solar-log - States how often a refresh shall occur (in s). + How often to refresh (in seconds). 15 @@ -162,7 +162,7 @@ Number - Total consumption for the previous day; all of the consumption meters + Total consumption for the previous day from all of the consumption meters Measurement Energy @@ -172,7 +172,7 @@ Number - Total consumption for the month; all of the consumption meters + Total consumption for the month from all of the consumption meters Measurement Energy @@ -182,13 +182,13 @@ Number - Total consumption for the year; all of the consumption meters + Total consumption for the year from all of the consumption meters Number - Accumulated total consumption, all Consumption meter + Accumulated total consumption from all consumption meters Measurement Energy diff --git a/bundles/org.openhab.binding.solarman/README.md b/bundles/org.openhab.binding.solarman/README.md index cd4c2a7d9bfc0..248d4fcca16c2 100644 --- a/bundles/org.openhab.binding.solarman/README.md +++ b/bundles/org.openhab.binding.solarman/README.md @@ -13,7 +13,7 @@ These data loggers are used by inverters from a lot of manufacturers, just to na ## Supported Things -The `solarman:logger` thing supports reading data from a Solarman LSW-3 Stick Logger (it might also work with LSE-3 and maybe others) when connected to a supported inverter. +The `solarman:logger` Thing supports reading data from a Solarman LSW-3 Stick Logger (it might also work with LSE-3 and maybe others) when connected to a supported inverter. It was tested on a SUN-12K-SG04LP3-EU only, with LAN Stick LSE-3 in RAW MODBUS solarmanLoggerMode and Wifi Stick in V5 MODBUS solarmanLoggerMode but because the implementation uses the inverter definitions created as part of Stephan Joubert's Home Assistant plugin it **might** work with the other inverters supported by the plugin. @@ -62,7 +62,7 @@ Possible values: The `additionalRequests` allows the user to specify additional address ranges to be polled. The format of the value is `mb_functioncode1:start1-end1, mb_functioncode2:start2-end2,...` For example `"0x03:0x27D-0x27E"` will issue an additional read for Holding Registers between `0x27D` and `0x27E`. -This is useful when coupled with user defined channels, for example a thing definition like the one below will also read the register for the AC frequency on a Deye inverter, besides the ones pre-defined in the `deye_sg04lp3` inverter definition. +This is useful when coupled with user defined channels, for example a Thing definition like the one below will also read the register for the AC frequency on a Deye inverter, besides the ones pre-defined in the `deye_sg04lp3` inverter definition. ```java Thing solarman:logger:local [ hostname="x.x.x.x", inverterType="deye_sg04lp3", serialNumber="1234567890", additionalRequests="0x03:0x27D-0x27E" ] { @@ -170,7 +170,8 @@ This is the list you get for the `deye_sg04lp3` inverter type: ## Writable Channels -If you want to write into registers of the invertor you need to directly define your channels as writable, because by default channels are counted as read-only. For example, `deye_sg04lp3` and `deye_sg01hp3` have a full set of writable channels connected to `Time Of Use` functionality, but if you want to add custom writable channels you need to define it like this: +If you want to write to registers of the inverter, you need to define your channels as writable, because by default channels are treated as read-only. +For example, `deye_sg04lp3` and `deye_sg01hp3` have a full set of writable channels connected to the `Time Of Use` functionality, but if you want to add custom writable channels you need to define them like this: ```java Thing solarman:logger:local [ hostname="x.x.x.x", inverterType="deye_sg04lp3", serialNumber="1234567890", additionalRequests="0x03:0x00A6-0x00A8" ] { @@ -179,7 +180,7 @@ Thing solarman:logger:local [ hostname="x.x.x.x", inverterType="deye_sg04lp3", s } ``` -Note the **readOnly="false"** part here, which will make channel accept commands and write data to invertor register. +Note the **readOnly="false"** part here, which will make the channel accept commands and write data to the inverter register. ## Full Example diff --git a/bundles/org.openhab.binding.solarman/src/main/resources/OH-INF/i18n/solarman.properties b/bundles/org.openhab.binding.solarman/src/main/resources/OH-INF/i18n/solarman.properties index 4a10aee7f2d62..f97235427390f 100644 --- a/bundles/org.openhab.binding.solarman/src/main/resources/OH-INF/i18n/solarman.properties +++ b/bundles/org.openhab.binding.solarman/src/main/resources/OH-INF/i18n/solarman.properties @@ -11,7 +11,7 @@ thing-type.solarman.logger.description = This thing allows communication with So # thing types config thing-type.config.solarman.logger.additionalRequests.label = Additional Requests -thing-type.config.solarman.logger.additionalRequests.description = Additional requests besides the ones defined in the inverter definition. Format is mb_functioncode1:start1-end1, mb_functioncode2:start2-end2,... Example 0x03:0x0000-0x0100,0x03:0x0200-0x0300 +thing-type.config.solarman.logger.additionalRequests.description = Additional requests besides the ones defined in the inverter definition. Format: mb_functioncode1:start1-end1, mb_functioncode2:start2-end2, ... Example: 0x03:0x0000-0x0100,0x03:0x0200-0x0300 thing-type.config.solarman.logger.hostname.label = Hostname thing-type.config.solarman.logger.hostname.description = Hostname or IP address of the Solarman logger. thing-type.config.solarman.logger.inverterType.label = Inverter Type @@ -20,6 +20,7 @@ thing-type.config.solarman.logger.inverterType.option.deye_2mppt = DEYE Microinv thing-type.config.solarman.logger.inverterType.option.deye_4mppt = DEYE Microinverter with 4 MPPT Trackers (deye_4mppt) thing-type.config.solarman.logger.inverterType.option.deye_hybrid = Generic DEYE/Sunsynk/SolArk Hybrid inverters (deye_hybrid) thing-type.config.solarman.logger.inverterType.option.deye_sg04lp3 = DEYE/Sunsynk/SolArk Hybrid 8/12K-SG04LP3 (deye_sg04lp3) +thing-type.config.solarman.logger.inverterType.option.deye_sg01hp3 = DEYE/Sunsynk/SolArk Hybrid 30K-SG01HP3 (deye_sg01hp3) thing-type.config.solarman.logger.inverterType.option.deye_string = Generic DEYE/Sunsynk/SolArk String inverters (deye_string) thing-type.config.solarman.logger.inverterType.option.kstar_hybrid = KSTAR Hybrid Inverter (kstar_hybrid) thing-type.config.solarman.logger.inverterType.option.sofar_g3hyd = SOFAR Hybrid Three-Phase Inverter (sofar_g3hyd) @@ -39,14 +40,14 @@ thing-type.config.solarman.logger.refreshInterval.description = Interval to quer thing-type.config.solarman.logger.serialNumber.label = Serial Number thing-type.config.solarman.logger.serialNumber.description = Serial number of the Solarman logger. thing-type.config.solarman.logger.solarmanLoggerMode.label = Logger Mode -thing-type.config.solarman.logger.solarmanLoggerMode.description = Use RAW Modbus for LAN Stick LSE-3 and V5 NODBUS for most Wifi Sticks. If your Wifi stick uses Raw Modbus choose RAW. If you do not use this advanced option, V5 MODBUS will be the default. +thing-type.config.solarman.logger.solarmanLoggerMode.description = Use RAW Modbus for LAN Stick LSE-3 and V5 MODBUS for most WiFi sticks. If your WiFi stick uses Raw Modbus, choose RAW. If you do not use this advanced option, V5 MODBUS will be the default. thing-type.config.solarman.logger.solarmanLoggerMode.option.V5MODBUS = V5 Modbus thing-type.config.solarman.logger.solarmanLoggerMode.option.RAWMODBUS = RAW Modbus # channel types -channel-type.solarman.datetime.label = Datetime Value -channel-type.solarman.datetime.description = Channel used to represent a datetime value +channel-type.solarman.datetime.label = DateTime Value +channel-type.solarman.datetime.description = Channel used to represent a date-time value channel-type.solarman.dynamic.label = Dynamic Channel channel-type.solarman.dynamic.description = Channel used to represent a dynamic value channel-type.solarman.number.label = Number Value @@ -75,63 +76,3 @@ channel-type-config.config.solarman.dynamic-channel.scale.label = Scale channel-type-config.config.solarman.dynamic-channel.scale.description = The scaling factor, the final value will be scaled by this channel-type-config.config.solarman.dynamic-channel.uom.label = Unit of Measurement channel-type-config.config.solarman.dynamic-channel.uom.description = The unit of measurement used for this channel - -# channel types config - -channel-type-config.config.solarman.datetime-channel.offset.label = Offset -channel-type-config.config.solarman.datetime-channel.offset.description = The offset subtracted from the measurement -channel-type-config.config.solarman.datetime-channel.registers.label = Registers -channel-type-config.config.solarman.datetime-channel.registers.description = Comma separated list of registers to read for the measurement -channel-type-config.config.solarman.datetime-channel.rule.label = Rule -channel-type-config.config.solarman.datetime-channel.rule.description = The type of measurement. See explanation for possible values -channel-type-config.config.solarman.datetime-channel.rule.option.1 = Unsigned Short -channel-type-config.config.solarman.datetime-channel.rule.option.2 = Signed Short -channel-type-config.config.solarman.datetime-channel.rule.option.3 = Unsigned Integer -channel-type-config.config.solarman.datetime-channel.rule.option.4 = Signed Integer -channel-type-config.config.solarman.datetime-channel.rule.option.5 = Text -channel-type-config.config.solarman.datetime-channel.rule.option.6 = Bytes -channel-type-config.config.solarman.datetime-channel.rule.option.7 = Version -channel-type-config.config.solarman.datetime-channel.rule.option.8 = Date Time -channel-type-config.config.solarman.datetime-channel.rule.option.9 = Time -channel-type-config.config.solarman.datetime-channel.scale.label = Scale -channel-type-config.config.solarman.datetime-channel.scale.description = The scaling factor, the final value will be scaled by this -channel-type-config.config.solarman.datetime-channel.uom.label = Unit of Measurement -channel-type-config.config.solarman.datetime-channel.uom.description = The unit of measurement used for this channel -channel-type-config.config.solarman.number-channel.offset.label = Offset -channel-type-config.config.solarman.number-channel.offset.description = The offset subtracted from the measurement -channel-type-config.config.solarman.number-channel.registers.label = Registers -channel-type-config.config.solarman.number-channel.registers.description = Comma separated list of registers to read for the measurement -channel-type-config.config.solarman.number-channel.rule.label = Rule -channel-type-config.config.solarman.number-channel.rule.description = The type of measurement. See explanation for possible values -channel-type-config.config.solarman.number-channel.rule.option.1 = Unsigned Short -channel-type-config.config.solarman.number-channel.rule.option.2 = Signed Short -channel-type-config.config.solarman.number-channel.rule.option.3 = Unsigned Integer -channel-type-config.config.solarman.number-channel.rule.option.4 = Signed Integer -channel-type-config.config.solarman.number-channel.rule.option.5 = Text -channel-type-config.config.solarman.number-channel.rule.option.6 = Bytes -channel-type-config.config.solarman.number-channel.rule.option.7 = Version -channel-type-config.config.solarman.number-channel.rule.option.8 = Date Time -channel-type-config.config.solarman.number-channel.rule.option.9 = Time -channel-type-config.config.solarman.number-channel.scale.label = Scale -channel-type-config.config.solarman.number-channel.scale.description = The scaling factor, the final value will be scaled by this -channel-type-config.config.solarman.number-channel.uom.label = Unit of Measurement -channel-type-config.config.solarman.number-channel.uom.description = The unit of measurement used for this channel -channel-type-config.config.solarman.string-channel.offset.label = Offset -channel-type-config.config.solarman.string-channel.offset.description = The offset subtracted from the measurement -channel-type-config.config.solarman.string-channel.registers.label = Registers -channel-type-config.config.solarman.string-channel.registers.description = Comma separated list of registers to read for the measurement -channel-type-config.config.solarman.string-channel.rule.label = Rule -channel-type-config.config.solarman.string-channel.rule.description = The type of measurement. See explanation for possible values -channel-type-config.config.solarman.string-channel.rule.option.1 = Unsigned Short -channel-type-config.config.solarman.string-channel.rule.option.2 = Signed Short -channel-type-config.config.solarman.string-channel.rule.option.3 = Unsigned Integer -channel-type-config.config.solarman.string-channel.rule.option.4 = Signed Integer -channel-type-config.config.solarman.string-channel.rule.option.5 = Text -channel-type-config.config.solarman.string-channel.rule.option.6 = Bytes -channel-type-config.config.solarman.string-channel.rule.option.7 = Version -channel-type-config.config.solarman.string-channel.rule.option.8 = Date Time -channel-type-config.config.solarman.string-channel.rule.option.9 = Time -channel-type-config.config.solarman.string-channel.scale.label = Scale -channel-type-config.config.solarman.string-channel.scale.description = The scaling factor, the final value will be scaled by this -channel-type-config.config.solarman.string-channel.uom.label = Unit of Measurement -channel-type-config.config.solarman.string-channel.uom.description = The unit of measurement used for this channel diff --git a/bundles/org.openhab.binding.solarman/src/main/resources/OH-INF/thing/channels.xml b/bundles/org.openhab.binding.solarman/src/main/resources/OH-INF/thing/channels.xml index 7a2af4f270174..b5fa0a86845ca 100644 --- a/bundles/org.openhab.binding.solarman/src/main/resources/OH-INF/thing/channels.xml +++ b/bundles/org.openhab.binding.solarman/src/main/resources/OH-INF/thing/channels.xml @@ -20,8 +20,8 @@ DateTime - - Channel used to represent a datetime value + + Channel used to represent a date-time value diff --git a/bundles/org.openhab.binding.solarman/src/main/resources/OH-INF/thing/thing-types.xml b/bundles/org.openhab.binding.solarman/src/main/resources/OH-INF/thing/thing-types.xml index f73ca35e667b1..7cf04802247a9 100644 --- a/bundles/org.openhab.binding.solarman/src/main/resources/OH-INF/thing/thing-types.xml +++ b/bundles/org.openhab.binding.solarman/src/main/resources/OH-INF/thing/thing-types.xml @@ -60,8 +60,8 @@ - Use RAW Modbus for LAN Stick LSE-3 and V5 NODBUS for most Wifi Sticks. If your Wifi stick uses Raw - Modbus choose RAW. If you do not use this advanced option, V5 MODBUS will be the default. + Use RAW Modbus for LAN Stick LSE-3 and V5 MODBUS for most WiFi sticks. If your WiFi stick uses Raw + Modbus, choose RAW. If you do not use this advanced option, V5 MODBUS will be the default. @@ -72,10 +72,9 @@ Additional requests besides the ones defined in the inverter definition. - Format is - mb_functioncode1:start1-end1, mb_functioncode2:start2-end2,... - Example 0x03:0x0000-0x0100,0x03:0x0200-0x0300 - + Format: + mb_functioncode1:start1-end1, mb_functioncode2:start2-end2, ... + Example: 0x03:0x0000-0x0100,0x03:0x0200-0x0300 true
diff --git a/bundles/org.openhab.binding.solarmax/README.md b/bundles/org.openhab.binding.solarmax/README.md index f2323ba0f33ef..89be342ddb8fe 100644 --- a/bundles/org.openhab.binding.solarmax/README.md +++ b/bundles/org.openhab.binding.solarmax/README.md @@ -4,7 +4,7 @@ This binding supports SolarMax PV inverters. ## Supported Things -This binding only has a single `inverter` thing that can be added manually. +This binding only has a single `inverter` Thing that can be added manually. The SolarMax MT Series is supported (tested with 8MT2 devices). ## Discovery @@ -35,9 +35,9 @@ Each inverter requires the following configuration parameters: | ------------------------ | ------------------------ | -------------------------------------------- | | lastUpdated | DateTime | Time when data was last read from the device | | startups | Number | Number of times the device has started | -| acPhase1Current | Number:ElectricCurrent | Ac Phase 1 Current in Amps | -| acPhase2Current | Number:ElectricCurrent | Ac Phase 2 Current in Amps | -| acPhase3Current | Number:ElectricCurrent | Ac Phase 3 Current in Amps | +| acPhase1Current | Number:ElectricCurrent | AC Phase 1 current in A | +| acPhase2Current | Number:ElectricCurrent | AC Phase 2 current in A | +| acPhase3Current | Number:ElectricCurrent | AC Phase 3 current in A | | energyGeneratedToday | Number:Energy | Energy Generated Today in Wh | | energyGeneratedTotal | Number:Energy | Energy Generated since recording began in Wh | | operatingHours | Number | Operating Hours since recording began in h | @@ -47,15 +47,15 @@ Each inverter requires the following configuration parameters: | energyGeneratedThisMonth | Number:Energy | Energy Generated This Month in Wh | | energyGeneratedThisYear | Number:Energy | Energy Generated This Year in Wh | | currentPowerGenerated | Number:Power | Power currently being generated in W | -| acFrequency | Number:Frequency | AcFrequency in Hz | -| acPhase1Voltage | Number:ElectricPotential | Ac Phase1 Voltage in V | -| acPhase2Voltage | Number:ElectricPotential | Ac Phase2 Voltage in V | -| acPhase3Voltage | Number:ElectricPotential | Ac Phase3 Voltage in V | -| heatSinkTemperature | Number:Temperature | Heat Sink Temperature in degrees celcius | +| acFrequency | Number:Frequency | AC frequency in Hz | +| acPhase1Voltage | Number:ElectricPotential | AC Phase 1 voltage in V | +| acPhase2Voltage | Number:ElectricPotential | AC Phase 2 voltage in V | +| acPhase3Voltage | Number:ElectricPotential | AC Phase 3 voltage in V | +| heatSinkTemperature | Number:Temperature | Heat sink temperature in degrees Celsius | ### Full Example -Below you can find some example textual configuration for a solarmax with some basic functionallity. This can be extended/adjusted according to your needs and depending on the required channels (see list above). +Below you can find an example textual configuration for a SolarMax with some basic functionality. This can be extended/adjusted according to your needs and depending on the required channels (see list above). _inverter.things:_ @@ -64,7 +64,7 @@ Thing solarmax:inverter:solarmax "SolarMax Inverter" [ host="192.168.1.151", portNumber="12345", deviceAddress="1", - refresh="15" + refreshInterval="15" ] ``` @@ -77,29 +77,29 @@ DateTime lastUpdated "Last Updated" (gInverter) {channel="solarmax:inver Number startups "Startups" (gInverter) { channel="solarmax:inverter:solarmax:startups" } -Number:ElectricCurrent acPhase1Current "Ac Phase 1 Current in Amps" (gInverter) { channel="solarmax:inverter:solarmax:acPhase1Current" } -Number:ElectricCurrent acPhase2Current "Ac Phase 2 Current in Amps" (gInverter) { channel="solarmax:inverter:solarmax:acPhase2Current" } -Number:ElectricCurrent acPhase3Current "Ac Phase 3 Current in Amps" (gInverter) { channel="solarmax:inverter:solarmax:acPhase3Current" } +Number:ElectricCurrent acPhase1Current "AC Phase 1 current in A" (gInverter) { channel="solarmax:inverter:solarmax:acPhase1Current" } +Number:ElectricCurrent acPhase2Current "AC Phase 2 current in A" (gInverter) { channel="solarmax:inverter:solarmax:acPhase2Current" } +Number:ElectricCurrent acPhase3Current "AC Phase 3 current in A" (gInverter) { channel="solarmax:inverter:solarmax:acPhase3Current" } Number:Energy energyGeneratedToday "Energy Generated Today in Wh" (gInverter) { channel="solarmax:inverter:solarmax:energyGeneratedToday" } Number:Energy energyGeneratedTotal "Energy Generated since recording began in Wh" (gInverter) { channel="solarmax:inverter:solarmax:energyGeneratedTotal" } Number operatingHours "Operating Hours since recording began in h"
@@ -89,8 +90,8 @@ Number - - Cloud layer mitigation factor + + Cloud layer attenuation factor sun_clouds diff --git a/bundles/org.openhab.binding.systeminfo/README.md b/bundles/org.openhab.binding.systeminfo/README.md index 7411424436dc0..58a0bb732ba38 100644 --- a/bundles/org.openhab.binding.systeminfo/README.md +++ b/bundles/org.openhab.binding.systeminfo/README.md @@ -1,26 +1,26 @@ # Systeminfo Binding -The system information binding provides operating system and hardware information including: - -- Operating system name, version and manufacturer; -- CPU average load for last 1, 5, 15 minutes, name, description, number of physical and logical cores, running threads number, system uptime, max frequency and frequency by logical core; -- Free, total and available memory; -- Free, total and available swap memory; -- Hard drive name, model and serial number; -- Free, total, available storage space and storage type (NTSFS, FAT32 ..); -- Battery information - estimated remaining time, capacity, name; -- Sensors information - CPU voltage and temperature, fan speeds; +The Systeminfo binding provides operating system and hardware information, including: + +- Operating system name, version, and manufacturer; +- CPU average load for the last 1, 5, and 15 minutes; CPU name and description; number of physical and logical cores; number of running threads; system uptime; maximum frequency; and logical-core frequency; +- Free, total, and available memory; +- Free, total, and available swap memory; +- Drive name, model, and serial number; +- Free, total, and available storage, and storage type (NTFS, FAT32...); +- Battery information — estimated remaining time, capacity, and name; +- Sensor information — CPU voltage and temperature, and fan speeds; - Display information; -- Network IP, name and adapter name, mac, data sent and received, packets sent and received; -- Process information - size of RAM memory used, CPU load, process name, path, number of threads. +- Network information — IP address, adapter and network names, MAC address, data sent/received, and packets sent/received; +- Process information — RAM used, CPU load, process name, path, and number of threads. The binding uses the [OSHI](https://github.com/oshi/oshi) library to access this information regardless of the underlying OS and hardware. ## Supported Things -The binding supports only one thing type - **computer**. This thing represents a system with one storage volume, one display device and one network adapter. +The binding supports only one Thing type — **computer**. This Thing represents a system with one storage volume, one display device, and one network adapter. -The thing has the following properties: +The Thing has the following properties: - `cpu_logicalCores` - Number of CPU logical cores - `cpu_physicalCores` - Number of CPU physical cores @@ -28,38 +28,38 @@ The thing has the following properties: - `os_version` - The version of the operating system - `os_family` - The family of the operating system -If multiple storage or display devices support is needed, a new thing type has to be defined. +If support for multiple storage or display devices is needed, define a new Thing type. ## Discovery -The discovery service implementation tries to resolve the computer name. -If the resolving process fails, the computer name is set to "Unknown". -In both cases it creates a Discovery Result with thing type **computer**. +The discovery service attempts to resolve the computer name. +If resolution fails, the computer name is set to "Unknown". +In both cases it creates a discovery result with Thing type **computer**. -## Thing configuration +## Thing Configuration -The configuration of the Thing gives the user the possibility to update channels at different intervals. +The Thing configuration lets you update channels at different intervals. -The thing has two configuration parameters: +The Thing has two configuration parameters: - **interval_high** - refresh interval in seconds for channels with 'High' priority configuration. Default value is 1 s. - **interval_medium** - refresh interval in seconds for channels with 'Medium' priority configuration. Default value is 60s. -That means that by default configuration: +By default: -- channels with priority set to 'High' are updated every second -- channels with priority set to 'Medium' are updated every minute -- channels with priority set to 'Low' are updated only at initialization or if the `REFRESH` command is sent to the channel. +- Channels with priority 'High' are updated every second +- Channels with priority 'Medium' are updated every minute +- Channels with priority 'Low' are updated only at initialization or when the `REFRESH` command is sent to the channel Channels, not linked to an item, do not get updates, and do not periodically consume resources. -For more info see [channel configuration](#channel-configuration) +For more information, see [Channel configuration](#channel-configuration). ## Channels -The binding support several channel group. -Each channel group, contains one or more channels. -In the list below, you can find, how are channel group and channels id`s related. +The binding supports several channel groups. +Each channel group contains one or more channels. +The list below shows how channel groups and channel IDs relate. **thing** `computer` @@ -76,7 +76,7 @@ In the list below, you can find, how are channel group and channels id`s related - **group** `battery` (deviceIndex) - **channel** `name, remainingCapacity, remainingTime` - **group** `cpu` - - **channel** `name, description, maxfreq, freq` (deviceIndex)`, load, load1, load5, load15, uptime, threads` + - **channel** `name, description, maxfreq, freq, load, load1, load5, load15, uptime, threads` - **group** `sensors` - **channel** `cpuTemp, cpuVoltage, fanSpeed` (deviceIndex) - **group** `network` (deviceIndex) @@ -86,30 +86,30 @@ In the list below, you can find, how are channel group and channels id`s related - **group** `process` (pid) - **channel** `load, used, name, threads, path` -The groups marked with "(deviceIndex)" may have device index attached to the Channel Group. +The groups marked with "(deviceIndex)" may have a device index attached to the channel group. - channel ::= channel_group & (deviceIndex) & # channel_id - deviceIndex ::= number >= 0 - (e.g. _storage1#available_) -The channels marked with "(deviceIndex)" may have a device index attached to the Channel. +The channels marked with "(deviceIndex)" may have a device index attached to the channel. - channel ::= channel_group & # channel_id & (deviceIndex) - deviceIndex ::= number >= 0 -Channels or channel groups without a trailing index will show the data for the first device (index 0) if multiple exist. +Channels or channel groups without a trailing index will show data for the first device (index 0) if multiple exist. If only one device for a group exists, no channels or channel groups with indexes will be created. -The group `process` is using a configuration parameter "pid" instead of "deviceIndex". +The group `process` uses a configuration parameter "pid" instead of "deviceIndex". This makes it possible to change the tracked process at runtime. -The group `currentProcess` has the same channels as the `process` group without the "pid" configuration parameter. +The group `currentProcess` has the same channels as the `process` group, without the "pid" configuration parameter. The PID is dynamically set to the PID of the process running openHAB. -The binding uses this index to get information about a specific device from a list of devices (e.g on a single computer several local disks could be installed with names C:\, D:\, E:\ - the first will have deviceIndex=0, the second deviceIndex=1 etc). -If device with this index is not existing, the binding will display an error message on the console. +The binding uses this index to get information about a specific device from a list of devices (e.g., on a single computer, several local disks could be installed with names C:\, D:\, E:\ — the first has deviceIndex=0, the second deviceIndex=1, etc.). +If a device with this index does not exist, the binding displays an error message on the console. -The table shows more detailed information about each Channel type. +The table shows more detailed information about each channel type. The binding introduces the following channels: | Channel ID | Channel Description | Supported item type | Default priority | Advanced | @@ -150,26 +150,25 @@ The binding introduces the following channels: | availableHeap | How much space is available in the currently committed heap | Number:DataAmount | Medium | True | | usedHeapPercent | How much of the MAX heap size is actually used in % | Number:Dimensionless| Medium | False | -## Channel configuration +## Channel Configuration -All channels can change its configuration parameters at runtime. -The binding will trigger the necessary changes (reduce or increase the refresh time, change channel priority or the process that is being tracked). +All channels can change their configuration parameters at runtime. +The binding triggers the necessary changes (reduce or increase the refresh time, change channel priority, or change the tracked process). -Each of the channels has a default configuration parameter - priority. -It has the following options: +Each channel has a "priority" configuration parameter with the following options: - **High** - **Medium** - **Low** -The ''load'' channel will update total or by process CPU load at the frequency defined by the priority update interval, by default high priority, every second. +The `load` channel updates total or per-process CPU load at the frequency defined by the priority update interval (by default, High priority = every second). The value corresponds to the average CPU load over the interval. -Channels from group ''process'' have additional configuration parameter - PID (Process identifier). -This parameter is used as 'deviceIndex' and defines which process is tracked from the channel. -This makes the channels from this groups very flexible - they can change its PID dynamically. +Channels in the `process` group have an additional configuration parameter: PID (process identifier). +This parameter is used like a `deviceIndex` and defines which process the channel tracks. +This makes the channels in this group very flexible — they can change their PID dynamically. -Parameter PID has a default value 0 - this is the PID of the System Idle process in Windows OS. +The PID parameter has a default value of 0 — this is the PID of the System Idle process on Windows. ## Known issues and workarounds diff --git a/bundles/org.openhab.binding.systeminfo/src/main/resources/OH-INF/i18n/systeminfo.properties b/bundles/org.openhab.binding.systeminfo/src/main/resources/OH-INF/i18n/systeminfo.properties index 2768da5b39931..6d0baa99aadbc 100644 --- a/bundles/org.openhab.binding.systeminfo/src/main/resources/OH-INF/i18n/systeminfo.properties +++ b/bundles/org.openhab.binding.systeminfo/src/main/resources/OH-INF/i18n/systeminfo.properties @@ -21,6 +21,8 @@ channel-group-type.systeminfo.batteryGroup.label = Battery channel-group-type.systeminfo.batteryGroup.description = Battery parameters channel-group-type.systeminfo.cpuGroup.label = CPU channel-group-type.systeminfo.cpuGroup.description = CPU parameters +channel-group-type.systeminfo.currentProcessGroup.label = Current Process +channel-group-type.systeminfo.currentProcessGroup.description = Current process information channel-group-type.systeminfo.displayGroup.label = Display channel-group-type.systeminfo.displayGroup.description = Display parameters channel-group-type.systeminfo.driveGroup.label = Drive @@ -29,11 +31,9 @@ channel-group-type.systeminfo.memoryGroup.label = Physical Memory channel-group-type.systeminfo.memoryGroup.description = Physical memory information channel-group-type.systeminfo.networkGroup.label = Network channel-group-type.systeminfo.networkGroup.description = Network parameters -channel-group-type.systeminfo.currentProcessGroup.label = Current Process -channel-group-type.systeminfo.currentProcessGroup.description = Current process information channel-group-type.systeminfo.processGroup.label = Process channel-group-type.systeminfo.processGroup.description = System process information -channel-group-type.systeminfo.sensorsGroup.label = Sensor +channel-group-type.systeminfo.sensorsGroup.label = Sensors channel-group-type.systeminfo.sensorsGroup.description = Sensor parameters channel-group-type.systeminfo.storageGroup.label = Storage channel-group-type.systeminfo.storageGroup.description = Logical storage information @@ -49,9 +49,9 @@ channel-type.systeminfo.availableHeap.description = How much data is available i channel-type.systeminfo.availablePercent.label = Available (%) channel-type.systeminfo.availablePercent.description = Available size in percent channel-type.systeminfo.cpuTemp.label = CPU Temperature -channel-type.systeminfo.cpuTemp.description = CPU Temperature +channel-type.systeminfo.cpuTemp.description = CPU temperature channel-type.systeminfo.cpuVoltage.label = CPU Voltage -channel-type.systeminfo.cpuVoltage.description = CPU Voltage +channel-type.systeminfo.cpuVoltage.description = CPU voltage channel-type.systeminfo.dataReceived.label = Data Received channel-type.systeminfo.dataReceived.description = Volume of data received channel-type.systeminfo.dataSent.label = Data Sent @@ -60,6 +60,8 @@ channel-type.systeminfo.description.label = Description channel-type.systeminfo.description.description = Description of the device channel-type.systeminfo.fanSpeed.label = Fan Speed channel-type.systeminfo.fanSpeed.description = Fan speed in rotations per minute +channel-type.systeminfo.freq.label = Current Frequency +channel-type.systeminfo.freq.description = Logical processor frequency channel-type.systeminfo.information.label = Display Information channel-type.systeminfo.information.description = Product, manufacturer, SN, width and height of the display in cm channel-type.systeminfo.ip.label = IP Address @@ -70,8 +72,10 @@ channel-type.systeminfo.loadAverage.label = Load Average channel-type.systeminfo.loadAverage.description = Load as a number of processes for the last 1, 5 or 15 minutes channel-type.systeminfo.load_process.label = Load channel-type.systeminfo.load_process.description = Load in percent -channel-type.systeminfo.mac.label = Mac Address -channel-type.systeminfo.mac.description = Mac address of the network +channel-type.systeminfo.mac.label = MAC Address +channel-type.systeminfo.mac.description = MAC address of the network +channel-type.systeminfo.maxfreq.label = Maximum Frequency +channel-type.systeminfo.maxfreq.description = CPU maximum frequency channel-type.systeminfo.model.label = Model channel-type.systeminfo.model.description = The model of the device channel-type.systeminfo.name.label = Name @@ -157,5 +161,6 @@ channel-type.config.systeminfo.mediumpriority_process.priority.option.Medium = M channel-type.config.systeminfo.mediumpriority_process.priority.option.Low = Low # thing status messages + offline.cannot-initialize = Thing cannot be initialized! offline.unexpected-error = Cannot get system info as result of unexpected error. Please try to restart the binding (remove and re-add the thing)! diff --git a/bundles/org.openhab.binding.systeminfo/src/main/resources/OH-INF/thing/channels.xml b/bundles/org.openhab.binding.systeminfo/src/main/resources/OH-INF/thing/channels.xml index 51d58e338de0f..854e2554fe735 100644 --- a/bundles/org.openhab.binding.systeminfo/src/main/resources/OH-INF/thing/channels.xml +++ b/bundles/org.openhab.binding.systeminfo/src/main/resources/OH-INF/thing/channels.xml @@ -82,7 +82,7 @@ - + Sensor parameters @@ -392,8 +392,8 @@ String - - Mac address of the network + + MAC address of the network From 09cfbec34fda42c8320a5a9c42a4b254f476120e Mon Sep 17 00:00:00 2001 From: Leo Siepel Date: Wed, 29 Oct 2025 23:02:03 +0100 Subject: [PATCH 04/23] Fix sunsynk conflict Signed-off-by: Leo Siepel --- bundles/org.openhab.binding.sunsynk/README.md | 80 +++++++++++-------- .../resources/OH-INF/i18n/sunsynk.properties | 26 ++++-- .../resources/OH-INF/thing/thing-types.xml | 48 ++++++++++- 3 files changed, 115 insertions(+), 39 deletions(-) diff --git a/bundles/org.openhab.binding.sunsynk/README.md b/bundles/org.openhab.binding.sunsynk/README.md index 9c746853c3a7c..a02c1cbce4bc6 100644 --- a/bundles/org.openhab.binding.sunsynk/README.md +++ b/bundles/org.openhab.binding.sunsynk/README.md @@ -54,7 +54,6 @@ When using the UI Scan service all the parameters for an Inverter Thing are disc - Inverter Name maps to the Sun Synk Connect inverter alias - Plant ID maps to the Sun Synk plant number (not available via Sun Synk Connect App) - Plant Name maps to the Sun Synk Connect plant name. -- Refresh time (advanced) default 60s; determines the interval between polls of Sun Synk Connect. A value above 60 is enforced. When setting this remember your inverter values are only published by Sun Synk Connect at the rate set by "data interval". - Refresh time (advanced) default 60 s; determines the interval between polls of Sun Synk Connect. A minimum of 60 s is enforced. Remember that inverter values are only published by Sun Synk Connect at the gateway "data interval". The refresh rate is limited to once every 60 s to avoid excessive requests to the Sun Synk Connect API. Although there's no documented rate limit, data is fully refreshed at the "data interval" set in Sun Synk Connect (typically every 60 s). @@ -85,11 +84,6 @@ The SunSynk Account requires the user e‑mail address and password used to log | Plant ID | text | The plant ID not available in Sun Synk Connect | N/A | yes | no | | Plant Name | text | The Sun Synk Connect plant name | N/A | yes | no | | refresh | integer | Sun Synk Connect polling interval | 60 | yes | yes | -| Name | Type | Description | Default | Required | Advanced | -|--------------|---------|---------------------------------------------|---------|----------|----------| -| alias | text | The Sun Synk Connect inverter alias | N/A | yes | no | -| serialnumber | text | The Sun Synk Connect inverter serial number | N/A | yes | no | -| refresh | integer | Polling interval in seconds | 60 | yes | yes | ## Channels @@ -98,19 +92,29 @@ The SunSynk Inverter has the following channels. | Channel | Type | R/W | Description | Advanced | |--------------------------------|-------------------------|-----|-----------------------------------|----------| -|battery-soc |Number:Dimensionless | R | Inverter battery state of charge | no | -|battery-dc-voltage |Number:ElectricPotential | R | Battery DC voltage | no | -|battery-dc-current |Number:ElectricCurrent | R | Battery DC current | no | -|battery-dc-power |Number:Power | R | Battery DC power | no | -|battery-temperature |Number:Temperature | R | Battery temperature | no | -|inverter-ac-temperature |Number:Temperature | R | Inverter AC temperature | no | -|inverter-dc-temperature |Number:Temperature | R | Inverter DC temperature | no | -|inverter-grid-power |Number:Power | R | Grid import/export power | no | -|inverter-grid-voltage |Number:ElectricPotential | R | Grid voltage | no | -|inverter-grid-current |Number:ElectricCurrent | R | Grid current | no | -|inverter-solar-energy-today |Number:Energy | R | Solar DC energy generated today | no | -|inverter-solar-energy-total |Number:Energy | R | Solar DC energy generated to date | no | -|inverter-solar-power-now |Number:Power | R | Solar DC power | no | +|battery-soc |Number:Dimensionless | R | Inverter battery % charged | no | +|battery-grid-voltage |Number:ElectricPotential | R | Battery dc electric-voltage | no | +|battery-grid-current |Number:ElectricCurrent | R | Battery dc electric-current | no | +|battery-grid-power |Number:Power | R | Battery dc electric-power | no | +|inverter-ac-temperature |Number:Temperature | R | Inverter ac temperature | no | +|inverter-dc-temperature |Number:Temperature | R | Inverter dc temperature | no | +|inverter-grid-power |Number:Power | R | Grid ac electric-power | no | +|inverter-grid-voltage |Number:ElectricPotential | R | Grid ac electric-voltage | no | +|inverter-grid-current |Number:ElectricCurrent | R | Grid ac electric-current | no | +|inverter-grid-frequency |Number:Frequency | R | Grid frequency | no | +|inverter-rated-ac-output |Number:Power | R | Inverter energy capacity | no | +|inverter-solar-energy-today |Number:Energy | R | Solar energy generated today | no | +|inverter-solar-energy-month |Number:Energy | R | Solar energy generated this month | no | +|inverter-solar-energy-year |Number:Energy | R | Solar energy generated this year | no | +|inverter-solar-efficiency |Number:Dimensionless | R | Solar production efficiency | no | +|inverter-solar-ac-power |Number:Power | R | Solar power being generated | no | +|inverter-solar-energy-total |Number:Energy | R | Solar energy generated to date | no | +|inverter-solar-string-voltage-1 |Number:ElectricPotential | R | String 1 Solar Voltage | no | +|inverter-solar-string-voltage-2 |Number:ElectricPotential | R | String 2 Solar Voltage | no | +|inverter-solar-string-current-1 |Number:ElectricCurrent | R | String 1 Solar Current | no | +|inverter-solar-string-current-2 |Number:ElectricCurrent | R | String 2 Solar Current | no | +|inverter-solar-string-power-1 |Number:Power | R | String 1 Solar Power | no | +|inverter-solar-string-power-2 |Number:Power | R | String 2 Solar Power | no | |interval-1-grid-charge |Switch | R/W | Interval 1 grid charge on/off | yes | |interval-1-grid-time |DateTime | R/W | Interval 1 start grid charge time | yes | |interval-1-grid-capacity |Number:Dimensionless | R/W | Interval 1 battery charge target | yes | @@ -151,7 +155,7 @@ The SunSynk Inverter has the following channels. ```java Bridge sunsynk:account:xxx @ "Loft" [email="user@domain.com", password="somepassword"]{ - Thing inverter E1234567R1231234567890 @ "Loft" [alias= "My Inverter", serialnumber= "1234567890", refresh= 60] + Thing inverter E1234567R1231234567890 @ "Loft" [alias= "My Inverter", serialnumber= "1234567890", plantId ="123456", plantName="plant 1", refresh= 60] } ``` @@ -195,25 +199,37 @@ Number:Power Interval4GridPowerLimit "Max Charge Power Interv Number:Power Interval5GridPowerLimit "Max Charge Power Interval 5" {channel="sunsynk:inverter:xxx:1234567R1231234567890:interval-5-grid-power-limit", listWidget="oh-slider-item"[title="Target Power Limit",subtitle="Set Limit in Watts", min=0, max=8000,step=1000]} Number:Power Interval6GridPowerLimit "Max Charge Power Interval 6" {channel="sunsynk:inverter:xxx:1234567R1231234567890:interval-6-grid-power-limit", listWidget="oh-slider-item"[title="Target Power Limit",subtitle="Set Limit in Watts", min=0, max=8000,step=1000]} -Number:Dimensionless BatterySOC "Battery SOC [%s]" {channel ="sunsynk:inverter:xxx:1234567R1231234567890:battery-soc"} -Number:ElectricPotential BatteryDCVoltage "Battery DC Voltage" {channel="sunsynk:inverter:xxx:1234567R1231234567890:battery-dc-voltage"} -Number:ElectricCurrent BatteryDCCurrent "Battery DC Current" {channel="sunsynk:inverter:xxx:1234567R1231234567890:battery-dc-current"} -Number:Power BatteryDCPower "Battery DC Power" {channel="sunsynk:inverter:xxx:1234567R1231234567890:battery-dc-power"} +Number:Dimensionless BatterySOC "Battery SOC [%s]" {channel="sunsynk:inverter:xxx:1234567R1231234567890:battery-soc"} +Number:ElectricPotential BatteryGridVoltage "Battery Voltage" {channel="sunsynk:inverter:xxx:1234567R1231234567890:battery-dc-voltage"} +Number:ElectricCurrent BatteryGridCurrent "Battery Current" {channel="sunsynk:inverter:xxx:1234567R1231234567890:battery-dc-current"} +Number:Power BatteryGridPower "Battery Power" {channel="sunsynk:inverter:xxx:1234567R1231234567890:battery-dc-power"} +Number:Power InverterCapacity "Inverter Capacity" {channel="sunsynk:inverter:xxx:1234567R1231234567890:inverter-rated-ac-output"} Number:Temperature BatteryTemperature "Battery Temperature" {channel="sunsynk:inverter:xxx:1234567R1231234567890:battery-temperature"} Number:Temperature InverterACTemperature "Inverter AC Temperature" {channel="sunsynk:inverter:xxx:1234567R1231234567890:inverter-ac-temperature"} Number:Temperature InverterDCTemperature "Inverter DC Temperature" {channel="sunsynk:inverter:xxx:1234567R1231234567890:inverter-dc-temperature"} -Number:Power InverterGridPower "Inverter Grid Power" {channel="sunsynk:inverter:xxx:1234567R1231234567890:inverter-grid-power"} -Number:ElectricPotential InverterGridVoltage "Inverter Grid Voltage" {channel="sunsynk:inverter:xxx:1234567R1231234567890:inverter-grid-voltage"} -Number:ElectricCurrent InverterGridCurrent "Inverter Grid Current" {channel="sunsynk:inverter:xxx:1234567R1231234567890:inverter-grid-current"} -Number:Energy InverterSolarEnergyToday "Inverter Energy Today" {channel="sunsynk:inverter:xxx:1234567R1231234567890:inverter-solar-energy-today"} -Number:Energy InverterSolarEnergyTotal "Inverter Energy Total" {channel="sunsynk:inverter:xxx:1234567R1231234567890:inverter-solar-energy-total"} -Number:Power InverterSolarPowerNow "Inverter Solar Power" {channel="sunsynk:inverter:xxx:1234567R1231234567890:inverter-solar-power-now"} + + +Number:Power InverterGridPower "Grid Power" {channel="sunsynk:inverter:xxx:1234567R1231234567890:inverter-grid-power"} +Number:ElectricPotential InverterGridVoltage "Grid Voltage" {channel="sunsynk:inverter:xxx:1234567R1231234567890:inverter-grid-voltage"} +Number:ElectricCurrent InverterGridCurrent "Grid Current" {channel="sunsynk:inverter:xxx:1234567R1231234567890:inverter-grid-current"} +Number:Frequency BatteryGridFrequency "Grid Frequency" {channel="sunsynk:inverter:xxx:1234567R1231234567890:inverter-grid-frequency"} + +Number:Energy InverterSolarEnergyToday "Inverter Solar Energy Today" {channel="sunsynk:inverter:xxx:1234567R1231234567890:inverter-solar-energy-today"} +Number:Energy InverterSolarEnergyMonth "Inverter Solar Energy This Month" {channel="sunsynk:inverter:xxx:1234567R1231234567890:inverter-solar-energy-month"} +Number:Energy InverterSolarEnergyYear "Inverter Solar Energy This Year" {channel="sunsynk:inverter:xxx:1234567R1231234567890:inverter-solar-energy-year"} +Number:Energy InverterSolarEnergyTotal "Inverter Solar Energy Gross" {channel="sunsynk:inverter:xxx:1234567R1231234567890:inverter-solar-energy-total"} +Number:Dimensionless InverterSolarEfficiency "Inverter Solar Efficiency" {channel="sunsynk:inverter:xxx:1234567R1231234567890:inverter-solar-efficiency"} +Number:Power InverterSolarPowerNow "Inverter Solar Power" {channel="sunsynk:inverter:xxx:1234567R1231234567890:inverter-solar-ac-power"} +Number:ElectricPotential SolarString1Voltage "Solar String 1 Voltage" {channel="sunsynk:inverter:xxx:1234567R1231234567890:inverter-solar-string-voltage-1"} +Number:ElectricPotential SolarString2Voltage "Solar String 2 Voltage" {channel="sunsynk:inverter:xxx:1234567R1231234567890:inverter-solar-string-voltage-2"} +Number:ElectricCurrent SolarString1Current "Solar String 1 Current" {channel="sunsynk:inverter:xxx:1234567R1231234567890:inverter-solar-string-current-1"} +Number:ElectricCurrent SolarString2Current "Solar String 2 Current" {channel="sunsynk:inverter:xxx:1234567R1231234567890:inverter-solar-string-current-2"} +Number:Power SolarString1Power "Solar String 1 Power" {channel="sunsynk:inverter:xxx:1234567R1231234567890:inverter-solar-string-power-1"} +Number:Power SolarString2Power "Solar String 2 Power" {channel="sunsynk:inverter:xxx:1234567R1231234567890:inverter-solar-string-power-2"} Switch Interval6ControlTimer "Switch on System Mode Timer" {channel="sunsynk:inverter:xxx:1234567R1231234567890:inverter-control-timer"} String InverterControlWorkMode "System Work Mode 0, 1 or 2" {channel="sunsynk:inverter:xxx:1234567R1231234567890:inverter-control-work-mode"} String InverterControlPattern "System Mode Energy Pattern 0 or 1" {channel="sunsynk:inverter:xxx:1234567R1231234567890:inverter-control-energy-pattern"} -String InverterControlWorkMode "System Work Mode 0, 1 or 2" {channel="sunsynk:inverter:xxx:1234567R1231234567890:inverter-control-work-mode"} -String InverterControlPattern "System Mode Energy Pattern 0 or 1" {channel="sunsynk:inverter:xxx:1234567R1231234567890:inverter-control-energy-pattern"} ``` ## DateTime Widget diff --git a/bundles/org.openhab.binding.sunsynk/src/main/resources/OH-INF/i18n/sunsynk.properties b/bundles/org.openhab.binding.sunsynk/src/main/resources/OH-INF/i18n/sunsynk.properties index 0a9f4b0dc8a61..8b70245d9b45b 100644 --- a/bundles/org.openhab.binding.sunsynk/src/main/resources/OH-INF/i18n/sunsynk.properties +++ b/bundles/org.openhab.binding.sunsynk/src/main/resources/OH-INF/i18n/sunsynk.properties @@ -51,7 +51,6 @@ thing-type.sunsynk.inverter.channel.interval-6-grid-power-limit.label = Interval thing-type.sunsynk.inverter.channel.interval-6-grid-time.label = Interval 6 Start Time thing-type.sunsynk.inverter.channel.inverter-ac-temperature.label = Inverter AC Temperature thing-type.sunsynk.inverter.channel.inverter-ac-temperature.description = Temperature of the inverter AC side. -thing-type.sunsynk.inverter.channel.inverter-ac-temperature.description = Temperature of the inverter AC side. thing-type.sunsynk.inverter.channel.inverter-dc-temperature.label = Inverter DC Temperature thing-type.sunsynk.inverter.channel.inverter-dc-temperature.description = Temperature of the inverter DC side. thing-type.sunsynk.inverter.channel.inverter-grid-current.label = Grid Current @@ -72,11 +71,22 @@ thing-type.sunsynk.inverter.channel.inverter-solar-energy-month.label = Solar En thing-type.sunsynk.inverter.channel.inverter-solar-energy-month.description = Solar energy generated this month. thing-type.sunsynk.inverter.channel.inverter-solar-energy-today.label = Solar Energy Today thing-type.sunsynk.inverter.channel.inverter-solar-energy-today.description = Solar energy generated today. -thing-type.sunsynk.inverter.channel.inverter-solar-energy-today.description = Solar energy generated today. thing-type.sunsynk.inverter.channel.inverter-solar-energy-total.label = Solar Energy Total thing-type.sunsynk.inverter.channel.inverter-solar-energy-total.description = Total solar energy generated. -thing-type.sunsynk.inverter.channel.inverter-solar-power-now.label = Solar Power -thing-type.sunsynk.inverter.channel.inverter-solar-power-now.description = Solar power being generated. +thing-type.sunsynk.inverter.channel.inverter-solar-energy-year.label = Solar Energy This Year +thing-type.sunsynk.inverter.channel.inverter-solar-energy-year.description = Solar energy generated this year. +thing-type.sunsynk.inverter.channel.inverter-solar-string-current-1.label = String 1 Solar Current +thing-type.sunsynk.inverter.channel.inverter-solar-string-current-1.description = Solar current being generated. +thing-type.sunsynk.inverter.channel.inverter-solar-string-current-2.label = String 2 Solar Current +thing-type.sunsynk.inverter.channel.inverter-solar-string-current-2.description = Solar current being generated. +thing-type.sunsynk.inverter.channel.inverter-solar-string-power-1.label = String 1 Solar Power +thing-type.sunsynk.inverter.channel.inverter-solar-string-power-1.description = Solar power being generated. +thing-type.sunsynk.inverter.channel.inverter-solar-string-power-2.label = String 2 Solar Power +thing-type.sunsynk.inverter.channel.inverter-solar-string-power-2.description = Solar power being generated. +thing-type.sunsynk.inverter.channel.inverter-solar-string-voltage-1.label = String 1 Solar Voltage +thing-type.sunsynk.inverter.channel.inverter-solar-string-voltage-1.description = Solar voltage being generated. +thing-type.sunsynk.inverter.channel.inverter-solar-string-voltage-2.label = String 2 Solar Voltage +thing-type.sunsynk.inverter.channel.inverter-solar-string-voltage-2.description = Solar voltage being generated. # thing types config @@ -112,7 +122,6 @@ channel-type.sunsynk.control-work-mode.command.option.1 = Zero-Export + Limited channel-type.sunsynk.control-work-mode.command.option.2 = Limited to Home channel-type.sunsynk.gen-charge.label = Generator (AUX) Charge channel-type.sunsynk.gen-charge.description = Charge the inverter battery from the generator (auxiliary) during this interval. -channel-type.sunsynk.gen-charge.description = Charge the inverter battery from the generator (auxiliary) during this interval. channel-type.sunsynk.grid-charge.label = Grid Charge channel-type.sunsynk.grid-charge.description = Charge the inverter battery from the grid during this interval. channel-type.sunsynk.grid-frequency.label = Grid Frequency @@ -122,6 +131,13 @@ channel-type.sunsynk.grid-time.description = "Grid charging interval start time. channel-type.sunsynk.grid-time.state.pattern = %1$tH:%1$tM channel-type.sunsynk.power-charge-limit.label = Maximum Charge Rate channel-type.sunsynk.power-charge-limit.description = Maximum charge power desired (limited by inverter capability). +channel-type.sunsynk.solar-efficiency.label = Solar Efficiency +channel-type.sunsynk.solar-efficiency.description = Efficiency of the solar panels. + +# thing types + +thing-type.sunsynk.inverter.channel.inverter-solar-power-now.label = Solar Power +thing-type.sunsynk.inverter.channel.inverter-solar-power-now.description = Solar power being generated. # add-in diff --git a/bundles/org.openhab.binding.sunsynk/src/main/resources/OH-INF/thing/thing-types.xml b/bundles/org.openhab.binding.sunsynk/src/main/resources/OH-INF/thing/thing-types.xml index 700c1224f030f..6c741e1c465a8 100644 --- a/bundles/org.openhab.binding.sunsynk/src/main/resources/OH-INF/thing/thing-types.xml +++ b/bundles/org.openhab.binding.sunsynk/src/main/resources/OH-INF/thing/thing-types.xml @@ -176,12 +176,48 @@ Solar energy generated today. + + + Solar energy generated this month. + + + + Solar energy generated this year. + + + + Efficiency of the solar panels. + + + + Solar AC power being generated. + Total solar energy generated. - - + + + Solar voltage being generated. + + + + Solar voltage being generated. + + + + Solar current being generated. + + + + Solar current being generated. + + + + Solar power being generated. + + + Solar power being generated. @@ -204,6 +240,14 @@ Name of inverter from Sun Synk Connect. + + + Plant ID of the inverter from Sun Synk Connect. + + + + Plant Name of the inverter from Sun Synk Connect. + Time in seconds to retrieve status from Sun Synk Connect services. At least 60 seconds. From 60ae7058cd1948e33454d073edc7c95fc7833ffc Mon Sep 17 00:00:00 2001 From: Leo Siepel Date: Thu, 30 Oct 2025 19:22:29 +0100 Subject: [PATCH 05/23] Review systeminfo Signed-off-by: Leo Siepel --- bundles/org.openhab.binding.systeminfo/README.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/bundles/org.openhab.binding.systeminfo/README.md b/bundles/org.openhab.binding.systeminfo/README.md index 58a0bb732ba38..3a7292bff4fe9 100644 --- a/bundles/org.openhab.binding.systeminfo/README.md +++ b/bundles/org.openhab.binding.systeminfo/README.md @@ -18,7 +18,7 @@ The binding uses the [OSHI](https://github.com/oshi/oshi) library to access this ## Supported Things -The binding supports only one Thing type — **computer**. This Thing represents a system with one storage volume, one display device, and one network adapter. +The binding supports only one Thing type — **computer**. The Thing has the following properties: @@ -28,8 +28,6 @@ The Thing has the following properties: - `os_version` - The version of the operating system - `os_family` - The family of the operating system -If support for multiple storage or display devices is needed, define a new Thing type. - ## Discovery The discovery service attempts to resolve the computer name. From 6d10d5aee051b26d04e7dc4b3406f21483988027 Mon Sep 17 00:00:00 2001 From: Leo Siepel Date: Thu, 30 Oct 2025 22:20:40 +0100 Subject: [PATCH 06/23] Spotless sunsynk Signed-off-by: Leo Siepel --- .../src/main/resources/OH-INF/thing/thing-types.xml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/bundles/org.openhab.binding.sunsynk/src/main/resources/OH-INF/thing/thing-types.xml b/bundles/org.openhab.binding.sunsynk/src/main/resources/OH-INF/thing/thing-types.xml index 6c741e1c465a8..71d10c6ab3c6c 100644 --- a/bundles/org.openhab.binding.sunsynk/src/main/resources/OH-INF/thing/thing-types.xml +++ b/bundles/org.openhab.binding.sunsynk/src/main/resources/OH-INF/thing/thing-types.xml @@ -176,7 +176,7 @@ Solar energy generated today. - + Solar energy generated this month. @@ -196,7 +196,7 @@ Total solar energy generated. - + Solar voltage being generated. @@ -216,7 +216,7 @@ Solar power being generated. - + Solar power being generated. @@ -240,7 +240,7 @@ Name of inverter from Sun Synk Connect. - + Plant ID of the inverter from Sun Synk Connect. From 9877437345b443e34bd47a3951fa49614bef37fe Mon Sep 17 00:00:00 2001 From: Leo Siepel Date: Sun, 7 Dec 2025 09:36:29 +0100 Subject: [PATCH 07/23] Fix thing => Thing Signed-off-by: Leo Siepel --- bundles/org.openhab.binding.remoteopenhab/README.md | 6 +++--- bundles/org.openhab.binding.samsungtv/README.md | 2 +- bundles/org.openhab.binding.satel/README.md | 2 +- bundles/org.openhab.binding.serial/README.md | 2 +- bundles/org.openhab.binding.shelly/README.md | 2 +- 5 files changed, 7 insertions(+), 7 deletions(-) diff --git a/bundles/org.openhab.binding.remoteopenhab/README.md b/bundles/org.openhab.binding.remoteopenhab/README.md index e0d252a921744..4d98d282b21bf 100644 --- a/bundles/org.openhab.binding.remoteopenhab/README.md +++ b/bundles/org.openhab.binding.remoteopenhab/README.md @@ -103,12 +103,12 @@ Example of connection to a remote server in the local network: ```java Bridge remoteopenhab:server:oh2 "OH2 server" [ host="192.168.0.100", port=8443, useHttps=true, trustedCertificate=true ] { - Thing thing tv "TV living room" [ thingUID="lgwebos:WebOSTV:tv" ] - Thing thing astroSun "Astro sun" [ thingUID="astro:sun:local", buildTriggerChannels=false ] { + Thing Thing tv "TV living room" [ thingUID="lgwebos:WebOSTV:tv" ] + Thing Thing astroSun "Astro sun" [ thingUID="astro:sun:local", buildTriggerChannels=false ] { Channels: Type trigger : nightEvent "Night Event" [ channelUID="astro:sun:local:night#event" ] } - Thing thing astroMoon "Astro moon" [ thingUID="astro:moon:local" ] + Thing Thing astroMoon "Astro moon" [ thingUID="astro:moon:local" ] } ``` diff --git a/bundles/org.openhab.binding.samsungtv/README.md b/bundles/org.openhab.binding.samsungtv/README.md index 1515c1f549e12..59e8b253f0ad4 100644 --- a/bundles/org.openhab.binding.samsungtv/README.md +++ b/bundles/org.openhab.binding.samsungtv/README.md @@ -652,7 +652,7 @@ With your **TV OFF** (ie totally off) ### What you should see -You may see some messages (this is a good thing, it means you are receiving UPnP traffic). +You may see some messages (this is a good Thing, it means you are receiving UPnP traffic). Now turn your TV ON (with the remote control). diff --git a/bundles/org.openhab.binding.satel/README.md b/bundles/org.openhab.binding.satel/README.md index ff460af261648..a39399507713b 100644 --- a/bundles/org.openhab.binding.satel/README.md +++ b/bundles/org.openhab.binding.satel/README.md @@ -164,7 +164,7 @@ Thing event-log EventLog [ ] ### atd-100 -You can configure the following settings for this thing: +You can configure the following settings for this Thing: | Name | Required | Description | | ------- | -------- | ---------------------------------------------------------- | diff --git a/bundles/org.openhab.binding.serial/README.md b/bundles/org.openhab.binding.serial/README.md index 662df3e7c70ee..372689feeb87c 100644 --- a/bundles/org.openhab.binding.serial/README.md +++ b/bundles/org.openhab.binding.serial/README.md @@ -9,7 +9,7 @@ The binding can be used to communicate with simple serial devices for which a de ## Overview -The Serial binding represents a serial port as a bridge thing, a TCP socket as an alternative bridge thing, and data matching defined patterns as things connected to the bridge. +The Serial binding represents a serial port as a bridge Thing, a TCP socket as an alternative bridge Thing, and data matching defined patterns as things connected to the bridge. ### Serial Bridge diff --git a/bundles/org.openhab.binding.shelly/README.md b/bundles/org.openhab.binding.shelly/README.md index 663d15280f688..7589e177d81e6 100644 --- a/bundles/org.openhab.binding.shelly/README.md +++ b/bundles/org.openhab.binding.shelly/README.md @@ -277,7 +277,7 @@ This means: The primary Shelly has to complete initialization before linked seco - Check Inbox to find the secondary/linked devices - Add secondary device as usual -If you add another secondary device to the same hub device, suspend and resume the primary thing; this will run a new initialization and add the new secondary device to the Inbox. +If you add another secondary device to the same hub device, suspend and resume the primary Thing; this will run a new initialization and add the new secondary device to the Inbox. ### Dynamic creation of channels From 94b72a2d711077bd9ecf5fb094990272099921c6 Mon Sep 17 00:00:00 2001 From: Leo Siepel Date: Sun, 28 Dec 2025 18:10:16 +0100 Subject: [PATCH 08/23] Fiux table alignment Signed-off-by: Leo Siepel --- bundles/org.openhab.binding.qbus/README.md | 20 +-- .../org.openhab.binding.qolsysiq/README.md | 24 ++-- .../README.md | 34 ++--- .../README.md | 28 ++-- bundles/org.openhab.binding.resol/README.md | 70 +++++----- bundles/org.openhab.binding.rotel/README.md | 126 ++++++++--------- .../org.openhab.binding.samsungtv/README.md | 78 +++++------ bundles/org.openhab.binding.satel/README.md | 40 +++--- bundles/org.openhab.binding.sbus/README.md | 76 +++++----- .../org.openhab.binding.semsportal/README.md | 18 +-- .../org.openhab.binding.senechome/README.md | 8 +- bundles/org.openhab.binding.seneye/README.md | 18 +-- .../org.openhab.binding.senseenergy/README.md | 12 +- .../README.md | 28 ++-- bundles/org.openhab.binding.serial/README.md | 16 +-- bundles/org.openhab.binding.shelly/README.md | 39 +++--- .../README.md | 4 +- bundles/org.openhab.binding.sleepiq/README.md | 54 +++---- .../org.openhab.binding.smartmeter/README.md | 12 +- .../README.md | 10 +- bundles/org.openhab.binding.solax/README.md | 10 +- bundles/org.openhab.binding.sonnen/README.md | 44 +++--- bundles/org.openhab.binding.sonos/README.md | 132 +++++++++--------- .../README.md | 10 +- bundles/org.openhab.binding.souliss/README.md | 12 +- .../org.openhab.binding.speedtest/README.md | 16 +-- bundles/org.openhab.binding.spotify/README.md | 52 +++---- .../org.openhab.binding.squeezebox/README.md | 62 ++++---- bundles/org.openhab.binding.sunsynk/README.md | 124 ++++++++-------- .../org.openhab.binding.surepetcare/README.md | 6 +- .../org.openhab.binding.systeminfo/README.md | 74 +++++----- 31 files changed, 628 insertions(+), 629 deletions(-) diff --git a/bundles/org.openhab.binding.qbus/README.md b/bundles/org.openhab.binding.qbus/README.md index 3efb3637f218c..5f818070e7c57 100644 --- a/bundles/org.openhab.binding.qbus/README.md +++ b/bundles/org.openhab.binding.qbus/README.md @@ -55,17 +55,17 @@ Bridge qbus:bridge:CTD001122 [ addr="localhost", sn="001122", port=8447, serverC ## Things Configuration -| Thing Type ID | Channel Name | Read Only | Description | -|-----------------------|---------------|-----------|---------------------------------------------------------| +| Thing Type ID | Channel Name | Read Only | Description | +|-----------------------|---------------|-----------|----------------------------------------------------------| | `onOff` | switch | No | This is the channel for bistabiel, timers, and intervals | -| `dimmer` | brightness | No | This is the channel for dimmers 1&2 buttons and CLC | -| `scene` | switch | No | This is the channel for scenes | -| `co2` | co2 | Yes | This is the channel for CO2 sensors | -| `rollershutter` | rollershutter | No | This is the channel for rollershutters | -| `rollershutter_slats` | rollershutter | No | This is the channel for rollershutters with slats | -| `thermostat` | setpoint | No | This is the channel for thermostat setpoint | -| `thermostat` | measured | Yes | This is the channel for thermostat current temperature | -| `thermostat` | mode | No | This is the channel for thermostat mode | +| `dimmer` | brightness | No | This is the channel for dimmers 1&2 buttons and CLC | +| `scene` | switch | No | This is the channel for scenes | +| `co2` | co2 | Yes | This is the channel for CO2 sensors | +| `rollershutter` | rollershutter | No | This is the channel for rollershutters | +| `rollershutter_slats` | rollershutter | No | This is the channel for rollershutters with slats | +| `thermostat` | setpoint | No | This is the channel for thermostat setpoint | +| `thermostat` | measured | Yes | This is the channel for thermostat current temperature | +| `thermostat` | mode | No | This is the channel for thermostat mode | ## Full Example diff --git a/bundles/org.openhab.binding.qolsysiq/README.md b/bundles/org.openhab.binding.qolsysiq/README.md index 9fe31a79313cd..8bfa8636c51f3 100644 --- a/bundles/org.openhab.binding.qolsysiq/README.md +++ b/bundles/org.openhab.binding.qolsysiq/README.md @@ -55,17 +55,17 @@ Once a partition is added, zones will be automatically discovered and appear in ### `partition` Thing Configuration -| Name | Type | Description | Default | Required | Advanced | -|------------|---------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------|----------|----------| +| Name | Type | Description | Default | Required | Advanced | +|------------|---------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------|----------|----------| | id | integer | Partition ID of the panel, starting with 0 for the first partition | N/A | yes | no | | disarmCode | text | Optional disarm code to use when receiving a disarm command without a code. Required for integrations like Alexa and Homekit who do not provide codes when disarming. Leave blank to always require a code | blank | no | no | -| armCode | text | Optional arm code to use when receiving arm commands without a code. Only required if the panel has been configured to require arm codes. Leave blank to always require a code | blank | no | yes | +| armCode | text | Optional arm code to use when receiving arm commands without a code. Only required if the panel has been configured to require arm codes. Leave blank to always require a code | blank | no | yes | ### `zone` Thing Configuration -| Name | Type | Description | Default | Required | Advanced | -|---------|---------|---------------------------------------------------------------------------------------------------------|---------|----------|----------| -| id | integer | ID of the zone, starting with 1 for the first zone | N/A | yes | no | +| Name | Type | Description | Default | Required | Advanced | +|------|---------|----------------------------------------------------|---------|----------|----------| +| id | integer | ID of the zone, starting with 1 for the first zone | N/A | yes | no | ## Channels @@ -75,12 +75,12 @@ None. ### Partition Channels -| Channel | Type | Read/Write | Description | State Options | Command Options | -|-------------|--------|------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------|----------------------------| -| armState | String | RW | Reports the current partition arm state or sends an arm or disarm command to the system. Security codes can be appended to the command using a colon delimiter (e.g. DISARM:123456). Codes appended to the command will be used in place of the `armCode` configuration property if set. | ALARM, ARM_AWAY, ARM_STAY, DISARM, ENTRY_DELAY, EXIT_DELAY | ARM_AWAY, ARM_STAY, DISARM | -| alarmState | String | RW | Reports on the current alarm state, or triggers an instant alarm | AUXILIARY, FIRE, POLICE, ZONEOPEN, NONE | AUXILIARY, FIRE, POLICE | -| armingDelay | Number | R | The arming delay countdown currently in progress | Seconds remaining | N/A | -| errorEvent | String | R | Last error event message reported by the partition. Clears after 30 seconds | Error text | N/A | +| Channel | Type | Read/Write | Description | State Options | Command Options | +|-------------|--------|------------|-------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------|----------------------------| +| armState | String | RW | Reports the current partition arm state or sends an arm/disarm command (e.g., DISARM:123456). Codes will replace the `armCode` property if set. | ALARM, ARM_AWAY, ARM_STAY, DISARM, ENTRY_DELAY, EXIT_DELAY | ARM_AWAY, ARM_STAY, DISARM | +| alarmState | String | RW | Reports on the current alarm state, or triggers an instant alarm | AUXILIARY, FIRE, POLICE, ZONEOPEN, NONE | AUXILIARY, FIRE, POLICE | +| armingDelay | Number | R | The arming delay countdown currently in progress | Seconds remaining | N/A | +| errorEvent | String | R | Last error event message reported by the partition. Clears after 30 seconds | Error text | N/A | ### Zone Channels diff --git a/bundles/org.openhab.binding.radiobrowser/README.md b/bundles/org.openhab.binding.radiobrowser/README.md index 51c55ae1908ce..866b400eb5df6 100644 --- a/bundles/org.openhab.binding.radiobrowser/README.md +++ b/bundles/org.openhab.binding.radiobrowser/README.md @@ -9,12 +9,12 @@ With this binding you can use their database of more than 45,000 stations to app ### `radio` Thing Configuration -| Name | Type | Description | Default | Required | Advanced | -|---------------|---------|--------------------------------------------------------------------------------------------|----------|----------|----------| -| filters | text | Allows you to specify your own filters from the advanced search of the API. | See below | yes | no | -| clicks | boolean | Helps to support the server recommend good results. | true | yes | yes | -| languageCount | integer | If you want fewer languages to be shown as a filter, you can raise this or create your own. | 14 | yes | yes | -| recentLimit | integer | Limit the number of stations in the recent channel list. 0 disables the feature. | 5 | yes | no | +| Name | Type | Description | Default | Required | Advanced | +|---------------|---------|---------------------------------------------------------------------------------------------|-----------|----------|----------| +| filters | text | Allows you to specify your own filters from the advanced search of the API. | See below | yes | no | +| clicks | boolean | Helps to support the server recommend good results. | true | yes | yes | +| languageCount | integer | If you want fewer languages to be shown as a filter, you can raise this or create your own. | 14 | yes | yes | +| recentLimit | integer | Limit the number of stations in the recent channel list. 0 disables the feature. | 5 | yes | no | ## Filters Configuration @@ -40,17 +40,17 @@ If in doubt, you can use the [Event Monitor in the Developer Sidebar](https://ww ## Channels -| Channel | Type | Read/Write | Description | -|-----------|--------|------------|-------------------------------------------------------------------------------------------------------------| -| country | String | RW | This allows you to only find stations in ALL or a country of your choice. | -| state | String | RW | When a country is selected, this will auto populate with states that are in your country. | -| language | String | RW | You can limit the stations to only be in your language, or you can also use Metadata to set your own list. | -| genre | String | RW | A list of common genres to help you find a station you like. State Options Metadata allows you to change this. | -| station | String | RW | These are the search results back from the database that match your filter settings. | -| stream | String | RW | This is the URL for the selected station. | -| name | String | RW | This is the name of the selected station. | -| icon | String | RW | This is the icon for the selected station if available in their database. | -| recent | String | RW | Records the last stations you selected to make them easier to find. A config allows this list to be longer. | +| Channel | Type | Read/Write | Description | +|----------|--------|------------|----------------------------------------------------------------------------------------------------------------| +| country | String | RW | This allows you to only find stations in ALL or a country of your choice. | +| state | String | RW | When a country is selected, this will auto populate with states that are in your country. | +| language | String | RW | You can limit the stations to only be in your language, or you can also use Metadata to set your own list. | +| genre | String | RW | A list of common genres to help you find a station you like. State Options Metadata allows you to change this. | +| station | String | RW | These are the search results back from the database that match your filter settings. | +| stream | String | RW | This is the URL for the selected station. | +| name | String | RW | This is the name of the selected station. | +| icon | String | RW | This is the icon for the selected station if available in their database. | +| recent | String | RW | Records the last stations you selected to make them easier to find. A config allows this list to be longer. | ## Using the Stream URL diff --git a/bundles/org.openhab.binding.remoteopenhab/README.md b/bundles/org.openhab.binding.remoteopenhab/README.md index 4d98d282b21bf..41a2ea9fdc17f 100644 --- a/bundles/org.openhab.binding.remoteopenhab/README.md +++ b/bundles/org.openhab.binding.remoteopenhab/README.md @@ -36,20 +36,20 @@ The binding has no configuration options, all configuration is done at Thing lev The `server` Thing has the following configuration parameters: -| Parameter | Required | Description | -|-----------------------|----------|-----------------------------------------------------------------------------------------------------------| -| host | yes | The host name or IP address of the remote openHAB server. | -| useHttps | no | Set to true if you want to use HTTPS to communicate with the remote openHAB server. Default is false. | -| port | yes | The HTTP port to use to communicate with the remote openHAB server. Default is 8080. | -| trustedCertificate | no | Set to true if you want to use HTTPS even without a valid SSL certificate provided by your remote server. | -| restPath | yes | The subpath of the REST API on the remote openHAB server. Default is "/rest/" | -| token | no | The token to use when the remote openHAB server is setup to require authorization to run its REST API. | -| username | no | The username to use when the remote openHAB server is setup to require basic authorization to run its REST API. | -| password | no | The password to use when the remote openHAB server is setup to require basic authorization to run its REST API. | -| authenticateAnyway | no | Set it to true in case you want to pass authentication information even when the communicate with the remote openHAB server is not secured (only HTTP). This is of course not recommended especially if your connection is over the Internet. Default is false. | -| accessibilityInterval | no | Minutes between checking the remote server accessibility. 0 to disable the check. Default is 3. | -| aliveInterval | no | Number of last minutes to consider when monitoring the receipt of events from the remote server. If an event is received during this interval, the remote server is considered alive and its accessibility will not be verified. Use 0 to disable this feature. Default is 5. | -| restartIfNoActivity | no | Set it to true if you want to restart the connection (SSE) to the remote server when no events are received in the monitored interval. It is not necessary if the goal is to properly handle a short network outage (few seconds). This can be useful if you want to deal with a long network outage. Do not enable it if you remote server does not send events during the monitored interval under normal conditions, it will cause frequent restart of the connection and potential loss of events. Default is false. | +| Parameter | Required | Description | +|-----------------------|----------|--------------------------------------------------------------------------------------------------------------| +| host | yes | Host name or IP address of the remote openHAB server. | +| useHttps | no | Use HTTPS for communication. Default: false. | +| port | yes | HTTP port for remote server. Default: 8080. | +| trustedCertificate | no | Accept HTTPS without valid SSL certificate. | +| restPath | yes | REST API subpath on remote server. Default: "/rest/" | +| token | no | Authorization token for remote server REST API. | +| username | no | Username for basic authorization to remote server REST API. | +| password | no | Password for basic authorization to remote server REST API. | +| authenticateAnyway | no | Pass authentication over unsecured HTTP (not recommended). Default: false. | +| accessibilityInterval | no | Minutes between remote server accessibility checks. 0 to disable. Default: 3. | +| aliveInterval | no | Minutes to monitor event receipts. Server considered alive if event received. 0 to disable. Default: 5. | +| restartIfNoActivity | no | Restart SSE connection if no events received in monitored interval. Useful for long outages. Default: false. | Please note that even though the default configuration is based on insecure communication over HTTP, it is recommended to adjust the configuration to be based on secure communication over HTTPS. This is of course essential if your connection to the remote openHAB server is over the Internet. diff --git a/bundles/org.openhab.binding.resol/README.md b/bundles/org.openhab.binding.resol/README.md index b34b063b5be1c..ca975fba84ffd 100644 --- a/bundles/org.openhab.binding.resol/README.md +++ b/bundles/org.openhab.binding.resol/README.md @@ -88,8 +88,8 @@ For configuration in files you can enable the logging with at least DEBUG level _emulatedEM_ devices cannot be auto-discovered and require beside the bridge the following configuration: -| Parameter | Type | Required | Description | -|-----------|------|----------|-----------------------------------------------------------------------------------------------------------------| +| Parameter | Type | Required | Description | +|-----------|------|----------|------------------------------------------------------------------------------------------------------------------| | moduleID | int | yes | The module ID on the VBUS in range 0-15, but further restrictions might apply depending on the resol controller. | ## Device Channels @@ -98,31 +98,31 @@ The channels of a Thing are determined automatically based on the received VBUS Here is a list of the channels of a DeltaSol MX with a heat quantity meter (HQM) and an extension module EM. The channels supported for your device can be seen in the UI or in the logs if DEBUG logging is enabled for this binding after data is received from the physical device. -| Channel | Type | Description | -|-----------------------------------|--------------------------|----------------------------------------------------| -| pump_speed_relay_x | Number:Dimensionless | Percentage of the output state of relay 'x' | -| temperature_sensor_x | Number:Temperature | Temperature sensor 'x' of the controller | -| temperature_module_y_sensor_x | Number:Temperature | Temperature sensor 'x' of the extension module 'y' | -| pressure_sensor_x | Number:Pressure | Pressure sensor 'x' | -| humidity_sensor_x | Number:Dimensionless | Humidity sensor 'x' | -| irradiation_sensor_x | Number:Intensity | Sunlight intensity sensor | -| output_m | Number:Dimensionless | PWM/0-10V level value of the output 'm' | -| system_date | DateTime | Date and time of the controller clock | -| error_mask | Number | Bitmask for the different errors | -| error_sensor_line_broken | Number | Sensor line broken status (details for error_mask) | -| error_sensor_line_short-circuited | Number | Sensor short circuit status (details for error_mask) | -| flow_rate_sensor_x | Number:VolumetricFlowRate| Flow rate of sensor 'x' | -| flow_set_temperature | Number:Temperature | Heating circuit set temperature | -| operating_state | Number | Heating circuit operating state | -| heat_quantity | Number:Energy | Total heat quantity (of a HQM) | -| heat_quantity_today | Number:Energy | Todays heat quantity (of a HQM) | -| heat_quantity_week | Number:Energy | This weeks heat quantity (of a HQM) | -| heat_quantity_month | Number:Energy | This months heat quantity (of a HQM) | -| volume_in_total | Number:Volume | Total volume (of a HQM) | -| volume_today | Number:Volume | Todays volume (of a HQM) | -| volume_week | Number:Volume | This weeks volume (of a HQM) | -| volume_month | Number:Volume | This months volume (of a HQM) | -| power | Number:Power | Current power (of a HQM) | +| Channel | Type | Description | +|-----------------------------------|---------------------------|------------------------------------------------------| +| pump_speed_relay_x | Number:Dimensionless | Percentage of the output state of relay 'x' | +| temperature_sensor_x | Number:Temperature | Temperature sensor 'x' of the controller | +| temperature_module_y_sensor_x | Number:Temperature | Temperature sensor 'x' of the extension module 'y' | +| pressure_sensor_x | Number:Pressure | Pressure sensor 'x' | +| humidity_sensor_x | Number:Dimensionless | Humidity sensor 'x' | +| irradiation_sensor_x | Number:Intensity | Sunlight intensity sensor | +| output_m | Number:Dimensionless | PWM/0-10V level value of the output 'm' | +| system_date | DateTime | Date and time of the controller clock | +| error_mask | Number | Bitmask for the different errors | +| error_sensor_line_broken | Number | Sensor line broken status (details for error_mask) | +| error_sensor_line_short-circuited | Number | Sensor short circuit status (details for error_mask) | +| flow_rate_sensor_x | Number:VolumetricFlowRate | Flow rate of sensor 'x' | +| flow_set_temperature | Number:Temperature | Heating circuit set temperature | +| operating_state | Number | Heating circuit operating state | +| heat_quantity | Number:Energy | Total heat quantity (of a HQM) | +| heat_quantity_today | Number:Energy | Todays heat quantity (of a HQM) | +| heat_quantity_week | Number:Energy | This weeks heat quantity (of a HQM) | +| heat_quantity_month | Number:Energy | This months heat quantity (of a HQM) | +| volume_in_total | Number:Volume | Total volume (of a HQM) | +| volume_today | Number:Volume | Todays volume (of a HQM) | +| volume_week | Number:Volume | This weeks volume (of a HQM) | +| volume_month | Number:Volume | This months volume (of a HQM) | +| power | Number:Power | Current power (of a HQM) | Channels are dynamically created dependent on the devices connected to the VBus. So far only reading is supported. @@ -139,14 +139,14 @@ Additionally the virtual input device for adjusting the heating circuits as a _B The type of the sensor inputs must be configured in the Resol Controller accordingly. From all possible sensor channels (temperatureX, switchX, etc.) only one shall be linked to an item at a time, except for BAS which emulates a RCP12 room control unit where both, BasTempAdjustmentX and BasModeX shall be written from OH. -| Channel | Type | Description | -|----------------------|---------------------------|----------------------------------------------------| -| relayX | Number:Dimensionless | Read-only percentage of the virtual output state of relay 'x' as set by the Resol Controller. | -| temperatureX | Number:Temperature | Writable temperature value for the virtual input for sensor 'x'. | -| resistorX | Number:ElectricResistance | Writable resistance value for the virtual input for sensor 'x'. | -| switchX | Switch | Writable switch state for the virtual input for sensor 'x'. | -| BasTempAdjustmentX | Number:Temperature | Writable temperature adjustment for the virtual room control module BAS on the for the virtual input for sensor 'x'. Use together with BasModeX, not effective if BasModeX is OFF or Party. | -| BasModeX | Number | Writable heating circuit mode for the virtual room control module BAS on the for the virtual input for sensor 'x'. Use together with BasTempAdjustmentX.| +| Channel | Type | Description | +|--------------------|---------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| relayX | Number:Dimensionless | Read-only percentage of the virtual output state of relay 'x' as set by the Resol Controller. | +| temperatureX | Number:Temperature | Writable temperature value for the virtual input for sensor 'x'. | +| resistorX | Number:ElectricResistance | Writable resistance value for the virtual input for sensor 'x'. | +| switchX | Switch | Writable switch state for the virtual input for sensor 'x'. | +| BasTempAdjustmentX | Number:Temperature | Writable temperature adjustment for the virtual room control module BAS on the for the virtual input for sensor 'x'. Use together with BasModeX, not effective if BasModeX is OFF or Party. | +| BasModeX | Number | Writable heating circuit mode for the virtual room control module BAS on the for the virtual input for sensor 'x'. Use together with BasTempAdjustmentX. | ## Full Example diff --git a/bundles/org.openhab.binding.rotel/README.md b/bundles/org.openhab.binding.rotel/README.md index 3fd55a1188a91..10cad00dc90ce 100644 --- a/bundles/org.openhab.binding.rotel/README.md +++ b/bundles/org.openhab.binding.rotel/README.md @@ -93,51 +93,51 @@ All settings are through Thing configuration parameters. The Thing requires the following configuration parameters: -| Parameter Label | Parameter ID | Description | Accepted values | -|-------------------------|------------------|-------------------------------------------------------|-----------------| -| Serial Port | serialPort | Serial port to use for connecting to the Rotel device | | -| Baud Rate | baudRate | Baud rate to use for connecting to the Rotel device | 19200, 38400 | -| Address | host | Host name or IP address of the Rotel device (IP connection) or the machine connected to the Rotel device (serial over IP) | | -| Port | port | Communication port (IP or serial over IP). For IP connection to the Rotel device, keep the default port (9590) | | -| Protocol Version | Protocol | Choose one of the two protocol versions (depends on your device firmware). Default is ASCII_V2 | ASCII_V1 or ASCII_V2 | -| Input Label CD | inputLabelCd | Label setup for the source CD | | -| Input Label Tuner | inputLabelTuner | Label setup for the source Tuner | | -| Input Label Tape | inputLabelTape | Label setup for the source Tape | | -| Input Label USB | inputLabelUsb | Label setup for the source USB | | -| Input Label Video 1 | inputLabelVideo1 | Label setup for the source Video 1 | | -| Input Label Video 2 | inputLabelVideo2 | Label setup for the source Video 2 | | -| Input Label Video 3 | inputLabelVideo3 | Label setup for the source Video 3 | | -| Input Label Video 4 | inputLabelVideo4 | Label setup for the source Video 4 | | -| Input Label Video 5 | inputLabelVideo5 | Label setup for the source Video 5 | | -| Input Label Video 6 | inputLabelVideo6 | Label setup for the source Video 6 | | -| Input Label Multi Input | inputLabelMulti | Label setup for the source Multi Input | | +| Parameter Label | Parameter ID | Description | Accepted values | +|-------------------------|------------------|---------------------------------------------------------------------------------------------------------------------------|----------------------| +| Serial Port | serialPort | Serial port to use for connecting to the Rotel device | | +| Baud Rate | baudRate | Baud rate to use for connecting to the Rotel device | 19200, 38400 | +| Address | host | Host name or IP address of the Rotel device (IP connection) or the machine connected to the Rotel device (serial over IP) | | +| Port | port | Communication port (IP or serial over IP). For IP connection to the Rotel device, keep the default port (9590) | | +| Protocol Version | Protocol | Choose one of the two protocol versions (depends on your device firmware). Default is ASCII_V2 | ASCII_V1 or ASCII_V2 | +| Input Label CD | inputLabelCd | Label setup for the source CD | | +| Input Label Tuner | inputLabelTuner | Label setup for the source Tuner | | +| Input Label Tape | inputLabelTape | Label setup for the source Tape | | +| Input Label USB | inputLabelUsb | Label setup for the source USB | | +| Input Label Video 1 | inputLabelVideo1 | Label setup for the source Video 1 | | +| Input Label Video 2 | inputLabelVideo2 | Label setup for the source Video 2 | | +| Input Label Video 3 | inputLabelVideo3 | Label setup for the source Video 3 | | +| Input Label Video 4 | inputLabelVideo4 | Label setup for the source Video 4 | | +| Input Label Video 5 | inputLabelVideo5 | Label setup for the source Video 5 | | +| Input Label Video 6 | inputLabelVideo6 | Label setup for the source Video 6 | | +| Input Label Multi Input | inputLabelMulti | Label setup for the source Multi Input | | All things have the following parameters: serialPort, host and port. Some have additional parameters listed in the next table: -| Thing Type | Parameters available in addition to serialPort, host and port | -|------------|-----------------------------------------------------------------| -| ra1572 | protocol (ASCII_V2 by default); as of firmware V2.65, select V2 | -| ra1592 | protocol (ASCII_V2 by default); as of firmware V1.53, select V2 | -| rc1572 | protocol (ASCII_V2 by default); as of firmware V2.65, select V2 | -| rc1590 | protocol (ASCII_V2 by default); as of firmware V1.40, select V2 | -| rcd1572 | protocol (ASCII_V2 by default); as of firmware V2.33, select V2 | -| rsp1066 | inputLabelVideo1, inputLabelVideo2, inputLabelVideo3, inputLabelVideo4, inputLabelVideo5 | -| rsp1068 | inputLabelCd, inputLabelTuner, inputLabelTape, inputLabelVideo1, inputLabelVideo2, inputLabelVideo3, inputLabelVideo4, inputLabelVideo5 | -| rsp1069 | inputLabelCd, inputLabelTuner, inputLabelTape, inputLabelVideo1, inputLabelVideo2, inputLabelVideo3, inputLabelVideo4, inputLabelVideo5 | -| rsp1098 | inputLabelCd, inputLabelTuner, inputLabelTape, inputLabelVideo1, inputLabelVideo2, inputLabelVideo3, inputLabelVideo4, inputLabelVideo5 | -| rsp1570 | inputLabelCd, inputLabelTuner, inputLabelTape, inputLabelVideo1, inputLabelVideo2, inputLabelVideo3, inputLabelVideo4, inputLabelVideo5, inputLabelMulti | +| Thing Type | Parameters available in addition to serialPort, host and port | +|------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| ra1572 | protocol (ASCII_V2 by default); as of firmware V2.65, select V2 | +| ra1592 | protocol (ASCII_V2 by default); as of firmware V1.53, select V2 | +| rc1572 | protocol (ASCII_V2 by default); as of firmware V2.65, select V2 | +| rc1590 | protocol (ASCII_V2 by default); as of firmware V1.40, select V2 | +| rcd1572 | protocol (ASCII_V2 by default); as of firmware V2.33, select V2 | +| rsp1066 | inputLabelVideo1, inputLabelVideo2, inputLabelVideo3, inputLabelVideo4, inputLabelVideo5 | +| rsp1068 | inputLabelCd, inputLabelTuner, inputLabelTape, inputLabelVideo1, inputLabelVideo2, inputLabelVideo3, inputLabelVideo4, inputLabelVideo5 | +| rsp1069 | inputLabelCd, inputLabelTuner, inputLabelTape, inputLabelVideo1, inputLabelVideo2, inputLabelVideo3, inputLabelVideo4, inputLabelVideo5 | +| rsp1098 | inputLabelCd, inputLabelTuner, inputLabelTape, inputLabelVideo1, inputLabelVideo2, inputLabelVideo3, inputLabelVideo4, inputLabelVideo5 | +| rsp1570 | inputLabelCd, inputLabelTuner, inputLabelTape, inputLabelVideo1, inputLabelVideo2, inputLabelVideo3, inputLabelVideo4, inputLabelVideo5, inputLabelMulti | | rsp1572 | inputLabelCd, inputLabelTuner, inputLabelUsb, inputLabelVideo1, inputLabelVideo2, inputLabelVideo3, inputLabelVideo4, inputLabelVideo5, inputLabelVideo6, inputLabelMulti | -| rsx1055 | inputLabelVideo1, inputLabelVideo2, inputLabelVideo3, inputLabelVideo4, inputLabelVideo5 | -| rsx1056 | inputLabelCd, inputLabelTuner, inputLabelTape, inputLabelVideo1, inputLabelVideo2, inputLabelVideo3, inputLabelVideo4, inputLabelVideo5 | -| rsx1057 | inputLabelCd, inputLabelTuner, inputLabelTape, inputLabelVideo1, inputLabelVideo2, inputLabelVideo3, inputLabelVideo4, inputLabelVideo5 | -| rsx1058 | inputLabelCd, inputLabelTuner, inputLabelTape, inputLabelVideo1, inputLabelVideo2, inputLabelVideo3, inputLabelVideo4, inputLabelVideo5 | -| rsx1065 | inputLabelVideo1, inputLabelVideo2, inputLabelVideo3, inputLabelVideo4, inputLabelVideo5 | -| rsx1067 | inputLabelCd, inputLabelTuner, inputLabelTape, inputLabelVideo1, inputLabelVideo2, inputLabelVideo3, inputLabelVideo4, inputLabelVideo5 | -| rsx1550 | inputLabelCd, inputLabelTuner, inputLabelTape, inputLabelVideo1, inputLabelVideo2, inputLabelVideo3, inputLabelVideo4, inputLabelVideo5, inputLabelMulti | -| rsx1560 | inputLabelCd, inputLabelTuner, inputLabelTape, inputLabelVideo1, inputLabelVideo2, inputLabelVideo3, inputLabelVideo4, inputLabelVideo5, inputLabelMulti | +| rsx1055 | inputLabelVideo1, inputLabelVideo2, inputLabelVideo3, inputLabelVideo4, inputLabelVideo5 | +| rsx1056 | inputLabelCd, inputLabelTuner, inputLabelTape, inputLabelVideo1, inputLabelVideo2, inputLabelVideo3, inputLabelVideo4, inputLabelVideo5 | +| rsx1057 | inputLabelCd, inputLabelTuner, inputLabelTape, inputLabelVideo1, inputLabelVideo2, inputLabelVideo3, inputLabelVideo4, inputLabelVideo5 | +| rsx1058 | inputLabelCd, inputLabelTuner, inputLabelTape, inputLabelVideo1, inputLabelVideo2, inputLabelVideo3, inputLabelVideo4, inputLabelVideo5 | +| rsx1065 | inputLabelVideo1, inputLabelVideo2, inputLabelVideo3, inputLabelVideo4, inputLabelVideo5 | +| rsx1067 | inputLabelCd, inputLabelTuner, inputLabelTape, inputLabelVideo1, inputLabelVideo2, inputLabelVideo3, inputLabelVideo4, inputLabelVideo5 | +| rsx1550 | inputLabelCd, inputLabelTuner, inputLabelTape, inputLabelVideo1, inputLabelVideo2, inputLabelVideo3, inputLabelVideo4, inputLabelVideo5, inputLabelMulti | +| rsx1560 | inputLabelCd, inputLabelTuner, inputLabelTape, inputLabelVideo1, inputLabelVideo2, inputLabelVideo3, inputLabelVideo4, inputLabelVideo5, inputLabelMulti | | rsx1562 | inputLabelCd, inputLabelTuner, inputLabelUsb, inputLabelVideo1, inputLabelVideo2, inputLabelVideo3, inputLabelVideo4, inputLabelVideo5, inputLabelVideo6, inputLabelMulti | -| rx1052 | baudRate, inputLabelVideo1, inputLabelVideo2, inputLabelVideo3, inputLabelVideo4 | +| rx1052 | baudRate, inputLabelVideo1, inputLabelVideo2, inputLabelVideo3, inputLabelVideo4 | Some notes: @@ -153,30 +153,30 @@ Some notes: The following channels are available: -| Channel ID | Label | Item Type | Description | Possible values (depends on model) | -|--------------|---------------------|-----------|---------------------------------------|------------------------------------| -| power, mainZone#power, allZones#power, zone2#power, zone3#power, zone4#power | Power | Switch | Power ON/OFF the equipment or the zone | ON, OFF | -| source, mainZone#source, zone1#source, zone2#source, zone3#source, zone4#source | Source Input | String | Select the source input | CD, TUNER, TAPE, VIDEO1, VIDEO2, VIDEO3, VIDEO4, VIDEO5, VIDEO6, VIDEO7, VIDEO8, USB, PCUSB, MULTI, PHONO, BLUETOOTH, AUX, AUX1, AUX2, AUX1_COAX, AUX1_OPTICAL, COAX1, COAX2, COAX3, OPTICAL1, OPTICAL2, OPTICAL3, XLR, RCD, FM, DAB, PLAYFI, IRADIO, NETWORK, INPUTA, INPUTB, INPUTC, INPUTD | -| mainZone#recordSource | Record Source | String | Select the source to be recorded | CD, TUNER, TAPE, VIDEO1, VIDEO2, VIDEO3, VIDEO4, VIDEO5, VIDEO6, USB, PHONO, MAIN | -| dsp, mainZone#dsp | DSP Mode | String | Select the DSP mode | NONE, STEREO3, STEREO5, STEREO7, STEREO9, STEREO11, MUSIC1, MUSIC2, MUSIC3, MUSIC4, PROLOGIC, PLIICINEMA, PLIIMUSIC, PLIIGAME, PLIIXCINEMA, PLIIXMUSIC, PLIIXGAME, PLIIZ, NEO6MUSIC, NEO6CINEMA, ATMOS, NEURALX, BYPASS | -| mainZone#volumeUpDown, zone2#volumeUpDown | Volume | Number | Increase or decrease the volume | INCREASE, DECREASE, value | -| volume, mainZone#volume, zone1#volume, zone2#volume, zone3#volume, zone4#volume | Volume | Dimmer | Adjust the volume | value between 0 and 100 | -| mute, mainZone#mute, zone1#mute, zone2#mute, zone3#mute, zone4#mute | Mute | Switch | Mute/unmute the sound | ON, OFF | -| bass, mainZone#bass, zone1#bass, zone2#bass, zone3#bass, zone4#bass | Bass Adjustment | Number | Adjust the bass | INCREASE, DECREASE, value | -| treble, mainZone#treble, zone1#treble, zone2#treble, zone3#treble, zone4#treble | Treble Adjustment | Number | Adjust the treble | INCREASE, DECREASE, value | -| playControl | Playback Control | Player | Control the playback | PLAY, PAUSE, NEXT, PREVIOUS | -| track | Current Track | Number | The current CD track number | | -| random | Random Mode | Switch | The current random mode | | -| repeat | Repeat Mode | String | The current repeat mode | TRACK, DISC, OFF | -| radioPreset | Radio Preset | Number | Select a radio preset | INCREASE, DECREASE, value between 1 and 30 | -| mainZone#line1 | Front Panel Line 1 | String | The first line displayed on the device front panel | | -| mainZone#line2 | Front Panel Line 2 | String | The second line displayed on the device front panel | | -| frequency, zone1#frequency, zone2#frequency, zone3#frequency, zone4#frequency | Current Frequency | Number | The current frequency (in kHz) for digital source input | | -| brightness, allZones#brightness | Front Panel Display Brightness | Dimmer | The backlight brightness level (in %) of the device front panel | | -| tcbypass | Tone Control Bypass | Switch | The user's bass-/treble-settings are bypassed | ON, OFF | -| balance, zone1#balance, zone2#balance, zone3#balance, zone4#balance | Stereo Balance Adjustment | Number | Adjust the balance | INCREASE, DECREASE, value | -| speakera | Speaker-A Adjustment | Switch | Turn on/off the speaker group A | ON, OFF | -| speakerb | Speaker-B Adjustment | Switch | Turn on/off the speaker group B | ON, OFF | +| Channel ID | Label | Item Type | Description | Possible values (depends on model) | +|---------------------------------------------------------------------------------|--------------------------------|-----------|-----------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| power, mainZone#power, allZones#power, zone2#power, zone3#power, zone4#power | Power | Switch | Power ON/OFF the equipment or the zone | ON, OFF | +| source, mainZone#source, zone1#source, zone2#source, zone3#source, zone4#source | Source Input | String | Select the source input | CD, TUNER, TAPE, VIDEO1, VIDEO2, VIDEO3, VIDEO4, VIDEO5, VIDEO6, VIDEO7, VIDEO8, USB, PCUSB, MULTI, PHONO, BLUETOOTH, AUX, AUX1, AUX2, AUX1_COAX, AUX1_OPTICAL, COAX1, COAX2, COAX3, OPTICAL1, OPTICAL2, OPTICAL3, XLR, RCD, FM, DAB, PLAYFI, IRADIO, NETWORK, INPUTA, INPUTB, INPUTC, INPUTD | +| mainZone#recordSource | Record Source | String | Select the source to be recorded | CD, TUNER, TAPE, VIDEO1, VIDEO2, VIDEO3, VIDEO4, VIDEO5, VIDEO6, USB, PHONO, MAIN | +| dsp, mainZone#dsp | DSP Mode | String | Select the DSP mode | NONE, STEREO3, STEREO5, STEREO7, STEREO9, STEREO11, MUSIC1, MUSIC2, MUSIC3, MUSIC4, PROLOGIC, PLIICINEMA, PLIIMUSIC, PLIIGAME, PLIIXCINEMA, PLIIXMUSIC, PLIIXGAME, PLIIZ, NEO6MUSIC, NEO6CINEMA, ATMOS, NEURALX, BYPASS | +| mainZone#volumeUpDown, zone2#volumeUpDown | Volume | Number | Increase or decrease the volume | INCREASE, DECREASE, value | +| volume, mainZone#volume, zone1#volume, zone2#volume, zone3#volume, zone4#volume | Volume | Dimmer | Adjust the volume | value between 0 and 100 | +| mute, mainZone#mute, zone1#mute, zone2#mute, zone3#mute, zone4#mute | Mute | Switch | Mute/unmute the sound | ON, OFF | +| bass, mainZone#bass, zone1#bass, zone2#bass, zone3#bass, zone4#bass | Bass Adjustment | Number | Adjust the bass | INCREASE, DECREASE, value | +| treble, mainZone#treble, zone1#treble, zone2#treble, zone3#treble, zone4#treble | Treble Adjustment | Number | Adjust the treble | INCREASE, DECREASE, value | +| playControl | Playback Control | Player | Control the playback | PLAY, PAUSE, NEXT, PREVIOUS | +| track | Current Track | Number | The current CD track number | | +| random | Random Mode | Switch | The current random mode | | +| repeat | Repeat Mode | String | The current repeat mode | TRACK, DISC, OFF | +| radioPreset | Radio Preset | Number | Select a radio preset | INCREASE, DECREASE, value between 1 and 30 | +| mainZone#line1 | Front Panel Line 1 | String | The first line displayed on the device front panel | | +| mainZone#line2 | Front Panel Line 2 | String | The second line displayed on the device front panel | | +| frequency, zone1#frequency, zone2#frequency, zone3#frequency, zone4#frequency | Current Frequency | Number | The current frequency (in kHz) for digital source input | | +| brightness, allZones#brightness | Front Panel Display Brightness | Dimmer | The backlight brightness level (in %) of the device front panel | | +| tcbypass | Tone Control Bypass | Switch | The user's bass-/treble-settings are bypassed | ON, OFF | +| balance, zone1#balance, zone2#balance, zone3#balance, zone4#balance | Stereo Balance Adjustment | Number | Adjust the balance | INCREASE, DECREASE, value | +| speakera | Speaker-A Adjustment | Switch | Turn on/off the speaker group A | ON, OFF | +| speakerb | Speaker-B Adjustment | Switch | Turn on/off the speaker group B | ON, OFF | Here are the list of channels available for each Thing type: diff --git a/bundles/org.openhab.binding.samsungtv/README.md b/bundles/org.openhab.binding.samsungtv/README.md index 59e8b253f0ad4..32e403457f16f 100644 --- a/bundles/org.openhab.binding.samsungtv/README.md +++ b/bundles/org.openhab.binding.samsungtv/README.md @@ -16,19 +16,19 @@ Basic operation does not require any special configuration. The binding has the following configuration options, which can be set for "binding:samsungtv": -| Parameter | Name | Description | Required | -|------------------------|---------------------------|---------------------------------------------------------------|-----------| -| hostName | Host Name | Network address of the Samsung TV | yes | -| port | TCP Port | TCP port of the Samsung TV | no | -| macAddress | MAC Address | MAC Address of the Samsung TV | no | -| refreshInterval | Refresh Interval | States how often a refresh shall occur in milliseconds | no | -| protocol | Remote Control Protocol | The type of remote control protocol | yes | -| webSocketToken | Websocket Token | Security token for secure websocket connection | no | -| subscription | Subscribe to UPNP | Reduces polling on UPNP devices, default false | no | -| orientationKey | Orientation Key | Key press to send to rotate auto-rotation mount | no | -| smartThingsApiKey | Smartthings PAT | Smartthings Personal Access Token | no | -| smartThingsDeviceId | Smartthings Device ID | Smartthings Device ID for this TV | no | -| smartThingsSubscription| Smartthings Subscription | Reduces polling on Smartthings channels, default true | no | +| Parameter | Name | Description | Required | +|-------------------------|--------------------------|--------------------------------------------------------|----------| +| hostName | Host Name | Network address of the Samsung TV | yes | +| port | TCP Port | TCP port of the Samsung TV | no | +| macAddress | MAC Address | MAC Address of the Samsung TV | no | +| refreshInterval | Refresh Interval | States how often a refresh shall occur in milliseconds | no | +| protocol | Remote Control Protocol | The type of remote control protocol | yes | +| webSocketToken | Websocket Token | Security token for secure websocket connection | no | +| subscription | Subscribe to UPNP | Reduces polling on UPNP devices, default false | no | +| orientationKey | Orientation Key | Key press to send to rotate auto-rotation mount | no | +| smartThingsApiKey | Smartthings PAT | Smartthings Personal Access Token | no | +| smartThingsDeviceId | Smartthings Device ID | Smartthings Device ID for this TV | no | +| smartThingsSubscription | Smartthings Subscription | Reduces polling on Smartthings channels, default true | no | ## Thing Configuration @@ -67,32 +67,32 @@ For >2019 TV's, there is an app workaround, see [App Discovery](#app-discovery) TVs support the following channels: -| Channel Type ID | Item Type| Access Mode| Description | -|---------------------|----------|------------|---------------------------------------------------------------------------------------------------------| -| volume | Dimmer | RW | Volume level of the TV. | -| mute | Switch | RW | Mute state of the TV. | -| brightness | Dimmer | RW | Brightness of the TV picture. | -| contrast | Dimmer | RW | Contrast of the TV picture. | -| sharpness | Dimmer | RW | Sharpness of the TV picture. | -| colorTemperature | Number | RW | Color temperature of the TV picture. Minimum value is 0 and maximum 4. | -| sourceName | String | RW | Name of the current source (eg HDMI1). | -| sourceId | Number | RW | Id of the current source. | -| channel | Number | RW | Selected TV channel number. | -| programTitle | String | R | Program title of the current channel. | -| channelName | String | R | Name of the current TV channel. | -| url | String | W | Start TV web browser and go the given web page. | -| stopBrowser | Switch | W | Stop TV's web browser and go back to TV mode. | -| keyCode | String | W | The key code channel emulates the infrared remote controller and allows to send virtual button presses. | -| sourceApp | String | RW | Currently active App. | -| power | Switch | RW | TV power. Some of the Samsung TV models doesn't allow to set Power ON remotely. | -| artMode | Switch | RW | TV art mode for Samsung The Frame TV's. | -| setArtMode | Switch | W | Manual input for setting internal ArtMode tracking for Samsung The Frame TV's >2021. | -| artImage | Image | RW | The currently selected art (thumbnail) | -| artLabel | String | RW | The currently selected art (label) - can also set the current art | -| artJson | String | RW | Send/receive commands from the TV art websocket Channel | -| artBrightness | Dimmer | RW | ArtMode Brightness | -| artColorTemperature | Number | RW | ArtMode Color temperature Minimum value is -5 and maximum 5 | -| artOrientation | Switch | RW | TV orientation, Landscape (OFF) or Portrait (ON) | +| Channel Type ID | Item Type | Access Mode | Description | +|---------------------|-----------|-------------|---------------------------------------------------------------------------------------------------------| +| volume | Dimmer | RW | Volume level of the TV. | +| mute | Switch | RW | Mute state of the TV. | +| brightness | Dimmer | RW | Brightness of the TV picture. | +| contrast | Dimmer | RW | Contrast of the TV picture. | +| sharpness | Dimmer | RW | Sharpness of the TV picture. | +| colorTemperature | Number | RW | Color temperature of the TV picture. Minimum value is 0 and maximum 4. | +| sourceName | String | RW | Name of the current source (eg HDMI1). | +| sourceId | Number | RW | Id of the current source. | +| channel | Number | RW | Selected TV channel number. | +| programTitle | String | R | Program title of the current channel. | +| channelName | String | R | Name of the current TV channel. | +| url | String | W | Start TV web browser and go the given web page. | +| stopBrowser | Switch | W | Stop TV's web browser and go back to TV mode. | +| keyCode | String | W | The key code channel emulates the infrared remote controller and allows to send virtual button presses. | +| sourceApp | String | RW | Currently active App. | +| power | Switch | RW | TV power. Some of the Samsung TV models doesn't allow to set Power ON remotely. | +| artMode | Switch | RW | TV art mode for Samsung The Frame TV's. | +| setArtMode | Switch | W | Manual input for setting internal ArtMode tracking for Samsung The Frame TV's >2021. | +| artImage | Image | RW | The currently selected art (thumbnail) | +| artLabel | String | RW | The currently selected art (label) - can also set the current art | +| artJson | String | RW | Send/receive commands from the TV art websocket Channel | +| artBrightness | Dimmer | RW | ArtMode Brightness | +| artColorTemperature | Number | RW | ArtMode Color temperature Minimum value is -5 and maximum 5 | +| artOrientation | Switch | RW | TV orientation, Landscape (OFF) or Portrait (ON) | **NOTE:** channels: brightness, contrast, sharpness, colorTemperature don't work on newer TV's.
**NOTE:** channels: sourceName, sourceId, programTitle, channelName and stopBrowser may need additional configuration. diff --git a/bundles/org.openhab.binding.satel/README.md b/bundles/org.openhab.binding.satel/README.md index a39399507713b..1637b81f1173b 100644 --- a/bundles/org.openhab.binding.satel/README.md +++ b/bundles/org.openhab.binding.satel/README.md @@ -38,16 +38,16 @@ The binding discovers all devices (partitions, zones) defined in the system, but You can configure the following settings for this bridge: -| Name | Required | Description | -| ------------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| host | yes | Host name or IP address of ETHM-1 module. | -| port | no | TCP port for the integration protocol, defaults to 7094. | -| timeout | no | Timeout value in milliseconds for connect, read and write operations, defaults to 5000 (5secs). | -| refresh | no | Polling interval in milliseconds, defaults to 5000 (5secs). As of version 2.03 ETHM-1 Plus firmware the module disconnects after 25 seconds of inactivity. Setting this parameter to value greater than 25000 will cause inability to correctly communicate with the module. | -| userCode | no | Security code of the user in behalf of all operations will be executed. If empty, only read operations are allowed. | -| encryptionKey | no | Encryption key used to encrypt data sent and received. If empty, communication is not encrypted. | -| encoding | no | Encoding for all the texts received from the module. | -| extCommands | no | Check this option to enable extended commands, supported by ETHM-1 Plus and newer versions of ETHM-1. Enabled by default, turn off in case of communication timeouts. | +| Name | Required | Description | +|---------------|----------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| host | yes | Host name or IP address of ETHM-1 module. | +| port | no | TCP port for the integration protocol, defaults to 7094. | +| timeout | no | Timeout value in milliseconds for connect, read and write operations, defaults to 5000 (5secs). | +| refresh | no | Polling interval in milliseconds, defaults to 5000 (5secs). Max 25000ms to avoid module disconnection (ETHM-1 Plus firmware v2.03+). | +| userCode | no | Security code of the user in behalf of all operations will be executed. If empty, only read operations are allowed. | +| encryptionKey | no | Encryption key used to encrypt data sent and received. If empty, communication is not encrypted. | +| encoding | no | Encoding for all the texts received from the module. | +| extCommands | no | Check this option to enable extended commands, supported by ETHM-1 Plus and newer versions of ETHM-1. Enabled by default, turn off in case of communication timeouts. | Example: @@ -239,10 +239,10 @@ Thing atd-100 KitchenTemp [ id=10, refresh=30 ] ### system -| Name | Type | Description | -| ----------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------- | -| date_time | DateTime | Date and time on the alarm system. | -| troubles | Switch | Active when the system has troubles (trouble LED is blinking on a panel). | +| Name | Type | Description | +|-----------------|----------|------------------------------------------------------------------------------------------------------------------------------------| +| date_time | DateTime | Date and time on the alarm system. | +| troubles | Switch | Active when the system has troubles (trouble LED is blinking on a panel). | | troubles_memory | Switch | Memorized state of system troubles. | | service_mode | Switch | Active when the system is in service mode. | | acu100_present | Switch | Active when there is an ACU-100 module installed in the system. | @@ -255,8 +255,8 @@ Thing atd-100 KitchenTemp [ id=10, refresh=30 ] These channels and the Thing will be removed in the future release of the binding. Please use `readEvent` rule action instead. | Name | Type | Description | -| ----------- | -------- | -------------------------------------------------------------------------------------- | -| index | Number | Index of the current record in the event log. Send '-1' to get most recent record. | +|-------------|----------|----------------------------------------------------------------------------------------| +| index | Number | Index of the current record in the event log. Send '-1' to get most recent record. | | prev_index | Number | Index of the previous record in the event log. Use this value to iterate over the log. | | timestamp | DateTime | Date and time when the event happened. | | description | String | Textual description of the event. | @@ -264,10 +264,10 @@ These channels and the Thing will be removed in the future release of the bindin ### atd-100 -| Name | Type | Description | -| ------------- | ------------------ | --------------------------------------------------------- | -| temperature | Number:Temperature | Current temperature in the zone. | -| device_lobatt | Switch | Indicates low battery level in the wireless device. | +| Name | Type | Description | +|---------------|--------------------|------------------------------------------------------------| +| temperature | Number:Temperature | Current temperature in the zone. | +| device_lobatt | Switch | Indicates low battery level in the wireless device. | | device_nocomm | Switch | Indicates communication troubles with the wireless device. | ## Rule Actions diff --git a/bundles/org.openhab.binding.sbus/README.md b/bundles/org.openhab.binding.sbus/README.md index 89c5d822b1026..52ff952d1503f 100644 --- a/bundles/org.openhab.binding.sbus/README.md +++ b/bundles/org.openhab.binding.sbus/README.md @@ -32,29 +32,29 @@ _note_ If openHAB is deployed in a Docker container, you must set the `network_m The Sbus Bridge has the following configuration parameters: -| Name | Type | Description | Default | Required | Advanced | -|:--------|:--------|:-----------------------------------------------------|:-------:|:--------:|:---------:| -| host | text | IP address for Sbus communication (typically broadcast). | N/A | yes | no | -| port | integer | UDP port number | 6000 | no | no | -| timeout | integer | Response timeout in milliseconds. | 3000 | no | yes | +| Name | Type | Description | Default | Required | Advanced | +|---------|---------|----------------------------------------------------------|---------|----------|----------| +| host | text | IP address for Sbus communication (typically broadcast). | N/A | yes | no | +| port | integer | UDP port number | 6000 | no | no | +| timeout | integer | Response timeout in milliseconds. | 3000 | no | yes | ### Thing Configuration Most Thing types share the same basic configuration parameters: -| Name | Type | Description | Default | Required | Advanced | -|:--------|:--------|:-----------------------------------------------------|:-------:|:--------:|:---------:| -| subnetId| integer | Subnet ID. | 1 | yes | no | -| id | integer | Unit ID. | N/A | yes | no | -| refresh | integer | Refresh interval in seconds (0 = listen-only mode). | 30 | no | yes | +| Name | Type | Description | Default | Required | Advanced | +|----------|---------|-----------------------------------------------------|---------|----------|----------| +| subnetId | integer | Subnet ID. | 1 | yes | no | +| id | integer | Unit ID. | N/A | yes | no | +| refresh | integer | Refresh interval in seconds (0 = listen-only mode). | 30 | no | yes | **Contact Sensor Additional Configuration:** The `contact-sensor` Thing type has an additional `type` parameter: -| Name | Type | Description | Default | Required | Advanced | -|:--------|:--------|:-----------------------------------------------------|:-------:|:--------:|:---------:| -| type | text | Sensor type: `012c` (dry contact) or `02ca` (multi-sensor). | 012c | no | no | +| Name | Type | Description | Default | Required | Advanced | +|------|------|-------------------------------------------------------------|---------|----------|----------| +| type | text | Sensor type: `012c` (dry contact) or `02ca` (multi-sensor). | 012c | no | no | **Listen-Only Mode:** Setting `refresh=0` enables listen-only mode where the binding only processes broadcast messages without actively polling. This is useful for sensors that automatically broadcast their status updates. @@ -62,49 +62,49 @@ The `contact-sensor` Thing type has an additional `type` parameter: ### RGBW Controller Channels -| Channel | Type | Read/Write | Description | -|:--------|:-------|:----------:|:-----------------------------------------------------------| -| color | Color | RW | HSB color picker that controls RGBW components (0-100%). Can be configured to disable the white channel.| -| switch | Switch | RW | On/Off control for the RGBW output with optional timer. | +| Channel | Type | Read/Write | Description | +|---------|--------|------------|----------------------------------------------------------------------------------------------------------| +| color | Color | RW | HSB color picker that controls RGBW components (0-100%). Can be configured to disable the white channel. | +| switch | Switch | RW | On/Off control for the RGBW output with optional timer. | The color channel of RGBW controllers supports these additional parameters: -| Parameter | Type | Description | Default | Required | Advanced | -|:------------|:--------|:-----------------------------------------------------|:-------:|:--------:|:---------:| -| channelNumber | integer | The physical channel number. | N/A | yes | no | -| enableWhite | boolean | Controls the white component support for RGB palette. | true | no | yes | +| Parameter | Type | Description | Default | Required | Advanced | +|---------------|---------|-------------------------------------------------------|---------|----------|----------| +| channelNumber | integer | The physical channel number. | N/A | yes | no | +| enableWhite | boolean | Controls the white component support for RGB palette. | true | no | yes | ### Temperature Sensor Channels -| Channel | Type | Read/Write | Description | -|:------------|:--------------------|:----------:|:-------------------------------| -| temperature | Number:Temperature | R | Current temperature reading. Can be configured to use Celsius (default) or Fahrenheit units. | +| Channel | Type | Read/Write | Description | +|-------------|--------------------|------------|----------------------------------------------------------------------------------------------| +| temperature | Number:Temperature | R | Current temperature reading. Can be configured to use Celsius (default) or Fahrenheit units. | ### Switch Controller Channels -| Channel | Type | Read/Write | Description | -|:--------|:---------------|:----------:|:----------------------------------------------------------| -| switch | Switch | RW | Basic ON/OFF state control. | -| dimmer | Dimmer | RW | ON/OFF state with timer transition. | -| paired | Rollershutter | RW | UP/DOWN/STOP control for two paired channels (e.g., rollershutters).| +| Channel | Type | Read/Write | Description | +|---------|---------------|------------|----------------------------------------------------------------------| +| switch | Switch | RW | Basic ON/OFF state control. | +| dimmer | Dimmer | RW | ON/OFF state with timer transition. | +| paired | Rollershutter | RW | UP/DOWN/STOP control for two paired channels (e.g., rollershutters). | ### Contact Sensor Channels -| Channel | Type | Read/Write | Description | -|:--------|:--------|:----------:|:----------------------------------------------------------| -| contact | Contact | R | Contact state (OPEN/CLOSED). | +| Channel | Type | Read/Write | Description | +|---------|---------|------------|------------------------------| +| contact | Contact | R | Contact state (OPEN/CLOSED). | ### Motion Sensor Channels -| Channel | Type | Read/Write | Description | -|:--------|:--------|:----------:|:----------------------------------------------------------| -| motion | Switch | R | Motion detection state (ON=motion detected, OFF=no motion).| +| Channel | Type | Read/Write | Description | +|---------|--------|------------|-------------------------------------------------------------| +| motion | Switch | R | Motion detection state (ON=motion detected, OFF=no motion). | ### Lux Sensor Channels -| Channel | Type | Read/Write | Description | -|:--------|:--------|:----------:|:----------------------------------------------------------| -| lux | Number | R | Light level in LUX units. | +| Channel | Type | Read/Write | Description | +|---------|--------|------------|---------------------------| +| lux | Number | R | Light level in LUX units. | **Note:** All sensor channels require a `channelNumber` parameter to specify the physical channel number. diff --git a/bundles/org.openhab.binding.semsportal/README.md b/bundles/org.openhab.binding.semsportal/README.md index 7dea40a1b526e..8c76559b71567 100644 --- a/bundles/org.openhab.binding.semsportal/README.md +++ b/bundles/org.openhab.binding.semsportal/README.md @@ -52,8 +52,8 @@ Bridge semsportal:portal:myPortal [ username="my@username.com", password="MyPass The Portal(Bridge) has no channels. The Power Station Thing has the following channels: -| channel | type | description | -| ------------- | ------------- | ---------------------------------------------------------------------------------------------------------- | +| channel | type | description | +|---------------|---------------|-------------------------------------------------------------------------------------------------------------| | lastUpdate | DateTime | Last time the powerStation sent information to the portal. | | currentOutput | Number:Power | The current output of the powerStation in Watt. | | todayTotal | Number:Energy | Todays total generation of the station in kWh. | @@ -67,17 +67,17 @@ The Power Station Thing has the following channels: The Power Station Thing has no configuration parameters when auto discovered. When using Thing files you need to provide the station UUID. -| Parameter | Required? | Description | -| ----------- | :-------: | -------------------------------------------------------------------------------- | -| stationUUID | X | UUID of the station. Can be found on the SEMS portal URL (see description above). | +| Parameter | Required? | Description | +|-------------|-----------|-----------------------------------------------------------------------------------| +| stationUUID | X | UUID of the station. Can be found on the SEMS portal URL (see description above). | The Bridge has the following configuration parameters: | Parameter | Required? | Description | -| --------- | :-------: | ----------------------------------------------------------------------------------------------------- | -| username | X | Account name (email address) at the SEMS portal. Account must have been used at least once to log in. | -| password | X | Password of the SEMS portal. | -| interval | | Number of minutes between two updates. Between 1 and 60 minutes, defaults to 5 minutes. | +|-----------|-----------|-------------------------------------------------------------------------------------------------------| +| username | X | Account name (email address) at the SEMS portal. Account must have been used at least once to log in. | +| password | X | Password of the SEMS portal. | +| interval | | Number of minutes between two updates. Between 1 and 60 minutes, defaults to 5 minutes. | ## Credits diff --git a/bundles/org.openhab.binding.senechome/README.md b/bundles/org.openhab.binding.senechome/README.md index 307c207fe7cb7..6faf149f1dae9 100644 --- a/bundles/org.openhab.binding.senechome/README.md +++ b/bundles/org.openhab.binding.senechome/README.md @@ -39,8 +39,8 @@ The property `limitationThresholdValue` is used as threshold for channel `powerL ## Channels -| Channel | Type | Description | -| ----------------------------- | -------------- | ------------------------------------------------------------------------ | +| Channel | Type | Description | +|-------------------------------|----------------|---------------------------------------------------------------------------| | powerLimitation | percent | How much is your pv generator limited (0% if not limited anyway). | | powerLimitationState | ON/OFF | Power limitation active (based on configuration). | | currentMPP1 | ampere | PV generator current on MPP1. | @@ -60,8 +60,8 @@ The property `limitationThresholdValue` is used as threshold for channel `powerL | batteryFuelCharge | percent | Fuel charge of your battery (0 - 100%). | | systemState | | Text describing current action of the senec home system (e.g. CHARGE). | | systemStateValue | | Value describing current action of the senec home system (e.g. 14). | -| chargeMode | OFF/CHARGE/ | In `CHARGE` mode, the battery will try to fill as quickly as possible | -| | STORAGE | in `STORAGE` mode, the battery will try to reach 25% SOC. | +| chargeMode | OFF/CHARGE/ | In `CHARGE` mode, the battery will try to fill as quickly as possible | +| | STORAGE | in `STORAGE` mode, the battery will try to reach 25% SOC. | | gridPower | watt | Grid power level, negative for supply, positive values for drawing power. | | gridPowerDraw | watt | Absolute power level of power draw, zero while supplying. | | gridPowerSupply | watt | Absolute power level of power supply, zero while drawing. | diff --git a/bundles/org.openhab.binding.seneye/README.md b/bundles/org.openhab.binding.seneye/README.md index 11f36fa1a9626..90afed514bcd5 100644 --- a/bundles/org.openhab.binding.seneye/README.md +++ b/bundles/org.openhab.binding.seneye/README.md @@ -24,27 +24,27 @@ Discovery is not supported, the seneye monitor must be configured manually. The following settings must be configured in order to make the seneye binding work: | Setting | | -| ------------- | ------------------------------------------------------------------------------ | +|---------------|--------------------------------------------------------------------------------| | aquarium_name | The name of the aquarium, as specified in [seneye.me](https://www.seneye.me/). | | | Useful to distinguish multiple seneye installations. | -| username | Your login name for [seneye.me](https://www.seneye.me/). | -| password | Your password for [seneye.me](https://www.seneye.me/). | +| username | Your login name for [seneye.me](https://www.seneye.me/). | +| password | Your password for [seneye.me](https://www.seneye.me/). | | poll_time | How often (in minutes) the seneye account should be checked. | ## Channels The following channels are supported: -| Channel Type ID | Item Type | Description | -| --------------- | --------- | --------------------------------------------------------------- | +| Channel Type ID | Item Type | Description | +|-----------------|-----------|------------------------------------------------------------------| | temperature | String | The water temperature. | | ph | String | The PH level of the water. | | nh3 | String | The level of Ammonia (NH3) in the water. | | nh4 | String | The level of Ammonium (NH4) in the water. | -| O2 | String | The level of oxygen in the water. | -| lux | String | The lux level of your aquarium lighting, if available. | -| par | String | The par level of your aquarium lighting, if available. | -| kelvin | String | The kelvin level of your aquarium lighting, if available. | +| O2 | String | The level of oxygen in the water. | +| lux | String | The lux level of your aquarium lighting, if available. | +| par | String | The par level of your aquarium lighting, if available. | +| kelvin | String | The kelvin level of your aquarium lighting, if available. | | lastreading | DateTime | The moment when the last readings are received from the monitor. | | slideexpires | DateTime | The moment when the current slide will expire. | | wrongslide | String | The Slide is not valid (normally expired). | diff --git a/bundles/org.openhab.binding.senseenergy/README.md b/bundles/org.openhab.binding.senseenergy/README.md index 97025b3c84a25..759c850f21b00 100644 --- a/bundles/org.openhab.binding.senseenergy/README.md +++ b/bundles/org.openhab.binding.senseenergy/README.md @@ -126,12 +126,12 @@ The monitor channels are organized into multiple groups. Each proxy device has several channels that can be used to notify Sense of the current power usage for the device. These can either attached to an openHAB item, or, can be used with the system:follow profile to follow the state of another channel (see example). -| Channel | id | Type | Read/Write | Description | -|---------- |-------- |-------- |-------- |--------------- | -| Power Level | proxy-device-power | Number:Power | W | Sets a specific absolute real-time power usage for the device. | -| Device Switch | proxy-device-switch | Switch | W | Sets the power level to either the ON or OFF defined in the powerLevels parameter. | -| Device Dimmer | proxy-device-dimmer | Dimmer | W | Sets the power level to an interpolated value based on the powerLevels parameter. | -| Device State | proxy-device-state | String | W | Sets the power level to the state sepecifice in the powerLevels parameter. | +| Channel | id | Type | Read/Write | Description | +|---------------|---------------------|--------------|------------|------------------------------------------------------------------------------------| +| Power Level | proxy-device-power | Number:Power | W | Sets a specific absolute real-time power usage for the device. | +| Device Switch | proxy-device-switch | Switch | W | Sets the power level to either the ON or OFF defined in the powerLevels parameter. | +| Device Dimmer | proxy-device-dimmer | Dimmer | W | Sets the power level to an interpolated value based on the powerLevels parameter. | +| Device State | proxy-device-state | String | W | Sets the power level to the state sepecifice in the powerLevels parameter. | ## Full Example diff --git a/bundles/org.openhab.binding.sensorcommunity/README.md b/bundles/org.openhab.binding.sensorcommunity/README.md index 0bb05c5b8df0d..ad2a9dc8992f0 100644 --- a/bundles/org.openhab.binding.sensorcommunity/README.md +++ b/bundles/org.openhab.binding.sensorcommunity/README.md @@ -22,10 +22,10 @@ There's no auto discovery. See Thing configuration how to setup a Sensor. Choose either a local IP address of your personal owned sensor _or_ a sensor id of an external one. -| Parameter | Description | -|-----------------|----------------------------------------------------------------------| -| ipAddress | Local IP address of your personal owned sensor | -| sensorid | Sensor ID obtained from | +| Parameter | Description | +|-----------|----------------------------------------------------------------------| +| ipAddress | Local IP address of your personal owned sensor | +| sensorid | Sensor ID obtained from | ### Local Sensor @@ -48,19 +48,19 @@ Perform the following steps to get the appropriate Sensor ID ### Particulate Sensor -| Channel ID | Item Type | Description | -|----------------------|----------------------|------------------------------------------| -| pm25 | Number:Density | [Ultrafine particulates](https://en.wikipedia.org/wiki/Particulates#Size,_shape_and_solubility_matter) microgram per cubic meter | -| pm100 | Number:Density | [Coarse particulate matter](https://en.wikipedia.org/wiki/Particulates#Size,_shape_and_solubility_matter) microgram per cubic meter | +| Channel ID | Item Type | Description | +|------------|----------------|-------------------------------------------------------------------------------------------------------------------------------------| +| pm25 | Number:Density | [Ultrafine particulates](https://en.wikipedia.org/wiki/Particulates#Size,_shape_and_solubility_matter) microgram per cubic meter | +| pm100 | Number:Density | [Coarse particulate matter](https://en.wikipedia.org/wiki/Particulates#Size,_shape_and_solubility_matter) microgram per cubic meter | ### Conditions Sensor -| Channel ID | Item Type | Description | -|----------------------|----------------------|------------------------------------------| -| temperature | Number:Temperature | current temperature | -| humidity | Number:Dimensionless | current humidity percent | -| pressure | Number:Pressure | Atmospheric Pressure (not supported by all sensors) | -| pressure-sea | Number:Pressure | Atmospheric Pressure on sea level (not supported by all sensors) | +| Channel ID | Item Type | Description | +|--------------|----------------------|------------------------------------------------------------------| +| temperature | Number:Temperature | current temperature | +| humidity | Number:Dimensionless | current humidity percent | +| pressure | Number:Pressure | Atmospheric Pressure (not supported by all sensors) | +| pressure-sea | Number:Pressure | Atmospheric Pressure on sea level (not supported by all sensors) | ### Noise Sensor diff --git a/bundles/org.openhab.binding.serial/README.md b/bundles/org.openhab.binding.serial/README.md index 372689feeb87c..33246649cb2cd 100644 --- a/bundles/org.openhab.binding.serial/README.md +++ b/bundles/org.openhab.binding.serial/README.md @@ -57,14 +57,14 @@ When using a Serial Device the expectation is that the received data for each de The configuration for the `serialBridge` consists of the following parameters: -| Parameter | Description | -|------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| serialPort | The serial port to use (e.g. Linux: /dev/ttyUSB0, Windows: COM1) (mandatory) | -| baudRate | Set the baud rate. Valid values: 4800, 9600, 19200, 38400, 57600, 115200 (default 9600) | -| dataBits | Set the data bits. Valid values: 5, 6, 7, 8 (default 8) | -| parity | Set the parity. Valid values: N(one), O(dd), E(even), M(ark), S(pace) (default N) | -| stopBits | Set the stop bits. Valid values: 1, 1.5, 2 (default 1) | -| charset | The charset to use for converting between bytes and string (e.g. UTF-8,ISO-8859-1). Enter 'HEX' to convert binary data into hexadecimal strings separated by space. | +| Parameter | Description | +|------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| serialPort | The serial port to use (e.g. Linux: /dev/ttyUSB0, Windows: COM1) (mandatory) | +| baudRate | Set the baud rate. Valid values: 4800, 9600, 19200, 38400, 57600, 115200 (default 9600) | +| dataBits | Set the data bits. Valid values: 5, 6, 7, 8 (default 8) | +| parity | Set the parity. Valid values: N(one), O(dd), E(even), M(ark), S(pace) (default N) | +| stopBits | Set the stop bits. Valid values: 1, 1.5, 2 (default 1) | +| charset | The charset to use for converting between bytes and string (e.g. UTF-8,ISO-8859-1). Enter 'HEX' to convert binary data into hexadecimal strings separated by space. | | eolPattern | In charset=HEX mode, a regular expression is required to match the binary equivalent of an 'End of line' character. For example, '\\bFF' matches a byte value of 255 as the end of the current response. | The configuration for the `tcpBridge` consists of the following parameters: diff --git a/bundles/org.openhab.binding.shelly/README.md b/bundles/org.openhab.binding.shelly/README.md index 7589e177d81e6..8d1af850cbff1 100644 --- a/bundles/org.openhab.binding.shelly/README.md +++ b/bundles/org.openhab.binding.shelly/README.md @@ -307,16 +307,16 @@ Values 1-4 are selecting the corresponding favorite id in the Shelly App, 0 mean The binding sets the following Thing status depending on the device status: -| Status | Description | -| --------------------- | ---------------------------------------------------------------------------------------------------------------------------- | -| INITIALIZING | This is the default status while initializing the Thing. Once the initialization is triggered the Thing switches to Status ONLINE.CONFIGURATION_PENDING. | -| UNKNOWN | Indicates that the status is currently unknown, which must not show a problem. Once the device is reachable and was initialized the Thing switches to status ONLINE. | -| CONFIGURATION_PENDING | The Thing has been initialized, but device initialization is in progress or pending (e.g. waiting for device wake-up). | -| ONLINE | ONLINE indicates that the device can be accessed and is responding properly. Once initialized battery powered devices also stay ONLINE when in sleep mode. The binding has an integrated watchdog timer supervising the device, see below. The Thing switches to status OFFLINE when some type of communication error occurs. | -| OFFLINE | Communication with the device failed. Check the Thing status in the UI and openHAB's log for an indication of the error. | +| Status | Description | +|-----------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| INITIALIZING | This is the default status while initializing the Thing. Once the initialization is triggered the Thing switches to Status ONLINE.CONFIGURATION_PENDING. | +| UNKNOWN | Indicates that the status is currently unknown, which must not show a problem. Once the device is reachable and was initialized the Thing switches to status ONLINE. | +| CONFIGURATION_PENDING | Device initialization in progress or pending (e.g., waiting for device wake-up). | +| ONLINE | Device is accessible and responding. Battery-powered devices stay ONLINE while in sleep mode. An integrated watchdog timer supervises the device. Switches to OFFLINE on communication errors. | +| OFFLINE | Communication with the device failed. Check Thing status and openHAB logs for error details. | | COMMUNICATION_ERROR | Communication with the device has reported an error, check detailed status. If the problem persists make sure to have stable WiFi, set the correct password etc. Try restarting OH or deleting and re-discovering the Thing. | -| FIRMWARE_UPDATING | Device firmware is updating, just wait. The device should come back to ONLINE within 2 minutes. | -| DUTY_CYCLE | The device is re-initializing and reported a restart event, e.g. after a firmware update or manual reboot. | +| FIRMWARE_UPDATING | Device firmware is updating, just wait. The device should come back to ONLINE within 2 minutes. | +| DUTY_CYCLE | The device is re-initializing and reported a restart event, e.g. after a firmware update or manual reboot. | `Note:` For more details see [Thing Concept](https://www.openhab.org/docs/concepts/things.html#status-details) in openHAB documentation. @@ -1808,7 +1808,7 @@ See notes on discovery of Shelly BLU devices above. | | lowBattery | Switch | yes | Low battery alert (< 20%) | | device | gatewayDevice | String | yes | Shelly forwarded last status update (BLU gateway), could vary from packet to packet | -## Shelly BLU Door/Window Sensor (thing-type: shellybludw) +### Shelly BLU Door/Window Sensor (thing-type: shellybludw) See notes on discovery of Shelly BLU devices above. @@ -1839,15 +1839,15 @@ See notes on discovery of Shelly BLU devices above. See notes on discovery of Shelly BLU devices above. -| Group | Channel | Type | read-only | Description | -| ------- | ------------- | -------- | --------- | ------------------------------------------------------- | -| sensors | temperature | Number | yes | Temperature, unit is reported by tempUnit | -| | humidity | Number | yes | Relative humidity in % | -| | eventCount | Number | yes | Counter gets incremented every time the device issues a button event. | -| | button | Trigger | yes | Event trigger with payload, see SHORT_PRESSED or LONG_PRESSED | -| | lastUpdate | DateTime | yes | Timestamp of the last update (any sensor value changed) | -| battery | batteryLevel | Number | yes | Battery Level in % | -| | lowBattery | Switch | yes | Low battery alert (< 20%) | +| Group | Channel | Type | read-only | Description | +|---------|--------------|----------|-----------|-----------------------------------------------------------------------| +| sensors | temperature | Number | yes | Temperature, unit is reported by tempUnit | +| | humidity | Number | yes | Relative humidity in % | +| | eventCount | Number | yes | Counter gets incremented every time the device issues a button event. | +| | button | Trigger | yes | Event trigger with payload, see SHORT_PRESSED or LONG_PRESSED | +| | lastUpdate | DateTime | yes | Timestamp of the last update (any sensor value changed) | +| battery | batteryLevel | Number | yes | Battery Level in % | +| | lowBattery | Switch | yes | Low battery alert (< 20%) | ### Shelly BLU Distance(thing-type: shellybludistance) @@ -1884,7 +1884,6 @@ See notes on discovery of Shelly BLU devices above. | | lowBattery | Switch | yes | Low battery alert (< 20%) | | device | gatewayDevice | String | yes | Shelly forwarded last status update (BLU gateway), could vary from packet to packet | - ## Shelly Wall Displays | Group | Channel | Type | read-only | Description | diff --git a/bundles/org.openhab.binding.silvercrestwifisocket/README.md b/bundles/org.openhab.binding.silvercrestwifisocket/README.md index 3ce505dc7c019..f39c33f904146 100644 --- a/bundles/org.openhab.binding.silvercrestwifisocket/README.md +++ b/bundles/org.openhab.binding.silvercrestwifisocket/README.md @@ -42,6 +42,6 @@ Thing silvercrestwifisocket:wifiSocket:lamp [ macAddress="ACCF23343C50", vendor= The Silvercrest WiFi Socket supports the following channel: -| Channel Type ID | Item Type | Description | -| --------------- | --------- | -------------------- | +| Channel Type ID | Item Type | Description | +|-----------------|-----------|---------------------| | switch | Switch | WiFi Socket Switch. | diff --git a/bundles/org.openhab.binding.sleepiq/README.md b/bundles/org.openhab.binding.sleepiq/README.md index cefe0294dc3f3..6085f546eb497 100644 --- a/bundles/org.openhab.binding.sleepiq/README.md +++ b/bundles/org.openhab.binding.sleepiq/README.md @@ -71,33 +71,33 @@ Bridge sleepiq:cloud:1 [ username="mail@example.com", password="password", polli All channels within this group are read-only, except for the sleepNumber and privacyMode channels. -| Channel ID | Item Type | Description | -|-----------------------------------|----------------|---------------------------------------------------------------------------------------------------------------------| -| inBed | Switch | The presence of a person or object on the chamber | -| sleepNumber | Number | The Sleep Number setting of the chamber. Set the sleep number of the chamber by sending a command to the sleepNumber channel with a value between 5 and 100. The value must be a multiple of 5 | -| sleepGoalMinutes | Number:Time | The person's sleep goal in minutes | -| pressure | Number | The current pressure inside the chamber | -| privacyMode | Switch | Enable or disable privacy mode | -| lastLink | String | The amount of time that has passed since a connection was made from the chamber to the cloud service (D d HH:MM:SS) | -| alertId | Number | Identifier for an alert condition with the chamber | -| alertDetailedMessage | String | A detailed message describing an alert condition with the chamber | -| todaySleepIQ | Number | The Sleep IQ score for the current day | -| todayAverageHeartRate | Number | The average heart rate for the current day | -| todayAverageRespirationRate | Number | The average respiration rate for the current day | -| todayMessage | String | A description of the sleep quality for the current day | -| todaySleepDurationSeconds | Number:Time | The duration of sleep for the current day | -| todaySleepInBedSeconds | Number:Time | The duration of time in bed for the current day | -| todaySleepOutOfBedSeconds | Number:Time | The duration of time out of bed for the current day | -| todaySleepRestfulSeconds | Number:Time | The duration of restful sleep for the current day | -| todaySleepRestlessSeconds | Number:Time | The duration of restless sleep for the current day | -| monthlySleepIQ | Number | The average Sleep IQ score for the current month | -| monthlyAverageHeartRate | Number | The average heart rate for the current month | -| monthlyAverageRespirationRate | Number | The average respiration rate for the current month | -| foundationPreset | Number | Sets the head and foot position to one of the 6 available presets (1-6) (foundation required) | -| foundationPositionHead | Dimmer | Sets the head position (foundation required) | -| foundationPositionFoot | Dimmer | Sets the foot position (foundation required) | -| nightStandOutlet | Switch | Turn on/off the night stand outlet (foundation required) | -| underBedLight | Switch | Turn on/off the under bed light (foundation required) | +| Channel ID | Item Type | Description | +|-------------------------------|-------------|--------------------------------------------------------------------------------------------------------------| +| inBed | Switch | Presence of a person or object on the chamber | +| sleepNumber | Number | Sleep Number setting of the chamber. Set by sending a command with a value between 5 and 100 (multiple of 5) | +| sleepGoalMinutes | Number:Time | Sleep goal in minutes | +| pressure | Number | Current pressure inside the chamber | +| privacyMode | Switch | Enable or disable privacy mode | +| lastLink | String | Time since last connection to the cloud service (D d HH:MM:SS) | +| alertId | Number | Identifier for an alert condition with the chamber | +| alertDetailedMessage | String | A detailed message describing an alert condition with the chamber | +| todaySleepIQ | Number | The Sleep IQ score for the current day | +| todayAverageHeartRate | Number | The average heart rate for the current day | +| todayAverageRespirationRate | Number | The average respiration rate for the current day | +| todayMessage | String | A description of the sleep quality for the current day | +| todaySleepDurationSeconds | Number:Time | The duration of sleep for the current day | +| todaySleepInBedSeconds | Number:Time | The duration of time in bed for the current day | +| todaySleepOutOfBedSeconds | Number:Time | The duration of time out of bed for the current day | +| todaySleepRestfulSeconds | Number:Time | The duration of restful sleep for the current day | +| todaySleepRestlessSeconds | Number:Time | The duration of restless sleep for the current day | +| monthlySleepIQ | Number | The average Sleep IQ score for the current month | +| monthlyAverageHeartRate | Number | The average heart rate for the current month | +| monthlyAverageRespirationRate | Number | The average respiration rate for the current month | +| foundationPreset | Number | Sets the head and foot position to one of the 6 available presets (1-6) (foundation required) | +| foundationPositionHead | Dimmer | Sets the head position (foundation required) | +| foundationPositionFoot | Dimmer | Sets the foot position (foundation required) | +| nightStandOutlet | Switch | Turn on/off the night stand outlet (foundation required) | +| underBedLight | Switch | Turn on/off the under bed light (foundation required) | ## Items diff --git a/bundles/org.openhab.binding.smartmeter/README.md b/bundles/org.openhab.binding.smartmeter/README.md index 16eb0ac632f2f..d4b2cffc92871 100644 --- a/bundles/org.openhab.binding.smartmeter/README.md +++ b/bundles/org.openhab.binding.smartmeter/README.md @@ -14,12 +14,12 @@ Discovery is not available, as the binding only reads from serial ports. The smartmeter Thing requires the serial port where the meter device is connected and optionally a refresh interval. -| Parameter | Name | Description | Required | Default | -| --------------------- | ------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------- | ------- | -| `port` | The serial port to connect to | URL to use for reading SML data, e.g. `/dev/ttyUSB0`, `rfc2217://xxx.xxx.xxx.xxx:3002` | yes | | -| `refresh` | The refresh interval in seconds | Defines at which interval the values of the meter device shall be read | no | 20 | -| `mode` | The protocol mode to use | Can be `SML` (PUSH mode), `ABC` (PULL), or `D` (PUSH) | no | `SML` | -| `baudrateChangeDelay` | Delay of baudrate change in ms | USB to serial converters often require a delay of up to 250ms after the ACK before changing the baudrate (only relevant for mode C) | no | 0 | +| Parameter | Name | Description | Required | Default | +|-----------------------|---------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------|---------| +| `port` | The serial port to connect to | URL to use for reading SML data, e.g. `/dev/ttyUSB0`, `rfc2217://xxx.xxx.xxx.xxx:3002` | yes | | +| `refresh` | The refresh interval in seconds | Defines at which interval the values of the meter device shall be read | no | 20 | +| `mode` | The protocol mode to use | Can be `SML` (PUSH mode), `ABC` (PULL), or `D` (PUSH) | no | `SML` | +| `baudrateChangeDelay` | Delay of baudrate change in ms | USB to serial converters often require a delay of up to 250ms after the ACK before changing the baudrate (only relevant for mode C) | no | 0 | | `baudrate` | (initial) Baudrate | The baudrate of the serial port. If set to `AUTO`, it will be negotiated with the meter. The default is `300` baud for modes A, B, and C; `2400` baud for mode D; and `9600` baud for SML. | no | `AUTO` | ## Channels diff --git a/bundles/org.openhab.binding.solarforecast/README.md b/bundles/org.openhab.binding.solarforecast/README.md index 72bc0c8823423..ce44c826c1a48 100644 --- a/bundles/org.openhab.binding.solarforecast/README.md +++ b/bundles/org.openhab.binding.solarforecast/README.md @@ -60,11 +60,11 @@ See [DateTime](#date-time) section for more information. ### Solcast Plane Configuration -| Name | Type | Description | Default | Required | Advanced | -|-----------------|---------|--------------------------------------------------------------------------|-----------------|----------|----------| -| resourceId | text | Resource ID of Solcast rooftop site | N/A | yes | no | -| refreshInterval | integer | Forecast Refresh Interval in minutes (0 = disable automatic refresh) | 150 | yes | no | -| guessActuals | boolean | Guess actual forecast values instead of placing an API call | true | yes | no | +| Name | Type | Description | Default | Required | Advanced | +|-----------------|---------|----------------------------------------------------------------------|---------|----------|----------| +| resourceId | text | Resource ID of Solcast rooftop site | N/A | yes | no | +| refreshInterval | integer | Forecast Refresh Interval in minutes (0 = disable automatic refresh) | 150 | yes | no | +| guessActuals | boolean | Guess actual forecast values instead of placing an API call | true | yes | no | `resourceId` for each plane can be obtained in your [Rooftop Sites](https://toolkit.solcast.com.au/rooftop-sites) diff --git a/bundles/org.openhab.binding.solax/README.md b/bundles/org.openhab.binding.solax/README.md index 2b79413ecdc33..7f3b9dca8ecf9 100644 --- a/bundles/org.openhab.binding.solax/README.md +++ b/bundles/org.openhab.binding.solax/README.md @@ -154,11 +154,11 @@ If you're missing a channel this means that it's not supported for your inverter ### Cloud Connect Inverter Configuration -| Parameter | Description | -|-------------------|----------------------------------------------------------------------------------------------------------------------------------------------------| -| refreshInterval | Defines the refresh interval when the binding polls from from the Solax cloud (in seconds). Optional parameter(min=9, max=600). Default is 30 seconds. Be advised that the cloud API is limited to max 10 calls per minute and 10000 calls per day. | -| password | The registration number, shown in the Solax Cloud web portal. Mandatory parameter. | -| token | Token for accessing the Solax Cloud API. Can be obtained via Service -> API on the Solax cloud web portal. Mandatory parameter. | +| Parameter | Description | +|-----------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| refreshInterval | Defines the refresh interval when the binding polls from from the Solax cloud (in seconds). Optional parameter(min=9, max=600). Default is 30 seconds. Be advised that the cloud API is limited to max 10 calls per minute and 10000 calls per day. | +| password | The registration number, shown in the Solax Cloud web portal. Mandatory parameter. | +| token | Token for accessing the Solax Cloud API. Can be obtained via Service -> API on the Solax cloud web portal. Mandatory parameter. | ### Cloud Connect Channels diff --git a/bundles/org.openhab.binding.sonnen/README.md b/bundles/org.openhab.binding.sonnen/README.md index 3fbd5d9cb83e2..682492227b99c 100644 --- a/bundles/org.openhab.binding.sonnen/README.md +++ b/bundles/org.openhab.binding.sonnen/README.md @@ -20,28 +20,28 @@ If you want to use the V2 API, which supports more channels, you need to provide The following channels are yet supported: -| Channel | Type | Access | Description | -|--------------------------------|---------------|------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| batteryChargingState | Switch | read | Indicates if the Battery is charging at that moment | -| batteryCharging | Number:Power | read | Indicates the actual current charging the Battery. Otherwise 0. | -| batteryDischargingState | Switch | read | Indicates if the Battery is discharging at that moment | -| batteryDischarging | Number:Power | read | Indicates the actual current discharging the Battery. Otherwise 0. | -| consumption | Number:Power | read | Indicates the actual consumption of the consumer in watt | -| gridFeedIn | Number:Power | read | Indicates the actual current feeding to the Grid in watt. 0 if nothing is fed | -| gridConsumption | Number:Power | read | Indicates the actual current consumption from the Grid in watt. 0 if nothing is received | -| solarProduction | Number:Power | read | Indicates the actual production of the Solar system in watt | -| batteryLevel | Number | read | Indicates the actual Battery Level in % from 0 - 100 | -| flowConsumptionBatteryState | Switch | read | Indicates if there is a current flow from Battery towards Consumption | -| flowConsumptionGridState | Switch | read | Indicates if there is a current flow from Grid towards Consumption | -| flowConsumptionProductionState | Switch | read | Indicates if there is a current flow from Solar Production towards Consumption | -| flowGridBatteryState | Switch | read | Indicates if there is a current flow from Grid towards Battery | -| flowProductionBatteryState | Switch | read | Indicates if there is a current flow from Production towards Battery | -| energyImportedStateProduction | Number:Energy | read | Indicates the imported kWh Production | -| energyExportedStateProduction | Number:Energy | read | Indicates the exported kWh Production | -| energyImportedStateConsumption | Number:Energy | read | Indicates the imported kWh Consumption | -| energyExportedStateConsumption | Number:Energy | read | Indicates the exported kWh Consumption | -| batteryChargingFromGrid | Switch | read/write | Starts and stops the active battery charging from Grid. Note: "Write-API" in Software-Integration page of the local web interface from the sonnen battery must be activated and the given token must be entered in authentication token field of the binding | -| batteryOperationMode | String | read | Indicates if the Battery is operating in automatic or manual mode. Manual mode is required for active charging the battery. Assure that the battery is in automatic mode if you don't actively charge the battery.Changing the operation mode is happening with the channel "batteryChargingFromGrid" | +| Channel | Type | Access | Description | +|--------------------------------|---------------|------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| batteryChargingState | Switch | read | Indicates if the Battery is charging at that moment | +| batteryCharging | Number:Power | read | Indicates the actual current charging the Battery. Otherwise 0. | +| batteryDischargingState | Switch | read | Indicates if the Battery is discharging at that moment | +| batteryDischarging | Number:Power | read | Indicates the actual current discharging the Battery. Otherwise 0. | +| consumption | Number:Power | read | Indicates the actual consumption of the consumer in watt | +| gridFeedIn | Number:Power | read | Indicates the actual current feeding to the Grid in watt. 0 if nothing is fed | +| gridConsumption | Number:Power | read | Indicates the actual current consumption from the Grid in watt. 0 if nothing is received | +| solarProduction | Number:Power | read | Indicates the actual production of the Solar system in watt | +| batteryLevel | Number | read | Indicates the actual Battery Level in % from 0 - 100 | +| flowConsumptionBatteryState | Switch | read | Indicates if there is a current flow from Battery towards Consumption | +| flowConsumptionGridState | Switch | read | Indicates if there is a current flow from Grid towards Consumption | +| flowConsumptionProductionState | Switch | read | Indicates if there is a current flow from Solar Production towards Consumption | +| flowGridBatteryState | Switch | read | Indicates if there is a current flow from Grid towards Battery | +| flowProductionBatteryState | Switch | read | Indicates if there is a current flow from Production towards Battery | +| energyImportedStateProduction | Number:Energy | read | Indicates the imported kWh Production | +| energyExportedStateProduction | Number:Energy | read | Indicates the exported kWh Production | +| energyImportedStateConsumption | Number:Energy | read | Indicates the imported kWh Consumption | +| energyExportedStateConsumption | Number:Energy | read | Indicates the exported kWh Consumption | +| batteryChargingFromGrid | Switch | read/write | Starts/stops active battery charging from Grid. Note: "Write-API" must be activated in the local web interface, and the token must be entered in the binding's authentication field. | +| batteryOperationMode | String | read | Indicates if the Battery is in automatic or manual mode. Manual mode is required for active charging. Ensure the battery is in automatic mode if not actively charging. Change operation mode using the "batteryChargingFromGrid" channel. | ## Full Example diff --git a/bundles/org.openhab.binding.sonos/README.md b/bundles/org.openhab.binding.sonos/README.md index d296216888ba5..b95b5af1366f8 100644 --- a/bundles/org.openhab.binding.sonos/README.md +++ b/bundles/org.openhab.binding.sonos/README.md @@ -48,72 +48,72 @@ Thing sonos:PLAY1:1 [udn="RINCON_000E58D8403A0XXXX", refresh=60, notificationVol The devices support the following channels: -| Channel Type ID | Item Type | Access Mode | Description | Thing types | -| -------------------- | --------- | ----------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------- | -| add | String | W | Add the given Zone Player to the group of this Zone Player | all | -| alarm | Switch | W | Set the first occurring alarm either ON or OFF. Alarms first have to be defined through the Sonos Controller app | all | -| alarmproperties | String | R | Properties of the alarm currently running | all | -| alarmrunning | Switch | R | Set to ON if the alarm was triggered | all | -| bass | Number | RW | Set or get the bass level adjustment (value in range -10 / 10) | all | -| batterycharging | Switch | R | Indicator set to ON when the battery is charging | Move, Move2, Roam, RoamSL | -| batterylevel | Number | R | Current battery level | Move, Move2, Roam, RoamSL | -| clearqueue | Switch | W | Suppress all songs from the current queue | all | -| codec | String | R | Name of codec currently being decoded | Arc, ArcSL, PLAYBAR, PLAYBASE, Beam, Amp | -| control | Player | RW | Control the Zone Player, e.g. PLAY/PAUSE/NEXT/PREVIOUS | all | -| coordinator | String | R | UDN of the coordinator for the current group | all | -| currentalbum | String | R | Name of the album currently playing | all | -| currentalbumart | Image | R | Cover art of the album currently playing | all | -| currentalbumarturl | String | R | Cover art URL of the album currently playing | all | -| currentartist | String | R | Name of the artist currently playing | all | -| currenttitle | String | R | Title of the song currently playing | all | -| currenttrack | String | R | Name of the current track or radio station currently playing | all | -| currenttrackuri | String | R | URI of the current track | all | -| currenttransporturi | String | R | URI of the current AV transport | all | -| favorite | String | W | Play the given favorite entry. The favorite entry has to be predefined in the Sonos Controller app | all | -| heightlevel | Number | RW | Set or get the height level adjustment (value in range -10 / 10) | Arc, ArcSL | -| led | Switch | RW | Set or get the status of the white LED on the front of the Zone Player | all | -| linein | Switch | R | Indicator set to ON when the line-in of the Zone Player is connected | PLAY5, Five, Move 2, Era100, Era300, CONNECT, CONNECTAMP, PLAYBAR, PLAYBASE, Beam, Port | -| analoglinein | Switch | R | Indicator set to ON when the analog line-in of the Zone Player is connected | Amp | -| digitallinein | Switch | R | Indicator set to ON when the digital line-in of the Zone Player is connected | Amp | -| localcoordinator | Switch | R | Indicator set to ON if the this Zone Player is the Zone Group Coordinator | all | -| loudness | Switch | RW | Enable or disable the loudness | all | -| microphone | Switch | R | Indicator set to ON when the microphone is enabled | Arc, Beam, Move, Move2, One, Roam, Era100, Era300 | -| mute | Switch | RW | Set or get the mute state of the master volume of the Zone Player | all | -| nightmode | Switch | RW | Enable or disable the night mode feature | PLAYBAR, PLAYBASE, Beam, Amp | -| notificationsound | String | W | Play a notification sound by a given URI | all | -| playlinein | String | W | This channel supports playing the audio source connected to the line-in of the zoneplayer identified by the Thing UID or UPnP UDN provided by the String. | All | -| playlist | String | W | Play the given playlist. The playlist has to predefined in the Sonos Controller app | all | -| playqueue | Switch | W | Play the songs from the current queue | all | -| playtrack | Number | W | Play the given track number from the current queue | all | -| playuri | String | W | Play the given URI | all | -| publicaddress | Switch | W | Put all Zone Players in one group, and stream audio from the line-in from the Zone Player that triggered the command | all except Amp | -| publicanalogaddress | Switch | W | Put all Zone Players in one group, and stream audio from the analog line-in from the Zone Player that triggered the command | Amp | -| publicdigitaladdress | Switch | W | Put all Zone Players in one group, and stream audio from the digital line-in from the Zone Player that triggered the command | Amp | -| radio | String | W | Play the given radio station. The radio station has to be predefined in the Sonos Controller app | all | -| remove | String | W | Remove the given Zone Player from the group of this Zone Player | all | -| repeat | String | RW | Repeat the track or queue playback. The accepted values are OFF, ONE and ALL | all | -| restore | Switch | W | Restore the state of the Zone Player | all | -| restoreall | Switch | W | Restore the state of all the Zone Players | all | -| save | Switch | W | Save the state of the Zone Player | all | -| saveall | Switch | W | Save the state of all the Zone Players | all | -| shuffle | Switch | RW | Shuffle the queue playback | all | -| sleeptimer | Number | RW | Set/show the duration of the SleepTimer in seconds | all | -| snooze | Number | W | Snooze the running alarm, if any, with the given number of minutes | all | -| speechenhancement | Switch | RW | Enable or disable the speech enhancement feature | PLAYBAR, PLAYBASE, Beam, One, Amp | -| standalone | Switch | W | Make the Zone Player leave its Group and become a standalone Zone Player | all | -| state | String | R | The State channel contains state of the Zone Player, e.g. PLAYING, STOPPED, ... | all | -| stop | Switch | W | Write `ON` to this channel: Stops the Zone Player player. | all | -| treble | Number | RW | Set or get the treble level adjustment (value in range -10 / 10) | all | -| subwoofer | Switch | RW | Enable or disable the subwoofer | Arc, ArcSL | -| subwoofergain | Number | RW | Set or get the subwoofer gain adjustment (value in range -15 / 15) | Arc, ArcSL | -| surround | Switch | RW | Enable or disable the surround audio | Arc, ArcSL | -| surroundmusicmode | String | RW | Set or get the surround playback mode for music, either 0 for Ambient or 1 for full | Arc, ArcSL | -| surroundmusiclevel | Number | RW | Set or get the surround level adjustment for music (value in range -15 / 15) | Arc, ArcSL | -| surroundtvlevel | Number | RW | Set or get the surround level adjustment for TV (value in range -15 / 15) | Arc, ArcSL | -| tuneinstationid | String | RW | Provide the current TuneIn station id or play the TuneIn radio given by its station id | all | -| volume | Dimmer | RW | Set or get the master volume of the Zone Player | all | -| zonegroupid | String | R | Id of the Zone Group the Zone Player belongs to | all | -| zonename | String | R | Name of the Zone associated to the Zone Player | all | +| Channel Type ID | Item Type | Access Mode | Description | Thing types | +|----------------------|-----------|-------------|------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------| +| add | String | W | Add the given Zone Player to the group of this Zone Player | all | +| alarm | Switch | W | Set the first occurring alarm either ON or OFF. Alarms first have to be defined through the Sonos Controller app | all | +| alarmproperties | String | R | Properties of the alarm currently running | all | +| alarmrunning | Switch | R | Set to ON if the alarm was triggered | all | +| bass | Number | RW | Set or get the bass level adjustment (value in range -10 / 10) | all | +| batterycharging | Switch | R | Indicator set to ON when the battery is charging | Move, Move2, Roam, RoamSL | +| batterylevel | Number | R | Current battery level | Move, Move2, Roam, RoamSL | +| clearqueue | Switch | W | Suppress all songs from the current queue | all | +| codec | String | R | Name of codec currently being decoded | Arc, ArcSL, PLAYBAR, PLAYBASE, Beam, Amp | +| control | Player | RW | Control the Zone Player, e.g. PLAY/PAUSE/NEXT/PREVIOUS | all | +| coordinator | String | R | UDN of the coordinator for the current group | all | +| currentalbum | String | R | Name of the album currently playing | all | +| currentalbumart | Image | R | Cover art of the album currently playing | all | +| currentalbumarturl | String | R | Cover art URL of the album currently playing | all | +| currentartist | String | R | Name of the artist currently playing | all | +| currenttitle | String | R | Title of the song currently playing | all | +| currenttrack | String | R | Name of the current track or radio station currently playing | all | +| currenttrackuri | String | R | URI of the current track | all | +| currenttransporturi | String | R | URI of the current AV transport | all | +| favorite | String | W | Play the given favorite entry. The favorite entry has to be predefined in the Sonos Controller app | all | +| heightlevel | Number | RW | Set or get the height level adjustment (value in range -10 / 10) | Arc, ArcSL | +| led | Switch | RW | Set or get the status of the white LED on the front of the Zone Player | all | +| linein | Switch | R | Indicator set to ON when the line-in of the Zone Player is connected | PLAY5, Five, Move 2, Era100, Era300, CONNECT, CONNECTAMP, PLAYBAR, PLAYBASE, Beam, Port | +| analoglinein | Switch | R | Indicator set to ON when the analog line-in of the Zone Player is connected | Amp | +| digitallinein | Switch | R | Indicator set to ON when the digital line-in of the Zone Player is connected | Amp | +| localcoordinator | Switch | R | Indicator set to ON if the this Zone Player is the Zone Group Coordinator | all | +| loudness | Switch | RW | Enable or disable the loudness | all | +| microphone | Switch | R | Indicator set to ON when the microphone is enabled | Arc, Beam, Move, Move2, One, Roam, Era100, Era300 | +| mute | Switch | RW | Set or get the mute state of the master volume of the Zone Player | all | +| nightmode | Switch | RW | Enable or disable the night mode feature | PLAYBAR, PLAYBASE, Beam, Amp | +| notificationsound | String | W | Play a notification sound by a given URI | all | +| playlinein | String | W | Play audio from the line-in of the zoneplayer identified by the Thing UID or UPnP UDN. | All | +| playlist | String | W | Play the given playlist. The playlist has to predefined in the Sonos Controller app | all | +| playqueue | Switch | W | Play the songs from the current queue | all | +| playtrack | Number | W | Play the given track number from the current queue | all | +| playuri | String | W | Play the given URI | all | +| publicaddress | Switch | W | Put all Zone Players in one group, and stream audio from the line-in from the Zone Player that triggered the command | all except Amp | +| publicanalogaddress | Switch | W | Put all Zone Players in one group, and stream audio from the analog line-in from the Zone Player that triggered the command | Amp | +| publicdigitaladdress | Switch | W | Put all Zone Players in one group, and stream audio from the digital line-in from the Zone Player that triggered the command | Amp | +| radio | String | W | Play the given radio station. The radio station has to be predefined in the Sonos Controller app | all | +| remove | String | W | Remove the given Zone Player from the group of this Zone Player | all | +| repeat | String | RW | Repeat the track or queue playback. The accepted values are OFF, ONE and ALL | all | +| restore | Switch | W | Restore the state of the Zone Player | all | +| restoreall | Switch | W | Restore the state of all the Zone Players | all | +| save | Switch | W | Save the state of the Zone Player | all | +| saveall | Switch | W | Save the state of all the Zone Players | all | +| shuffle | Switch | RW | Shuffle the queue playback | all | +| sleeptimer | Number | RW | Set/show the duration of the SleepTimer in seconds | all | +| snooze | Number | W | Snooze the running alarm, if any, with the given number of minutes | all | +| speechenhancement | Switch | RW | Enable or disable the speech enhancement feature | PLAYBAR, PLAYBASE, Beam, One, Amp | +| standalone | Switch | W | Make the Zone Player leave its Group and become a standalone Zone Player | all | +| state | String | R | The State channel contains state of the Zone Player, e.g. PLAYING, STOPPED, ... | all | +| stop | Switch | W | Write `ON` to this channel: Stops the Zone Player player. | all | +| treble | Number | RW | Set or get the treble level adjustment (value in range -10 / 10) | all | +| subwoofer | Switch | RW | Enable or disable the subwoofer | Arc, ArcSL | +| subwoofergain | Number | RW | Set or get the subwoofer gain adjustment (value in range -15 / 15) | Arc, ArcSL | +| surround | Switch | RW | Enable or disable the surround audio | Arc, ArcSL | +| surroundmusicmode | String | RW | Set or get the surround playback mode for music, either 0 for Ambient or 1 for full | Arc, ArcSL | +| surroundmusiclevel | Number | RW | Set or get the surround level adjustment for music (value in range -15 / 15) | Arc, ArcSL | +| surroundtvlevel | Number | RW | Set or get the surround level adjustment for TV (value in range -15 / 15) | Arc, ArcSL | +| tuneinstationid | String | RW | Provide the current TuneIn station id or play the TuneIn radio given by its station id | all | +| volume | Dimmer | RW | Set or get the master volume of the Zone Player | all | +| zonegroupid | String | R | Id of the Zone Group the Zone Player belongs to | all | +| zonename | String | R | Name of the Zone associated to the Zone Player | all | The `playline` channel accepts as command either the Thing UID or the UPnP UDN. Note that you can prefix your command value with "Analog," or "Digital," to distinguish the line-in of your Sonos device. diff --git a/bundles/org.openhab.binding.sonyprojector/README.md b/bundles/org.openhab.binding.sonyprojector/README.md index cb99ffe22eb1d..1929d3fbb25a3 100644 --- a/bundles/org.openhab.binding.sonyprojector/README.md +++ b/bundles/org.openhab.binding.sonyprojector/README.md @@ -108,11 +108,11 @@ All configuration is done via Thing parameters. The Ethernet connection Thing requires the following configuration parameters: -| Parameter Label | Parameter ID | Description | Required | Default | Accepted values | -| --------------- | ------------ | ------------------------------------------------------------------------ | -------- | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| Address | host | Host name or IP address of the projector | true | | | -| Port | port | Communication port. Default is 53484 | false | 53484 | | -| Model | model | Projector model to be controlled. Default is AUTO | false | AUTO | AUTO, VPL-HW60, VPL-HW65, VPL-HW68, VPL-VW100, VPL-VW200, VPL-VW260ES, VPL-VW270ES, VPL-VW285ES, VPL-VW295ES, VPL-VW300ES, VPL-VW315, VPL-VW320, VPL-VW328, VPL-VW350ES, VPL-VW365, VPL-VW385ES, VPL-VW500ES, VPL-VW515, VPL-VW520, VPL-VW528, VPL-VW550ES, VPL-VW570ES, VPL-VW600ES, VPL-VW665, VPL-VW675ES, VPL-VW695ES, VPL-VW760ES, VPL-VW870ES, VPL-VW885ES, VPL-VW995ES, VPL-VW1000ES, VPL-VW1100ES | +| Parameter Label | Parameter ID | Description | Required | Default | Accepted values | +|-----------------|--------------|---------------------------------------------------------------------------|----------|---------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| Address | host | Host name or IP address of the projector | true | | | +| Port | port | Communication port. Default is 53484 | false | 53484 | | +| Model | model | Projector model to be controlled. Default is AUTO | false | AUTO | AUTO, VPL-HW60, VPL-HW65, VPL-HW68, VPL-VW100, VPL-VW200, VPL-VW260ES, VPL-VW270ES, VPL-VW285ES, VPL-VW295ES, VPL-VW300ES, VPL-VW315, VPL-VW320, VPL-VW328, VPL-VW350ES, VPL-VW365, VPL-VW385ES, VPL-VW500ES, VPL-VW515, VPL-VW520, VPL-VW528, VPL-VW550ES, VPL-VW570ES, VPL-VW600ES, VPL-VW665, VPL-VW675ES, VPL-VW695ES, VPL-VW760ES, VPL-VW870ES, VPL-VW885ES, VPL-VW995ES, VPL-VW1000ES, VPL-VW1100ES | | Community | community | Community string for the projector. Must be 4 characters. Default is SONY | false | SONY | | Some notes: diff --git a/bundles/org.openhab.binding.souliss/README.md b/bundles/org.openhab.binding.souliss/README.md index cd902165a4e99..04b61a4ac63bb 100644 --- a/bundles/org.openhab.binding.souliss/README.md +++ b/bundles/org.openhab.binding.souliss/README.md @@ -85,12 +85,12 @@ The following matrix lists the capabilities (channels) for each type: | t1A | | | x | x | | | | | | | | | x | x | x | x | x | x | x | x | | Thing type / Channel | DateTime / lastStatusStored | Number / healthy | Rollershutter / rollerShutter | (see below) / rollerShutterState | (see below) / mode | (see below) / fan | Switch / status | Number / setPoint | Switch / setAsMeasured | Switch / measured | Switch / statusAlarm | Switch / onOffAlarm | Switch / rearmAlarm | -|----------------------|-----------------------------|------------------|-------------------------------|----------------------------------|-------------------|------------------|-----------------|-------------------|------------------------|-------------------|----------------------|---------------------|---------------------| -| t21 | x | x | x | x | | | | | | | | | | -| t22 | x | x | x | x | | | | | | | | | | -| t31 | x | x | | | x | x | x | x | x | x | | | | -| t41 | x | x | | | | | | | | | x | x | x | -| t42 | x | x | | | | | | | | | x | | x | +|----------------------|-----------------------------|------------------|-------------------------------|----------------------------------|--------------------|-------------------|-----------------|-------------------|------------------------|-------------------|----------------------|---------------------|---------------------| +| t21 | x | x | x | x | | | | | | | | | | +| t22 | x | x | x | x | | | | | | | | | | +| t31 | x | x | | | x | x | x | x | x | x | | | | +| t41 | x | x | | | | | | | | | x | x | x | +| t42 | x | x | | | | | | | | | x | | x | rollerShutterState = opening, stop, closing, limSwitchOpen, limSwitchClose, stateOpen, stateClose, NoLimSwitch diff --git a/bundles/org.openhab.binding.speedtest/README.md b/bundles/org.openhab.binding.speedtest/README.md index fcc35bf29114b..fcc312d4fc0cf 100644 --- a/bundles/org.openhab.binding.speedtest/README.md +++ b/bundles/org.openhab.binding.speedtest/README.md @@ -54,11 +54,11 @@ To install Ookla's version of Speedtest, head to Linux machines may leave this blank and it defaults to `/usr/bin/speedtest`. | | -| `serverID` | Optional: A specific server that shall be used for testing. You can pick the server ID from the "Thing Properties".
If this is left blank the best option will be selected by Ookla. | | +| Parameter | Description | Default | +|-------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------| +| `refreshInterval` | How often to test network speed, in minutes | `60` | +| `execPath` | The path of the Ookla Speedtest executable.
Linux machines may leave this blank and it defaults to `/usr/bin/speedtest`. | | +| `serverID` | Optional: A specific server that shall be used for testing. You can pick the server ID from the "Thing Properties".
If this is left blank the best option will be selected by Ookla. | | The `refreshInterval` parameter can also be set to `0` which means "Do not test automatically". This can be used if you want to use the "Trigger Test" channel in order to test via rules, or an item instead. @@ -67,9 +67,9 @@ Ensure that the user that openHAB is running with, has the permissions to access ## Properties -| Property | Description | -|---------------------|------------------------------------------------------------------------------------------------------------| -| Server List 1...10 | A List of Ookla Speedtest servers that can be used in order to specify a specific server for the Speedtest.
Configure the Server ID via the `serverID` Thing Configuration Parameter. | +| Property | Description | +|--------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| Server List 1...10 | A List of Ookla Speedtest servers that can be used in order to specify a specific server for the Speedtest.
Configure the Server ID via the `serverID` Thing Configuration Parameter. | ## Channels diff --git a/bundles/org.openhab.binding.spotify/README.md b/bundles/org.openhab.binding.spotify/README.md index b9d47bc8c4a36..62b2b4a957060 100644 --- a/bundles/org.openhab.binding.spotify/README.md +++ b/bundles/org.openhab.binding.spotify/README.md @@ -47,11 +47,11 @@ You can force reinitialization by authorizing on the `/connectspotify` page, eve The following configuration options are available on the Spotify player bridge: -| Parameter | Description | -| ------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| Parameter | Description | +|---------------|---------------------------------------------------------------------------------------------------------------------------------------------------------| | clientId | The Client ID provided by Spotify when you add a new application for openHAB to your Spotify account. Go to (required) | -| clientSecret | The Client Secret provided by Spotify when you add a new application for openHAB to your Spotify account. (required) | -| refreshPeriod | This is the frequency of the polling requests to the Spotify Connect Web API in seconds. | +| clientSecret | The Client Secret provided by Spotify when you add a new application for openHAB to your Spotify account. (required) | +| refreshPeriod | This is the frequency of the polling requests to the Spotify Connect Web API in seconds. | The following configuration option is available on the Spotify device: @@ -119,8 +119,8 @@ The `playlists` channel has 2 parameters: The `albumImage` and `albumImageUrl` channels have 1 parameter: -| Parameter | Description | -| ---------- | ----------------------------------------------------------------------------------------------- | +| Parameter | Description | +|------------|------------------------------------------------------------------------------------------------| | imageIndex | Index in the list to select the image size to show. 0 = large (default), 1 = medium, 2 = small | Note: The `devices` and `playlists` channels are Selection channels. @@ -128,26 +128,26 @@ They are dynamically populated by the binding with user-specific devices and pla **Advanced Channels:** -| Channel Type ID | Item Type | Read/Write | Description | -| --------------- | --------- | ---------- | ----------------------------------------------------------- | +| Channel Type ID | Item Type | Read/Write | Description | +|-----------------|-----------|------------|------------------------------------------------------------------| | accessToken | String | Read-only | The current access token used in communication with the Web API. | | deviceId | String | Read-write | The Spotify Connect device ID. | -| trackId | String | Read-only | Track ID of the currently playing track. | -| trackHref | String | Read-only | Track URL of the currently playing track. | -| trackUri | String | Read-only | Track URI of the currently playing track. | -| trackType | String | Read-only | Type of the currently playing track. | -| trackNumber | String | Read-only | Number of the track on the album/record. | -| trackDiscNumber | String | Read-only | Disc Number of the track on the album/record. | -| trackPopularity | Number | Read-only | Currently playing track popularity. | -| trackExplicit | Switch | Read-only | Whether or not the track has explicit lyrics. | -| albumId | String | Read-only | Album ID of the currently playing track. | -| albumUri | String | Read-only | Album URI of the currently playing track. | -| albumHref | String | Read-only | Album URL of the currently playing track. | -| albumType | String | Read-only | Album Type of the currently playing track. | -| artistId | String | Read-only | Artist Id of the currently playing track. | -| artistUri | String | Read-only | Artist URI of the currently playing track. | -| artistHref | String | Read-only | Artist URL of the currently playing track. | -| artistType | String | Read-only | Artist Type of the currently playing track. | +| trackId | String | Read-only | Track ID of the currently playing track. | +| trackHref | String | Read-only | Track URL of the currently playing track. | +| trackUri | String | Read-only | Track URI of the currently playing track. | +| trackType | String | Read-only | Type of the currently playing track. | +| trackNumber | String | Read-only | Number of the track on the album/record. | +| trackDiscNumber | String | Read-only | Disc Number of the track on the album/record. | +| trackPopularity | Number | Read-only | Currently playing track popularity. | +| trackExplicit | Switch | Read-only | Whether or not the track has explicit lyrics. | +| albumId | String | Read-only | Album ID of the currently playing track. | +| albumUri | String | Read-only | Album URI of the currently playing track. | +| albumHref | String | Read-only | Album URL of the currently playing track. | +| albumType | String | Read-only | Album Type of the currently playing track. | +| artistId | String | Read-only | Artist Id of the currently playing track. | +| artistUri | String | Read-only | Artist URI of the currently playing track. | +| artistHref | String | Read-only | Artist URL of the currently playing track. | +| artistType | String | Read-only | Artist Type of the currently playing track. | ### Devices @@ -159,11 +159,11 @@ Assigning a playlist to the _trackPlay_ channel of the bridge will start playing **Common Channels:** | Channel Type ID | Item Type | Read/Write | Description | -| --------------- | --------- | ---------- | --------------------------------------------------------------- | +|-----------------|-----------|------------|-----------------------------------------------------------------| | trackPlay | String | Write-only | Update to play a track, playlist, artist. Activates the device. | | deviceName | String | Read-only | Name of the device. | | deviceVolume | Dimmer | Read-write | Volume setting for the device. | -| devicePlayer | Player | Read-write | Player control of the device. | +| devicePlayer | Player | Read-write | Player control of the device. | | deviceShuffle | Switch | Read-write | Turn on/off shuffle play. | **Advanced Channels:** diff --git a/bundles/org.openhab.binding.squeezebox/README.md b/bundles/org.openhab.binding.squeezebox/README.md index bc813a9b412b0..76f73839d5f6f 100644 --- a/bundles/org.openhab.binding.squeezebox/README.md +++ b/bundles/org.openhab.binding.squeezebox/README.md @@ -93,38 +93,38 @@ The Squeezebox server supports the following channel: All devices support some of the following channels: -| Channel Type ID | Item Type | Description | -| ---------------------- | ----------- | -------------------------------------------------------------------------------------------- | -| power | Switch | Power on/off your device | -| mute | Switch | Mute/unmute your device | -| volume | Dimmer | Volume of your device | -| stop | Switch | Stop the current title | -| control | Player | Control the Zone Player, e.g. play/pause/next/previous/fast‑forward/rewind | -| stream | String | Play the given HTTP or file stream (file:// or http://) | +| Channel Type ID | Item Type | Description | +|------------------------|-------------|-----------------------------------------------------------------------------------------------| +| power | Switch | Power on/off your device | +| mute | Switch | Mute/unmute your device | +| volume | Dimmer | Volume of your device | +| stop | Switch | Stop the current title | +| control | Player | Control the Zone Player, e.g. play/pause/next/previous/fast‑forward/rewind | +| stream | String | Play the given HTTP or file stream (file:// or http://) | | source | String | Shows the source of the currently playing playlist entry (e.g., `http://radio.org/radio.mp3`) | -| sync | String | Add another player to your device for synchronized playback (other player mac address) | -| playListIndex | Number | Playlist Index | -| currentPlayingTime | Number:Time | Current Playing Time | -| duration | Number:Time | Duration of currently playing track (in seconds) | -| currentPlaylistShuffle | Number | Current playlist shuffle mode (0 No Shuffle, 1 Shuffle Songs, 2 Shuffle Albums) | -| currentPlaylistRepeat | Number | Current playlist repeat mode (0 No Repeat, 1 Repeat Song, 2 Repeat Playlist) | -| title | String | Title of the current song | -| remotetitle | String | Remote Title (Radio) of the current song | -| album | String | Album name of the current song | -| artist | String | Artist name of the current song | -| year | String | Release year of the current song | -| genre | String | Genre name of the current song | -| albumArtist | String | Main artist of the entire album | -| trackArtist | String | Main artist of the track | -| band | String | Band/orchestra that performed the work | -| composer | String | Original composer of the work | -| conductor | String | Person who conducted the performance | -| coverartdata | Image | Image data of cover art of the current song | -| ircode | String | Received IR code | -| numberPlaylistTracks | Number | Number of playlist tracks | -| playFavorite | String | ID of Favorite to play (channel's state options contains available favorites) | -| rate | Switch | "Like" or "unlike" the currently playing song (if supported by the streaming service) | -| sleep | Number | Power off the player in the specified number of minutes. Sending 0 cancels the timer | +| sync | String | Add another player to your device for synchronized playback (other player mac address) | +| playListIndex | Number | Playlist Index | +| currentPlayingTime | Number:Time | Current Playing Time | +| duration | Number:Time | Duration of currently playing track (in seconds) | +| currentPlaylistShuffle | Number | Current playlist shuffle mode (0 No Shuffle, 1 Shuffle Songs, 2 Shuffle Albums) | +| currentPlaylistRepeat | Number | Current playlist repeat mode (0 No Repeat, 1 Repeat Song, 2 Repeat Playlist) | +| title | String | Title of the current song | +| remotetitle | String | Remote Title (Radio) of the current song | +| album | String | Album name of the current song | +| artist | String | Artist name of the current song | +| year | String | Release year of the current song | +| genre | String | Genre name of the current song | +| albumArtist | String | Main artist of the entire album | +| trackArtist | String | Main artist of the track | +| band | String | Band/orchestra that performed the work | +| composer | String | Original composer of the work | +| conductor | String | Person who conducted the performance | +| coverartdata | Image | Image data of cover art of the current song | +| ircode | String | Received IR code | +| numberPlaylistTracks | Number | Number of playlist tracks | +| playFavorite | String | ID of Favorite to play (channel's state options contains available favorites) | +| rate | Switch | "Like" or "unlike" the currently playing song (if supported by the streaming service) | +| sleep | Number | Power off the player in the specified number of minutes. Sending 0 cancels the timer | ## Example .Items File diff --git a/bundles/org.openhab.binding.sunsynk/README.md b/bundles/org.openhab.binding.sunsynk/README.md index a02c1cbce4bc6..16f086e1a171c 100644 --- a/bundles/org.openhab.binding.sunsynk/README.md +++ b/bundles/org.openhab.binding.sunsynk/README.md @@ -70,10 +70,10 @@ The SunSynk Account requires the user e‑mail address and password used to log ### `sunsynk:account` Bridge Thing Configuration -| Name | Type | Description | Default | Required | Advanced | -|-----------------|---------|-------------------------------------------------|---------|----------|----------| -| email | text | E‑mail address used to log in to Sun Synk Connect | N/A | yes | no | -| password | text | Password to access the Sun Synk Connect account | N/A | yes | no | +| Name | Type | Description | Default | Required | Advanced | +|----------|------|---------------------------------------------------|---------|----------|----------| +| email | text | E‑mail address used to log in to Sun Synk Connect | N/A | yes | no | +| password | text | Password to access the Sun Synk Connect account | N/A | yes | no | ### `sunsynk:inverter:` Thing Configuration @@ -90,64 +90,64 @@ The SunSynk Account requires the user e‑mail address and password used to log The SunSynk Account has no channels. The SunSynk Inverter has the following channels. -| Channel | Type | R/W | Description | Advanced | -|--------------------------------|-------------------------|-----|-----------------------------------|----------| -|battery-soc |Number:Dimensionless | R | Inverter battery % charged | no | -|battery-grid-voltage |Number:ElectricPotential | R | Battery dc electric-voltage | no | -|battery-grid-current |Number:ElectricCurrent | R | Battery dc electric-current | no | -|battery-grid-power |Number:Power | R | Battery dc electric-power | no | -|inverter-ac-temperature |Number:Temperature | R | Inverter ac temperature | no | -|inverter-dc-temperature |Number:Temperature | R | Inverter dc temperature | no | -|inverter-grid-power |Number:Power | R | Grid ac electric-power | no | -|inverter-grid-voltage |Number:ElectricPotential | R | Grid ac electric-voltage | no | -|inverter-grid-current |Number:ElectricCurrent | R | Grid ac electric-current | no | -|inverter-grid-frequency |Number:Frequency | R | Grid frequency | no | -|inverter-rated-ac-output |Number:Power | R | Inverter energy capacity | no | -|inverter-solar-energy-today |Number:Energy | R | Solar energy generated today | no | -|inverter-solar-energy-month |Number:Energy | R | Solar energy generated this month | no | -|inverter-solar-energy-year |Number:Energy | R | Solar energy generated this year | no | -|inverter-solar-efficiency |Number:Dimensionless | R | Solar production efficiency | no | -|inverter-solar-ac-power |Number:Power | R | Solar power being generated | no | -|inverter-solar-energy-total |Number:Energy | R | Solar energy generated to date | no | -|inverter-solar-string-voltage-1 |Number:ElectricPotential | R | String 1 Solar Voltage | no | -|inverter-solar-string-voltage-2 |Number:ElectricPotential | R | String 2 Solar Voltage | no | -|inverter-solar-string-current-1 |Number:ElectricCurrent | R | String 1 Solar Current | no | -|inverter-solar-string-current-2 |Number:ElectricCurrent | R | String 2 Solar Current | no | -|inverter-solar-string-power-1 |Number:Power | R | String 1 Solar Power | no | -|inverter-solar-string-power-2 |Number:Power | R | String 2 Solar Power | no | -|interval-1-grid-charge |Switch | R/W | Interval 1 grid charge on/off | yes | -|interval-1-grid-time |DateTime | R/W | Interval 1 start grid charge time | yes | -|interval-1-grid-capacity |Number:Dimensionless | R/W | Interval 1 battery charge target | yes | -|interval-1-grid-power-limit |Number:Power | R/W | Interval 1 charge power limit | yes | -|interval-2-grid-charge |Switch | R/W | Interval 2 grid charge on/off | yes | -|interval-2-grid-time |DateTime | R/W | Interval 2 start grid charge time | yes | -|interval-2-grid-capacity |Number:Dimensionless | R/W | Interval 2 battery charge target | yes | -|interval-2-grid-power-limit |Number:Power | R/W | Interval 2 charge power limit | yes | -|interval-3-grid-charge |Switch | R/W | Interval 3 grid charge on/off | yes | -|interval-3-grid-time |DateTime | R/W | Interval 3 start grid charge time | yes | -|interval-3-grid-capacity |Number:Dimensionless | R/W | Interval 3 battery charge target | yes | -|interval-3-grid-power-limit |Number:Power | R/W | Interval 3 charge power limit | yes | -|interval-4-grid-charge |Switch | R/W | Interval 4 grid charge on/off | yes | -|interval-4-grid-time |DateTime | R/W | Interval 4 start grid charge time | yes | -|interval-4-grid-capacity |Number:Dimensionless | R/W | Interval 4 battery charge target | yes | -|interval-4-grid-power-limit |Number:Power | R/W | Interval 4 charge power limit | yes | -|interval-5-grid-charge |Switch | R/W | Interval 5 grid charge on/off | yes | -|interval-5-grid-time |DateTime | R/W | Interval 5 start grid charge time | yes | -|interval-5-grid-capacity |Number:Dimensionless | R/W | Interval 5 battery charge target | yes | -|interval-5-grid-power-limit |Number:Power | R/W | Interval 5 charge power limit | yes | -|interval-6-grid-charge |Switch | R/W | Interval 6 grid charge on/off | yes | -|interval-6-grid-time |DateTime | R/W | Interval 6 start grid charge time | yes | -|interval-6-grid-capacity |Number:Dimensionless | R/W | Interval 6 battery charge target | yes | -|interval-6-grid-power-limit |Number:Power | R/W | Interval 6 charge power limit | yes | -|interval-1-gen-charge |Switch | R/W | Interval 1 generator charge on/off | yes | -|interval-2-gen-charge |Switch | R/W | Interval 2 generator charge on/off | yes | -|interval-3-gen-charge |Switch | R/W | Interval 3 generator charge on/off | yes | -|interval-4-gen-charge |Switch | R/W | Interval 4 generator charge on/off | yes | -|interval-5-gen-charge |Switch | R/W | Interval 5 generator charge on/off | yes | -|interval-6-gen-charge |Switch | R/W | Interval 6 generator charge on/off | yes | -|inverter-control-timer |Switch | R/W | Inverter control timer on/off | yes | -|inverter-control-work-mode |String | R/W | Inverter work mode 0, 1 or 2 | yes | -|inverter-control-energy-pattern |String | R/W | Inverter energy pattern 0 or 1 | yes | +| Channel | Type | R/W | Description | Advanced | +|---------------------------------|--------------------------|-----|------------------------------------|----------| +| battery-soc | Number:Dimensionless | R | Inverter battery % charged | no | +| battery-grid-voltage | Number:ElectricPotential | R | Battery dc electric-voltage | no | +| battery-grid-current | Number:ElectricCurrent | R | Battery dc electric-current | no | +| battery-grid-power | Number:Power | R | Battery dc electric-power | no | +| inverter-ac-temperature | Number:Temperature | R | Inverter ac temperature | no | +| inverter-dc-temperature | Number:Temperature | R | Inverter dc temperature | no | +| inverter-grid-power | Number:Power | R | Grid ac electric-power | no | +| inverter-grid-voltage | Number:ElectricPotential | R | Grid ac electric-voltage | no | +| inverter-grid-current | Number:ElectricCurrent | R | Grid ac electric-current | no | +| inverter-grid-frequency | Number:Frequency | R | Grid frequency | no | +| inverter-rated-ac-output | Number:Power | R | Inverter energy capacity | no | +| inverter-solar-energy-today | Number:Energy | R | Solar energy generated today | no | +| inverter-solar-energy-month | Number:Energy | R | Solar energy generated this month | no | +| inverter-solar-energy-year | Number:Energy | R | Solar energy generated this year | no | +| inverter-solar-efficiency | Number:Dimensionless | R | Solar production efficiency | no | +| inverter-solar-ac-power | Number:Power | R | Solar power being generated | no | +| inverter-solar-energy-total | Number:Energy | R | Solar energy generated to date | no | +| inverter-solar-string-voltage-1 | Number:ElectricPotential | R | String 1 Solar Voltage | no | +| inverter-solar-string-voltage-2 | Number:ElectricPotential | R | String 2 Solar Voltage | no | +| inverter-solar-string-current-1 | Number:ElectricCurrent | R | String 1 Solar Current | no | +| inverter-solar-string-current-2 | Number:ElectricCurrent | R | String 2 Solar Current | no | +| inverter-solar-string-power-1 | Number:Power | R | String 1 Solar Power | no | +| inverter-solar-string-power-2 | Number:Power | R | String 2 Solar Power | no | +| interval-1-grid-charge | Switch | R/W | Interval 1 grid charge on/off | yes | +| interval-1-grid-time | DateTime | R/W | Interval 1 start grid charge time | yes | +| interval-1-grid-capacity | Number:Dimensionless | R/W | Interval 1 battery charge target | yes | +| interval-1-grid-power-limit | Number:Power | R/W | Interval 1 charge power limit | yes | +| interval-2-grid-charge | Switch | R/W | Interval 2 grid charge on/off | yes | +| interval-2-grid-time | DateTime | R/W | Interval 2 start grid charge time | yes | +| interval-2-grid-capacity | Number:Dimensionless | R/W | Interval 2 battery charge target | yes | +| interval-2-grid-power-limit | Number:Power | R/W | Interval 2 charge power limit | yes | +| interval-3-grid-charge | Switch | R/W | Interval 3 grid charge on/off | yes | +| interval-3-grid-time | DateTime | R/W | Interval 3 start grid charge time | yes | +| interval-3-grid-capacity | Number:Dimensionless | R/W | Interval 3 battery charge target | yes | +| interval-3-grid-power-limit | Number:Power | R/W | Interval 3 charge power limit | yes | +| interval-4-grid-charge | Switch | R/W | Interval 4 grid charge on/off | yes | +| interval-4-grid-time | DateTime | R/W | Interval 4 start grid charge time | yes | +| interval-4-grid-capacity | Number:Dimensionless | R/W | Interval 4 battery charge target | yes | +| interval-4-grid-power-limit | Number:Power | R/W | Interval 4 charge power limit | yes | +| interval-5-grid-charge | Switch | R/W | Interval 5 grid charge on/off | yes | +| interval-5-grid-time | DateTime | R/W | Interval 5 start grid charge time | yes | +| interval-5-grid-capacity | Number:Dimensionless | R/W | Interval 5 battery charge target | yes | +| interval-5-grid-power-limit | Number:Power | R/W | Interval 5 charge power limit | yes | +| interval-6-grid-charge | Switch | R/W | Interval 6 grid charge on/off | yes | +| interval-6-grid-time | DateTime | R/W | Interval 6 start grid charge time | yes | +| interval-6-grid-capacity | Number:Dimensionless | R/W | Interval 6 battery charge target | yes | +| interval-6-grid-power-limit | Number:Power | R/W | Interval 6 charge power limit | yes | +| interval-1-gen-charge | Switch | R/W | Interval 1 generator charge on/off | yes | +| interval-2-gen-charge | Switch | R/W | Interval 2 generator charge on/off | yes | +| interval-3-gen-charge | Switch | R/W | Interval 3 generator charge on/off | yes | +| interval-4-gen-charge | Switch | R/W | Interval 4 generator charge on/off | yes | +| interval-5-gen-charge | Switch | R/W | Interval 5 generator charge on/off | yes | +| interval-6-gen-charge | Switch | R/W | Interval 6 generator charge on/off | yes | +| inverter-control-timer | Switch | R/W | Inverter control timer on/off | yes | +| inverter-control-work-mode | String | R/W | Inverter work mode 0, 1 or 2 | yes | +| inverter-control-energy-pattern | String | R/W | Inverter energy pattern 0 or 1 | yes | ### Full Example diff --git a/bundles/org.openhab.binding.surepetcare/README.md b/bundles/org.openhab.binding.surepetcare/README.md index 5711f7a906761..a035e7523610e 100644 --- a/bundles/org.openhab.binding.surepetcare/README.md +++ b/bundles/org.openhab.binding.surepetcare/README.md @@ -473,6 +473,6 @@ Frame label="Group Pet/Cats items" { ## Troubleshooting -| Problem | Solution | -|---------------------------------------------|-------------------------------------------------------------------------------------| -| Bridge cannot connect to Sure Petcare API | Check if you can log in to the Sure Petcare app with the given username/password. | +| Problem | Solution | +|-------------------------------------------|-----------------------------------------------------------------------------------| +| Bridge cannot connect to Sure Petcare API | Check if you can log in to the Sure Petcare app with the given username/password. | diff --git a/bundles/org.openhab.binding.systeminfo/README.md b/bundles/org.openhab.binding.systeminfo/README.md index 3a7292bff4fe9..d86e6e86d5430 100644 --- a/bundles/org.openhab.binding.systeminfo/README.md +++ b/bundles/org.openhab.binding.systeminfo/README.md @@ -110,43 +110,43 @@ If a device with this index does not exist, the binding displays an error messag The table shows more detailed information about each channel type. The binding introduces the following channels: -| Channel ID | Channel Description | Supported item type | Default priority | Advanced | -|--------------------|------------------------------------------------------------------|---------------------|------------------|----------| -| load | CPU Load (total or by process) in % | Number:Dimensionless| High | False | -| load1 | Load for the last 1 minute | Number | Medium | True | -| load5 | Load for the last 5 minutes | Number | Medium | True | -| load15 | Load for the last 15 minutes | Number | Medium | True | -| threads | Number of threads currently running or for the process | Number | Medium | True | -| maxfreq | CPU maximum frequency | Number:Frequency | Low | True | -| freq | Logical processor frequency | Number:Frequency | High | True | -| path | The full path of the process | String | Low | False | -| uptime | System uptime (time after start) in minutes | Number:Time | Medium | True | -| name | Name of the device or process | String | Low | False | -| available | Available size | Number:DataAmount | High | False | -| used | Used size | Number:DataAmount | High | False | -| total | Total size | Number:DataAmount | Low | False | -| availablePercent | Available size in % | Number:Dimensionless| High | False | -| usedPercent | Used size in % | Number:Dimensionless| High | False | -| model | The model of the device | String | Low | True | -| serial | The serial number of the device | String | Low | True | -| description | Description of the device | String | Low | True | -| type | Storage type | String | Low | True | -| cpuTemp | CPU Temperature in degrees Celsius | Number:Temperature | High | True | -| cpuVoltage | CPU Voltage | Number:ElectricPotential| Medium | True | -| fanSpeed | Fan speed in rpm | Number | Medium | True | -| remainingTime | Remaining time in minutes | Number:Time | Medium | False | -| remainingCapacity | Remaining capacity in % | Number:Dimensionless| Medium | False | -| information | Product, manufacturer, SN, width and height of the display in cm | String | Low | True | -| ip | Host IP address of the network | String | Low | False | -| mac | MAC address | String | Low | True | -| networkName | The name of the network | String | Low | False | -| networkDisplayName | The display name of the network | String | Low | False | -| packetsSent | Number of packets sent | Number | Medium | True | -| packetsReceived | Number of packets received | Number | Medium | True | -| dataSent | Volume of data sent | Number:DataAmount | Medium | True | -| dataReceived | Volume of data received | Number:DataAmount | Medium | True | -| availableHeap | How much space is available in the currently committed heap | Number:DataAmount | Medium | True | -| usedHeapPercent | How much of the MAX heap size is actually used in % | Number:Dimensionless| Medium | False | +| Channel ID | Channel Description | Supported item type | Default priority | Advanced | +|--------------------|------------------------------------------------------------------|--------------------------|------------------|----------| +| load | CPU Load (total or by process) in % | Number:Dimensionless | High | False | +| load1 | Load for the last 1 minute | Number | Medium | True | +| load5 | Load for the last 5 minutes | Number | Medium | True | +| load15 | Load for the last 15 minutes | Number | Medium | True | +| threads | Number of threads currently running or for the process | Number | Medium | True | +| maxfreq | CPU maximum frequency | Number:Frequency | Low | True | +| freq | Logical processor frequency | Number:Frequency | High | True | +| path | The full path of the process | String | Low | False | +| uptime | System uptime (time after start) in minutes | Number:Time | Medium | True | +| name | Name of the device or process | String | Low | False | +| available | Available size | Number:DataAmount | High | False | +| used | Used size | Number:DataAmount | High | False | +| total | Total size | Number:DataAmount | Low | False | +| availablePercent | Available size in % | Number:Dimensionless | High | False | +| usedPercent | Used size in % | Number:Dimensionless | High | False | +| model | The model of the device | String | Low | True | +| serial | The serial number of the device | String | Low | True | +| description | Description of the device | String | Low | True | +| type | Storage type | String | Low | True | +| cpuTemp | CPU Temperature in degrees Celsius | Number:Temperature | High | True | +| cpuVoltage | CPU Voltage | Number:ElectricPotential | Medium | True | +| fanSpeed | Fan speed in rpm | Number | Medium | True | +| remainingTime | Remaining time in minutes | Number:Time | Medium | False | +| remainingCapacity | Remaining capacity in % | Number:Dimensionless | Medium | False | +| information | Product, manufacturer, SN, width and height of the display in cm | String | Low | True | +| ip | Host IP address of the network | String | Low | False | +| mac | MAC address | String | Low | True | +| networkName | The name of the network | String | Low | False | +| networkDisplayName | The display name of the network | String | Low | False | +| packetsSent | Number of packets sent | Number | Medium | True | +| packetsReceived | Number of packets received | Number | Medium | True | +| dataSent | Volume of data sent | Number:DataAmount | Medium | True | +| dataReceived | Volume of data received | Number:DataAmount | Medium | True | +| availableHeap | How much space is available in the currently committed heap | Number:DataAmount | Medium | True | +| usedHeapPercent | How much of the MAX heap size is actually used in % | Number:Dimensionless | Medium | False | ## Channel Configuration From 5ab230c7f90e39285a7d044a2ab5683753f0a022 Mon Sep 17 00:00:00 2001 From: lsiepel Date: Mon, 29 Dec 2025 19:18:28 +0100 Subject: [PATCH 09/23] Apply suggestions from code review Co-authored-by: Jacob Laursen Signed-off-by: lsiepel --- .../README.md | 8 +++--- .../resources/OH-INF/i18n/renault.properties | 8 +++--- .../resources/OH-INF/thing/thing-types.xml | 6 ++--- bundles/org.openhab.binding.revogi/README.md | 2 +- .../resources/OH-INF/i18n/revogi.properties | 2 +- .../resources/OH-INF/thing/thing-types.xml | 2 +- .../org.openhab.binding.roborock/README.md | 2 +- .../org.openhab.binding.samsungtv/README.md | 27 +++++++++++++------ bundles/org.openhab.binding.seneye/README.md | 2 +- .../OH-INF/thing/shellyGen1_sensor.xml | 2 +- .../org.openhab.binding.siemensrds/README.md | 2 +- .../README.md | 2 +- .../i18n/silvercrestwifisocket.properties | 6 ++--- .../resources/OH-INF/thing/thing-types.xml | 6 ++--- bundles/org.openhab.binding.sinope/README.md | 1 - bundles/org.openhab.binding.sncf/README.md | 2 +- 16 files changed, 45 insertions(+), 35 deletions(-) diff --git a/bundles/org.openhab.binding.remoteopenhab/README.md b/bundles/org.openhab.binding.remoteopenhab/README.md index 41a2ea9fdc17f..6fa7571d26210 100644 --- a/bundles/org.openhab.binding.remoteopenhab/README.md +++ b/bundles/org.openhab.binding.remoteopenhab/README.md @@ -72,7 +72,7 @@ Setting the `buildTriggerChannels` parameter to false is for the main following ## Thing Status -The status of any `thing` thThinging is a mapping of the remote Thing status. +The status of any `thing` Thing is a mapping of the remote Thing status. A mapping is done only when the `server` bridge is ONLINE (meaning the local server is connected to the remote server). Please note that every remote status other than UNKNOWN, ONLINE and OFFLINE will then be considered as OFFLINE on the local server. @@ -103,12 +103,12 @@ Example of connection to a remote server in the local network: ```java Bridge remoteopenhab:server:oh2 "OH2 server" [ host="192.168.0.100", port=8443, useHttps=true, trustedCertificate=true ] { - Thing Thing tv "TV living room" [ thingUID="lgwebos:WebOSTV:tv" ] - Thing Thing astroSun "Astro sun" [ thingUID="astro:sun:local", buildTriggerChannels=false ] { + Thing thing tv "TV living room" [ thingUID="lgwebos:WebOSTV:tv" ] + Thing thing astroSun "Astro sun" [ thingUID="astro:sun:local", buildTriggerChannels=false ] { Channels: Type trigger : nightEvent "Night Event" [ channelUID="astro:sun:local:night#event" ] } - Thing Thing astroMoon "Astro moon" [ thingUID="astro:moon:local" ] + Thing thing astroMoon "Astro moon" [ thingUID="astro:moon:local" ] } ``` diff --git a/bundles/org.openhab.binding.renault/src/main/resources/OH-INF/i18n/renault.properties b/bundles/org.openhab.binding.renault/src/main/resources/OH-INF/i18n/renault.properties index d26d2960b46fc..1d605eed62269 100644 --- a/bundles/org.openhab.binding.renault/src/main/resources/OH-INF/i18n/renault.properties +++ b/bundles/org.openhab.binding.renault/src/main/resources/OH-INF/i18n/renault.properties @@ -6,7 +6,7 @@ addon.renault.description = This is the binding for Renault electric cars. # thing types thing-type.renault.car.label = Renault Car -thing-type.renault.car.description = A MyRenault-registered car +thing-type.renault.car.description = A MyRenault-registered car. # thing types config @@ -77,9 +77,9 @@ channel-type.renault.chargingstatus.state.option.CHARGE_ERROR = Charge error channel-type.renault.chargingstatus.state.option.UNAVAILABLE = Unavailable channel-type.renault.chargingstatus.state.option.UNKNOWN = Unknown channel-type.renault.estimatedrange.label = Estimated Range -channel-type.renault.estimatedrange.description = Estimated range of the car +channel-type.renault.estimatedrange.description = Estimated range of the car. channel-type.renault.externaltemperature.label = External Temperature -channel-type.renault.externaltemperature.description = Temperature outside of the car +channel-type.renault.externaltemperature.description = Temperature outside of the car. channel-type.renault.hvacstatus.label = HVAC Status (ON | OFF | PENDING) channel-type.renault.hvacstatus.state.option.ON = On channel-type.renault.hvacstatus.state.option.PENDING = Pending @@ -98,7 +98,7 @@ channel-type.renault.odometer.description = Total distance travelled channel-type.renault.pause.label = Pause Charge channel-type.renault.pause.description = Pause or resume the charge. channel-type.renault.plugstatus.label = Plug Status -channel-type.renault.plugstatus.description = Status of the charging plug +channel-type.renault.plugstatus.description = Status of the charging plug. channel-type.renault.plugstatus.state.option.UNPLUGGED = Unplugged channel-type.renault.plugstatus.state.option.PLUGGED = Plugged channel-type.renault.plugstatus.state.option.PLUG_ERROR = Plug error diff --git a/bundles/org.openhab.binding.renault/src/main/resources/OH-INF/thing/thing-types.xml b/bundles/org.openhab.binding.renault/src/main/resources/OH-INF/thing/thing-types.xml index 671dd1f2c8584..8a0dc50627bfe 100644 --- a/bundles/org.openhab.binding.renault/src/main/resources/OH-INF/thing/thing-types.xml +++ b/bundles/org.openhab.binding.renault/src/main/resources/OH-INF/thing/thing-types.xml @@ -7,7 +7,7 @@ - A MyRenault-registered car + A MyRenault-registered car. Vehicle @@ -127,7 +127,7 @@ String - Status of the charging plug + Status of the charging plug. Status Power @@ -197,7 +197,7 @@ Number:Length - Estimated range of the car + Estimated range of the car. diff --git a/bundles/org.openhab.binding.revogi/README.md b/bundles/org.openhab.binding.revogi/README.md index 412dae5070222..95e83c5fb234b 100644 --- a/bundles/org.openhab.binding.revogi/README.md +++ b/bundles/org.openhab.binding.revogi/README.md @@ -1,7 +1,7 @@ # Revogi Binding This binding is written to control Revogi devices. -The first thThinging implemented is the [Revogi Smart Power Strip](https://www.revogi.com/smart-power/smart-power-strip-eu/#section6). +The first Thing implemented is the [Revogi Smart Power Strip](https://www.revogi.com/smart-power/smart-power-strip-eu/#section6). The device has 6 power plugs that can be switched independently, or all together. It also provides information like power consumption and electric current for each plug. diff --git a/bundles/org.openhab.binding.revogi/src/main/resources/OH-INF/i18n/revogi.properties b/bundles/org.openhab.binding.revogi/src/main/resources/OH-INF/i18n/revogi.properties index 5530f98268689..f02b5e772a42b 100644 --- a/bundles/org.openhab.binding.revogi/src/main/resources/OH-INF/i18n/revogi.properties +++ b/bundles/org.openhab.binding.revogi/src/main/resources/OH-INF/i18n/revogi.properties @@ -6,7 +6,7 @@ addon.revogi.description = This is the binding for Revogi devices. Revogi is a v # thing types thing-type.revogi.smartstrip.label = SmartStrip -thing-type.revogi.smartstrip.description = A thing to control the Revogi SmartStrip +thing-type.revogi.smartstrip.description = A Thing to control the Revogi SmartStrip thing-type.revogi.smartstrip.group.plug1.label = Plug 1 thing-type.revogi.smartstrip.group.plug2.label = Plug 2 thing-type.revogi.smartstrip.group.plug3.label = Plug 3 diff --git a/bundles/org.openhab.binding.revogi/src/main/resources/OH-INF/thing/thing-types.xml b/bundles/org.openhab.binding.revogi/src/main/resources/OH-INF/thing/thing-types.xml index 772aaadd02f25..9691283e566fc 100644 --- a/bundles/org.openhab.binding.revogi/src/main/resources/OH-INF/thing/thing-types.xml +++ b/bundles/org.openhab.binding.revogi/src/main/resources/OH-INF/thing/thing-types.xml @@ -7,7 +7,7 @@ - A thing to control the Revogi SmartStrip + A Thing to control the Revogi SmartStrip PowerOutlet PowerOutlet diff --git a/bundles/org.openhab.binding.roborock/README.md b/bundles/org.openhab.binding.roborock/README.md index 16241dfce5ad6..207738528f45b 100644 --- a/bundles/org.openhab.binding.roborock/README.md +++ b/bundles/org.openhab.binding.roborock/README.md @@ -20,7 +20,7 @@ After (manually) adding a Roborock Account bridge, registered vacuums will be au Account configuration is necessary. The easiest way to do this is from the UI. Just add a new thing, select the Roborock binding, then Roborock Account Binding Thing, and enter the email for your Roborock account. -If the email is valid, you will be send an email with a verification code. +If the email is valid, you will be sent an email with a verification code. Once received, update the twofa field and hit save. | Thing Parameter | Default Value | Required | Advanced | Description | diff --git a/bundles/org.openhab.binding.samsungtv/README.md b/bundles/org.openhab.binding.samsungtv/README.md index 32e403457f16f..a9313bea9c53a 100644 --- a/bundles/org.openhab.binding.samsungtv/README.md +++ b/bundles/org.openhab.binding.samsungtv/README.md @@ -8,7 +8,8 @@ There is one Thing per TV. ## Discovery -The TV's are discovered through UPnP protocol in the local network and all devices are put in the Inbox. The TV must be ON for this to work. +The TV's are discovered through UPnP protocol in the local network and all devices are put in the Inbox. +The TV must be ON for this to work. ## Binding Configuration @@ -52,7 +53,9 @@ If your TV supports _websocketsecure_, you **MUST** use it, otherwise the `keyCo In order for the binding to control your TV, you will be asked to accept the remote connection (from openHAB) on your TV. You have 30 seconds to accept the connection. If you fail to accept it, then most channels will not work. Once you have accepted the connection, the returned token is stored in the binding, so you don't have to repeat this every time openHAB is restarted. -If the connection has been refused, or you don't have your TV configured to allow remote connections, the binding will not work. If you are having problems, check the settings on your TV. Sometimes a family member denies the popup (because they don't know what it is), and after that nothing will work. +If the connection has been refused, or you don't have your TV configured to allow remote connections, the binding will not work. +If you are having problems, check the settings on your TV. +Sometimes a family member denies the popup (because they don't know what it is), and after that nothing will work. You can set the connection to `Allow` on the TV, or delete the openHAB entry, and try the connection again. The binding will try to automatically discover the correct protocol for your TV, so **don't change it** unless you know it is wrong. @@ -176,7 +179,8 @@ To determine the ON/ART/OFF state of your TV, you have to read both `power` and ### setArtMode -**NOTE:** Samsung added back the art API in Firmware 1622 to >2021 Frame TV's. If you have this version of firmware or higher, don't use the `setArtMode` channel, as it is not necessary. +**NOTE:** Samsung added back the art API in Firmware 1622 to >2021 Frame TV's. +If you have this version of firmware or higher, don't use the `setArtMode` channel, as it is not necessary. `setArtMode` is a Switch channel. Since Samsung removed the art api in 2022, the TV has no way of knowing if it is in art mode or playing a TV source. This switch is to allow you to manually tell the TV what mode it is in. @@ -187,11 +191,14 @@ This input allows you to set the internal art mode state from an external source ### artImage -`artImage` is an Image channel that receives a thumbnail of the art that would be displayed in artMode (even if the TV is on). It receives images only (you can't send a command to it due to openHAB limitations). +`artImage` is an Image channel that receives a thumbnail of the art that would be displayed in artMode (even if the TV is on). +It receives images only (you can't send a command to it due to openHAB limitations). ### artLabel -`artLabel` is a String channel that receives the _internal_ label of the artwork displayed. This will be something like `MY_0010` or `SAM-0123`. `MY` means it's art you uploaded, `SAM` means it's from the Samsung art gallery. +`artLabel` is a String channel that receives the _internal_ label of the artwork displayed. +This will be something like `MY_0010` or `SAM-0123`. +`MY` means it's art you uploaded, `SAM` means it's from the Samsung art gallery. You have to figure out what the label actually represents. You can send commands to the channel. It accepts, Strings, string representations of a `Rawtype` image and `RawType` Images. If you send a String, such as `MY-0013`, it will display that art on the TV. If the TV is ON, playing live TV, then the Tv will switch to artMode. @@ -312,7 +319,8 @@ Setpoint item=TV_ArtColorTemperature minValue=-5 maxValue=5 step=1 visibility=[T ### artOrientation `artOrientation` is a Switch channel, it reports the current orientation of the TV, OFF for Landscape, and ON for Portrait. This channel is polled. If you send an ON or OFF command to this channel, then the binding will send a long (4s) press of the key defined in the configuration for orientationKey.
-For 2023- TV's, `orientationKey` should be KEY_MULTI_VIEW (default). For 2024+ TV's, this should be KEY_HOME. +For 2023- TV's, `orientationKey` should be KEY_MULTI_VIEW (default). +For 2024+ TV's, this should be KEY_HOME. ```java Switch item=TV_ArtOrientation mappings=[OFF="Landscape", ON="Portrait"] @@ -413,7 +421,10 @@ Values are confirmed to work on UE50MU6179. To discover all installed apps names, you can enable the DEBUG log output from the binding to see a list of apps that have been discovered as installed. This list is displayed once, shortly after the TV is turned On. -If you have a TV >2019, then the list of apps will not be discovered. Instead, a default list of known appID's is built into the binding, these cover most common apps. The binding will attempt to discover these apps, and, if you are lucky, your app will be found and you have nothing further to do. It is possible that new apps have been added, or are specific to your country that are not in the built-in list, in which case you can add these apps manually. +If you have a TV >2019, then the list of apps will not be discovered. +Instead, a default list of known appID's is built into the binding, these cover most common apps. +The binding will attempt to discover these apps, and, if you are lucky, your app will be found and you have nothing further to do. +It is possible that new apps have been added, or are specific to your country that are not in the built-in list, in which case you can add these apps manually. #### Adding apps manually @@ -652,7 +663,7 @@ With your **TV OFF** (ie totally off) ### What you should see -You may see some messages (this is a good Thing, it means you are receiving UPnP traffic). +You may see some messages (this is a good thing, it means you are receiving UPnP traffic). Now turn your TV ON (with the remote control). diff --git a/bundles/org.openhab.binding.seneye/README.md b/bundles/org.openhab.binding.seneye/README.md index 90afed514bcd5..e982d5905ded2 100644 --- a/bundles/org.openhab.binding.seneye/README.md +++ b/bundles/org.openhab.binding.seneye/README.md @@ -7,7 +7,7 @@ This binding integrates the [Seneye aquarium monitoring system](https://www.sene The seneye monitor monitors what is happening inside your aquarium to ensure that the aquatic life remains healthy. The monitor allows you to continuously track the changes in the water parameters, alerting you to the problems before they affect the fish. -At least one Seneye monitor is required ([Home / pond or reef](https://www.seneye.com/devices/compare)) and the measure results must be synchronized to the seneye cloud by using a seneye web server (see [shop](https://www.seneye.com/store), there is one for wifi and one for a wired network). +At least one Seneye monitor is required ([Home / pond or reef](https://www.seneye.com/devices/compare)) and the measure results must be synchronized to the seneye cloud by using a seneye web server (see [shop](https://www.seneye.com/store), there is one for Wi-Fi and one for a wired network). Each monitor is represented by one seneye Thing. ## Supported Things diff --git a/bundles/org.openhab.binding.shelly/src/main/resources/OH-INF/thing/shellyGen1_sensor.xml b/bundles/org.openhab.binding.shelly/src/main/resources/OH-INF/thing/shellyGen1_sensor.xml index 8c457c2ac7e5e..0b8b560213828 100644 --- a/bundles/org.openhab.binding.shelly/src/main/resources/OH-INF/thing/shellyGen1_sensor.xml +++ b/bundles/org.openhab.binding.shelly/src/main/resources/OH-INF/thing/shellyGen1_sensor.xml @@ -493,7 +493,7 @@ Control Level
- +
diff --git a/bundles/org.openhab.binding.siemensrds/README.md b/bundles/org.openhab.binding.siemensrds/README.md index 2ee94f1f434da..6579710786732 100644 --- a/bundles/org.openhab.binding.siemensrds/README.md +++ b/bundles/org.openhab.binding.siemensrds/README.md @@ -10,7 +10,7 @@ The binding supports two types of Thing as follows: | Thing Type | Description | | -------------------- | ------------------------------------------------------------------------------------------------------------------------ | -| Climatix IC Account | User account on the Siemens Climatix IC cloud server (bridge) to connect with respective Smart Thermostat Things below. | +| Climatix IC Account | User account on the Siemens Climatix IC cloud server (bridge) to connect with respective Smart Thermostat Things below. | | RDS Smart Thermostat | Siemens RDS model Smart Thermostat devices | ## Discovery diff --git a/bundles/org.openhab.binding.silvercrestwifisocket/README.md b/bundles/org.openhab.binding.silvercrestwifisocket/README.md index f39c33f904146..c10f751617840 100644 --- a/bundles/org.openhab.binding.silvercrestwifisocket/README.md +++ b/bundles/org.openhab.binding.silvercrestwifisocket/README.md @@ -1,4 +1,4 @@ -# Silvercrest WiFi Plug Binding +# Silvercrest Wi-Fi Plug Binding This binding integrates the Silvercrest WiFi Socket SWS-A1 sold by Lidl and the EasyHome WiFi Socket DIS-124 sold by Aldi. diff --git a/bundles/org.openhab.binding.silvercrestwifisocket/src/main/resources/OH-INF/i18n/silvercrestwifisocket.properties b/bundles/org.openhab.binding.silvercrestwifisocket/src/main/resources/OH-INF/i18n/silvercrestwifisocket.properties index 666fc43a7c55b..966b02cd3934e 100644 --- a/bundles/org.openhab.binding.silvercrestwifisocket/src/main/resources/OH-INF/i18n/silvercrestwifisocket.properties +++ b/bundles/org.openhab.binding.silvercrestwifisocket/src/main/resources/OH-INF/i18n/silvercrestwifisocket.properties @@ -5,8 +5,8 @@ addon.silvercrestwifisocket.description = This is the binding for Silvercrest Wi # thing types -thing-type.silvercrestwifisocket.wifiSocket.label = Silvercrest WiFi Socket -thing-type.silvercrestwifisocket.wifiSocket.description = Supports Silvercrest WiFi Socket SWS-A1. +thing-type.silvercrestwifisocket.wifiSocket.label = Silvercrest Wi-Fi Socket +thing-type.silvercrestwifisocket.wifiSocket.description = Supports Silvercrest Wi-Fi Socket SWS-A1. # thing types config @@ -24,4 +24,4 @@ thing-type.config.silvercrestwifisocket.wifiSocket.vendor.option.ALDI_EASYHOME = # channel types channel-type.silvercrestwifisocket.switch.label = Socket Switch -channel-type.silvercrestwifisocket.switch.description = Silvercrest WiFi socket switch to turn on or off. +channel-type.silvercrestwifisocket.switch.description = Silvercrest Wi-Fi socket switch to turn on or off. diff --git a/bundles/org.openhab.binding.silvercrestwifisocket/src/main/resources/OH-INF/thing/thing-types.xml b/bundles/org.openhab.binding.silvercrestwifisocket/src/main/resources/OH-INF/thing/thing-types.xml index 30a1a640e819b..50ffc4e106dbc 100644 --- a/bundles/org.openhab.binding.silvercrestwifisocket/src/main/resources/OH-INF/thing/thing-types.xml +++ b/bundles/org.openhab.binding.silvercrestwifisocket/src/main/resources/OH-INF/thing/thing-types.xml @@ -6,8 +6,8 @@ - - Supports Silvercrest WiFi Socket SWS-A1. + + Supports Silvercrest Wi-Fi Socket SWS-A1. PowerOutlet @@ -43,7 +43,7 @@ Switch - Silvercrest WiFi socket switch to turn on or off. + Silvercrest Wi-Fi socket switch to turn on or off. Switch Power diff --git a/bundles/org.openhab.binding.sinope/README.md b/bundles/org.openhab.binding.sinope/README.md index 366d586442b71..9288da8b8e881 100644 --- a/bundles/org.openhab.binding.sinope/README.md +++ b/bundles/org.openhab.binding.sinope/README.md @@ -13,7 +13,6 @@ Right now, only the thermostat devices (3000W and 4000W) (TH1120RF) are supporte ## Discovery The Sinopé Gateway (bridge) discovery is not supported for now. -It will be added in a future release. The Sinopé device discovery is implemented. ## Prerequisites diff --git a/bundles/org.openhab.binding.sncf/README.md b/bundles/org.openhab.binding.sncf/README.md index 0daace5d35d45..2ed7fde367235 100644 --- a/bundles/org.openhab.binding.sncf/README.md +++ b/bundles/org.openhab.binding.sncf/README.md @@ -51,7 +51,7 @@ The Thing will auto-update depending on the timestamp of the earliest event dete ## Channels -The Station thThinging holds two groups of channels (arrivals and departures) containing these channels: +The Station Thing holds two groups of channels (arrivals and departures) containing these channels: | Channel ID | Item Type | Description | | ---------- | --------- | ------------------------------------------- | From f75d764de4d4ff6af0a06c366dd60a2dfdabbb9c Mon Sep 17 00:00:00 2001 From: Leo Siepel Date: Mon, 29 Dec 2025 20:28:11 +0100 Subject: [PATCH 10/23] Spotless Signed-off-by: Leo Siepel --- .../src/main/resources/OH-INF/thing/ozw.xml | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/bundles/org.openhab.binding.siemenshvac/src/main/resources/OH-INF/thing/ozw.xml b/bundles/org.openhab.binding.siemenshvac/src/main/resources/OH-INF/thing/ozw.xml index ddc2cbb10bbf4..5b6e67ed3284a 100644 --- a/bundles/org.openhab.binding.siemenshvac/src/main/resources/OH-INF/thing/ozw.xml +++ b/bundles/org.openhab.binding.siemenshvac/src/main/resources/OH-INF/thing/ozw.xml @@ -13,9 +13,8 @@ url - The URL of the Siemens HVAC IP gateway. Must be in the format http://hostname/ or https://hostname/. - Don't - forget the trailing '/'. + The URL of the Siemens HVAC IP gateway. Must be in the format http://hostname/ or + https://hostname/. Don't forget the trailing '/'. true From 74db311ba11e0d654c03f1430c950b03cc29d3b9 Mon Sep 17 00:00:00 2001 From: lsiepel Date: Mon, 29 Dec 2025 20:26:55 +0100 Subject: [PATCH 11/23] Update bundles/org.openhab.binding.siemensrds/src/main/resources/OH-INF/thing/thing-types.xml Co-authored-by: Jacob Laursen Signed-off-by: lsiepel --- .../src/main/resources/OH-INF/thing/thing-types.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bundles/org.openhab.binding.siemensrds/src/main/resources/OH-INF/thing/thing-types.xml b/bundles/org.openhab.binding.siemensrds/src/main/resources/OH-INF/thing/thing-types.xml index d8392d461149c..442fc6c1aadfa 100644 --- a/bundles/org.openhab.binding.siemensrds/src/main/resources/OH-INF/thing/thing-types.xml +++ b/bundles/org.openhab.binding.siemensrds/src/main/resources/OH-INF/thing/thing-types.xml @@ -163,7 +163,7 @@ - Number:Dimensionless + Number:Dimensionless Measured humidity value humidity From ade8b3a55ba1a2607000085192041f7849a93bbb Mon Sep 17 00:00:00 2001 From: Leo Siepel Date: Fri, 2 Jan 2026 11:16:51 +0100 Subject: [PATCH 12/23] Review comments Signed-off-by: Leo Siepel --- .../resources/OH-INF/thing/thing-types.xml | 2 +- .../src/main/resources/OH-INF/addon/addon.xml | 2 +- .../resources/OH-INF/i18n/shelly.properties | 2 +- .../i18n/silvercrestwifisocket.properties | 2 +- .../resources/OH-INF/thing/thing-types.xml | 2 +- .../org.openhab.binding.solaredge/README.md | 5 ++- .../resources/OH-INF/thing/fs-plane-type.xml | 1 + .../resources/OH-INF/i18n/solarlog.properties | 12 +++--- .../resources/OH-INF/i18n/solarman.properties | 2 +- .../resources/OH-INF/thing/thing-types.xml | 2 +- .../org.openhab.binding.solarmax/README.md | 3 +- .../resources/OH-INF/i18n/solarmax.properties | 40 +++++++++---------- .../main/resources/OH-INF/config/config.xml | 4 +- .../OH-INF/i18n/solarwatt.properties | 4 +- .../resources/OH-INF/thing/thing-types.xml | 2 +- .../org.openhab.binding.somfytahoma/README.md | 2 +- .../org.openhab.binding.sonyaudio/README.md | 2 +- .../README.md | 2 +- .../src/main/resources/OH-INF/addon/addon.xml | 2 +- .../resources/OH-INF/i18n/souliss.properties | 4 +- .../resources/OH-INF/thing/thing-types.xml | 3 +- 21 files changed, 51 insertions(+), 49 deletions(-) diff --git a/bundles/org.openhab.binding.renault/src/main/resources/OH-INF/thing/thing-types.xml b/bundles/org.openhab.binding.renault/src/main/resources/OH-INF/thing/thing-types.xml index 8a0dc50627bfe..edcbd224d0b1d 100644 --- a/bundles/org.openhab.binding.renault/src/main/resources/OH-INF/thing/thing-types.xml +++ b/bundles/org.openhab.binding.renault/src/main/resources/OH-INF/thing/thing-types.xml @@ -235,7 +235,7 @@ Number:Temperature - Temperature outside of the car + Temperature outside of the car. Temperature Measurement diff --git a/bundles/org.openhab.binding.shelly/src/main/resources/OH-INF/addon/addon.xml b/bundles/org.openhab.binding.shelly/src/main/resources/OH-INF/addon/addon.xml index 7ed452cbda944..f4d7bf3f337a9 100644 --- a/bundles/org.openhab.binding.shelly/src/main/resources/OH-INF/addon/addon.xml +++ b/bundles/org.openhab.binding.shelly/src/main/resources/OH-INF/addon/addon.xml @@ -5,7 +5,7 @@ binding Shelly Binding - This binding integrates Shelly devices that can be controlled via WiFi. + This binding integrates Shelly devices that can be controlled via Wi-Fi. local diff --git a/bundles/org.openhab.binding.shelly/src/main/resources/OH-INF/i18n/shelly.properties b/bundles/org.openhab.binding.shelly/src/main/resources/OH-INF/i18n/shelly.properties index 2682e2d7d27e9..d12edb9d0fb8a 100644 --- a/bundles/org.openhab.binding.shelly/src/main/resources/OH-INF/i18n/shelly.properties +++ b/bundles/org.openhab.binding.shelly/src/main/resources/OH-INF/i18n/shelly.properties @@ -1,7 +1,7 @@ # add-on addon.shelly.name = Shelly Binding -addon.shelly.description = This binding integrates Shelly devices that can be controlled via WiFi. +addon.shelly.description = This binding integrates Shelly devices that can be controlled via Wi-Fi. # thing types diff --git a/bundles/org.openhab.binding.silvercrestwifisocket/src/main/resources/OH-INF/i18n/silvercrestwifisocket.properties b/bundles/org.openhab.binding.silvercrestwifisocket/src/main/resources/OH-INF/i18n/silvercrestwifisocket.properties index 966b02cd3934e..0ffc584701b90 100644 --- a/bundles/org.openhab.binding.silvercrestwifisocket/src/main/resources/OH-INF/i18n/silvercrestwifisocket.properties +++ b/bundles/org.openhab.binding.silvercrestwifisocket/src/main/resources/OH-INF/i18n/silvercrestwifisocket.properties @@ -17,7 +17,7 @@ thing-type.config.silvercrestwifisocket.wifiSocket.macAddress.description = The thing-type.config.silvercrestwifisocket.wifiSocket.updateInterval.label = Update Interval thing-type.config.silvercrestwifisocket.wifiSocket.updateInterval.description = Update time interval in seconds to request the status of the socket. thing-type.config.silvercrestwifisocket.wifiSocket.vendor.label = Vendor -thing-type.config.silvercrestwifisocket.wifiSocket.vendor.description = The vendor selling the WiFi socket. +thing-type.config.silvercrestwifisocket.wifiSocket.vendor.description = The vendor selling the Wi-Fi socket. thing-type.config.silvercrestwifisocket.wifiSocket.vendor.option.LIDL_SILVERCREST = Lidl (Silvercrest) thing-type.config.silvercrestwifisocket.wifiSocket.vendor.option.ALDI_EASYHOME = Aldi (EasyHome) diff --git a/bundles/org.openhab.binding.silvercrestwifisocket/src/main/resources/OH-INF/thing/thing-types.xml b/bundles/org.openhab.binding.silvercrestwifisocket/src/main/resources/OH-INF/thing/thing-types.xml index 50ffc4e106dbc..905377f4b8c29 100644 --- a/bundles/org.openhab.binding.silvercrestwifisocket/src/main/resources/OH-INF/thing/thing-types.xml +++ b/bundles/org.openhab.binding.silvercrestwifisocket/src/main/resources/OH-INF/thing/thing-types.xml @@ -29,7 +29,7 @@
- The vendor selling the WiFi socket. + The vendor selling the Wi-Fi socket. diff --git a/bundles/org.openhab.binding.solaredge/README.md b/bundles/org.openhab.binding.solaredge/README.md index 6e2864efc53dd..39e7ca713f9a1 100644 --- a/bundles/org.openhab.binding.solaredge/README.md +++ b/bundles/org.openhab.binding.solaredge/README.md @@ -1,11 +1,12 @@ # SolarEdge Binding -The SolarEdge binding retrieves live data from SolarEdge inverters via the central web API. This binding should in general be compatible with all inverter models that upload data to the SolarEdge portal. +The SolarEdge binding retrieves live data from SolarEdge inverters via the central web API. +This binding should in general be compatible with all inverter models that upload data to the SolarEdge portal. Only read access is supported. ## Supported Things -This binding provides only one Thing type: "generic," which is the inverter itself. +This binding provides only one Thing type: `generic`, which is the inverter itself. As the name suggests, it is generic, which means it applies to all available inverters. Create one inverter Thing per physical inverter installation available in your home(s). Additional components such as batteries are automatically supported. diff --git a/bundles/org.openhab.binding.solarforecast/src/main/resources/OH-INF/thing/fs-plane-type.xml b/bundles/org.openhab.binding.solarforecast/src/main/resources/OH-INF/thing/fs-plane-type.xml index 3331c8d81622d..ec112e9aa6696 100644 --- a/bundles/org.openhab.binding.solarforecast/src/main/resources/OH-INF/thing/fs-plane-type.xml +++ b/bundles/org.openhab.binding.solarforecast/src/main/resources/OH-INF/thing/fs-plane-type.xml @@ -8,6 +8,7 @@ + PV Plane attached to forecast solar public subscription site SolarPanel diff --git a/bundles/org.openhab.binding.solarlog/src/main/resources/OH-INF/i18n/solarlog.properties b/bundles/org.openhab.binding.solarlog/src/main/resources/OH-INF/i18n/solarlog.properties index c2fa2aef5d225..92844d989eb4b 100644 --- a/bundles/org.openhab.binding.solarlog/src/main/resources/OH-INF/i18n/solarlog.properties +++ b/bundles/org.openhab.binding.solarlog/src/main/resources/OH-INF/i18n/solarlog.properties @@ -11,9 +11,9 @@ thing-type.solarlog.meter.description = Basic thing for the Solar-Log Binding # thing types config thing-type.config.solarlog.meter.refreshInterval.label = Refresh Interval -thing-type.config.solarlog.meter.refreshInterval.description = States how often a refresh shall occur (in s). +thing-type.config.solarlog.meter.refreshInterval.description = How often to refresh (in seconds). thing-type.config.solarlog.meter.url.label = URL -thing-type.config.solarlog.meter.url.description = URL of the Solar-Log web interface (e.g. http://solar-log) +thing-type.config.solarlog.meter.url.description = URL of the Solar-Log web interface (e.g., http://solar-log) # channel types @@ -22,13 +22,13 @@ channel-type.solarlog.conspac.description = Current total consumption PAC from a channel-type.solarlog.consyieldday.label = Consumption Today channel-type.solarlog.consyieldday.description = Total consumption from all of the consumption meters channel-type.solarlog.consyieldmonth.label = Consumption Month -channel-type.solarlog.consyieldmonth.description = Total consumption for the month; all of the consumption meters +channel-type.solarlog.consyieldmonth.description = Total consumption for the month from all of the consumption meters channel-type.solarlog.consyieldtotal.label = Consumption Total -channel-type.solarlog.consyieldtotal.description = Accumulated total consumption, all Consumption meter +channel-type.solarlog.consyieldtotal.description = Accumulated total consumption from all consumption meters channel-type.solarlog.consyieldyear.label = Consumption Year -channel-type.solarlog.consyieldyear.description = Total consumption for the year; all of the consumption meters +channel-type.solarlog.consyieldyear.description = Total consumption for the year from all of the consumption meters channel-type.solarlog.consyieldyesterday.label = Consumption Yesterday -channel-type.solarlog.consyieldyesterday.description = Total consumption for the previous day; all of the consumption meters +channel-type.solarlog.consyieldyesterday.description = Total consumption for the previous day from all of the consumption meters channel-type.solarlog.lastupdate.label = Last Update channel-type.solarlog.lastupdate.description = Last Update Time channel-type.solarlog.pac.label = PAC diff --git a/bundles/org.openhab.binding.solarman/src/main/resources/OH-INF/i18n/solarman.properties b/bundles/org.openhab.binding.solarman/src/main/resources/OH-INF/i18n/solarman.properties index f97235427390f..5f3dd328d942a 100644 --- a/bundles/org.openhab.binding.solarman/src/main/resources/OH-INF/i18n/solarman.properties +++ b/bundles/org.openhab.binding.solarman/src/main/resources/OH-INF/i18n/solarman.properties @@ -40,7 +40,7 @@ thing-type.config.solarman.logger.refreshInterval.description = Interval to quer thing-type.config.solarman.logger.serialNumber.label = Serial Number thing-type.config.solarman.logger.serialNumber.description = Serial number of the Solarman logger. thing-type.config.solarman.logger.solarmanLoggerMode.label = Logger Mode -thing-type.config.solarman.logger.solarmanLoggerMode.description = Use RAW Modbus for LAN Stick LSE-3 and V5 MODBUS for most WiFi sticks. If your WiFi stick uses Raw Modbus, choose RAW. If you do not use this advanced option, V5 MODBUS will be the default. +thing-type.config.solarman.logger.solarmanLoggerMode.description = Use RAW Modbus for LAN Stick LSE-3 and V5 MODBUS for most Wi-Fi sticks. If your Wi-Fi stick uses Raw Modbus, choose RAW. If you do not use this advanced option, V5 MODBUS will be the default. thing-type.config.solarman.logger.solarmanLoggerMode.option.V5MODBUS = V5 Modbus thing-type.config.solarman.logger.solarmanLoggerMode.option.RAWMODBUS = RAW Modbus diff --git a/bundles/org.openhab.binding.solarman/src/main/resources/OH-INF/thing/thing-types.xml b/bundles/org.openhab.binding.solarman/src/main/resources/OH-INF/thing/thing-types.xml index 7cf04802247a9..33842c328f17b 100644 --- a/bundles/org.openhab.binding.solarman/src/main/resources/OH-INF/thing/thing-types.xml +++ b/bundles/org.openhab.binding.solarman/src/main/resources/OH-INF/thing/thing-types.xml @@ -60,7 +60,7 @@ - Use RAW Modbus for LAN Stick LSE-3 and V5 MODBUS for most WiFi sticks. If your WiFi stick uses Raw + Use RAW Modbus for LAN Stick LSE-3 and V5 MODBUS for most Wi-Fi sticks. If your Wi-Fi stick uses Raw Modbus, choose RAW. If you do not use this advanced option, V5 MODBUS will be the default. diff --git a/bundles/org.openhab.binding.solarmax/README.md b/bundles/org.openhab.binding.solarmax/README.md index 89be342ddb8fe..4b657a305edb9 100644 --- a/bundles/org.openhab.binding.solarmax/README.md +++ b/bundles/org.openhab.binding.solarmax/README.md @@ -55,7 +55,8 @@ Each inverter requires the following configuration parameters: ### Full Example -Below you can find an example textual configuration for a SolarMax with some basic functionality. This can be extended/adjusted according to your needs and depending on the required channels (see list above). +Below you can find an example textual configuration for a SolarMax with some basic functionality. +This can be extended/adjusted according to your needs and depending on the required channels (see list above). _inverter.things:_ diff --git a/bundles/org.openhab.binding.solarmax/src/main/resources/OH-INF/i18n/solarmax.properties b/bundles/org.openhab.binding.solarmax/src/main/resources/OH-INF/i18n/solarmax.properties index c7b4261d3336d..1d6ee34ecc05e 100644 --- a/bundles/org.openhab.binding.solarmax/src/main/resources/OH-INF/i18n/solarmax.properties +++ b/bundles/org.openhab.binding.solarmax/src/main/resources/OH-INF/i18n/solarmax.properties @@ -22,40 +22,40 @@ thing-type.config.solarmax.inverter.refreshInterval.description = Refresh Interv # channel types channel-type.solarmax.acFrequency.label = AC Frequency -channel-type.solarmax.acFrequency.description = AcFrequency in Hz +channel-type.solarmax.acFrequency.description = AC frequency in Hz channel-type.solarmax.acPhase1Current.label = AC Phase 1 Current -channel-type.solarmax.acPhase1Current.description = AC Phase 1 Current in Amps -channel-type.solarmax.acPhase1Voltage.label = AC Phase1 Voltage -channel-type.solarmax.acPhase1Voltage.description = AC Phase1 Voltage in V +channel-type.solarmax.acPhase1Current.description = AC Phase 1 current in A +channel-type.solarmax.acPhase1Voltage.label = AC Phase 1 Voltage +channel-type.solarmax.acPhase1Voltage.description = AC Phase 1 voltage in V channel-type.solarmax.acPhase2Current.label = AC Phase 2 Current -channel-type.solarmax.acPhase2Current.description = AC Phase 2 Current in Amps -channel-type.solarmax.acPhase2Voltage.label = AC Phase2 Voltage -channel-type.solarmax.acPhase2Voltage.description = AC Phase2 Voltage in V +channel-type.solarmax.acPhase2Current.description = AC Phase 2 current in A +channel-type.solarmax.acPhase2Voltage.label = AC Phase 2 Voltage +channel-type.solarmax.acPhase2Voltage.description = AC Phase 2 voltage in V channel-type.solarmax.acPhase3Current.label = AC Phase 3 Current -channel-type.solarmax.acPhase3Current.description = AC Phase 3 Current in Amps -channel-type.solarmax.acPhase3Voltage.label = AC Phase3 Voltage -channel-type.solarmax.acPhase3Voltage.description = AC Phase3 Voltage in V +channel-type.solarmax.acPhase3Current.description = AC Phase 3 current in A +channel-type.solarmax.acPhase3Voltage.label = AC Phase 3 Voltage +channel-type.solarmax.acPhase3Voltage.description = AC Phase 3 voltage in V channel-type.solarmax.currentPowerGenerated.label = Current Power Generated -channel-type.solarmax.currentPowerGenerated.description = Power currently being generated in w +channel-type.solarmax.currentPowerGenerated.description = Power currently being generated in W channel-type.solarmax.energyGeneratedLastMonth.label = Energy Generated Last Month -channel-type.solarmax.energyGeneratedLastMonth.description = Energy Generated Last Month in wH +channel-type.solarmax.energyGeneratedLastMonth.description = Energy generated last month in Wh channel-type.solarmax.energyGeneratedLastYear.label = Energy Generated Last Year -channel-type.solarmax.energyGeneratedLastYear.description = Energy Generated Last Year in wH +channel-type.solarmax.energyGeneratedLastYear.description = Energy generated last year in Wh channel-type.solarmax.energyGeneratedThisMonth.label = Energy Generated This Month -channel-type.solarmax.energyGeneratedThisMonth.description = Energy Generated This Month in wH +channel-type.solarmax.energyGeneratedThisMonth.description = Energy generated this month in Wh channel-type.solarmax.energyGeneratedThisYear.label = Energy Generated This Year -channel-type.solarmax.energyGeneratedThisYear.description = Energy Generated This Year in wH +channel-type.solarmax.energyGeneratedThisYear.description = Energy generated this year in Wh channel-type.solarmax.energyGeneratedToday.label = Energy Generated Today -channel-type.solarmax.energyGeneratedToday.description = Energy Generated Today in wH +channel-type.solarmax.energyGeneratedToday.description = Energy generated today in Wh channel-type.solarmax.energyGeneratedTotal.label = Energy Generated Total -channel-type.solarmax.energyGeneratedTotal.description = Energy Generated Total since recording began in wH +channel-type.solarmax.energyGeneratedTotal.description = Total energy generated since recording began in Wh channel-type.solarmax.energyGeneratedYesterday.label = Energy Generated Yesterday -channel-type.solarmax.energyGeneratedYesterday.description = Energy Generated Yesterday in wH +channel-type.solarmax.energyGeneratedYesterday.description = Energy generated yesterday in Wh channel-type.solarmax.heatSinkTemperature.label = Heat Sink Temperature -channel-type.solarmax.heatSinkTemperature.description = Heat Sink Temperature in degrees celcius +channel-type.solarmax.heatSinkTemperature.description = Heat sink temperature in degrees Celsius channel-type.solarmax.lastUpdated.label = Last Updated channel-type.solarmax.lastUpdated.description = Time when data was last read from the device channel-type.solarmax.operatingHours.label = Operating Hours -channel-type.solarmax.operatingHours.description = Operating Hours since recording began in H +channel-type.solarmax.operatingHours.description = Operating hours since recording began in h channel-type.solarmax.startups.label = Startups channel-type.solarmax.startups.description = Number of times the device has started diff --git a/bundles/org.openhab.binding.solarwatt/src/main/resources/OH-INF/config/config.xml b/bundles/org.openhab.binding.solarwatt/src/main/resources/OH-INF/config/config.xml index 77147df484a15..349c891143dc3 100644 --- a/bundles/org.openhab.binding.solarwatt/src/main/resources/OH-INF/config/config.xml +++ b/bundles/org.openhab.binding.solarwatt/src/main/resources/OH-INF/config/config.xml @@ -7,7 +7,7 @@ - Hostname or IP address of the Solarwatt Energymanager. + Hostname or IP address of the Solarwatt energy manager. network-address @@ -29,7 +29,7 @@ - GUID of the device as used by the Solarwatt Energymanager. + GUID of the device as used by the Solarwatt energy manager. diff --git a/bundles/org.openhab.binding.solarwatt/src/main/resources/OH-INF/i18n/solarwatt.properties b/bundles/org.openhab.binding.solarwatt/src/main/resources/OH-INF/i18n/solarwatt.properties index e02d149b11df5..3121691fba703 100644 --- a/bundles/org.openhab.binding.solarwatt/src/main/resources/OH-INF/i18n/solarwatt.properties +++ b/bundles/org.openhab.binding.solarwatt/src/main/resources/OH-INF/i18n/solarwatt.properties @@ -27,9 +27,9 @@ thing-type.solarwatt.smartheater.description = Smart heater for the production o # thing types config thing-type.config.solarwatt.device.guid.label = Device GUID -thing-type.config.solarwatt.device.guid.description = GUID of the device as used by the Solarwatt Energymanager. +thing-type.config.solarwatt.device.guid.description = GUID of the device as used by the Solarwatt energy manager. thing-type.config.solarwatt.energymanager.hostname.label = Hostname -thing-type.config.solarwatt.energymanager.hostname.description = Hostname or IP address of the Solarwatt Energymanager. +thing-type.config.solarwatt.energymanager.hostname.description = Hostname or IP address of the Solarwatt energy manager. thing-type.config.solarwatt.energymanager.refresh.label = Refresh Interval thing-type.config.solarwatt.energymanager.refresh.description = Interval between updates to device data (in seconds). thing-type.config.solarwatt.energymanager.rescan.label = Device Rescan Interval diff --git a/bundles/org.openhab.binding.somfymylink/src/main/resources/OH-INF/thing/thing-types.xml b/bundles/org.openhab.binding.somfymylink/src/main/resources/OH-INF/thing/thing-types.xml index 7da1f78d5a6c7..a0b1788c5f9ec 100644 --- a/bundles/org.openhab.binding.somfymylink/src/main/resources/OH-INF/thing/thing-types.xml +++ b/bundles/org.openhab.binding.somfymylink/src/main/resources/OH-INF/thing/thing-types.xml @@ -10,7 +10,7 @@ Somfy MyLink bridge enabling communication with Somfy devices WebService - + diff --git a/bundles/org.openhab.binding.somfytahoma/README.md b/bundles/org.openhab.binding.somfytahoma/README.md index 599fe2b13ce15..531f74245c1b4 100644 --- a/bundles/org.openhab.binding.somfytahoma/README.md +++ b/bundles/org.openhab.binding.somfytahoma/README.md @@ -95,7 +95,7 @@ The gateway support for the developer mode is limited as well, so far Connexoon |------------|--------------|-------------------|------------------------------| | Device URL | url | Required | The identifier of the device | -To retrieve the url parameter or gateway id, just add the automatically discovered device from your inbox and copy its values from Thing edit page. (the url parameter is visible on edit page only) +To retrieve the url parameter or gateway id, just add the automatically discovered device from your inbox and copy its values from Thing edit page (the url parameter is visible on edit page only). Please see the example below. ## Channels diff --git a/bundles/org.openhab.binding.sonyaudio/README.md b/bundles/org.openhab.binding.sonyaudio/README.md index 13653f2330533..447d2ec385723 100644 --- a/bundles/org.openhab.binding.sonyaudio/README.md +++ b/bundles/org.openhab.binding.sonyaudio/README.md @@ -14,7 +14,7 @@ At the moment, the devices supported by this binding are: - HT-ZF9 - HT-MT500 -When defined in a \*.things file, the specific Thing types +When defined in a `.things` file, the specific Thing types STR-DN1080, HT-ST5000, HT-ZF9, HT-Z9F, HT-CT800, HT-MT500, and SRS-ZR5 should be used. Please note that these Thing types are case-sensitive (define them in uppercase). diff --git a/bundles/org.openhab.binding.sonyprojector/README.md b/bundles/org.openhab.binding.sonyprojector/README.md index 1929d3fbb25a3..94b4b49e75ca6 100644 --- a/bundles/org.openhab.binding.sonyprojector/README.md +++ b/bundles/org.openhab.binding.sonyprojector/README.md @@ -100,7 +100,7 @@ Serial or Serial over IP connections must be configured manually. ## Binding Configuration There are no global binding configuration settings. -All configuration is done via Thing parameters. +All configuration is done via Thing configuration parameters. ## Thing Configuration diff --git a/bundles/org.openhab.binding.souliss/src/main/resources/OH-INF/addon/addon.xml b/bundles/org.openhab.binding.souliss/src/main/resources/OH-INF/addon/addon.xml index fef41e95186d9..a911adf084043 100644 --- a/bundles/org.openhab.binding.souliss/src/main/resources/OH-INF/addon/addon.xml +++ b/bundles/org.openhab.binding.souliss/src/main/resources/OH-INF/addon/addon.xml @@ -5,7 +5,7 @@ binding Souliss Binding - This is the openHAB binding for Souliss, an Arduino-based smart home framework. + This is the binding for Souliss, an Arduino-based smart home framework. local diff --git a/bundles/org.openhab.binding.souliss/src/main/resources/OH-INF/i18n/souliss.properties b/bundles/org.openhab.binding.souliss/src/main/resources/OH-INF/i18n/souliss.properties index 684bd963ef883..df1490b9cece1 100644 --- a/bundles/org.openhab.binding.souliss/src/main/resources/OH-INF/i18n/souliss.properties +++ b/bundles/org.openhab.binding.souliss/src/main/resources/OH-INF/i18n/souliss.properties @@ -1,7 +1,7 @@ # add-on addon.souliss.name = Souliss Binding -addon.souliss.description = This is the openHAB binding for Souliss, an Arduino-based smart home framework. +addon.souliss.description = This is the binding for Souliss, an Arduino-based smart home framework. # thing types @@ -91,7 +91,7 @@ thing-type.souliss.topic.description = Look at: Souliss Wiki, Peer 2 Peer Commun thing-type.config.souliss.gateway.gatewayLanAddress.label = IPv4 Address thing-type.config.souliss.gateway.gatewayLanAddress.description = LAN IP address (mandatory) thing-type.config.souliss.gateway.gatewayPortNumber.label = Gateway Port -thing-type.config.souliss.gateway.gatewayPortNumber.description = UDP port of the gateway (default 230). +thing-type.config.souliss.gateway.gatewayPortNumber.description = UDP port of the gateway. thing-type.config.souliss.gateway.gatewayWanAddress.label = IPv4 WAN Address thing-type.config.souliss.gateway.gatewayWanAddress.description = WAN hostname or IP in case of external network access thing-type.config.souliss.gateway.healthyInterval.label = Healthy Interval diff --git a/bundles/org.openhab.binding.souliss/src/main/resources/OH-INF/thing/thing-types.xml b/bundles/org.openhab.binding.souliss/src/main/resources/OH-INF/thing/thing-types.xml index 658063a959ad8..89009539513aa 100644 --- a/bundles/org.openhab.binding.souliss/src/main/resources/OH-INF/thing/thing-types.xml +++ b/bundles/org.openhab.binding.souliss/src/main/resources/OH-INF/thing/thing-types.xml @@ -27,8 +27,7 @@ - UDP port of the gateway (default 230). - + UDP port of the gateway. true 230 true From 531a30d46e354c654b97d03ec6edf78e9d4aaecc Mon Sep 17 00:00:00 2001 From: Leo Siepel Date: Tue, 6 Jan 2026 19:33:33 +0100 Subject: [PATCH 13/23] Review comments Signed-off-by: Leo Siepel --- bundles/org.openhab.binding.shelly/README.md | 38 ++++++++++---------- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/bundles/org.openhab.binding.shelly/README.md b/bundles/org.openhab.binding.shelly/README.md index 8d1af850cbff1..c658c2fc91342 100644 --- a/bundles/org.openhab.binding.shelly/README.md +++ b/bundles/org.openhab.binding.shelly/README.md @@ -622,7 +622,7 @@ The Thing id is derived from the service name, so that's the reason why the Thin | | totalKWH | Number | yes | Total energy consumption in kWh since the device powered up (resets on restart) | | | returnedKWH | Number | yes | Total returned energy, kWh | | | reactiveWatts | Number | yes | Instantaneous reactive power, Watts | -| | returnedKWH | Number | yes | Total returned energy, kWh | +| | voltage | Number | yes | RMS voltage, Volts | | | current | Number | yes | Current in A | | | powerFactor | Number | yes | Power Factor in percent | | | resetTotals | Switch | yes | ON: Resets total values for the power meter | @@ -631,7 +631,7 @@ The Thing id is derived from the service name, so that's the reason why the Thin | | totalKWH | Number | yes | Total energy consumption in kWh since the device powered up (resets on restart) | | | returnedKWH | Number | yes | Total returned energy, kWh | | | reactiveWatts | Number | yes | Instantaneous reactive power, Watts | -| | returnedKWH | Number | yes | Total returned energy, kWh | +| | voltage | Number | yes | RMS voltage, Volts | | | current | Number | yes | Current in A | | | powerFactor | Number | yes | Power Factor in percent | | | resetTotals | Switch | yes | ON: Resets total values for the power meter | @@ -640,7 +640,7 @@ The Thing id is derived from the service name, so that's the reason why the Thin | | totalKWH | Number | yes | Total energy consumption in kWh since the device powered up (resets on restart) | | | returnedKWH | Number | yes | Total returned energy, kWh | | | reactiveWatts | Number | yes | Instantaneous reactive power, Watts | -| | returnedKWH | Number | yes | Total returned energy, kWh | +| | voltage | Number | yes | RMS voltage, Volts | | | current | Number | yes | Current in A | | | powerFactor | Number | yes | Power Factor in percent | | | resetTotals | Switch | yes | ON: Resets total values for the power meter | @@ -1325,16 +1325,16 @@ Refer to [Smartify Roller Shutters with openHAB and Shelly](doc/UseCaseSmartRoll | | timerActive | Switch | yes | Relay #1: ON: An auto-on/off timer is active | | meter1 | currentWatts | Number | yes | Current power consumption in Watts | | | totalKWH | Number | yes | Total energy consumption in kwh since the device powered up (resets on restart) | -| | returnedKWH | Number | yes | Total returned energy, kwh | -| | reactiveWatts | Number | yes | Instantaneous reactive power, Watts | | | returnedKWH | Number | yes | Total returned energy, kWh | +| | reactiveWatts | Number | yes | Instantaneous reactive power, Watts | +| | voltage | Number | yes | RMS voltage, Volts | | | powerFactor | Number | yes | Power Factor in percent | | | lastUpdate | DateTime | yes | Timestamp of the last measurement | | meter2 | currentWatts | Number | yes | Current power consumption in Watts | | | totalKWH | Number | yes | Total energy consumption in kwh since the device powered up (resets on restart) | -| | returnedKWH | Number | yes | Total returned energy, kwh | -| | reactiveWatts | Number | yes | Instantaneous reactive power, Watts | | | returnedKWH | Number | yes | Total returned energy, kWh | +| | reactiveWatts | Number | yes | Instantaneous reactive power, Watts | +| | voltage | Number | yes | RMS voltage, Volts | | | powerFactor | Number | yes | Power Factor in percent | | | lastUpdate | DateTime | yes | Timestamp of the last measurement | @@ -1353,16 +1353,16 @@ Refer to [Smartify Roller Shutters with openHAB and Shelly](doc/UseCaseSmartRoll | | timerActive | Switch | yes | Relay #1: ON: An auto-on/off timer is active | | meter1 | currentWatts | Number | yes | Current power consumption in Watts | | | totalKWH | Number | yes | Total energy consumption in kwh since the device powered up (resets on restart) | -| | returnedKWH | Number | yes | Total returned energy, kwh | -| | reactiveWatts | Number | yes | Instantaneous reactive power, Watts | | | returnedKWH | Number | yes | Total returned energy, kWh | +| | reactiveWatts | Number | yes | Instantaneous reactive power, Watts | +| | voltage | Number | yes | RMS voltage, Volts | | | current | Number | yes | Current in A | | | powerFactor | Number | yes | Power Factor in percent | | | resetTotals | Switch | yes | ON: Resets total values for the power meter | | | lastUpdate | DateTime | yes | Timestamp of the last measurement | | meter2 | currentWatts | Number | yes | Current power consumption in Watts | | | totalKWH | Number | yes | Total energy consumption in kwh since the device powered up (resets on restart) | -| | returnedKWH | Number | yes | Total returned energy, kwh | +| | returnedKWH | Number | yes | Total returned energy, kWh | | | reactiveWatts | Number | yes | Instantaneous reactive power, Watts | | | returnedKWH | Number | yes | Total returned energy, kWh | | | current | Number | yes | Current in A | @@ -1371,9 +1371,9 @@ Refer to [Smartify Roller Shutters with openHAB and Shelly](doc/UseCaseSmartRoll | | lastUpdate | DateTime | yes | Timestamp of the last measurement | | meter3 | currentWatts | Number | yes | Current power consumption in Watts | | | totalKWH | Number | yes | Total energy consumption in kwh since the device powered up (resets on restart) | -| | returnedKWH | Number | yes | Total returned energy, kwh | -| | reactiveWatts | Number | yes | Instantaneous reactive power, Watts | | | returnedKWH | Number | yes | Total returned energy, kWh | +| | reactiveWatts | Number | yes | Instantaneous reactive power, Watts | +| | voltage | Number | yes | RMS voltage, Volts | | | current | Number | yes | Current in A | | | powerFactor | Number | yes | Power Factor in percent | | | resetTotals | Switch | yes | ON: Resets total values for the power meter | @@ -1512,7 +1512,7 @@ Channels lastEvent and eventCount are only available if input type is set to mom | | timerActive | Switch | yes | Relay #1: ON: An auto-on/off timer is active | | meter1 | currentWatts | Number | yes | Current power consumption in Watts | | | totalKWH | Number | yes | Total energy consumption in kwh since the device powered up (resets on restart) | -| | returnedKWH | Number | yes | Total returned energy, kwh | +| | returnedKWH | Number | yes | Total returned energy, kWh | | | reactiveWatts | Number | yes | Instantaneous reactive power, Watts | | | returnedKWH | Number | yes | Total returned energy, kWh | | | powerFactor | Number | yes | Power Factor in percent | @@ -1520,7 +1520,7 @@ Channels lastEvent and eventCount are only available if input type is set to mom | | frequency | Number | yes | Measure frequency (Hz) | | meter2 | currentWatts | Number | yes | Current power consumption in Watts | | | totalKWH | Number | yes | Total energy consumption in kwh since the device powered up (resets on restart) | -| | returnedKWH | Number | yes | Total returned energy, kwh | +| | returnedKWH | Number | yes | Total returned energy, kWh | | | reactiveWatts | Number | yes | Instantaneous reactive power, Watts | | | voltage | Number | yes | RMS voltage, Volts | | | powerFactor | Number | yes | Power Factor in percent | @@ -1671,7 +1671,7 @@ There are no additional channels besides the device group. | ------ | ------------- | -------- | --------- | --------------------------------------------------------------------------------- | | meter1 | currentWatts | Number | yes | Current power consumption in Watts | | | totalKWH | Number | yes | Total energy consumption in kwh since the device powered up (resets on restart) | -| | returnedKWH | Number | yes | Total returned energy, kwh | +| | returnedKWH | Number | yes | Total returned energy, kWh | | | reactiveWatts | Number | yes | Instantaneous reactive power, Watts | | | voltage | Number | yes | RMS voltage, Volts | | | current | Number | yes | Current in A | @@ -1680,7 +1680,7 @@ There are no additional channels besides the device group. | | lastUpdate | DateTime | yes | Timestamp of the last measurement | | meter2 | currentWatts | Number | yes | Current power consumption in Watts | | | totalKWH | Number | yes | Total energy consumption in kwh since the device powered up (resets on restart) | -| | returnedKWH | Number | yes | Total returned energy, kwh | +| | returnedKWH | Number | yes | Total returned energy, kWh | | | reactiveWatts | Number | yes | Instantaneous reactive power, Watts | | | voltage | Number | yes | RMS voltage, Volts | | | current | Number | yes | Current in A | @@ -1689,7 +1689,7 @@ There are no additional channels besides the device group. | | lastUpdate | DateTime | yes | Timestamp of the last measurement | | meter3 | currentWatts | Number | yes | Current power consumption in Watts | | | totalKWH | Number | yes | Total energy consumption in kwh since the device powered up (resets on restart) | -| | returnedKWH | Number | yes | Total returned energy, kwh | +| | returnedKWH | Number | yes | Total returned energy, kWh | | | reactiveWatts | Number | yes | Instantaneous reactive power, Watts | | | voltage | Number | yes | RMS voltage, Volts | | | current | Number | yes | Current in A | @@ -1703,7 +1703,7 @@ There are no additional channels besides the device group. | ------ | ------------- | -------- | --------- | --------------------------------------------------------------------------------- | | meter1 | currentWatts | Number | yes | Current power consumption in Watts | | | totalKWH | Number | yes | Total energy consumption in kwh since the device powered up (resets on restart) | -| | returnedKWH | Number | yes | Total returned energy, kwh | +| | returnedKWH | Number | yes | Total returned energy, kWh | | | reactiveWatts | Number | yes | Instantaneous reactive power, Watts | | | voltage | Number | yes | RMS voltage, Volts | | | current | Number | yes | Current in A | @@ -1712,7 +1712,7 @@ There are no additional channels besides the device group. | | lastUpdate | DateTime | yes | Timestamp of the last measurement | | meter2 | currentWatts | Number | yes | Current power consumption in Watts | | | totalKWH | Number | yes | Total energy consumption in kwh since the device powered up (resets on restart) | -| | returnedKWH | Number | yes | Total returned energy, kwh | +| | returnedKWH | Number | yes | Total returned energy, kWh | | | reactiveWatts | Number | yes | Instantaneous reactive power, Watts | | | voltage | Number | yes | RMS voltage, Volts | | | current | Number | yes | Current in A | From acd527297aa8e502fdded9c8030ab653da688c71 Mon Sep 17 00:00:00 2001 From: Leo Siepel Date: Tue, 6 Jan 2026 19:37:24 +0100 Subject: [PATCH 14/23] Review comment Signed-off-by: Leo Siepel --- bundles/org.openhab.binding.shelly/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bundles/org.openhab.binding.shelly/README.md b/bundles/org.openhab.binding.shelly/README.md index c658c2fc91342..2fc5ff5706d59 100644 --- a/bundles/org.openhab.binding.shelly/README.md +++ b/bundles/org.openhab.binding.shelly/README.md @@ -1514,7 +1514,7 @@ Channels lastEvent and eventCount are only available if input type is set to mom | | totalKWH | Number | yes | Total energy consumption in kwh since the device powered up (resets on restart) | | | returnedKWH | Number | yes | Total returned energy, kWh | | | reactiveWatts | Number | yes | Instantaneous reactive power, Watts | -| | returnedKWH | Number | yes | Total returned energy, kWh | +| | voltage | Number | yes | RMS voltage, Volts | | | powerFactor | Number | yes | Power Factor in percent | | | lastUpdate | DateTime | yes | Timestamp of the last measurement | | | frequency | Number | yes | Measure frequency (Hz) | From 126f493da44abe30d67a75917141bc50627030c0 Mon Sep 17 00:00:00 2001 From: lsiepel Date: Tue, 6 Jan 2026 22:25:48 +0100 Subject: [PATCH 15/23] Apply suggestions from code review Co-authored-by: Jacob Laursen Signed-off-by: lsiepel --- .../resources/OH-INF/i18n/qolsysiq.properties | 8 +++---- .../src/main/resources/OH-INF/thing/panel.xml | 2 +- .../main/resources/OH-INF/thing/partition.xml | 4 ++-- .../src/main/resources/OH-INF/thing/zone.xml | 4 ++-- .../README.md | 22 +++++++++---------- bundles/org.openhab.binding.spotify/README.md | 2 +- .../resources/OH-INF/thing/thing-types.xml | 4 ++-- 7 files changed, 23 insertions(+), 23 deletions(-) diff --git a/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/i18n/qolsysiq.properties b/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/i18n/qolsysiq.properties index 441be736fb145..4ef2ea977b8c6 100644 --- a/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/i18n/qolsysiq.properties +++ b/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/i18n/qolsysiq.properties @@ -19,20 +19,20 @@ thing-type.config.qolsysiq.panel.hostname.description = Hostname or IP address o thing-type.config.qolsysiq.panel.key.label = Key thing-type.config.qolsysiq.panel.key.description = Key to access the device thing-type.config.qolsysiq.panel.port.label = Port -thing-type.config.qolsysiq.panel.port.description = The port to connect to on the panel +thing-type.config.qolsysiq.panel.port.description = The port to connect to on the panel. thing-type.config.qolsysiq.partition.armCode.label = Arm Code thing-type.config.qolsysiq.partition.armCode.description = Optional arm code to use when receiving arm commands without a code. Only required if the panel has been configured to require arm codes. Leave blank to always require a code thing-type.config.qolsysiq.partition.disarmCode.label = Disarm Code thing-type.config.qolsysiq.partition.disarmCode.description = Optional disarm code to use when receiving a disarm command without a code. Required for integrations like Alexa and Homekit who do not provide codes when disarming. Leave blank to always require a code thing-type.config.qolsysiq.partition.id.label = Partition ID -thing-type.config.qolsysiq.partition.id.description = The partition ID +thing-type.config.qolsysiq.partition.id.description = The partition ID. thing-type.config.qolsysiq.zone.id.label = Zone ID thing-type.config.qolsysiq.zone.id.description = The zone ID # channel types channel-type.qolsysiq.alarmState.label = Partition Alarm State -channel-type.qolsysiq.alarmState.description = Reports on the current alarm state, or triggers an instant alarm +channel-type.qolsysiq.alarmState.description = Reports on the current alarm state, or triggers an instant alarm. channel-type.qolsysiq.alarmState.state.option.AUXILIARY = Auxiliary channel-type.qolsysiq.alarmState.state.option.FIRE = Fire channel-type.qolsysiq.alarmState.state.option.POLICE = Police @@ -55,7 +55,7 @@ channel-type.qolsysiq.armState.command.option.DISARM = Disarm channel-type.qolsysiq.armingDelay.label = Partition Arming Delay channel-type.qolsysiq.armingDelay.description = The arming delay currently in progress channel-type.qolsysiq.contact.label = Zone Contact -channel-type.qolsysiq.contact.description = The zone contact state +channel-type.qolsysiq.contact.description = The zone contact state. channel-type.qolsysiq.errorEvent.label = Error Event channel-type.qolsysiq.errorEvent.description = Last error event message reported by the partition. Clears after 30 seconds channel-type.qolsysiq.zoneState.label = Zone State diff --git a/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/thing/panel.xml b/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/thing/panel.xml index fc39606386a2f..d005e8cc3cbab 100644 --- a/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/thing/panel.xml +++ b/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/thing/panel.xml @@ -15,7 +15,7 @@ - The port to connect to on the panel + The port to connect to on the panel. 12345 true diff --git a/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/thing/partition.xml b/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/thing/partition.xml index 3e0d70129ce4a..21f18d3f75f44 100644 --- a/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/thing/partition.xml +++ b/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/thing/partition.xml @@ -23,7 +23,7 @@ - The partition ID + The partition ID. @@ -72,7 +72,7 @@ String - Reports on the current alarm state, or triggers an instant alarm + Reports on the current alarm state, or triggers an instant alarm. Alarm Alarm diff --git a/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/thing/zone.xml b/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/thing/zone.xml index 865573843bc22..9cad0d53867a2 100644 --- a/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/thing/zone.xml +++ b/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/thing/zone.xml @@ -29,7 +29,7 @@ - The zone ID + The zone ID. @@ -58,7 +58,7 @@ Contact - The zone contact state + The zone contact state. diff --git a/bundles/org.openhab.binding.silvercrestwifisocket/README.md b/bundles/org.openhab.binding.silvercrestwifisocket/README.md index c10f751617840..434bb89cd7635 100644 --- a/bundles/org.openhab.binding.silvercrestwifisocket/README.md +++ b/bundles/org.openhab.binding.silvercrestwifisocket/README.md @@ -1,29 +1,29 @@ # Silvercrest Wi-Fi Plug Binding -This binding integrates the Silvercrest WiFi Socket SWS-A1 sold by Lidl and the EasyHome WiFi Socket DIS-124 sold by Aldi. +This binding integrates the Silvercrest Wi-Fi Socket SWS-A1 sold by Lidl and the EasyHome Wi-Fi Socket DIS-124 sold by Aldi. ## Supported Things -- Silvercrest WiFi Socket SWS-A1 - [(Owner Manual)](https://www.lidl-service.com/static/118127777/103043_FI.pdf) -- Tested with firmware version: 1.41, 1.60, 1.70 -- EasyHome WiFi Socket DIS-124 +- Silvercrest Wi-Fi Socket SWS-A1 - [(Owner Manual)](https://www.lidl-service.com/static/118127777/103043_FI.pdf) -- Tested with firmware version: 1.41, 1.60, 1.70 +- EasyHome Wi-Fi Socket DIS-124 ## Discovery -The discovery of WiFi Sockets is always running in the background. -If a command is sent to the WiFi socket using the Android/iOS app or if the physical button on the device is pressed, the device will be recognized and placed in the Inbox. +The discovery of Wi-Fi Sockets is always running in the background. +If a command is sent to the Wi-Fi socket using the Android/iOS app or if the physical button on the device is pressed, the device will be recognized and placed in the Inbox. ## Binding Configuration The binding does not require any special configuration. -The WiFi Socket should be connected to the same WiFi network. +The Wi-Fi Socket should be connected to the same Wi-Fi network. ## Thing Configuration -To configure a WiFi Socket manually, the MAC address and the vendor are required. -You can check the WiFi Socket MAC address in your router or using a mobile app. +To configure a Wi-Fi Socket manually, the MAC address and the vendor are required. +You can check the Wi-Fi Socket MAC address in your router or using a mobile app. Supported vendors are either Silvercrest (Lidl) or EasyHome (Aldi). -WiFi Socket Thing parameters: +Wi-Fi Socket Thing parameters: | Parameter ID | Parameter Type | Mandatory | Description | Default | | -------------- | -------------- | --------- | ----------------------------------------------------------------------------- | ---------------- | @@ -40,8 +40,8 @@ Thing silvercrestwifisocket:wifiSocket:lamp [ macAddress="ACCF23343C50", vendor= ## Channels -The Silvercrest WiFi Socket supports the following channel: +The Silvercrest Wi-Fi Socket supports the following channel: | Channel Type ID | Item Type | Description | |-----------------|-----------|---------------------| -| switch | Switch | WiFi Socket Switch. | +| switch | Switch | Wi-Fi Socket Switch. | diff --git a/bundles/org.openhab.binding.spotify/README.md b/bundles/org.openhab.binding.spotify/README.md index 62b2b4a957060..cecf92f97ada1 100644 --- a/bundles/org.openhab.binding.spotify/README.md +++ b/bundles/org.openhab.binding.spotify/README.md @@ -247,7 +247,7 @@ sitemap spotify label="Spotify Sitemap" { Image item=spotifyAlbumImageUrl label="Album Art" Text item=spotifyAlbumName label="Currently Played Album Name: [%s]" Text item=spotifyArtistName label="Currently Played Artist Name: [%s]" - Selection item=spotifyPlaylists label="Playlist" icon="music" + Selection item=spotifyPlaylists label="Playlist" icon="music" } Frame label="My Spotify Device 1" { diff --git a/bundles/org.openhab.binding.spotify/src/main/resources/OH-INF/thing/thing-types.xml b/bundles/org.openhab.binding.spotify/src/main/resources/OH-INF/thing/thing-types.xml index f0dc56447cc79..2f5c8ce4bf774 100644 --- a/bundles/org.openhab.binding.spotify/src/main/resources/OH-INF/thing/thing-types.xml +++ b/bundles/org.openhab.binding.spotify/src/main/resources/OH-INF/thing/thing-types.xml @@ -228,7 +228,7 @@ Status Duration - + Number:Time @@ -238,7 +238,7 @@ Status Progress - + String From 6fc69ce958c5e92710ab5a451a9b539e631af1c8 Mon Sep 17 00:00:00 2001 From: lsiepel Date: Wed, 7 Jan 2026 04:05:58 +0100 Subject: [PATCH 16/23] Update bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/thing/zone.xml Co-authored-by: Jacob Laursen Signed-off-by: lsiepel --- .../src/main/resources/OH-INF/thing/zone.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/thing/zone.xml b/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/thing/zone.xml index 9cad0d53867a2..23ae2b889ac8c 100644 --- a/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/thing/zone.xml +++ b/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/thing/zone.xml @@ -51,7 +51,7 @@ Number - The zone state + The zone state. From ad3d47ccaf8994ba38888a9a90334bff0c439eb5 Mon Sep 17 00:00:00 2001 From: lsiepel Date: Wed, 7 Jan 2026 04:07:18 +0100 Subject: [PATCH 17/23] Update bundles/org.openhab.binding.silvercrestwifisocket/README.md Co-authored-by: Jacob Laursen Signed-off-by: lsiepel --- bundles/org.openhab.binding.silvercrestwifisocket/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bundles/org.openhab.binding.silvercrestwifisocket/README.md b/bundles/org.openhab.binding.silvercrestwifisocket/README.md index 434bb89cd7635..e1543fa73e0aa 100644 --- a/bundles/org.openhab.binding.silvercrestwifisocket/README.md +++ b/bundles/org.openhab.binding.silvercrestwifisocket/README.md @@ -42,6 +42,6 @@ Thing silvercrestwifisocket:wifiSocket:lamp [ macAddress="ACCF23343C50", vendor= The Silvercrest Wi-Fi Socket supports the following channel: -| Channel Type ID | Item Type | Description | +| Channel Type ID | Item Type | Description | |-----------------|-----------|---------------------| | switch | Switch | Wi-Fi Socket Switch. | From 5f126979a936f3e7d678f68f892281885620945b Mon Sep 17 00:00:00 2001 From: lsiepel Date: Wed, 7 Jan 2026 04:07:31 +0100 Subject: [PATCH 18/23] Update bundles/org.openhab.binding.silvercrestwifisocket/README.md Co-authored-by: Jacob Laursen Signed-off-by: lsiepel --- bundles/org.openhab.binding.silvercrestwifisocket/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bundles/org.openhab.binding.silvercrestwifisocket/README.md b/bundles/org.openhab.binding.silvercrestwifisocket/README.md index e1543fa73e0aa..4b4191f943234 100644 --- a/bundles/org.openhab.binding.silvercrestwifisocket/README.md +++ b/bundles/org.openhab.binding.silvercrestwifisocket/README.md @@ -43,5 +43,5 @@ Thing silvercrestwifisocket:wifiSocket:lamp [ macAddress="ACCF23343C50", vendor= The Silvercrest Wi-Fi Socket supports the following channel: | Channel Type ID | Item Type | Description | -|-----------------|-----------|---------------------| +|-----------------|-----------|----------------------| | switch | Switch | Wi-Fi Socket Switch. | From 49f217395e1af4a0c25bcb923464800cdfc705bf Mon Sep 17 00:00:00 2001 From: lsiepel Date: Wed, 7 Jan 2026 04:07:52 +0100 Subject: [PATCH 19/23] Update bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/i18n/qolsysiq.properties Co-authored-by: Jacob Laursen Signed-off-by: lsiepel --- .../src/main/resources/OH-INF/i18n/qolsysiq.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/i18n/qolsysiq.properties b/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/i18n/qolsysiq.properties index 4ef2ea977b8c6..611f77fc2b8ef 100644 --- a/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/i18n/qolsysiq.properties +++ b/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/i18n/qolsysiq.properties @@ -27,7 +27,7 @@ thing-type.config.qolsysiq.partition.disarmCode.description = Optional disarm co thing-type.config.qolsysiq.partition.id.label = Partition ID thing-type.config.qolsysiq.partition.id.description = The partition ID. thing-type.config.qolsysiq.zone.id.label = Zone ID -thing-type.config.qolsysiq.zone.id.description = The zone ID +thing-type.config.qolsysiq.zone.id.description = The zone ID. # channel types From 0782dd4764e6f0894ea0f7868a570c758ee73be2 Mon Sep 17 00:00:00 2001 From: Jacob Laursen Date: Wed, 7 Jan 2026 09:12:15 +0100 Subject: [PATCH 20/23] Update bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/i18n/qolsysiq.properties Signed-off-by: Jacob Laursen --- .../src/main/resources/OH-INF/i18n/qolsysiq.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/i18n/qolsysiq.properties b/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/i18n/qolsysiq.properties index 611f77fc2b8ef..46426463fe6cb 100644 --- a/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/i18n/qolsysiq.properties +++ b/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/i18n/qolsysiq.properties @@ -59,7 +59,7 @@ channel-type.qolsysiq.contact.description = The zone contact state. channel-type.qolsysiq.errorEvent.label = Error Event channel-type.qolsysiq.errorEvent.description = Last error event message reported by the partition. Clears after 30 seconds channel-type.qolsysiq.zoneState.label = Zone State -channel-type.qolsysiq.zoneState.description = The zone state +channel-type.qolsysiq.zoneState.description = The zone state. channel-type.qolsysiq.zoneStatus.label = Zone Status channel-type.qolsysiq.zoneStatus.description = The zone status channel-type.qolsysiq.zoneStatus.state.option.ACTIVE = Active From 9f03786b84dfe422359d4768de250fcf46742b30 Mon Sep 17 00:00:00 2001 From: Jacob Laursen Date: Wed, 7 Jan 2026 09:12:25 +0100 Subject: [PATCH 21/23] Update bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/i18n/qolsysiq.properties Signed-off-by: Jacob Laursen --- .../src/main/resources/OH-INF/i18n/qolsysiq.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/i18n/qolsysiq.properties b/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/i18n/qolsysiq.properties index 46426463fe6cb..552305887fdf5 100644 --- a/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/i18n/qolsysiq.properties +++ b/bundles/org.openhab.binding.qolsysiq/src/main/resources/OH-INF/i18n/qolsysiq.properties @@ -61,7 +61,7 @@ channel-type.qolsysiq.errorEvent.description = Last error event message reported channel-type.qolsysiq.zoneState.label = Zone State channel-type.qolsysiq.zoneState.description = The zone state. channel-type.qolsysiq.zoneStatus.label = Zone Status -channel-type.qolsysiq.zoneStatus.description = The zone status +channel-type.qolsysiq.zoneStatus.description = The zone status. channel-type.qolsysiq.zoneStatus.state.option.ACTIVE = Active channel-type.qolsysiq.zoneStatus.state.option.CLOSED = Closed channel-type.qolsysiq.zoneStatus.state.option.OPEN = Open From 910c8b10d6addd9c83a41c95d4b896df749e321e Mon Sep 17 00:00:00 2001 From: Jacob Laursen Date: Wed, 7 Jan 2026 09:12:54 +0100 Subject: [PATCH 22/23] Update bundles/org.openhab.binding.solarforecast/src/main/resources/OH-INF/thing/fs-site-type.xml Signed-off-by: Jacob Laursen --- .../src/main/resources/OH-INF/thing/fs-site-type.xml | 1 - 1 file changed, 1 deletion(-) diff --git a/bundles/org.openhab.binding.solarforecast/src/main/resources/OH-INF/thing/fs-site-type.xml b/bundles/org.openhab.binding.solarforecast/src/main/resources/OH-INF/thing/fs-site-type.xml index 404293a47f470..9722f3f3c56d7 100644 --- a/bundles/org.openhab.binding.solarforecast/src/main/resources/OH-INF/thing/fs-site-type.xml +++ b/bundles/org.openhab.binding.solarforecast/src/main/resources/OH-INF/thing/fs-site-type.xml @@ -7,7 +7,6 @@ Site location for forecast solar public subscription - WebService From 092fec4f916a348438a69ee894d69d1fd8589c5f Mon Sep 17 00:00:00 2001 From: Leo Siepel Date: Wed, 7 Jan 2026 15:09:58 +0100 Subject: [PATCH 23/23] Spotless Signed-off-by: Leo Siepel --- .../src/main/resources/OH-INF/thing/ozw.xml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/bundles/org.openhab.binding.siemenshvac/src/main/resources/OH-INF/thing/ozw.xml b/bundles/org.openhab.binding.siemenshvac/src/main/resources/OH-INF/thing/ozw.xml index 5b6e67ed3284a..13e0f3a2dfe55 100644 --- a/bundles/org.openhab.binding.siemenshvac/src/main/resources/OH-INF/thing/ozw.xml +++ b/bundles/org.openhab.binding.siemenshvac/src/main/resources/OH-INF/thing/ozw.xml @@ -14,7 +14,8 @@ url The URL of the Siemens HVAC IP gateway. Must be in the format http://hostname/ or - https://hostname/. Don't forget the trailing '/'. + https://hostname/. + Don't forget the trailing '/'. true