# BSB-LAN Binding
![](/logos/bsblan.png)
This binding uses the REST API of BSB-LPB-PPS-LAN (opens new window) to obtain data from the device.
# Supported Things
Currently the binding supports the following thing types:
Thing Type | Description |
---|---|
bridge | Represents the BSB-LAN device. |
parameter | Represents a single parameter available at the BSB-LAN device. |
# Discovery
There is no discovery implemented. You have to create your Things manually and specify the hostname/IP of the BSB-LAN device in the Bridge.
# Binding Configuration
The binding has no configuration options, all configuration is done at Thing level.
# Thing Configuration
# Bridge Thing Configuration
Property | Default | Required | Type | Description |
---|---|---|---|---|
host | - | Yes | String | The hostname or IP address of the BSB-LAN device. |
port | 80 | No | Integer | The port where the BSB-LAN device is listening. |
passkey | - | No | String | The passkey required to access the BSB-LAN device. |
username | - | No | String | The username required to access the BSB-LAN device (when using HTTP Basic Authentication). |
password | - | No | String | The password required to access the BSB-LAN device (when using HTTP Basic Authentication). |
refreshInterval | 60 | No | Integer | Specifies the refresh (poll) interval in seconds. Minimum value: 5s |
# Parameter Thing Configuration
Property | Default | Required | Type | Description |
---|---|---|---|---|
id | - | Yes | Integer | Specific parameter identifier (numeric value) |
setId | value of id | No | Integer | Parameter identifier used for set requests (numeric value). If not specified it falls back to the value of the id property. |
setType | SET | No | String | Message type used for set requests. Possible values are: INF or SET .If not specified or unknown it falls back to SET . |
Note: If you would also like to use the binding to set parameter values, ensure you have flashed the BSB-LAN adapter in write mode (see your BSB_lan_config.h
)
# Channels
# Parameter Thing Channels
Channel ID | Item Type | Description |
---|---|---|
name | String | Name of the parameter as provided by the BSB-LAN device. |
number-value | Number | Value of the parameter converted to a numerical value (if possible). The value is published as DecimalType(int) for values of datatype DT_ENUM and DecimalType(double) otherwise. |
string-value | String | Value of the parameter as provided by the BSB-LAN device. |
switch-value | Switch | Value of the parameter.0 is interpreted as OFF , everything else as ON . |
unit | String | Unit as provided by the BSB-LAN device (HTML unescaping applied). |
description | String | Description as provided by the BSB-LAN device. |
datatype | Number | Datatype as provided by the BSB-LAN device. Possible values are currently0 for DT_VALS : plain value1 for DT_ENUM : value (8/16 Bit) followed by space followed by text2 for DT_BITS : bit value followed by bitmask followed by text3 for DT_WDAY : weekday4 for DT_HHMM : hour:minute5 for DT_DTTM : date and time6 for DT_DDMM : day and month7 for DT_STRN : String8 for DT_DWHM : PPS time (day of week, hour:minute) |
# Full Example
bsblan.things:
Bridge bsblan:bridge:heating [host="192.168.1.100", refreshInterval=30, username="atari", password="800xl"] {
Thing parameter p700 [id=700]
Thing parameter p710 [id=710]
Thing parameter p8730 [id=8730]
}
bsblan.items:
Number BsbParameter700NumberValue { channel="bsblan:parameter:heating:p700:number-value" }
Number BsbParameter710NumberValue { channel="bsblan:parameter:heating:p710:number-value" }
String BsbParameter8730Description { channel="bsblan:parameter:heating:p8730:description" }
bsblan.sitemap:
sitemap bsblan label="BSB-LAN" {
Selection item=BsbParameter700NumberValue label="Operating Mode" mappings=[0="Protection", 1="Automatic", 2="Reduced", 3="Comfort"] icon="heating"
Setpoint item=BsbParameter710NumberValue label="Room Temperature Comfort Setpoint [%.1f °C]" icon="temperature" minValue=22.0 maxValue=25.0 step=0.5
Text item=BsbParameter8730Description label="Heating Circuit Pump [%s]"
}
Caught a mistake or want to contribute to the documentation? Edit this page on GitHub (opens new window)