more G-Labs products

Author Topic: Generic Thermostat APP  (Read 20455 times)

December 04, 2014, 02:17:43 PM
Reply #45

Gene

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

December 04, 2014, 03:50:00 PM
Reply #46

Gene

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

had a chance to setup interconnecitons and replicate the bug.
Fixed it. =)
I'm attacching the correction to the HomeGenieService.cs in case you want to try it right ahead.

Cheers,
g.

December 04, 2014, 04:13:51 PM
Reply #47

dani

  • *****
  • Information
  • Global Moderator
  • Posts: 535
Gene,

Sorry, I was absent for one hour.
I compile your new source code and that works properly.
My Generic Thermostat can control the GPIO on the slave PI.

Thank's

Dani

December 09, 2014, 03:58:01 PM
Reply #48

RichieC

  • ***
  • Information
  • Full Member
  • Posts: 67
I have updated to Homegenie r441 and have setup my Z-Wave thermostat, which now works except that i can't change the setpoint of the thermostat from the widget - when i do this nothing happens. If i move the dial on the thermostat itself to change the temperature, it changes in homegenie, so that part is working.. but i cant set the temp from homegenie...

Any ideas what could be wrong?

Rich

December 10, 2014, 10:12:33 PM
Reply #49

mblack

  • *
  • Information
  • Newbie
  • Posts: 14
Can you change the mode from 'OFF' to "HEAT' ? What kind of thermostat ?

December 10, 2014, 10:35:16 PM
Reply #50

RichieC

  • ***
  • Information
  • Full Member
  • Posts: 67
Can you change the mode from 'OFF' to "HEAT' ? What kind of thermostat ?

If i click the OFF and HEAT buttons in the temp change widget, the mode changes in Homegenie, but not on the actual thermostat/receiver - it doesn't switch.

The thermostat that i have is a Horstman HRT4-ZW and ASR-ZW Receiver (to switch the boiler on/off).

There are a few Z-Wave Associations/Group options that i have set as follows:

Group1 - Nodes controlled by thermostat Node Set command:
1( Homegenie) ,55(Thermostat)

Group2 - Nodes controlled by binary switch SET command:
1(Homegenie), 54(Receiver/switch),55(Thermostat)

Group3 - Nodes to receive unsolicited battery level reports:
1(Homegenie)

Group4 - Nodes to receive thermostat Set Point  reports:
1(Homegenie)

Group5 - Nodes to receive unsolicited Sensor Multilevel Reports:
1(Homegenie)

The other options that i have set are to enable the temp sensor and to set the thermostat to centigrade.

I would grateful for any ideas..

December 11, 2014, 03:38:04 AM
Reply #51

mblack

  • *
  • Information
  • Newbie
  • Posts: 14
What kind of controller ? Did you associate the controller with the thermostat ? Did you do a discover and see if the thermostat was added ?

December 11, 2014, 10:26:52 AM
Reply #52

RichieC

  • ***
  • Information
  • Full Member
  • Posts: 67
What kind of controller ? Did you associate the controller with the thermostat ? Did you do a discover and see if the thermostat was added ?

Z-Stick2 .. running on a raspberry Pi

The Thermostat is associated with the controller.  I have the Thermostat widget added in homegenie and the theromostat can communicate with it - it updates the current temprature and setpoint etc in the widget if i change it on the thermostat itself.. it just doesn't work the other way around (thermostat doesnt update if temp is changed in the homegenie widget).

« Last Edit: December 11, 2014, 11:08:48 AM by RichieC »

December 11, 2014, 05:02:31 PM
Reply #53

mblack

  • *
  • Information
  • Newbie
  • Posts: 14
Do you know if your thermostat is listed in the pepper1 database ?

December 12, 2014, 01:20:18 AM
Reply #54

RichieC

  • ***
  • Information
  • Full Member
  • Posts: 67
Do you know if your thermostat is listed in the pepper1 database ?

It is yes!

December 12, 2014, 03:32:47 PM
Reply #55

mblack

  • *
  • Information
  • Newbie
  • Posts: 14
Make sure that the product type id and product id of your device matches what's in the pepper1 file. I do know that with some manufacturers they units that have the same model number, but internally they have different  product is's and product type id's. If that all matches, then I have no idea why it wouldn't work.

December 13, 2014, 06:50:13 PM
Reply #56

dani

  • *****
  • Information
  • Global Moderator
  • Posts: 535
Hi Gene,

I am worling on a Thermostat widget for French using.
As I told you on an other post, in France we have 5 states : Stop, No Frost, Eco, Comfort and Programmed.

And new thermostat have the abilities to programme in a week different state from Monday to Saturday.

But I think it's better to work with a calendar where we define which hour table for each thermostat to use in Week-end, Working day and Public hollidays.

You can see below my widget screen.
I don't write not yet the calendar.
Are you agree with this ?

Cheers
Dani

PS : I have commit a modification in GitHub to informe the UI console that a ZWave Node doesn't answer. Can you look at this also ? Thank's
 

December 14, 2014, 12:50:39 AM
Reply #57

Gene

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

really nice job!! We have to find a convenient way of hiding/showing extra states for thermostats that do not implement all of them.
Just replied on github.

Cheers,
g.

December 14, 2014, 05:18:24 AM
Reply #58

bradvoy

  • ***
  • Information
  • Full Member
  • Posts: 50
I just updated to r443.  I appreciate that the thermostat widget now correctly displays the temperature in Fahrenheit.  Here are a few suggestions for further improvements:

  •    The group heading on the Control page shows the temperature in Celsius even though the thermostat widgets on this page are now displaying the temperature in Fahrenheit, which is what I want.  Could the group heading be changed to use the same logic as the thermostat widget to determine whether to display Celsius or Fahrenheit?
  •    The temperature display on the thermostat widget is displaying too many digits.  For example, one of mine is currently displaying 70.50200000000001°.  This is because the rounding logic in thermostat.json does the rounding before the conversion from Celsius to Fahrenheit.  If the rounding was done after the conversion to Fahrenheit then this problem would be solved.  Or the other solution would be to change the line that writes the temperature value into the HTML to use the expression temperature.toFixed(1).
  •    The heat setpoint display is incorrect for my thermostats in this version.  I found that this is because my thermostats (Radio Thermostat CT101) report the setpoint in Fahrenheit although they report the current temperature in Celsius.  Strange.  I don't know if there's a way for Homegenie to know which items are being reported in which units.
  •    My thermostats report the relative humidity, but the thermostat widget doesn't display it.  I added the following to thermostat.json and a corresponding display field in thermostat.html to show this:
   
       // display humidity
       var humidity = HG.WebApp.Utility.GetModulePropertyByName(module, "Sensor.Humidity");
       if (humidity != null)
           widget.find('[data-ui-field=humidity]').html(humidity.Value + '%');

December 22, 2014, 12:27:33 AM
Reply #59

RichieC

  • ***
  • Information
  • Full Member
  • Posts: 67
I now have r447 installed and have been trying to get my thermostat to work...

Everything works ok (as i said previously) but i can't change the set point of the thermostat from HomeGenie - when i do this i get a "Node Response Timeout" message.

The problem is that my thermostat is a battery powered device and so it's not always awake to receive the set-point message.  The minimum wake up period that i can set on the thermostat is 256 seconds, Homegenie would need to wait for this amount of time before giving up trying to send the set-point message, but it seems that it assumes that the device is always awake and if the message is not received immediately it gives up.  Is this something that can be added to wait for a device wakeup and send the message?

Rich