openhab-docs/_addons_bindings/serialbutton/readme.md

59 lines
1.8 KiB
Markdown
Raw Normal View History

---
id: serialbutton
label: Serial Button
title: Serial Button - Bindings
type: binding
description: "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."
since: 2x
install: auto
---
<!-- Attention authors: Do not edit directly. Please add your changes to the appropriate source repository -->
{% include base.html %}
# 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.
## Supported Things
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.
Using the default toggle profile, this means that you can use this channel to toggle any Switch item through the button.
## Full Example
demo.things:
```
serialbutton:button:mybutton "My Button" [ port="/dev/ttyS0" ]
```
demo.items:
```
Switch MyLight { channel="serialbutton:button:mybutton:button" }
```
_Note:_ This is a trigger channel, so you will most likely bind a second (state) channel to your item, which will control your physical light, so you might end up with the following, if you want to use your button with a Hue bulb:
```
Switch MyLight { channel="hue:0210:1:bulb1:color,serialbutton:button:mybutton:button" }
```
demo.sitemap:
```
sitemap demo label="Main Menu"
{
Frame {
Switch item=MyLight label="My Light"
}
}
```