openhab-addons/bundles/org.openhab.binding.tasmotaplug/README.md
lsiepel 1a42353cc9
Multiple binding markdown fixes (#17422)
Signed-off-by: Leo Siepel <leosiepel@gmail.com>
2024-09-28 17:46:53 +02:00

111 lines
5.6 KiB
Markdown

# TasmotaPlug Binding
This binding connects Tasmota flashed smart plugs with 1, 2, 3 or 4 relay channels to openHAB.
The plug must report the status of the relay via the url `http://$PLUG_IP/cm?cmnd=Power` in order for the binding to work.
The energy monitoring channels can be used if the plug reports energy status via the url `http://$PLUG_IP/cm?cmnd=Status%2010`.
See the [Tasmota Supported Devices Repository](https://templates.blakadder.com/plug.html) for a list of supported plugs.
## Supported Things
There is exactly one supported thing type, which represents any supported Tasmota smart plug.
It has the `plug` id.
Multiple Things can be added if more than one plug is to be controlled.
## Discovery
Discovery is not supported. All things must be added manually.
## Thing Configuration
At minimum, the host name must be specified.
The refresh interval and number of channels can be overridden from the default.
| Parameter | Description |
|-------------|-----------------------------------------------------------------------------------------|
| hostName | The host name or IP address of the plug. Mandatory. |
| refresh | Overrides the refresh interval of the plug status. Optional, the default is 30 seconds. |
| numChannels | Number of channels on the Tasmota Plug (1-4). Optional, the default is 1 |
| username | Username for authentication with the Tasmota Plug. Default 'admin' |
| password | Password for authentication with the Tasmota Plug, if not supplied auth is disabled. |
## Channels
The number of channels depends of on the `numChannels` configuration parameter.
Channels above the number specified are automatically removed.
Therefore `numChannels` cannot be changed upward after Thing creation.
If the number of channels must be increased, delete the Thing and re-create it with the correct number.
| Channel ID | Item Type | Description |
|----------------------|--------------------------|-------------------------------------------------|
| power | Switch | Turns the smart plug relay #1 ON or OFF |
| power2 | Switch | Turns the smart plug relay #2 ON or OFF |
| power3 | Switch | Turns the smart plug relay #3 ON or OFF |
| power4 | Switch | Turns the smart plug relay #4 ON or OFF |
| voltage | Number:ElectricPotential | Channel for output voltage measurement |
| current | Number:ElectricCurrent | Channel for output current measurement |
| watts | Number:Power | Channel for output power measurement |
| volt-ampere | Number:Power | Channel for output VA measurement |
| volt-ampere-reactive | Number:Power | Channel for output VAr measurement |
| power-factor | Number:Dimensionless | Channel for output power factor measurement |
| energy-today | Number:Energy | Channel for output energy today measurement |
| energy-yesterday | Number:Energy | Channel for output energy yesterday measurement |
| energy-total | Number:Energy | Channel for output energy total measurement |
| energy-total-start | DateTime | Channel for output energy total start date/time |
## Full Example
tasmotaplug.things:
```java
tasmotaplug:plug:plug1 "Plug 1" [ hostName="192.168.10.1", refresh=30 ]
tasmotaplug:plug:plug2 "Plug 2" [ hostName="myplug2", refresh=30 ]
```
tasmotaplug.items:
```java
Switch Plug1 "Plug 1 Power" { channel="tasmotaplug:plug:plug1:power" }
Number:ElectricPotential Voltage { channel="tasmotaplug:plug:plug1:voltage" }
Number:ElectricCurrent Current { channel="tasmotaplug:plug:plug1:current" }
Number:Power Watts { channel="tasmotaplug:plug:plug1:watts" }
Number:Power VoltAmpere { channel="tasmotaplug:plug:plug1:volt-ampere" }
Number:Power VoltAmpereReactive { channel="tasmotaplug:plug:plug1:volt-ampere-reactive" }
Number PowerFactor { channel="tasmotaplug:plug:plug1:power-factor" }
Number:Energy EnergyToday { channel="tasmotaplug:plug:plug1:energy-today" }
Number:Energy EnergyYesterday { channel="tasmotaplug:plug:plug1:energy-yesterday" }
Number:Energy EnergyTotal { channel="tasmotaplug:plug:plug1:energy-total" }
DateTime EnergyTotalStart "Total Start [%s]" { channel="tasmotaplug:plug:plug1:energy-total-start" }
Switch Plug2a "4ch Power 1" { channel="tasmotaplug:plug:plug2:power" }
Switch Plug2b "4ch Power 2" { channel="tasmotaplug:plug:plug2:power2" }
Switch Plug2c "4ch Power 3" { channel="tasmotaplug:plug:plug2:power3" }
Switch Plug2d "4ch Power 4" { channel="tasmotaplug:plug:plug2:power4" }
```
tasmotaplug.sitemap:
```perl
sitemap tasmotaplug label="My Tasmota Plugs" {
Frame label="Plugs" {
Switch item=Plug1
// Energy monitoring
Text item=Voltage
Text item=Current
Text item=Watts
Text item=VoltAmpere
Text item=VoltAmpereReactive
Text item=PowerFactor
Text item=EnergyToday
Text item=EnergyYesterday
Text item=EnergyTotal
Text item=EnergyTotalStart
Switch item=Plug2a
Switch item=Plug2b
Switch item=Plug2c
Switch item=Plug2d
}
}
```