Contributed By Paul Giles Using X10 and Homeseer my brother controls HVAC systems in his greenhouse but he had no way of monitoring temperature to make it a closed system. He asked me to find and implement a temperature sensor using homeseer.
When the interface and sensors were connected I used HyperTerminal to see the output. The next stage, interfacing with Homeseer was probably the hardest bit with a bit of trial and error and a lot of determination I eventually got there. First of I defined 4 devices in Homeseer, one for each probe. I then setup an event to run the script I had written every minute. The script reads the COM port for the temperature readings and updates the device codes.
I have now installed an interface on my own Homeseer but the temperature readings are not very accurate, if anyone could give me a clue why I would much appreciate it. As I am not a programmer my script will make a few people cringe but it’s not bad for a first attempt. Many users of X10 and Homeseer will probably come up with a few additional uses for this product.
SCRIPT
‘This script reads data from temperature sensors connected on com port
‘ and sets X10 device values according to the temperature
‘
‘changeable bits
‘==============================================
Const CommPort = 2
Const DTRstate = 1
Const RTSstate = 1
Const CommDetails = “2400,n,8,1”
Const DataMode = 0
Const Sensor1 = “k14”
Const Sensor2 = “k15”
Const Sensor3 = “k16”
Const Sensor4 = “k13″
‘=============================================
‘Default sub For The Script
‘=============================================
Sub main()
hs.CloseComPort CommPort
hs.OpenComPort CommPort,CommDetails,DataMode,””,””
hs.SetComPortRTSDTR CommPort,RTSstate,DTRstate
hs.WaitSecs 5
dim thisdata
ThisData = hs.GetComPortData(CommPort)
pos=instr(1,thisdata,”1 “,1)+ 4
roomtemp= mid(thisdata,pos,2)
hs.setdevicestring Sensor1, roomtemp
pos=instr(1,thisdata,”2 “,1)+ 4
roomtemp= mid(thisdata,pos,2)
hs.setdevicestring Sensor2, roomtemp
pos=instr(1,thisdata,”3 “,1)+ 4
roomtemp= mid(thisdata,pos,2)
hs.setdevicestring Sensor3, roomtemp
pos=instr(1,thisdata,”4 “,1)+ 4
roomtemp= mid(thisdata,pos,2)
hs.setdevicestring Sensor4, roomtemp
End Sub
Available From Quasar electronics, part no AS3145 Assembled Temperature Data Logger.
Want More? – Follow us on Twitter, Like us on Facebook, or subscribe to our RSS feed. You can even get these news stories delivered via email, straight to your inbox every day
Be the first to comment on "HomeSeer Temperature Monitoring"