This is the forum archive of Homey. For more information about Homey, visit the Official Homey website.

The Homey Community has been moved to https://community.athom.com.

This forum is now read-only for archive purposes.

Virtual Smart Thermostat

konradwalshkonradwalsh Member
edited January 2018 in Apps

Current Bounty - €70

UPDATE Jan 2018 
The majority of this has been achieved by the app Virtual Devices



TO ALL DEVS

I would like to raise a bounty to encourage someone to create a Virtual Thermostat. It would use any temperature sensor and switch combination.
So Virtual Stat would have the following
  • Heating Set Point - Achieved in Virtual Devices - Virtual Stat
  • Cooling Set Point
  • Heat Mode - 1 Hour of Switch On - Achieved in Virtual Devices - Virtual Stat with Flow
  • Eco Mode - Temp Drops to Cooling Set Point before action - Achieved in Virtual Devices - Virtual Stat with Flow
  • Normal Mode - Heat Switch is triggered until set point is reached - Achieved in Virtual Devices - Virtual Stat With Flow
  • Off Mode - Do nothing regardless of temps - Achieved in Virtual Devices - Virtual Stat- With Flow

I have all of the source code for the Vera Plugin and the HomeGenie Plugin that should help anyone do it.

Firstly, are you interested?
Secondly, What is a reasonable bounty to raise?

This is what it looks like on Vera




Pledges:
  • Konrad Walsh - €35  Paid to@Arie_Laxed 

  • jaimevisser - €5
  • lazerthomas - €30
«1

Comments

  • swtttswttt Member
    This is actually a great idea, but has some down sides for now.

    Getting data from a temp sensor and switching a relay needs access using the bearer token. This token will be replaced with API tokens in 2.0.0, so creating an app/driver like this now would need a rewrite in a couple of months.

    Kinda hard to say whats a reasonable bounty...since if its created now it needs a rewrite. Plus it ain't an app that i could write within 2 hours. 
  • OK I understand that..

    I am willing to offer €35
  • Adding E5 to the bounty!
  • I'd love to hear what other devs think about this
  • Above feedback from @Swttt was already prediscussed ;-)

    Like @swttt indicated, major issue blocking this is the ability to link devices not part of the same app to one another...
    The most user friendly implementation is by using the bearer token; expert @swttt. But this will require a rewrite once 2.0.0 is released.

    Alternative, less user friendly, option would be to make this link between different devices based on flows....ie.
    WHEN temp of sensor X changed THEN update temperature of virtual thermostat
    WHEN thermostat switched on THEN switch on device Y and Z etc...

    This version would not be that difficult to make... could re-use could of other Thermostat apps....

    So what do you have in mind?
  • Yes. I agree with the thoughts regarding the difficulty with V2 coming.

    I currently do this with flows, but the issue is that its not user friendly.. Nobody can easily adjust the set points. It makes it difficult for the WAF too..

    Currently, I have a vera running with the virtual thermostats on it. When the user adjusts that it sends HTTP calls.. this works but is way over complicated and too hard to maintain. But it works.

    I would make an attempt but my .JS is not up to scratch and time is alluding me to learn enough.

    A mobile card would be ideal. Then any home user can adjust things as normal to trigger off the changes.

    To be honest.. I think Heating Schedule app by Frank Herman is almost there. If he was to make a new version of the app that reads the temp of a sensor then it would be 90% done...
  • Making a virtual thermostat with mobile card and combined with the flows mentioned above is not that difficult... I could re-use the code of my Thermo-Floor app...

    I'll have a look after my holidays (end of august)... if this request is still open and give it a try if still not available, ok?
  • Making a virtual thermostat with mobile card and combined with the flows mentioned above is not that difficult... I could re-use the code of my Thermo-Floor app...

    I'll have a look after my holidays (end of august)... if this request is still open and give it a try if still not available, ok?
    Yes that would be great.
    As long as no one else grabs it before you when that bounty climbs
  • I'm fine if you raise the bounty and if another dev will make the virtual thermostat app...

    I have a clear idea how to do it and make a good working app out of if.
    But in the meantime I'm packing and not allowed to take my laptop and Homey with me...
  • bvdbosbvdbos Member
    Really, not even Homey?
  • jovinkjovink Member
    But in the meantime I'm packing and not allowed to take my laptop and Homey with me...
    http://nos.nl/l/2184143 You can take your laptop to America 
  • He he... not going to America though...  :D
  • any other 'users' want to up the bounty?
  • If you're talking about using i.e. Aeotec Multisensor to measure the temp. and the Homey to control a Fibaro WallPlug - connected to some sort of electric heater I think it is an  interesting idea. I'll add another €30 to the bounty.
  • konradwalshkonradwalsh Member
    edited August 2017
    If you're talking about using i.e. Aeotec Multisensor to measure the temp. and the Homey to control a Fibaro WallPlug - connected to some sort of electric heater I think it is an  interesting idea. I'll add another €30 to the bounty.
    Exactly
    We're talking  
    ANY temp sensor and ANY Binary Switch can be used - Even Virtual
  • TedTolboomTedTolboom Member
    edited August 2017
    @konradwalsh can you share the source code with me? Mostly interested in the thermostat control loop...

    The app / driver I have in mind will handle the thermostat mode / controls by the app / driver providing a mobile interface card to set mode (comfort / eco / off / cooling) and corresponding set points.

    Inputs (any temperature sensor value or average of multiple sensors) and any output (binary switch(es) or ir to control the ceiling fan) will need to be linked by flows.... this will provide the most flexible solution.

    @konradwalsh@jaimevisser@lazerthomas, does this match your request / expectations?

    As indicated above, I'm still on holiday for the next 1.5 weeks, after that I will be able to start working on this app (and re-use code of my other thermostat app)...
  • Yes I will get you all the code I have collected..

    My preference would be to not have flows involved. A bit like heating schedules..

    The app should know the temperature and know which switch to activate. 
  • Just checking if any progress was made on this?

  • @konradwalsh not really...
    quite busy at work (currently abroad). Hope to be able to work on it in the next two weeks...
  • As a starting point, I've added a Thermostat to the Virtual Devices App (beta-release 0.6.6). For now, you can only set the target temperature and the thermostat mode.
    Next step is to add a sensor, but perhaps this may already be useful.
  • As a starting point, I've added a Thermostat to the Virtual Devices App (beta-release 0.6.6). For now, you can only set the target temperature and the thermostat mode.
    Next step is to add a sensor, but perhaps this may already be useful.
    good news..!!

    I will check it out
  • As a starting point, I've added a Thermostat to the Virtual Devices App (beta-release 0.6.6). For now, you can only set the target temperature and the thermostat mode.
    Next step is to add a sensor, but perhaps this may already be useful.
    i  really like how this is going.. just did a quick test...
  • @Arie_Laxed & @TedTolboom

    Any progress to report..
    We are well into the cold season here so its more needed now than ever
  • As a starting point, I've added a Thermostat to the Virtual Devices App (beta-release 0.6.6). For now, you can only set the target temperature and the thermostat mode.
    Next step is to add a sensor, but perhaps this may already be useful.
    Awesome app. Very good device. 
  • @Arie_Laxed & @TedTolboom

    Any progress to report..
    We are well into the cold season here so its more needed now than ever
    Sorry, no progress. I took a small break since the last update to work on some other project (or hobbies, actually). 
    I’ll probably continue with VD next week. 

    @LyoshaDovolen
    Thanks for the suggestion and thinking along. 
  • @Arie_Laxed
    Due to delayed development i decided to go with your Virtual Stats and create flows with them. I have to say they really nearly achieve everything.

    In my opinion, if you could somehow tie a tag to the current temperature of the virtual stat that would be good enough for me.

    I would see it as either I can select several temp sensors from a zone and it averages
    .. or .. it can somehow reference a logic tag set elsewhere
    .. or... the stat has a settable current temp

    if you can achieve either of those then I would be happy to pay the bounty for this
  • @konradwalsh
    I just published 0.7.0 in the Beta-channel and hopefully it brings you a step further. You can add a Measure Temperature to a Virtual Device with class Thermostat. You have to add a new device, though.
    You can set the Measure Temperature in a flow. This is described in:
    https://arjankranenburg.github.io/virtual-devices/sensor

    Let me know if you need any help.
    Can you calculate the average temp with an app like better logic?
  • @Arie_Laxed
    Yes this will work fine. I already calculate an average of all temp senors with Better Logic
    You have done a fine job. I would like to see how far you might take this.
    Either way, its providing what I need and even though doesn't hit all my asks, it allows me to achieve all of my asks.

    So I am happy to pay my raised amount.
    @jaimevisser & @lazerthomas - if you agree, then @Arie_Laxed has achieved what we requested
    Konrad Walsh - €35
    jaimevisser - €5
    lazerthomas - €30


    @Arie_Laxed - can you PM be your paypal address

  • @Arie_Laxed Found your donate button
    Payment made ... thanks

    Receipt number: 4S9604245J268614J
Sign In or Register to comment.