# Seneye Binding

This binding integrates the Seneye aquarium monitoring system (opens new window).

# Introduction

The seneye monitor monitors what is happening inside your aquarium to ensure that the aquatic life remains healthy. The monitor allows you to continuously track the changes in the water parameters, alerting you to the problems before they affect the fish.

At least one Seneye monitor is required (Home / pond or reef (opens new window)) and the measure results must be synchronized to the seneye cloud by using a seneye web server (see shop (opens new window), there is one for Wi-Fi and one for a wired network). Each monitor is represented by one seneye Thing.

# Supported Things

This binding provides one Thing type: 'seneye'. You can have multiple seneye devices in your home, just make sure that your aquarium_name is properly set for each seneye Thing.

# Discovery

Discovery is not supported, the seneye monitor must be configured manually.

# Thing Configuration

The following settings must be configured in order to make the seneye binding work:

Setting
aquarium_name The name of the aquarium, as specified in seneye.me (opens new window).
Useful to distinguish multiple seneye installations.
username Your login name for seneye.me (opens new window).
password Your password for seneye.me (opens new window).
poll_time How often (in minutes) the seneye account should be checked.

# Channels

The following channels are supported:

Channel Type ID Item Type Description
temperature String The water temperature.
ph String The PH level of the water.
nh3 String The level of Ammonia (NH3) in the water.
nh4 String The level of Ammonium (NH4) in the water.
O2 String The level of oxygen in the water.
lux String The lux level of your aquarium lighting, if available.
par String The par level of your aquarium lighting, if available.
kelvin String The kelvin level of your aquarium lighting, if available.
lastreading DateTime The moment when the last readings are received from the monitor.
slideexpires DateTime The moment when the current slide will expire.
wrongslide String The Slide is not valid (normally expired).
slideserial String The serial number of the Slide.
outofwater String The Slide is reporting being out of the water.
disconnected String The Seneye has not uploaded any updates recently.

# Full example

A manual configuration through a things/seneye.things file could look like this:

Thing seneye:monitor:mySeneye "Seneye" @ "Living Room" [aquarium_name="MyAquarium", username="mail@example.com", password="xxx", poll_time=5]

A manual configuration through a demo.items file could look like this:

String mySeneye_Temperature  "Temp [%s] C"        { channel="seneye:monitor:mySeneye:temperature" }
String mySeneye_PH           "PH [%s]"            { channel="seneye:monitor:mySeneye:ph" }
String mySeneye_NH3          "NH3 [%s]"           { channel="seneye:monitor:mySeneye:nh3" }

The sitemap could look like this:

sitemap home label="My home" {
    Frame label="Aquarium" {
        Text item=mySeneye_Temperature label="Temperature [%.1f °C]" icon="temperature"
        Text item=mySeneye_PH label="PH [%.1f]" icon="water"
        Text item=mySeneye_NH3 label="NH3 [%.1f]" icon="water"
    }
}