Announcement

Collapse
No announcement yet.

Apple Homekit(Siri) integration with Homeseer

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    status updates

    First of all, thank you to all of you for your hard work in getting homekit integrated with homeseer! Great stuff.

    Sorry if this is a dumb question, but no matter what method we use: nfarina's homebridge, fraggels plugin, or stipus' solution - we can't get status updated in real time using homekit apps correct? We have to leave the apps or flip screens so that it refreshes and gets the new data?

    I attached a screenshot. I'm using the native Home app new to ios 10. If i lock my door, it sticks on "unlocking..." unless I leave the page and come back. I'm using Stipus' solution right now. It would be nice if somehow we could setup some sort of polling to send status updates to homekit. Don't know if that's possible or not. Thank you again to all!
    Attached Files

    Comment


      My solution does not support polling.

      As far as I understand HomeKit, I think only a real plugin (such as fraggel's) could send HomeKit updates in real time.
      --
      stipus

      Comment


        Originally posted by Rien du Pre View Post
        Hi Stipus,

        Do you have time and is it possible to add the new supported iOS 10 accessories to the HomeKit bridge?

        Like there is now:
        - Camera support
        - Doorbell support
        - Air conditioners
        - Air purifiers
        I just had a quick look and I think it's not possible yet.

        - My HomeSeer platform for HomeBridge uses HomeBridge
        - HomeBridge uses HAP-NodeJS
        - Node-JS has not been updated yet for these new accessories.

        Once Node-JS has been updated, I need to find some time to create a real plugin for HomeBridge.
        --
        stipus

        Comment


          Originally posted by stipus View Post
          My solution does not support polling.

          As far as I understand HomeKit, I think only a real plugin (such as fraggel's) could send HomeKit updates in real time.
          I'be read conflicting messages about whether fraggel's plugin support real time updates. I got the impression it did so in the past but not anymore. Can anyone confirm?

          Comment


            Randman- I don't think fraggel's plugin supports real time updates. I tried it without success.

            Has anyone tried using the new home app on ios 10? I'm currently using stipus' solution for all kinds of devices and it works fantastic. But for locks and alarm panels i have weird behavior on those particular devices. If I control them from my iDevice it will update and show correct statuses. But if I unlock/lock the door or arm/disarm the panel from the actual device the locks/alarm panel will just go to an "unlocking" and "arming" status until I control it again from my iDevice. Doesn't matter if I refresh the app or not. Weird thing is only the little icon is messed up. If you look at the top of my screenshot it clearly says the alarm panel is armed, yet their little icon shows "arming". Weird. Seems like a home app bug. If anyone else has ran into this let me know.
            Attached Files

            Comment


              I'm going to start playing around the Home on ios10 this weekend but I don't expect much to change. For what little I've read about the HK API it doesn't look like accessory status push is some thing that's supported. Does anyone have an "official" Homekit accessory and, if so, does it support local control? This would give us some insight into whether or not an accessory can push status upstream.

              --Ken
              "if I have seen further [than others], it is by standing on the shoulders of giants." --Sir Isaac Newton (1675)

              Comment


                kenm - were you able to do any testing with home on ios? If so, did you find out anything?

                I did some more testing and found that my issue is with the Lock, SecuritySystem, and GarageDoorOpener types specifically and their status in the Home app. The accessories themselves work fine. They lock/unlock, arm/disarm, and open/close as they should. However, they won't display the correct status if:

                SecuritySytem - if my system is disarmed, it just displays "Arming...". if any other state it shows correctly.

                Lock - if my lock is locked, it just displays "Unlocking...". if unlocked it shows correctly.

                GarageDoorOpner - if the door is closed, it just displays "Opening...". if open it shows correctly.

                I'm not sure if this is a bug with stipus solution, the hap-nodejs code, or something else I'm doing wrong (probably most likely). If anyone else is willing to share what they've found so far I'd really appreciate it. Great stuff in this thread!
                Attached Files

                Comment


                  Originally posted by randman View Post
                  I'be read conflicting messages about whether fraggel's plugin support real time updates. I got the impression it did so in the past but not anymore. Can anyone confirm?
                  The only third party interface that I'm aware of that supports real time updates is wposner's HSMetro interface: http://board.homeseer.com/showthread.php?t=172504 and it's a bit of a kludge, using a separate proxy to listen for Homeseer update broadcasts and updating the interface that way. The reason for the proxy is that Homeseer doesn't support any kind of real time updating via the API. You have to listen for the update broadcasts via raw TCP on a different port.

                  Though I suppose it might be possible to use that same method with Homebridge.

                  Comment


                    Originally posted by sschindler View Post
                    kenm - were you able to do any testing with home on ios? If so, did you find out anything?

                    I did some more testing and found that my issue is with the Lock, SecuritySystem, and GarageDoorOpener types specifically and their status in the Home app. The accessories themselves work fine. They lock/unlock, arm/disarm, and open/close as they should. However, they won't display the correct status if:

                    SecuritySytem - if my system is disarmed, it just displays "Arming...". if any other state it shows correctly.

                    Lock - if my lock is locked, it just displays "Unlocking...". if unlocked it shows correctly.

                    GarageDoorOpner - if the door is closed, it just displays "Opening...". if open it shows correctly.

                    I'm not sure if this is a bug with stipus solution, the hap-nodejs code, or something else I'm doing wrong (probably most likely). If anyone else is willing to share what they've found so far I'd really appreciate it. Great stuff in this thread!
                    I'm having similar issues on iOS 10. It looks like a combination of caching and updating status. For instance, I was having the exact same problem you were having with my locks and garage door opener (I don't have an alarm) yesterday when I first upgraded to iOS 10. This morning, when I went to test again (door closed and locks locked), I ran into the opposite problem: status was correct when closed/locked, but if I open/unlock, the status gets stuck at opening/unlocking, until I close/lock again.

                    I did notice when I first launched the Home app, that it spent a few seconds updating the status of all my devices. And there are a whole bunch of corresponding events in Homebridge at that time requesting status of various devices. I would imagine that this may be where the caching of devices status by Homebridge comes in.

                    I also noticed that there is no feedback from Homebridge whether or not Homeseer actually completed the requested action, only that Homebridge successfully made the request. As long as Homebridge was able to make the request to Homeseer, it considers the change to be successfully made, whether Homeseer was successful in making the change or not. There is no response from Homeseer to Homebridge (see my reply above regarding HSMetro) nor is there any follow up query from Homebridge to Homeseer checking to see if the change was successful. One of those two things probably needs to happen.

                    Comment


                      The problem is that if the accessory reports a different current/target state, Home app will show the transitional state (aka "Unlocking..."). Check out my debug.

                      Lock Current State is reporting value of 1 (secured)

                      Lock Target State is reporting a value of 0 (unsecured)

                      Therefore we get the transitional state. Maybe Stipus or someone with some more knowledge of homekit would be able to tell us why target state gets value of 0 and if that's correct.
                      Attached Files

                      Comment


                        Originally posted by sschindler View Post
                        kenm - were you able to do any testing with home on ios? If so, did you find out anything?

                        I did some more testing and found that my issue is with the Lock, SecuritySystem, and GarageDoorOpener types specifically and their status in the Home app. The accessories themselves work fine. They lock/unlock, arm/disarm, and open/close as they should. However, they won't display the correct status if:

                        SecuritySytem - if my system is disarmed, it just displays "Arming...". if any other state it shows correctly.

                        Lock - if my lock is locked, it just displays "Unlocking...". if unlocked it shows correctly.

                        GarageDoorOpner - if the door is closed, it just displays "Opening...". if open it shows correctly.

                        I'm not sure if this is a bug with stipus solution, the hap-nodejs code, or something else I'm doing wrong (probably most likely). If anyone else is willing to share what they've found so far I'd really appreciate it. Great stuff in this thread!
                        Hi sschindler,

                        Sorry for the late reply. I've been swamped at work and home for the last week or so. I did get a little time to play around with Home and Homekit on ios10 and here's what I've observed:

                        1. To take full advantage of HK in ios10 you need to setup either an aTV gen 4 or an iPad and designate it as a hub. For remote access it needs to be an aTV gen 4.

                        2. The Homekit Accessory Protocol (HAP) is only available to MFi partners which has to be a company making accessories. No individuals so it's hard for any DIY'er to get access to the protocol.

                        3. In the HK model the accessory is responsible for updating it's "status" which is called a "service characteristic" in the protocol. As I see it the current implementation of Homekit bridge doesn't update accessory status. Instead it's more of a one-way command handler that passes commands from an HK app to a bridge plugin (platform) that then handles the command. Works fine if you want to use Siri to control HomeSeer devices via HK but not so well if you're trying to use the Home app with HS devices.

                        4. The only way I see that this can be made two-way is for a HS plugin to not only handle the HK accessory commands coming from an HK app but to also listen for all device updates within HomeSeer and send accessory characteristic updates back to the HK app. While polling is possible I'd think that it would be really slow with a large number of devices.

                        Disclaimer: This is just my opinion and observations and they may be completely wrong.

                        Since I don't use voice commands (my wife always thinks I'm talking to her) I'm going to stick with HSTouch for now as I think it's more of a "known" despite a few shortcomings.

                        --Ken
                        "if I have seen further [than others], it is by standing on the shoulders of giants." --Sir Isaac Newton (1675)

                        Comment


                          Trouble with thermostats

                          Hi All,

                          Firstly, many thanks to all who have contributed on this thread - it is an amazingly useful addition to Homeseer and I know many people have spent a lot of time getting it as far at it is.

                          I have successfully got homebridge-homeseer running on my Windows 7 machine and have switches/light bulbs and temp sensors running. I have also tried to setup a thermostat. I have an Evohome thermostat with lots of zones - but lets just focus on a single one. I have managed to get the current temperature of the zone reporting successfully but nothing else. Despite the homebridge log displaying the correct set point from the relevant Homeseer device, the accessory in HomeKit shows no set point and "No Response".

                          The HomeSeer devices controlling my Evohome setup are virtual ones that I have created and which communicate to my Evohome thermostat by my own script. There is also a virtual device to control the heating state of the Evohome and I include this in the homebridge heating status and control sections.

                          The relevant section in my config.json is as follows:

                          {
                          "ref":820,
                          "type":"Thermostat",
                          "name":"Heating",
                          "temperatureUnit":"C",
                          "setPointRef":821,
                          "setPointReadOnly":false,
                          "stateRef":830,
                          "stateOffValues":[1],
                          "stateHeatValues":[4],
                          "stateCoolValues":[2],
                          "stateAutoValues":[0],
                          "controlRef":830,
                          "controlOffValue":1,
                          "controlHeatValue":4,
                          "controlCoolValue":2,
                          "controlAutoValue":0
                          },

                          Any help anyone can give is much appreciated.

                          Regards,

                          Alan

                          Comment


                            Originally posted by stipus View Post
                            I just had a quick look and I think it's not possible yet.

                            - My HomeSeer platform for HomeBridge uses HomeBridge
                            - HomeBridge uses HAP-NodeJS
                            - Node-JS has not been updated yet for these new accessories.

                            Once Node-JS has been updated, I need to find some time to create a real plugin for HomeBridge.
                            Hi,

                            HAP-NodeJS has been updated to include at least Camera support last week, didn't check on the other new types.

                            I updated the HAP-NodeJS to version 0.4.10 manually, but that breaks my homebridge installation.

                            Any help would be greatly appreciated.
                            Regards,

                            Rien du Pre
                            The Netherlands
                            Using:
                            Homeseer PRO latest HS4 BETA on a Raspberry
                            Plugin's:
                            RFXCOM, mcsMQTT, Z-Wave

                            Comment


                              Rien du Pre,

                              I have camera support working. See my attached image.

                              It broke my homebridge installation too. The only solution was to reinstall homebridge and that fixed it.

                              To everyone else,

                              I modified Stipus' code to add additional "get" commands to set the proper "targetvalue" for devices like locks, garage doors, and alarm systems. This makes the home app work properly if a change is made outside the app. It's not the same as homeseer pushing the new status (which i understand may be done eventually by a plugin), but when you refresh the home app it displays the proper values correctly now.
                              Attached Files

                              Comment


                                Originally posted by sschindler View Post
                                Rien du Pre,

                                I have camera support working. See my attached image.

                                It broke my homebridge installation too. The only solution was to reinstall homebridge and that fixed it.

                                To everyone else,

                                I modified Stipus' code to add additional "get" commands to set the proper "targetvalue" for devices like locks, garage doors, and alarm systems. This makes the home app work properly if a change is made outside the app. It's not the same as homeseer pushing the new status (which i understand may be done eventually by a plugin), but when you refresh the home app it displays the proper values correctly now.
                                This is great news.

                                Can you please help me(us) and share the modified code code you used and in particular the camera configuration.

                                I use the windows Node.js installation for the Homebridge, what do you use?
                                Regards,

                                Rien du Pre
                                The Netherlands
                                Using:
                                Homeseer PRO latest HS4 BETA on a Raspberry
                                Plugin's:
                                RFXCOM, mcsMQTT, Z-Wave

                                Comment

                                Working...
                                X