Skip to content
Seneye edited this page May 12, 2023 · 7 revisions

Introduction

This document details how to write a program to communicate and take readings with a seneye USB Device V2 (SUD). Examples in '.NET' and 'c' are provided as well as a full explanation of the output of the seneye device over USB and commands.

The SUD is a HID USB device and will output readings of:

  • in/out of water
  • pH*
  • NH3 (free ammonia)*
  • Temperature
  • PAR**
  • LUX**
  • Kelvin**

*requires a seneye slide to be activated and fitted

**requires seneye Reef specification device

Enumerate the SUD

HID is widely supported with many OS and drivers are often avalible which will enumerate the SUD. The "vendor ID" (VID) and "Product ID" (PID) are required to find the SUD when it is connected on USB. These are below:

  • (VID) : 9463 0x24F7
  • (PID) : 0x2204 for v4 devices
  • (PID) : 0x2206 for v6 devices

Each seneye device has a unique 32 character serial number to identify it. This accessed by reading the USD descriptor.

The minimum firmware version is v2.0.14.

Activating A Slide

A seneye slide seneye slide is required to give pH and NH3 reading from the SUD. The slides have a working life of 30 days from when they are first submerged in water***.

For a SUD to output pH and NH3 values, a valid slide code must be [activated](Activating a seneye slide for your SUD) to it.

***The usable life of a seneye slide is 30 days. However, this is with a reading taken no more frequently than every 30 minutes. An increase in the number of readings taken over the 30 days will decrease the life of the slide. Warranties cannot be provided for the accuracy of the results for pH and NH3 if the number of readings per 30 days exceeds 1 every 30 minutes. As a rough guide the life of the slide will decrease proportually to the increase in the number of readings per month. i.e if take a reading every 15 minutes, the life of the slide will be 15 days.

Terms of Use

THE SAMPLE CODE IS PROVIDED “AS IS” AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL PAGERDUTY OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) SUSTAINED BY YOU OR A THIRD PARTY, HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT ARISING IN ANY WAY OUT OF THE USE OF THIS SAMPLE CODE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

The Code is not covered by any Seneye Service Level Agreements.

Any questions regarding the accuracy of each parameter from a SUD will require to be validated by uploading data to seneye.me using either a senye web server (SWS) or through the SCA.

Clone this wiki locally