more G-Labs products

Author Topic: CT100 Z-wave Thermostat and Home Genie v1.1 r500 on windows  (Read 2878 times)

November 20, 2015, 02:33:13 AM
Read 2878 times

r32inc

  • *
  • Information
  • Newbie
  • Posts: 4
Hi guys,

I'm new here to Home Genie and I've got most of my Z-wave devices setup.  Looking through all the post here on the support forum I was able to get by setting up my smart plugs, HEM, Garage Door opener, etc.. I have no experience in programming at all but love what Home Genie can do. I'm having trouble getting my CT100 Z-wave thermostat to work with Home Genie.  The thermostat is added to my Aeon Z-Stick S2 and I'm able to see and communicate with the device but I can only control Heat and Fan but not Cool.  Coming from Vera I was able to control Heat, Cool, and Fan so I know the device works.

Here some information on the device (I'll do my best to provide info):

Manufacture ID: 0098:6401:0107

I check pepper1 and the xml file there has the CT100 but as 0098:6401:0015
 http://www.pepper1.net/zwavedb/device/289/289-0098-6401-0015-00-03-1c-00-00.xml

I attached some pictures of what I'm seeing and the cool setting grayed out. Also the battery level is at 0% because I have a "c" wire connected to the thermostat for power.

If there anything else I can provide to help solve my problem please by all means ask.

Thanks in advance,

r32inc

« Last Edit: November 20, 2015, 02:39:29 AM by r32inc »

November 20, 2015, 06:36:56 AM
Reply #1

Gene

  • *****
  • Information
  • Administrator
  • Posts: 1472
  • Tangible is the future!
    • Yet Another Programmer
The heating/cooling buttons should be enabled after hg reads the setpoint from the thermostat.
If pressing the button on the thermostat does not update any field in hg, you can try getting the setpoint manually by opening the url:

http://hg_address/api/HomeAutomation.ZWave/NODE_NUMBER/Thermostat.SetPointGet/Cooling
http://hg_address/api/HomeAutomation.ZWave/NODE_NUMBER/Thermostat.SetPointGet/Heating

If hg is able to read the set points, it will display them in the widget (see picture).
if none of these works please attach/paste the log here, perhaps we can fix this.

g.

November 20, 2015, 08:17:12 AM
Reply #2

r32inc

  • *
  • Information
  • Newbie
  • Posts: 4
The heating/cooling buttons should be enabled after hg reads the setpoint from the thermostat.
If pressing the button on the thermostat does not update any field in hg, you can try getting the setpoint manually by opening the url:

http://hg_address/api/HomeAutomation.ZWave/NODE_NUMBER/Thermostat.SetPointGet/Cooling
http://hg_address/api/HomeAutomation.ZWave/NODE_NUMBER/Thermostat.SetPointGet/Heating

If hg is able to read the set points, it will display them in the widget (see picture).
if none of these works please attach/paste the log here, perhaps we can fix this.

g.


Gene,  Thanks for the help. I your suggestion for getting the cool setpoint value and it worked.  Although I notice that getting the cool setpoint returned a value in Celsius and getting heat setpoint returned a value in fahrenheit.  I change the options user interface with in maintenance and it seems to show everything in farenheit now.  Which is what I want and  it seems all functional now!

Thanks again for the help.

r32inc

January 26, 2016, 01:56:44 AM
Reply #3

kevin1

  • *****
  • Information
  • Hero Member
  • Posts: 330
I just installed a ct100, zwave discovers and HG added widget. it's not showing any info though. from android HG+ I think I was able to force the fan from auto to on for a bit and back to auto. widget doesn't seem to be refreshing anything though. tried the webapi and now it shows my heat set point but in C rather than preferred F.  still not showing actual temp or humidity. I'm still on r505
« Last Edit: January 26, 2016, 02:02:48 AM by kevin1 »

January 27, 2016, 02:38:58 PM
Reply #4

kevin1

  • *****
  • Information
  • Hero Member
  • Posts: 330
Ok, so it is kind of working.  I can set heat setpoint from HG and CT100 updates.  I can turn the fan to off or auto and CT100 updates.  I installed the CT100 with c-wire first (without batteries) as I read this forces it into zwave repeater mode.  I have since installed the batteries because it says they are required.

Not working:
-changes on CT100 are not updated into HG
-HG doesn't show temp or humidity from CT100

This worked once I think and caused the heat setpouint to show in widget:
http://hg_address/api/HomeAutomation.ZWave/NODE_NUMBER/Thermostat.SetPointGet/Heating
Now when I call that, nothing happens.  HG is showing setpoint 85 even though I changed the CT100 back to the normal 69F.  I have query on wakeup set to 15sec.  HG+ android only shows one value in parameter log for temperature a day ago (I think I had manually requested it from HG thermostat setup screen).  Also on HG+ it shows 68.5 degrees in middle with heat and fan auto.  But it also shows a red flame with 185 degrees.  I think 85F is thought to be C, so converted to F again.
« Last Edit: January 28, 2016, 01:03:00 PM by kevin1 »

February 02, 2016, 11:04:02 PM
Reply #5

accident

  • *
  • Information
  • Newbie
  • Posts: 2
Possibly relevant - I've been working on getting my CT-30 thermostats going, and I've noticed a few quirks:

- the CT-30 doesn't seem to report changes (I had to enable the Z-Wave Thermostat Poll program and tweak it to read the set points, system mode, etc as well)

- the CT-30 reports set points in Celsius with Thermostat.SetPointGet, but will only take Fahrenheit values when setting them with Thermostat.SetPointSet (note that my CT-30 is set to Fahrenheit)

I'm guessing the CT-100 might have similar quirks.  I'm using RTZW-01 Z-Wave USNAP modules, for what it's worth (not sure of the specs of the built-in ones in the CT-100).

Hope that helps.

February 02, 2016, 11:34:27 PM
Reply #6

kevin1

  • *****
  • Information
  • Hero Member
  • Posts: 330
Thanks for the feedback!  I have started manually polling some of the info from the CT100 since my post.   Here is what I am doing...
Code: [Select]
Net.WebService("http://192.168.1.100/api/HomeAutomation.ZWave/19/Thermostat.OperatingStateGet").Call();
Net.WebService("http://192.168.1.100/api/HomeAutomation.ZWave/19/Thermostat.ModeGet").Call();
Net.WebService("http://192.168.1.100/api/HomeAutomation.ZWave/19/Thermostat.SetPointGet").Call();
Net.WebService("http://192.168.1.100/api/HomeAutomation.ZWave/19/Thermostat.FanStateGet").Call();
Net.WebService("http://192.168.1.100/api/HomeAutomation.ZWave/19/Thermostat.FanModeGet").Call();
Net.WebService("http://192.168.1.100/api/HomeAutomation.ZWave/19/SensorMultiLevel.Get").Call();
Pause(15);
I hadn't noticed the builtin thermostat polling... it only checks the SensorMultiLevel.Get.  Also, it calls the delay twice.  The other calls I make will populate other parts of the widget as well.  I'd like to see Humidity too since it shows on the CT100 display, but havent seen it in the widget yet.

I also tweaked the widget a bit because I think there are some errors, or the displayed data didn't make sense to me where it was.  I changed the status to show OperatingState (instead of FanState) and then change the Fan to show FanMode and FanState. All looks good now except the fan state isn't being reported (by CT100) or handled (by HG) correctly somewhere (it's on but shows idle).
« Last Edit: February 02, 2016, 11:44:43 PM by kevin1 »

February 04, 2016, 06:47:35 PM
Reply #7

kevin1

  • *****
  • Information
  • Hero Member
  • Posts: 330
Folks at SmartThings forum figured out how to get humidity ("Groovy" code follows):
Code: [Select]
// CT-100/101 Customization for Humidity
zwave.multiChannelV3.multiInstanceCmdEncap(instance: 2).encapsulate(zwave.sensorMultilevelV3.sensorMultilevelGet()).format()

Can something like this be done in HG?

February 04, 2016, 08:14:26 PM
Reply #8

Gene

  • *****
  • Information
  • Administrator
  • Posts: 1472
  • Tangible is the future!
    • Yet Another Programmer

February 25, 2016, 02:30:18 PM
Reply #9

kevin1

  • *****
  • Information
  • Hero Member
  • Posts: 330
I think I might be overwhelming my thermostat by polling for all the properties too frequently.  I put a 5 sec delay between each property.  I see lots of zwave debug info in log every time I request one of the properties.  Lot of times it will timeout. 

Code: [Select]
2/3/16 18:39:53 Info WebServiceGateway 192.168.1.100 HTTP GET 401 /api/HomeAutomation.ZWave/19/Thermostat.SetPointGet
2/3/16 18:39:53 Info WebServiceGateway 192.168.1.100 HTTP GET 200 /api/HomeAutomation.ZWave/19/Thermostat.SetPointGet [OPEN]
2/3/16 18:39:53 Info WebServiceGateway 192.168.1.100 HTTP GET 200 /api/HomeAutomation.ZWave/19/Thermostat.SetPointGet [CLOSED AFTER 0.011 seconds]
2/3/16 18:39:53 Debug 18
2/3/16 18:39:53 Debug ZWaveMessage (RawData=18)
2/3/16 18:39:53 Debug ZWaveMessage (Direction=Inbound
2/3/16 18:39:53 Trace Error
2/3/16 18:39:53 Trace [[[ END REQUEST ]]] took 100 ms
2/3/16 18:39:53 Warn Could not deliver message to Node 19 (CallbackId=BE
2/3/16 18:39:53 Trace [[[ BEGIN REQUEST ]]]
2/3/16 18:39:53 Trace WaitAck
2/3/16 18:39:53 Trace Sending Message (Node=19
2/3/16 18:39:53 Debug 01-09-00-13-13-02-40-02-05-BE-0D
2/3/16 18:39:54 Debug 18
2/3/16 18:39:54 Debug ZWaveMessage (RawData=18)
2/3/16 18:39:54 Debug ZWaveMessage (Direction=Inbound
2/3/16 18:39:54 Trace Error
2/3/16 18:39:54 Trace [[[ END REQUEST ]]] took 99 ms
2/3/16 18:39:54 Warn Delivery of message to Node 19 failed (CallbackId=BE).
2/3/16 18:39:54 Debug 19 Error
2/3/16 18:39:54 Info HomeAutomation.ZWave 19 Z-Wave Node Status.Error Response timeout!
2/3/16 18:39:54 Debug 20-37-31-2E-36-30-2C-33-34-2E-30-30-2C-35-30-39-2C-20-20-30-2C-30-2C-31-2C-38-2C-20-20-32-31-2C-30-2C-30-2C-20-36-38-36-36-39-36-0D-0A-64-0D-0A
2/3/16 18:39:54 Debug 30-20-30-20-30-20-32-20-30

This one seemed to respond in less than a second but a lot of debug is logged for a success, why?:

Code: [Select]
2/3/16 18:39:54 Info WebServiceGateway 192.168.1.100 HTTP GET 401 /api/HomeAutomation.ZWave/19/Thermostat.FanStateGet
2/3/16 18:39:54 Info WebServiceGateway 192.168.1.100 HTTP GET 200 /api/HomeAutomation.ZWave/19/Thermostat.FanStateGet [OPEN]
2/3/16 18:39:54 Debug ZWaveMessage (RawData=01-09-00-13-13-02-45-02-05-BF-09)
2/3/16 18:39:54 Debug ZWaveMessage (Direction=Outbound CallbackId=191 CallbackStatus=NotSet)
2/3/16 18:39:54 Info WebServiceGateway 192.168.1.100 HTTP GET 200 /api/HomeAutomation.ZWave/19/Thermostat.FanStateGet [CLOSED AFTER 0.005 seconds]
2/3/16 18:39:54 Debug 01-09-00-04-00-13-03-42-03-00-A3
2/3/16 18:39:54 Debug ZWaveMessage (RawData=01-09-00-04-00-13-03-42-03-00-A3)
2/3/16 18:39:54 Debug ZWaveMessage (Direction=Inbound
2/3/16 18:39:54 Debug 06
2/3/16 18:39:54 Debug NodeUpdated (NodeId=19
2/3/16 18:39:54 Info HomeAutomation.ZWave 19 ZWave Node Thermostat.OperatingState Idle
2/3/16 18:39:55 Trace [[[ BEGIN REQUEST ]]]
2/3/16 18:39:55 Trace WaitAck
2/3/16 18:39:55 Trace Sending Message (Node=19
2/3/16 18:39:55 Debug 01-09-00-13-13-02-45-02-05-BF-09
2/3/16 18:39:55 Debug 06-01-04-01-13-01-E8
2/3/16 18:39:55 Debug ZWaveMessage (RawData=01-04-01-13-01-E8)
2/3/16 18:39:55 Debug ZWaveMessage (Direction=Inbound
2/3/16 18:39:55 Debug 06
2/3/16 18:39:55 Trace SendDataReady
2/3/16 18:39:55 Debug 01-07-00-13-BF
2/3/16 18:39:55 Trace Expected message length is 9
2/3/16 18:39:55 Debug 00-00-02-56
2/3/16 18:39:55 Trace Merged buffer to message: 01-07-00-13-BF-00-00-02-56
2/3/16 18:39:55 Debug ZWaveMessage (RawData=01-07-00-13-BF-00-00-02-56)
2/3/16 18:39:55 Debug ZWaveMessage (Direction=Inbound
2/3/16 18:39:55 Debug 06
2/3/16 18:39:55 Trace Complete
2/3/16 18:39:55 Trace [[[ END REQUEST ]]] took 105 ms
2/3/16 18:39:55 Debug 01-09-00-04-00-13
2/3/16 18:39:55 Trace Expected message length is 11
2/3/16 18:39:55 Debug 03-45-03-00-A4
2/3/16 18:39:55 Trace Merged buffer to message: 01-09-00-04-00-13-03-45-03-00-A4
2/3/16 18:39:55 Debug ZWaveMessage (RawData=01-09-00-04-00-13-03-45-03-00-A4)
2/3/16 18:39:55 Debug ZWaveMessage (Direction=Inbound
2/3/16 18:39:55 Debug 06
2/3/16 18:39:55 Debug NodeUpdated (NodeId=19
2/3/16 18:39:55 Info HomeAutomation.ZWave 19 ZWave Node Thermostat.FanState Idle
2/3/16 18:39:55 Error System.IO.IOException: The port 'COM5' does not exist.
at System.IO.Ports.Int ernalResources.WinIOError(Int32 errorCode
at System.IO.Ports.Ser ialStream..ctor(String portName Int32 writeTimeout Handshake handshake Boolean dtrEnable Boolean rtsEnable Boolean discardNull Byte parityReplace)
at System.IO.Ports.Ser ialPort.Open()
at XTenLib.Drivers.CM1 1.Open()
2/3/16 18:39:55 Debug 64-0D-0A



Does all this debug info written to file system impact system performance?

« Last Edit: February 25, 2016, 02:33:30 PM by kevin1 »

February 25, 2016, 04:03:25 PM
Reply #10

bkenobi

  • *****
  • Information
  • Global Moderator
  • Posts: 1525
Out of curiosity, why are you polling it so often?  Seems like my Honeywell doesn't even update the display that often.  I would have thought 1/min or 1/30 seconds would be more than enough.

February 25, 2016, 06:40:01 PM
Reply #11

kevin1

  • *****
  • Information
  • Hero Member
  • Posts: 330
I guess I just wanted my HG widget to reflect the current status of all the properties.  Since my CT100 doesn't automatically report/transmit status changes, I thought polling it would be a good way to see current status for each property.  Looks like that not so good of an idea... I agree seems overkill.  Now that I know it is working and the newness has work off, I'm not looking at the widget so often (and smiling that I can see my furnace has kicked on while 30 miles away :-) ).  Would be nice if it reported status on change.