59 lines
1.8 KiB
Markdown
59 lines
1.8 KiB
Markdown
|
---
|
||
|
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"
|
||
|
}
|
||
|
}
|
||
|
```
|