MySensors

From ago control wiki
Jump to: navigation, search

Contents

MySensors support

You can use self built sensors from the MySensors project.

Mysensors serial gateway ver 1.5 is now supported

Note, at a minimum you will need a gateway (e.g. Arduino) and a radio (e.g. NRF24L01+ (note the "+" at the end)). MySensors will not start without these components!

Installation

Install the agocontrol-mysensors package (this guide will assume you know how to access a terminal with permissions to install packages).

apt-get install agocontrol-mysensors

This installation preconfigures the service which should not require any changes. If needed, you can find it here:

/lib/systemd/system/agomysensors.service

Configuration

You need to create a config mysensors.conf file. The mysensors.conf file tells agoControl the location of your gateway. As such, you need to know yourself. There are many ways to know where your device resides, maybe the easiest is "dmesg" from a terminal. The dmesg output for my Uno, for example, registered as /dev/ttyACM0. Here was the particular line:

cdc_acm 1-1.2:1.0: ttyACM0: USB ACM device

Whatever the location, create the file and insert the required information:

nano /etc/opt/agocontrol/conf.d/mysensors.conf

For example, if your gateway location were '/dev/ttyUSB0' insert this:

[mysensors]
device=/dev/ttyUSB0

If you you also are using other USB ports. You will end up after reboot, that your /dev/ttyUSB0 might be setup to another USB device and then your stuff won't work. To bypass this you declare an alternative usbdevice. via udev rules [http://wiki.agocontrol.com/index.php/Ago_control_install_debian_wheezy#add_udev_rules_.28optional.29]


Configure the Gateway

We must also configure the gateway and repeater-sensor/sensors. In short, download the libraries from the mysensors website [1] and configure as detailed.

For example, to configure my serial gateway, I downloaded and installed the master library for the Arduino IDE. Upload the correct code to the gateway by selecting "File" -> "Sketchbook" -> "libraries" -> "MySensors" -> "Serial Gateway". Once the code has been uploaded and the radio attached, agoControl should be able to communication with the gateway and any sensors.

Enable the Service at Startup

systemctl enable agomysensors.service

Start the Service

systemctl start agomysensors.service

Confirm the Service is Running

systemctl status agomysensors.service
  • Note: See [2] for configuring between SI and IP units.

Testing

You can run MySensors from the terminal for additional diagnostic information:

/opt/agocontrol/bin/agoMySensors

For example, I am using an Uno as my gateway and another Uno with a single Dallas temperature sensor. Here was my output:

Waiting for the gateway starts...
Done.
Requesting gateway version...
 found v1.4.1
Initializing MySensors controller
Register existing devices:
 - 105/0:temperaturesensor
Running MySensors controller...

Mappings

Mappings can be edited/deleted from the file /etc/opt/agocontrol/maps/mysensors.json .

Personal tools