• You've been granted Beta access to this site, allowing you to explore some of the new features while they're still under construction. More information can be found in the Beta forum.

OpenHab OmniLink Bindings

pete_c

Guru
Started a new thread here relating to the use of Openhab and specifically the OmniLink Binding.
 
This is a OpenHab binding for HAI/Leviton Omni and Lumina home automation controllers.
 
Release Notes 1.6
 
1.7 Release stuff
 
Introduction

This is a OpenHab binding for HAI/Leviton Omni and Lumina home automation controllers.

The HAI/Leviton Omni is a popular home automation system in the US. At Its core the Omni is a hardware board that provides security and access features. It connects to many other devices through serial ports or relays and exposes them through a single TCP based API.

The binding is fairly complete and supports the following functionality.

    Auto item discovery and site map generation
        if enabled, upon connect the binding will discover all devices on a system and print out to the log a complete items list as well as a crude site map file.
    Items
        Security
            Alarm status monitoring (burglary, fire, police, etc..)
            Alarm mode activation (Off/Day/Night/Away/Vacation)
            Door, Window, Fire and CO2 contacts
        Lights
            On, Off and Dimming commands
            UPB and HLC rooms
            UPB Scenes
        Thermostats
            Cool and heat set points
            System modes (off, cool, heat, auto)
            Fan modes
            Celsius and Fahrenheit support
            Auxiliary temperature and humidity sensors.
        Audio Controls
            Track and Artist info
            Key commands (play, pause, etc..)
            source inputs
        Buttons/Macros
        Supported Hardware (connected directly through a Omni or Lumina Panel)
            Z-Wave (lighting and thermostats)
            X10
            Lightolier Compose PLC
            UPB (lighting)
            NuVo (AudioVideo)
            Russound (AudioVideo)
            HAI HiFI (AudioVideo)
            Xantech (AudioVideo)
            Speakercraft (AudioVideo)
            Proficient(AudioVideo)
            HAI Sensors and Thermostats
 
Installation

Copy the binding jar (org.openhab.omnilink*.jar) to the addons directory

add the following to your openhab.cfg
 

#################################Omnilink##################################################
#
#Enter the port (4369) host ip or name and the two crypto keys for your omni panel.  The
#two keys may be found in the installer menu on a HAI keypad or touchscreen. Each key is
#16 hex characters in pairs separated by colons (aa:bb:cc)
#
#if generateItems is set to true then the binding will print all known items and a sample
#sitemap to the log file (INFO).  Useful when setting up for the first time.
#
omnilink:port=4369
omnilink:host=panel.yourdomain.com
omnilink:key1=00:AA:BB:CC:DD:EE:FF:11
omnilink:key2=00:AA:BB:CC:DD:EE:FF:11
omnilink:generateItems=true *NOTE USE omnilink:generateItems=false for binding V1.7

Items

if you want to manually add a item, the following types are supported:

format is {omnilink:"type:number"}

some types can be read (get) or read and set (get/set)

    unit (get/set)
        Dimmer
        Switch
        String (will display on,off,level or scene, can be sent a scene command like 'scene a')
    thermo_heat_point (get/set)
        Number
    thermo_cool_point (get/set)
        Number
    thermo_system_mode (get/set)
        Number ([0"=Off, "1"=Heat, "2"=Cool,"3"=Auto,"4"=Emergency)
    thermo_fan_mode (get/set)
        Number ("0"=Auto, "1"=On, "2"=Cycle)
        Switch
    thermo_hold_mode (get/set)
        Number ("0"=Off, "1"=On)
        Switch
    thermo_temp (get)
        Number
    zone_status_current (get)
        Contact
    zone_status_latched (get)
        String
    zone_status_arming (get)
        String
    zone_status_all (get)
        String
    area_status_mode (get/set)
        String ( "Day"="Day","Night"="Night", "Away"="Away","Vacation"="Vacation")
    area_status_alarm (get)
        String
    area_status_exit_delay (get)
        Number
    area_status_entry_delay (get)
        Number
    area_status_exit_timer (get)
        Number
    area_status_entry_timer (get)
        Number
    aux_status (get)
        Number
    aux_current (get)
        Number
    aux_low (get)
        Number
    aux_hi (get)
        Number
    audiozone_power (get/set)
        Switch
        Number
    audiozone_source (get/set)
        Number
    audiozone_volume (get/set)
        Number
    audiozone_mute (get/set)
        Switch
        Number
    audiozone_key (get/set)
        Number
    audiozone_text (get)
        String
    audiozone_field1 (get)
        String
    audiozone_field2 (get)
        String
    audiozone_field3 (get)
        String
    audiosource_text (get)
        String
    audiosource_field1 (get)
        String
    audiosource_field2 (get)
        String
    audiosource_field3 (get)
        String
    button (set)
        String (send any non empty string to push)

The two keys are hex characters separated by colons, they can be found in the installer menu on your panel.

if generateItems is true then a items configuration and simple sitemap will be printed to the log. This is useful for an initial setup, but adds a little time to the binding startup.
 
Item Examples
 
Dimmer for unit 2:
 
Dimmer Lights_Kitchen_Lights_Switch "Lights [%d%%]" (Lights_Kitchen)
{omnilink="unit:2"}
 
Thermostat 1:

Number Thermostats_MasterBed_Temp "Temperature [%d °F]" (Thermostats_MasterBed) {omnilink="thermo_temp:1"}
Number Thermostats_MasterBed_CoolPoint "Cool Point [%d°F]" (Thermostats_MasterBed) {omnilink="thermo_cool_point:1"}
Number Thermostats_MasterBed_HeatPoint "Heat Point [%d°F]" (Thermostats_MasterBed) {omnilink="thermo_heat_point:1"}
Number Thermostats_MasterBed_System "System Mode [%d]" (Thermostats_MasterBed) {omnilink="thermo_system_mode:1"}
Number Thermostats_MasterBed_Fan "System Fan [%d]" (Thermostats_MasterBed) {omnilink="thermo_fan_mode:1"}
Number Thermostats_MasterBed_Hold "System Hold [%d]" (Thermostats_MasterBed) {omnilink="thermo_hold_mode:1"}
 
Personally here have OpenHab 1.6 installed and playing with OmniLink Binding version 1.7.
 
Thank-you Bob. 
 
He suggested to change omnilink:generateItems=true to false.
 
Works with the 1.70 binding file above. 
 
I haven't been on the Google OpenHab forum in a while and last time I looked I saw no posts relating to the Omnilink binding.
 
Still wondering though about my temperature / temperature / humdity sensors.
 
Do you have a thermostat connected to your OPII? 
 
OpenHabOmnistat.jpg
 
Running it on an Ubuntu 32 bit LTS light Atom.  Does fine.  Faster on 64 Ubuntu Server.
 
mainmenu.jpg
 

BobS0327

Active Member
 
Still wondering though about my temperature / temperature / humdity sensors.
 
Do you have a thermostat connected to your OPII?
 
I have an old RC80 thermostat connected to my OPII. 
 
I'm assuming that your wondering how to get temp/sensor values from the runtime and how to issue thermostat commands to OPII via the runtime.
Unfortunately,  I'm a newbie  Openhab learner and I don't have a good grasp of the workings of Openhab.  But I'll post any relevant, helpful info I come across as I implement the system.
 

pete_c

Guru
I'm assuming that your wondering how to get temp/sensor values from the runtime
 
Yes
 
and how to issue thermostat commands to OPII via the runtime.
 
I can do that just fine.
 
Thank-you Bob.
 
My temperature and combo temperature / humidity sensors just come up as zones right now.  Playing some today with it.
 
Found it.   Never paid attention to Auxiliary temperature and humidity sensors
 
* Thermostats
* Cool and heat set points
* System modes (off, cool, heat, auto)
* Fan modes
* Celsius and Fahrenheit support
* Auxiliary temperature and humidity sensors.
         
* aux_status (get)
* Number
* aux_current (get)
* Number
* aux_low (get)
* Number
* aux_hi (get)
 

jake92

New Member
I am able to read the auxillary temp/humidity sensors by doing the following.
 
In the .items file.
 
Number HVAC_OutsideHumidity_Current "Humidity: [%d]" (gHumidity, gDeck) {omnilink="aux_current:17"}
Number HVAC_OutsideTemp_Current "Temp: [%d °F]" (gTemperature, gDeck) {omnilink="aux_current:18"}
 
Number HVAC_BsmtHumidity_Current "Humidity: [%d]" (gHumidity, gBasementEastRoom) {omnilink="aux_current:19"}
Number HVAC_BsmtTemp_Current "Temp: [%d °F]" (gTemperature, gBasementEastRoom) {omnilink="aux_current:20"}
 
 
In .sitemap file.
 

Text label="Basement Temp  [%d°F]" item=HVAC_BsmtTemp_Current icon="temperature"
Text label="Basement Humidity  [%d%%]" item=HVAC_BsmtHumidity_Current icon="temperature"
Text label="Outside Temp  [%d°F]" item=HVAC_OutsideTemp_Current icon="temperature"
Text label="Outside Humidity  [%d%%]" item=HVAC_OutsideHumidity_Current icon="temperature"
 

I hope this helps.
 

pete_c

Guru
I initially just added the above stuff modifying it for current zones utilized for aux temperature / humidity sensors. 
 
I was able to see them but trashed everything except for my lights and thermostats and aux sensors.
 
 
OK created a room under Rooms called HVAC.  Put Omnistat, temperature and combo sensors in that room.  I am only using the IP Cameras pieces of the Extended Setup.
 
Is this documented anywhere? 
 

pete_c

Guru
Nothing there relating to the new OmniLink bindings stuff here and here well and the 1.7 Omnilink bindings specfically.
 
The old stuff (OpenHab1.6 / Omnilink binding 1.61 works fine).
 
I did start to add more rooms to my OPII configuration (eats more memory space on the OPII).
 

edwardt

New Member
I am having issues reading the high and low setpoints for my HAI humidity sensor.  The sensor is located at zone 10.  Below is my .items code.  When i use this code, it only displays the current humidity for all three tags.  I cannot get it to display the setpoints.  My guess is that i'm using the incorrect syntax possibly.
 
I appreciate the help.
 

Number humidityCurrent "Humidity: [%d]" (MasterBathroom) {omnilink="aux_current:10"}
Number humidityHigh "Humidity High: [%d]" (MasterBathroom) {omnilink="aux_hi:10"}
Number humidityLow "Humidity Low: [%d]" (MasterBathroom) {omnilink="aux_low:10"}

 
 

pete_c

Guru
Here quit playing with it when the version was upgraded and no more answers were provided about the upgrade on Google forums.
 
Personally here even helped the author a bit relating to testing stuff. 
 

oakguy

New Member
Guys, I had no trouble with lights which can be relatively ubiquitous, but I'm having trouble adding security to my Openhab items file:
 
I can read the mode properly:

String Areas_Main_Mode "Mode: [%s]" (Security) {omnilink="area_status_mode:1"}
 
 
However, building the item entry for switching between the "night", "vacation", etc is eluding me.
 
I have tried this entry but getting nothing:
Switch area_status_mode (get/set) String ( "Day"="Day","Night"="Night", "Away"="Away","Vacation"="Vacation")
 
 
Any ideas to get me started is appreciated!
 

 

pete_c

Guru
Welcome to the Cocoontech forum oakguy!
 
I haven't played with it for a while.  That said I will start an openHAB community post about your issues.  I am Pete there too.
 
Here is the link...start asking your question right here
 
HAI OmniLink bindings HELP
 
Dan has replied to my post and I posted your issue.
 

pete_c

Guru
Just an update to this post relating to the OpenHAB OmniLink bindings.
 
The original author of the OpenHab OmniLink bindings is Digital Dan.
 
DigitalDan no longer is using the OmniLink bindings.
 
OpenHab Community Post
 
I sold my house with the Omni setup about 2 years ago. In my new house I decided to go with all zwave for lights/hvac/locks, sonos for audio (miss my russound equipment!), and a honeywell alarm system ( builder put this in, not my choice). OH now runs everything directly.
 
I originally played with it in 2014 and it worked for me.   It has not been updated since 2014. 
 
Is there anyone here on the Cocoontech forum that would be interested in putting on DigitalDan's OmniLink binding hat on?
 
I am not sure of the best way to word this.
 
Top