I have decided to undertake a mixing of technologies, and have hit a roadbump. I was looking for a way to interface my Vera to good, cheap, dependable battery powered temp and humidity sensors. One of the applications was for freezer and pool temperature monitoring.
I have successfully built using an Arduino Uno a device which picks up the temperature and humidity readings from Ambient Weather F007TH wireless thermo-hygrometer, F007T air temperature, F007TP temperature probe or F007PF floating pool and spa thermometer using code and information from around the Arduino world and posts these to an XML page via ethernet. Example:
<?xml version="1.0" standalone="yes"?>
96.70
10
79.20
12
0.00
0
0.00
0
0.00
0
0.00
0
0.00
0
0.00
0
The Arduino posts these to a XML page successfully, and can read and output up to 8 sensors temp and humidity.
Next hurdle is the XML to Vera device creation.
Ideally, I would need a plugin to create the 8 temp and humidity devices. I am decent with the hardware part of the project, stumbled through the Arduino, but am lost with the luup. Anyone else interested in this project and willing to help with some code?
I have posted what I have, a schematic of the Arduindo device and its code, and a sample of the XML output.
Any one else interested in this project?
Take a look at the Intellitouch/EasyTouch pool control plugin. It parses XML from an Autelis device. Look for a function called parseXmlStatus and you will see the code that does the parsing.
However, you could install the Virtual Panel Plugin and change the Arduino code to send an http command like the one below when the values change.
http://ip_address:3480/data_request?id=variableset&DeviceNum=&serviceId=urn:robertgabrielson-com:serviceId:TempSensor1&Variable=temp1&Value=96.70
You can do this for each of your sensor values then display each sensor value on a single panel.
[quote=“rstrouse, post:2, topic:186575”]Take a look at the Intellitouch/EasyTouch pool control plugin. It parses XML from an Autelis device. Look for a function called parseXmlStatus and you will see the code that does the parsing.
However, you could install the Virtual Panel Plugin and change the Arduino code to send an http command like the one below when the values change.
http://ip_address:3480/data_request?id=variableset&DeviceNum=&serviceId=urn:robertgabrielson-com:serviceId:TempSensor1&Variable=temp1&Value=96.70
You can do this for each of your sensor values then display each sensor value on a single panel.[/quote]
Ill take a look at the intellitouch plugin.
But - wow. I didnt know about Virtual Panel - that is very nice. Looks like Ill seriously have to consider UI7 now (I was on 6, went back to 5 due to all the issues).
UI7 has come a long way. There are still annoyances but for the most part it is pretty solid for me. I think the key is to take a look at the plugins that you use. Really, Virtual Panel was born because the UI was driving me crazy. My main dashboard only has Virtual Panels on it now and they control everything all grouped together the way that logically makes sense to the house.
Well after quite a bit of tweaking code I was able to get this working, stage 1.
To install, after you have built hardware:
Load the 3 files.
Create new device:
Description - your choosing
IP Address - the IP assigned on the Arduino for the Ethernet Shield
UPNP Device Filename - D_TMON.xml
You will need to reload a couple times to get it working. Once it is set up, it should start reading channel 1 temp right away. Go to the Advanced tab on the device and change the field ‘Channel’ to any number 1-8 to read the other channels.
Make sure you can get a readout similar to that below via browser (go to the IP address) before you get vera working.
<?xml version="1.0" standalone="yes"?>
96.70
10
79.20
12
0.00
0
0.00
0
0.00
0
0.00
0
0.00
0
0.00
0
You can also change the polling delay, its 120 seconds default.
I plan on working on the humidity next.
Here is the Humidity plugins, same setup as Temperature.
Hope someone else can get use out of this. These are cheap - senders only $15 on amazon. And, they have a floating pool sensor for $30.