Page 1 of 2 12 LastLast
Results 1 to 10 of 14

Thread: Welcome Dan Robinson

  1. #1
    Automated Home Legend top brake's Avatar
    Join Date
    Feb 2015
    Location
    the edge of the cloud
    Posts
    837

    Default Welcome Dan Robinson

    Dan is a Honeywell Connected Specialist and will be a real asset to this forum. Say hi to him?
    I work for Resideo, posts are personal and my own views.

  2. #2
    Automated Home Ninja Dan_Robinson's Avatar
    Join Date
    Jun 2012
    Posts
    347

    Default

    Cheers TB. Hopefully can be of use, as well as learn some tricks.


    Certainly interested to learn about the API stuff. Perhaps some diagnostic tools could be created from it?

  3. #3

    Default

    Welcome Dan, great to have your expertise here

    Thanks

    M.
    Last edited by Otto-Mate; 24th October 2015 at 10:05 PM. Reason: typo

  4. #4
    Automated Home Ninja Dan_Robinson's Avatar
    Join Date
    Jun 2012
    Posts
    347

    Default

    Cheers Otto.

    Blame TB. it's all his fault 😛

  5. #5
    Automated Home Sr Member
    Join Date
    Oct 2015
    Posts
    80

    Default

    Hello Dan....

    Sure think you are going to help - a lot - I've just had entire large house old heating & HW system removed and replaced with a new one using EvoHome to manage every aspects. There are definitely holes in the available info and facilities and I'll post those as seperate threads to keep things neat and tidy.

  6. #6
    Automated Home Sr Member
    Join Date
    Oct 2014
    Posts
    84

    Default

    Dan, if it's any help I wrote a small Windows tool that simply spews out raw data for the Evohome system it's connected to.

  7. #7
    Automated Home Ninja Dan_Robinson's Avatar
    Join Date
    Jun 2012
    Posts
    347

    Default

    Sounds interesting Fursty. How does it connect with Evo? Through the TCC cloud?

  8. #8
    Automated Home Sr Member
    Join Date
    Oct 2014
    Posts
    84

    Default

    Yep, normal TCC login.

  9. #9
    Automated Home Legend paulockenden's Avatar
    Join Date
    Apr 2015
    Location
    South Coast
    Posts
    1,684

    Default

    Here's a short extract from my column the issue of PC Pro that'll be out early next month. You'll have to buy it if you want the whole thing:

    ....So letís have a quick look at how this might work. Iím not going to provide a complete program listing here Ė long gone are the days when we did that in PC Pro. Iíll give you some pointers though, using Python as thatís probably the closest thing to pseudo-code that we have these days.

    The first think we need to do is make a JSON post to the Honeywell server.

    url = 'https://rs.alarmnet.com/TotalConnectComfort/WebAPI/api/Session'
    postdata = {'Username':USERNAME, 'Password':PASSWORD, 'ApplicationId':'91db1612-73fd-4500-91b2-e63b069b185c'}
    headers = {'content-type':'application/json'}
    response = requests.post(url,data=json.dumps(postdata),header s=headers)
    userinfo = json.loads(response.content)


    The username and password are the ones you use to log in to Evohome on your smartphone app. That ApplicationId is something youíll find if you fire up Wireshark and sniff the data between the app and cloud servers. It appears to be the same for all users, but I guess this is one thing that Honeywell could start to use to close the system down to unauthorised users, should they ever decide to. But for now I think your scripts will be fine using this id.

    As youíll see from the code, after posting the username, password and id, the cloud servers return a JSON response, in this case containing two things we need to post further commands, a userid and a session id:

    userid = userinfo['userInfo']['userID']
    sessionId = userinfo['sessionId']


    Once we have those, we can start to issue further requests, for example:

    url = 'https://rs.alarmnet.com/TotalConnectComfort/WebAPI/api/locations?userId=%s&allData=True' % userid
    headers['sessionId'] = sessionId
    response = requests.get(url,data=json.dumps(postdata),headers =headers)
    fullData = json.loads(response.content)[0]


    More JSON data, this time containing information about the various zones. To extract it youíd use something like this:

    for device in fullData['devices']:
    print device['thermostatModelType'], device['deviceID'], device['name'], device['thermostat']['indoorTemperature']


    You should see data returned that looks something like this:

    DOMESTIC_HOT_WATER 111111 53.0
    EMEA_ZONE 111112 Bathroom 20.5
    EMEA_ZONE 111113 Lounge 21.0
    EMEA_ZONE 111114 Hallway 19.0
    EMEA_ZONE 111115 Bedroom 19.5
    EMEA_ZONE 111116 Kitchen 20.0
    EMEA_ZONE 111117 Loo 19.0
    Etc.


    Those 111111 numbers will be unique to your installation (I didnít want to print mine, just in case one of you manages to work out how to turn my hot water off!) The numbers at the end are your zone temperatures, obviously.

    Once you have this data itís easy to log them in a database, to see how your house temperatures vary over time, over the course of a day perhaps, or the course of a year. You can even use one of the online data visualisation tools such as dygraphs, D3.js, Google Charts, Datawrapper or plot.ly to see pretty charts of your room temperatures. Iíd suggest that you poll the data every ten minutes or so. You certainly donít need anything more frequent than that (room temperatures donít change particularly quickly) and if you do youíre likely to get yourself banned from the Honeywell servers, and perhaps endanger the viability of the whole hobbyist and tinkerer community.

    Itís great fun extending Evohome like this, and hopefully these code fragments will give you some inspiration. If youíd prefer a bit less work there are examples of other peoplesí work out there, particularly on places like Github. But I always think itís better if you can roll your own code because youíll really get to understand what is going on under the hood.


    Like I said, you'll need to wait for just a bit longer to read the whole article, where I also cover things like IFTTT and the effects that finer control over heating can have on your daily living.


    P.

  10. #10
    Automated Home Ninja Dan_Robinson's Avatar
    Join Date
    Jun 2012
    Posts
    347

    Default

    As it happens I am a subscriber... although a couple of editions behind at the moment.
    Kind Regards - Dan Robinson (Jennings Heating Ltd)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •