Author |
|
nadler Super User
Joined: February 25 2006 Location: United States
Online Status: Offline Posts: 354
|
Posted: May 29 2007 at 20:05 | IP Logged
|
|
|
I just purchased and installed the QKits Serial Temperature Sensor Interface for $39.95 (Plus s/h). It can be found here.
It's an assembled circuit board with 1 temperature sensor and connections for 3 more temperature sensors ($7.95 each).
You connect it to your PC through an RS232 port. It communicates through either Hyperterminal or even better through PH. It has various modes but basically it reads the temperature from each connected sensor and keeps track of the high and low temperatures for each. It can record in Celcius, Fahrenheit or both at the same time. It has an adjustable sample rate from 1 second to 99 seconds or 1 minute to 99 minutes.
Here is a short macro I wrote to turn on the device and get the temperature from the sensors. It gets the temperature, announces it (for debugging purposes) and stores it in a global variable. I then can read the global variable and display it or email it or even change the thermostat (if I had one that was automated).
Thought this was a neat, easy and inexpensive way to measure temperature in 4 places in a house.
insert into macroheader values ('QKIT TEMP','Temp Sensor',0,0,1);
insert into macrodetail values ('QKIT TEMP',1,37,'',NULL,'Open comm port 4 and turns on Temp Sens board',0,'');
insert into macrodetail values ('QKIT TEMP',2,38,'',NULL,'ph_comopen(4,4,9600,"N",8,1,1,0,0,0,0,0, 1,"?","")',0,'');
insert into macrodetail values ('QKIT TEMP',3,37,'',NULL,'Necessary delay to get the 1st temp reading',0,'');
insert into macrodetail values ('QKIT TEMP',4,31,'',NULL,'2',0,'');
insert into macrodetail values ('QKIT TEMP',5,37,'',NULL,'Next line get the info from the receive buffer',0,'');
insert into macrodetail values ('QKIT TEMP',6,15,'[LOCAL1]',NULL,'ph_comrecvstring(4,9999)',0,'');
insert into macrodetail values ('QKIT TEMP',7,37,'',NULL,'Parses the info to get just the temp. Next line for debugging purposes',0,'');
insert into macrodetail values ('QKIT TEMP',8,24,'TTS',2,'mid ( "[LOCAL1]", 52 , 5 )
',0,'');
insert into macrodetail values ('QKIT TEMP',9,37,'',NULL,'Set global variable OFFICE TEMP to temprature',0,'');
insert into macrodetail values ('QKIT TEMP',10,10,'OFFICE TEMP',NULL,'mid ( "[LOCAL1]", 52 , 5 )
',0,'');
insert into macrodetail values ('QKIT TEMP',11,37,'',NULL,'Close Comm port 4 opened in Line 10',0,'');
insert into macrodetail values ('QKIT TEMP',12,38,'',NULL,'ph_comclose(4)',0,'');
|
Back to Top |
|
|
smarty Super User
Joined: May 21 2006 Location: United States
Online Status: Offline Posts: 728
|
Posted: May 29 2007 at 21:03 | IP Logged
|
|
|
Nice find Nadler!!
I would be curious if there was anyway to string a bunch a these together along a common data bus (like the Elk serial databus).
I could see making a single loop around the house for the different locations rather than making home runs for each sensor board.
Another question. Since this board allows for 4 sensors, can you read from each sensor individually? Could you run wire to three other rooms (what might the wire run limitations be)?
__________________ Elk - Insteon - BlueIris - DMC1 - PowerHome - XLobby - HA_Bridge w/Dots - Brultech
|
Back to Top |
|
|
nadler Super User
Joined: February 25 2006 Location: United States
Online Status: Offline Posts: 354
|
Posted: May 30 2007 at 08:16 | IP Logged
|
|
|
I don't know about the Elk serial databus, but I do know that each sensor can be read individually and the run length can be up to 100 feet to each sensor. Apparently the board itself needs to be close to the PC unless you use an RS232 balun.
Noel
|
Back to Top |
|
|
patrickm Senior Member
Joined: February 22 2007 Location: United States
Online Status: Offline Posts: 188
|
Posted: May 30 2007 at 21:17 | IP Logged
|
|
|
if you want a single bus for temp sensors take a look at the Dallas/Maxim DS18B20. The sensors are about $2.95 each. There are dongles that converts from the one wire bus to either USB or serial for about $20 on the Maxim website.
|
Back to Top |
|
|
nadler Super User
Joined: February 25 2006 Location: United States
Online Status: Offline Posts: 354
|
Posted: August 14 2007 at 16:40 | IP Logged
|
|
|
I thought I would post an updated macro for the QKITS Temperature sensor and PH. This macro now reads all four sensors from the QKITS and displays four temperatures for four rooms in the Control Center.
I figured out a way to mount each sensor in a Keystone Jack and mounted the Keystone Jack in a surface mount Keystone holder. I punched holes in the holder for good air flow. So without any soldering I am able to easily mount the sensors any place I want. They are also portable. I connect the keystone jack to Cat 5e and plug it into the cat 5e jack in the wall. Easy, can be any length and put in any room in the house that's wired. If anyone is interested let me know and I will post pictures . It's really easy.
insert into macroheader values ('QKIT TEMP','Temp Sensor',2,1,1);
insert into macrodetail values ('QKIT TEMP',1,37,'',NULL,'Open comm port 4 and turns on Temp Sens board',0,'');
insert into macrodetail values ('QKIT TEMP',2,38,'',0,'ph_comopen(4,4,9600,"N",8,1,1,0,0,0,0,0,1," ?","")',0,'');
insert into macrodetail values ('QKIT TEMP',3,37,'',NULL,'Necessary delay to get the 1st temp reading',0,'');
insert into macrodetail values ('QKIT TEMP',4,31,'',NULL,'10',0,'');
insert into macrodetail values ('QKIT TEMP',5,37,'',NULL,'Next line get the info from the receive buffer',0,'');
insert into macrodetail values ('QKIT TEMP',6,15,'[TEMP1]',NULL,'ph_comrecvstring(4,9999)',0,'');
insert into macrodetail values ('QKIT TEMP',7,37,'',NULL,'Next line for debugging purposes. See the info returned',0,'');
insert into macrodetail values ('QKIT TEMP',8,24,'No TTS',2,'''[TEMP1]''',1,'');
insert into macrodetail values ('QKIT TEMP',9,37,'',NULL,'Parses the info to get just the temp. Next line for debugging purposes',0,'');
insert into macrodetail values ('QKIT TEMP',10,24,'No TTS',2,'mid ( "[TEMP1]", 108 , 5 )
',1,'');
insert into macrodetail values ('QKIT TEMP',11,24,'No TTS',2,'mid ( "[TEMP1]", 136 ,5 ) ',1,'');
insert into macrodetail values ('QKIT TEMP',12,37,'',NULL,'Set global variable OFFICE TEMP to temperature of the first sensor. Sets global variable for sensor 2,3,4 in the same manner.',0,'');
insert into macrodetail values ('QKIT TEMP',13,10,'OFFICE TEMP',NULL,'mid ('' [TEMP1]'',52,5)
',0,'');
insert into macrodetail values ('QKIT TEMP',14,10,'OFFICE TEMP2',NULL,'mid ( "[TEMP1]", 80 , 5 ) ',0,'');
insert into macrodetail values ('QKIT TEMP',15,10,'OFFICE TEMP3',NULL,'mid ( "[TEMP1]", 108 , 5 ) ',0,'');
insert into macrodetail values ('QKIT TEMP',16,10,'OFFICE TEMP4',NULL,'mid ( "[TEMP1]", 136 , 5 ) ',0,'');
insert into macrodetail values ('QKIT TEMP',17,37,'',NULL,'Sets a Control Center ''button'' (AT4 on MY HOUSE tab) to display all 4 temperatures.',0,'');
insert into macrodetail values ('QKIT TEMP',18,38,'',1,'ph_setccobjtext("MY HOUSE","AT4","Office~r~n" +mid(''[TEMP1]'',52,5 )+"F~r~nMB~r~n" +mid(''[TEMP1]'',80,5)+"F~r~nJR~r~n"+mid(''[TEMP1]'',108,5 )+"F~r~nBasement~r~n"+mid(''[TEMP1]'',136,5 )+"F~r~n")',0,'');
insert into macrodetail values ('QKIT TEMP',19,37,'',NULL,'Close Comm port 4 opened in Line 10',0,'');
insert into macrodetail values ('QKIT TEMP',20,38,'',1,'ph_comclose(4)',0,'');
|
Back to Top |
|
|
onhiatus Senior Member
Joined: May 12 2004 Location: United States
Online Status: Offline Posts: 279
|
Posted: August 16 2007 at 12:15 | IP Logged
|
|
|
RE: The keystone jack - I do the same thing with my temp sensors (the DS18B20 that patrickm mentioned). What's more, because it's not really a network I can use cheap Y's to add more sensors - The one-wire stuff all can run on the same bus.
I have sensors in three rooms, the computer closet, the attic, outside, and in the water (we live on a floating home). I use an external VB app I wrote to collect the temps over the serial line (polling) and then pass them on to PowerHome via windows messaging. This could be done entirly within PH, but there were issues with the serial functions at the time and I have not bothered to rewrite.
I've mentioned it before, but here it is again, I use (and highly recomend) PH Anderson's IOM Serial Relay Output / Optoisolator Input board (#142A). For $60 it gives you two 1-wire device runs (up to 16 devices each run / max of 200ft wire each run - i even comes with one temp sensor), plus 4 fairly heavy duty relays (15A @ 120 VAC / 10A @ 240 VAC), and four optoisolated inputs - all fully addressable over a serial port (works great with a USB to serial adapter). Not that I currently use anything but the 1-wire temperature sensors...
Note that there are a lot of other fun 1-wire devices available that work with this board including: Dallas DS18S20, DS18B20 and DS1822 temperature sensors, DS2438 temperature and 10-bit A/D converters, DS2450 Quad A/D converters and DS2423 dual counters, MPX4115 pressure sensor and an HIH-3610 relative humidity sensor.
For the money this device has amazing potential and I love it. To be honest though if I were starting over I would probably carefully evaluate the Fusion Brain that TonyNo mentions in another post (though it seems a little vaporware-ish right now...)
Hope some of this rant has been helpful, Tony
|
Back to Top |
|
|
ginigma Senior Member
Joined: June 18 2006 Location: United States
Online Status: Offline Posts: 127
|
Posted: August 16 2007 at 20:26 | IP Logged
|
|
|
I have a Fusion Brain hooked up. I will be using it for temp sensors, garage door sensors (open/closed), water leak sensors. Yes, the s/w isn't ready for prime time yet, still waiting on a COM interface. Then I think it's a great I/O device!
__________________ Insteon (40 devices) ^ PowerHome (435 links) ^ Logitech Harmony 880
|
Back to Top |
|
|
|
|