05-08-2018, 11:20 AM
(This post was last modified: 05-08-2018, 11:27 AM by whozeawhat.)
OpenHAB is a JAVA-based open source automation software, http://www.openhab.org. It can run on almost all hardware, including Windows and Raspberry PI. It has apps for both android and IOS, and has a number of connection options, such as MQTT, SNMP, HTTP, and has a number of various interface/display options. Here's the summary from their website:
OpenHAB has also joined the cloud (band-wagon), and has a free, no-limits cloud service that connects and allows item values to be logged and uploaded to an external secure site, myopenhab.org.
IMHO, the documentation for version 2.x is great for the beginner but advanced subjects are difficult to locate or unavailable. OpenHAB has an active community and is actively developing new bindings (i.e., device drivers) for external connections. I found the community forum a better resource, than the online docs, but the built-in docs for the REST API are very comprehensive.
Attached is a CQC device driver for monitoring events, such as changes to an OpenHAB item's (field's) value. Other events could be monitored, but the driver does not support any other event types (yet). The driver's connection is only one-way, as any commands to the openhab instance can be completed using the REST API.
A TCP connection to the device running OpenHAB is required for the driver, since it implements a SSE (Server-side Event) protocol, where a persistent, one-way connection is created after a HTTP request.
The driver config file allows for multiple items to listened for (subscribed). Config file format, is as follows, (keyword names are not case-sensitive):
###############        CONFIG FILE - for OpenHAB Device Driver        ###############
####
#### ---- One config item per line, Use '~' for seperator. Lines with '#' will be ignored. ---- ####
####
# PollInterval will polling define interval, in milliseconds, default is 500
PollInterval~250
# Add additional custom fields on seperate lines, driver requires at least 1
ItemChange~someItemName
ITEMCHANGE~anotherItemName
itemchange~yetAnotherItemName
itemchange~AfourthItemName
# DebugEnable will dump debugging and detailed logging to a local file in MacroFileRoot
DebugEnable~False
- is designed to be absolutely vendor-neutral as well as hardware/protocol-agnostic
- can run on any device that is capable of running a JVM (Linux, Mac, Windows)
- lets you integrate an abundance of different home automation technologies into one
- has a powerful rule engine to fulfill all your automation needs
- comes with different web-based UIs as well as native UIs for iOS and Android
- is fully open source
- is maintained by a passionate and growing community
- is easily extensible to integrate with new systems and devices
- provides APIs for being integrated in other systems
OpenHAB has also joined the cloud (band-wagon), and has a free, no-limits cloud service that connects and allows item values to be logged and uploaded to an external secure site, myopenhab.org.
IMHO, the documentation for version 2.x is great for the beginner but advanced subjects are difficult to locate or unavailable. OpenHAB has an active community and is actively developing new bindings (i.e., device drivers) for external connections. I found the community forum a better resource, than the online docs, but the built-in docs for the REST API are very comprehensive.
Attached is a CQC device driver for monitoring events, such as changes to an OpenHAB item's (field's) value. Other events could be monitored, but the driver does not support any other event types (yet). The driver's connection is only one-way, as any commands to the openhab instance can be completed using the REST API.
A TCP connection to the device running OpenHAB is required for the driver, since it implements a SSE (Server-side Event) protocol, where a persistent, one-way connection is created after a HTTP request.
The driver config file allows for multiple items to listened for (subscribed). Config file format, is as follows, (keyword names are not case-sensitive):
###############        CONFIG FILE - for OpenHAB Device Driver        ###############
####
#### ---- One config item per line, Use '~' for seperator. Lines with '#' will be ignored. ---- ####
####
# PollInterval will polling define interval, in milliseconds, default is 500
PollInterval~250
# Add additional custom fields on seperate lines, driver requires at least 1
ItemChange~someItemName
ITEMCHANGE~anotherItemName
itemchange~yetAnotherItemName
itemchange~AfourthItemName
# DebugEnable will dump debugging and detailed logging to a local file in MacroFileRoot
DebugEnable~False