Decoded - EvoHome API access to control remotely.

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts
  • Rozza
    Automated Home Lurker
    • Dec 2015
    • 7

    Happy to share my code, will just have to remove the login details which wouldnt take long,
    Tool wise its C# and sql server, and as MrB says once its in a database you can do what you want with it

    I much Prefer the look of SteveP's viewer to mine, I chucked mine together in a few hours but if I get some time I could look to change it, also happy to get involved in a more group version between people

    Comment

    • SteveP
      Automated Home Guru
      • Dec 2012
      • 191

      Originally posted by nico View Post
      SteveP the interface of your son is good, if you share it maybe I can find some time to work on it.
      You can check my work in the attached picture, data logging (measured and setpoint), 12h/24h/48h/week/month view, single zone temperature hideable from the graph, external temp from wheatherunderground. We could merge the works. My code is a little bit rough and customized form me, I should work on it to generalize as much as possible, but I don't have much time.
      Hi nico. I will talk to my son later once he is back from uni and see if he is happy to provide the code. I believe he wrote it in python. Would that be an issue for you merging with your app?

      Comment

      • Krejt
        Automated Home Jr Member
        • Jan 2016
        • 21

        Originally posted by SteveP View Post
        ....I believe he wrote it in python. Would that be an issue for you merging with your app?
        Yup, you can hardly combine Python and C# (See https://www.quora.com/How-does-Python-compare-to-C for a comparison). Both have pro's and con's. The choice for a particular platform is often directed by the hardware, OS and prior knowledge and experience people have. (My C is rusty beyond repair for example, but I manage Python, PHP, Perl etc. quite well) Given the differences it would be great to see the approaches you took! And things like retrieving data, storing it in database (and what database), retrieving data from the database and displaying it in a graph (and what graph, what toolkit/library) often don't differ that much!
        Evohomeclient temperatures on ThingSpeak: https://thingspeak.com/channels/79213

        Comment

        • rotor
          Automated Home Guru
          • Aug 2015
          • 124

          I'm in the process of writing detailed step-by-step instructions to setup a Linux machine from scratch that will use open-source projects to collect and graph the data. Once I'm happy with my setup I'll publish it here for others.

          - Based on CentOS 7
          - InfluxDB to collect the data
          - Grafana to graph it
          - Various Python libraries to tie it all together

          Comment

          • SteveP
            Automated Home Guru
            • Dec 2012
            • 191

            Hi all, SteveP's son here. I made my app using Python 3 with Django (web framework) and Andrew Stock's API, and am currently hosting it for free on OpenShift. The graphs are done using the HighCharts JavaScript library and the theme itself is based on Magga's app posted last year.

            I think it'd be beneficial to have a single GitHub repository for an EvoHome web app that we can all work on together. The web app could also be hosted publicly to allow anyone to sign-up and view temperature history by linking their EvoHome API key to their account. I think Django is the way to go considering the maturity of Andrew Stock's API and ease of development. While I don't have time to run the project myself, I'd be more than happy to contribute to it if someone sets it up. My GitHub is https://github.com/alpsquid

            Comment

            • paulockenden
              Automated Home Legend
              • Apr 2015
              • 1719

              Originally posted by SteveP View Post
              I think it'd be beneficial to have a single GitHub repository for an EvoHome web app that we can all work on together.
              Good idea.

              Comment

              • nico
                Automated Home Jr Member
                • Oct 2015
                • 14

                Cool, I can provide a very good hosting.
                I use Google Charts for the graphs, MySQL to store data (actually all on my Raspberry), bash scripting mixed to Andrew python api. But before sharing my code I really need to clean it up, generalize and refactor.
                Originally posted by SteveP View Post
                Hi all, SteveP's son here. I made my app using Python 3 with Django (web framework) and Andrew Stock's API, and am currently hosting it for free on OpenShift. The graphs are done using the HighCharts JavaScript library and the theme itself is based on Magga's app posted last year.

                I think it'd be beneficial to have a single GitHub repository for an EvoHome web app that we can all work on together. The web app could also be hosted publicly to allow anyone to sign-up and view temperature history by linking their EvoHome API key to their account. I think Django is the way to go considering the maturity of Andrew Stock's API and ease of development. While I don't have time to run the project myself, I'd be more than happy to contribute to it if someone sets it up. My GitHub is https://github.com/alpsquid

                Comment

                • sd84
                  Automated Home Lurker
                  • Dec 2015
                  • 6

                  Originally posted by paulockenden View Post
                  Good idea.
                  Yes good idea. I forked paul-777 c# library with the idea of creating a evohome.windows-service and evohome.web project to add to the solution using the nice css that was used by someone previously. A good idea would be to have one repository and everyone working on it. My issue is getting the time to work on this but would be keen to contribute.

                  Comment

                  • maurgaj
                    Automated Home Lurker
                    • Dec 2015
                    • 7

                    Originally posted by sd84 View Post
                    Yes good idea. I forked paul-777 c# library with the idea of creating a evohome.windows-service and evohome.web project to add to the solution using the nice css that was used by someone previously. A good idea would be to have one repository and everyone working on it. My issue is getting the time to work on this but would be keen to contribute.
                    I could collabrate in the project.
                    Where do you have forked the paul-777 project?
                    I don't see the fork at this address: https://github.com/paul-777/Evohome.Net

                    Comment

                    • MrB
                      Automated Home Sr Member
                      • Oct 2015
                      • 80

                      Some help please...

                      Either I've missed it or it doesn't exist anywhere in any of the returned data.

                      I'm looking for the DomesticHotWater required temperature (aka Setpoint). The Current Temp is no problem.
                      It's in the Wifi Controllers System Settings.
                      Obviously it's not something you're going to change every 30 mins, but I'm looking for 'completeness' of the returned data.

                      TIA.

                      Comment

                      • PaulB
                        Automated Home Sr Member
                        • Sep 2015
                        • 60

                        Originally posted by MrB View Post
                        Some help please...

                        Either I've missed it or it doesn't exist anywhere in any of the returned data.

                        I'm looking for the DomesticHotWater required temperature (aka Setpoint). The Current Temp is no problem.
                        It's in the Wifi Controllers System Settings.
                        Obviously it's not something you're going to change every 30 mins, but I'm looking for 'completeness' of the returned data.

                        TIA.
                        The only thing I can think of the is minCoolSetpoint variable, plus the minHeatSetpoint variable. I've not had chance to see yet, but I'm wondering if these will change with the setting of the hot water. I've got mine set to 55C with 5C variation, which works out to what those are set. Also looking at min/max setings on HR92's, it does look to tally with those aswell? Worth a punt...

                        Comment

                        • MrB
                          Automated Home Sr Member
                          • Oct 2015
                          • 80

                          My numbers for DHW are:

                          "minHeatSetpoint": 5.0000,
                          "maxHeatSetpoint": 30.0000,
                          "minCoolSetpoint": 50.0000,
                          "maxCoolSetpoint": 90.0000,
                          "changeableValues": {
                          "mode": "DHWOn",
                          "status": "Scheduled"
                          },
                          "scheduleCapable": false,
                          "vacationHoldChangeable": false,
                          "vacationHoldCancelable": false,
                          "scheduleHeatSp": 0.0000,
                          "scheduleCoolSp": 0.0000

                          And I'm set for 60/2 C

                          So the numbers are different from yours, but not what mine are set to. So they are used for "something"...

                          Anybody else got any clues?

                          Comment

                          • jzwack-honeywell
                            Automated Home Jr Member
                            • Jan 2016
                            • 36

                            I'm trying to check, I'm having a hard time finding a test account with a DHW zone on it.
                            developer.honeywell.com | I work for Honeywell. API Evangelist. Views are my own.

                            Comment

                            • Krejt
                              Automated Home Jr Member
                              • Jan 2016
                              • 21

                              At this moment the Total Connect servers and the API are down for maintenance. The evohomeclient spits an error "No JSON object could be decoded" everytime you try to read the temperatures. Can't something be made in the client to handle that error and/or this situation where the servers are down a little more gracefull?

                              Traceback (most recent call last):
                              File "/home/pi/Evohome/evospeak.py", line 105, in <module>
                              main()
                              File "/home/pi/Evohome/evospeak.py", line 62, in main
                              client = EvohomeClient(EVOHOMELOGIN,EVOHOMEPASS)
                              File "/usr/local/lib/python2.7/dist-packages/evohomeclient2/__init__.py", line 18, in __init__
                              self._login()
                              File "/usr/local/lib/python2.7/dist-packages/evohomeclient2/__init__.py", line 69, in _login
                              self.access_token = self._convert(r.text)['access_token']
                              File "/usr/local/lib/python2.7/dist-packages/evohomeclient2/base.py", line 32, in _convert
                              return json.loads(object)
                              File "/usr/lib/python2.7/json/__init__.py", line 338, in loads
                              return _default_decoder.decode(s)
                              File "/usr/lib/python2.7/json/decoder.py", line 366, in decode
                              obj, end = self.raw_decode(s, idx=_w(s, 0).end())
                              File "/usr/lib/python2.7/json/decoder.py", line 384, in raw_decode
                              raise ValueError("No JSON object could be decoded")
                              ValueError: No JSON object could be decoded
                              Evohomeclient temperatures on ThingSpeak: https://thingspeak.com/channels/79213

                              Comment

                              • jzwack-honeywell
                                Automated Home Jr Member
                                • Jan 2016
                                • 36

                                Two things:

                                1) The constant offline notifications should be gone or greatly reduced. Someone feel free to tell me if that's not the case. We fixed something late US time yesterday.

                                2) Yep, it's offline right now. API requests should be returning a 503 HTTP status code but we return HTML in the response body along with that (the offline page) so you could trigger from the status code.
                                developer.honeywell.com | I work for Honeywell. API Evangelist. Views are my own.

                                Comment

                                Working...
                                X