Announcement

Collapse
No announcement yet.

Apple Homekit(Siri) integration with Homeseer

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

    I've been running nfarina's node.js server for HomeKit integration. Early on, it was my only option, since I run on Linux. It still works great, and looks like there active development. It's a bit more complicated to install. But it integrates with Homeseer via the JSON API rather than as a plugin.

    https://github.com/nfarina/homebridge

    Comment


      If a device's status changes (for example if someone manually turns on a light by hand), and the iOS HomeKit app is already running, does the device's status automatically update on the iOS APP if using the nfarina methodt?

      How about the fraggel plugin? Documentation at one point said it supports status updates, but a forum thread entry later said that status updates is no longer available. So does it or does it not support status updates?

      Or, do iOS apps just poll to get status updates so an iOS app will eventually show the correct status if already running when a device's status changes? If status updates aren't sent asynchronously, then we can't use HomeKit to trigger events (though I plan on using HomeSeer still for my events).

      Comment


        Originally posted by randman View Post
        If a device's status changes (for example if someone manually turns on a light by hand), and the iOS HomeKit app is already running, does the device's status automatically update on the iOS APP if using the nfarina methodt?

        How about the fraggel plugin? Documentation at one point said it supports status updates, but a forum thread entry later said that status updates is no longer available. So does it or does it not support status updates?

        Or, do iOS apps just poll to get status updates so an iOS app will eventually show the correct status if already running when a device's status changes? If status updates aren't sent asynchronously, then we can't use HomeKit to trigger events (though I plan on using HomeSeer still for my events).

        With HomekitBridge and Home App I can confirm that it does NOT automatically update IF you have that Device option in iOS app. HOWEVER, if you just come back to the device in that app, it will show updated status. Guess the app just requests status when you first go to the page with the device on it. Also, not sure if this is an HomekitBridge limitation or the Home App's.

        Comment


          Originally posted by ian351c View Post
          I've been running nfarina's node.js server for HomeKit integration. Early on, it was my only option, since I run on Linux. It still works great, and looks like there active development. It's a bit more complicated to install. But it integrates with Homeseer via the JSON API rather than as a plugin.

          https://github.com/nfarina/homebridge
          Yes, I'm also interested if there is a way for iOS app to show realtime statuses using nfarina's server. Are you willing to share your config file? I'd love to see examples of this for a number of types of devices.

          I had this nfarina's server running before to try and get it working with the Json Config For HomeKit plugin and while I got nfarina's server up no issues (complex install), that JsonConfigForHomeKit3 fell flat. Did not work, and ZERO I mean ZEROOOO support. I suspect that plugin is not supported officially. That or they are striving for 3 year reply times. :P

          Comment


            Originally posted by iDVB View Post
            With HomekitBridge and Home App I can confirm that it does NOT automatically update IF you have that Device option in iOS app. HOWEVER, if you just come back to the device in that app, it will show updated status. Guess the app just requests status when you first go to the page with the device on it. Also, not sure if this is an HomekitBridge limitation or the Home App's.
            The documentation in the HomekitBridge link you mentioned still says "Realtime update of statusinformation on the iDevice". I guess that isn't right then? So other than the ease of use of HomekitBridge (e.g. no need for Node.js and potentially separate Linux server), are there any pros/cons of using HomekitBridge versus nfarina? I already have an Ubuntu server with Node.js so wondering which option is the best way to go.

            Comment


              Does it work with HS2

              Sorry to bother you with HS2 questions but the latest post in the HS2 forum on the subject is from 2013 and dead for a long time.

              Can anyone help getting Siri integration work with HS2.
              Here is what I did so far

              Installed node.js on a Linux machine
              Installed Homebridge by nfarina on the same Linux machine
              Paired the Homebridge with my iPhone 6
              Dowloaded the "legacy plug-in" for Homebridge homeseer.js on the same machine but I don't know what to do with it
              Installed json api on my HS2 Windows 7 computer

              It's my understanding that the trick is to have an easy way to create
              config.json file for Homebridge containing the real names of devices and events in HomeSeer. If those are aptly named Siri will do the trick recognizing them. Doing it manually is an enormous task unless one wants to test it with very few entries.

              Anyone done it in HS2 ?

              Thanks
              RI2

              P.S. I'm running HS2 Pro since I'm reluctant to upgrade to HS3 because I have too many devices (over 500), too many events (over 500) and too many custom scripts (over 150) and there is no clear path and/or guarantee that an upgrade will be successful.

              Comment


                Originally posted by iDVB View Post
                Yes, I'm also interested if there is a way for iOS app to show realtime statuses using nfarina's server. Are you willing to share your config file? I'd love to see examples of this for a number of types of devices.

                I had this nfarina's server running before to try and get it working with the Json Config For HomeKit plugin and while I got nfarina's server up no issues (complex install), that JsonConfigForHomeKit3 fell flat. Did not work, and ZERO I mean ZEROOOO support. I suspect that plugin is not supported officially. That or they are striving for 3 year reply times. :P
                I'm pretty sure that Homeseer doesn't support device updates via the API (see the early entries in the HSMetro thread). The nfarina node.js implementation probably polls the devices as you go to the different pages in whatever HomeKit app you use on your iDevice.

                I'm happy to share my configs, I just need to get back in front of my computer first. :-)

                Comment


                  Configs as promised (trimmed for space):

                  config.json
                  Code:
                  {
                      "bridge": {
                          "name": "Homebridge",
                          "username": “XX:XX:XX:XX:XX:XX”,
                          "port": 12345,
                          "pin": “111-00-111”
                      },
                      
                      "description": "Ian's House.",
                  
                      "platforms": [
                      {
                          "platform": "HomeSeer",
                          "name": "HomeSeer",
                          "host": "http://username:password@homeseer.local:80",
                          "accessories":[
                          {
                              "ref":140, 
                              "type":"Lightbulb",
                              "name":"Office Lights North",
                              "offValue":"0",
                              "onValue":"99",
                              "can_dim":true,
                              "uuid_base":"OfficeLightsNorth140"
                          },
                          {
                              "ref":141, 
                              "type":"Lightbulb",
                              "name":"Office Lights South",
                              "offValue":"0",
                              "onValue":"99",
                              "can_dim":true,
                              "uuid_base":"OfficeLightsNorth141"
                          },
                          {
                              "ref":173, 
                              "type":"Lightbulb",
                              "name":"Porch Light",
                              "offValue":"0",
                              "onValue":"99",
                              "can_dim":true,
                              "uuid_base":"PorchLight173"
                          },
                          {
                              "ref":323,
                              "type":"Lock",
                              "name":"Front Door Lock",
                              "lockUnsecuredValues":[0,1,16,17,32,33],
                              "lockSecuredValues":[255],
                              "lockJammedValues":[254],
                              "unlockValue":0,
                              "lockValue":255,
                              "uuid_base":"FrontDoorLock323"
                          },
                          {
                              "ref":352,
                              "type":"Door",
                              "name":"Front Door",
                              "uuid_base":"FrontDoorSensor352"
                          },
                          {
                              "ref":234,
                              "type":"TemperatureSensor",
                              "temperatureUnit":"F",
                              "name":"Front Room Temp",
                              "uuid_base":"FrontRoomTemp234"
                          },
                          {
                              "ref":131, 
                              "type":"Lightbulb",
                              "name":"Sink Light",
                              "offValue":"0",
                              "onValue":"255",
                              "can_dim":false,
                              "uuid_base":"KitchenSinkLight131"
                          },
                          {
                              "ref":147,
                              "type":"GarageDoorOpener",
                              "name":"Garage Door",
                              "stateRef":147,
                              "stateOpenValues":[255],
                              "stateClosedValues":[0],
                              "stateOpeningValues":[254],
                              "stateClosingValues":[252],
                              "stateStoppedValues":[253],
                              "controlRef":147,
                              "controlOpenValue":255,
                              "controlCloseValue":0,
                              "uuid_base":"GarageDoor147"
                          },
                          {
                              "ref":4,
                              "type":"Lightbulb",
                              "name":"Basement Lights",
                              "offValue":"0",
                              "onValue":"255",
                              "can_dim":false,
                              "uuid_base":"SecondBasementLights4"
                          },
                          {
                              "ref":394,
                              "type":"Thermostat",
                              "name":"South Thermostat",
                              "temperatureUnit":"F",
                              "setPointRef":410,
                              "setPointReadOnly":false,
                              "stateRef":409,
                              "stateOffValues":[0,4,5],
                              "stateHeatValues":[1],
                              "stateCoolValues":[2],
                              "stateAutoValues":[3],
                              "controlRef":408,
                              "controlOffValue":0,
                              "controlHeatValue":1,
                              "controlCoolValue":2,
                              "controlAutoValue":3,
                              "coolingThresholdRef":169,
                              "heatingThresholdRef":170,
                              "uuid_base":"SouthThermostat394"              
                          }
                          ]
                      }
                      ]
                  }

                  Comment


                    Originally posted by iDVB View Post
                    I'm getting the same error in the logs and also not getting the JsonConfigForHomekit tab on any of my devices.

                    Code:
                    Calling ConfigDevice in plugin JsonConfigForHomekit:Object variable or With block variable not set.
                    When I go into the Homeseer root...
                    /HomeSeer HS3/
                    ...I also do not see any file "Newtonsoft.Json.dll". However I DO see that file in...
                    /HomeSeer HS3/Bin/JsonConfigForHomekit/

                    Not sure how to fix this.
                    THat is correct.

                    Can you sent me some more logging with debug on ?
                    Regards,

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

                    Comment


                      Wow, I'm so confused. What is everyone using for Homeseer+Homekit?
                      I have node HomeBridge by nfarina working.

                      So far I've tried:
                      • HomekitBridge by Fraggel
                        • ISSUE: Crashes in many scenerios when assigning to devices in Homeseer
                        • ISSUE: Does not have Garage Door or Thermostat Device
                      • Json Config For HomeKit by Rien du Pre
                        • ISSUE: Config Tab never appears under the Homeseer device.
                      • nfarina/homebridge + "accessory": "Http"
                        • ISSUE: "accessory": "Http" types do not show up in the iOS app. Just the bridge shows.
                      • homebridge-legacy-plugins + Homeseer.js
                        • ISSUE: Does not seem to show the accessory in the iOS app. However, homekitbridge starts up ok and identifies the platform accessory.



                      homebridge-legacy-plugins + Homeseer.js
                      output
                      PHP Code:
                      [6/5/20163:04:45 PMLoaded pluginhomebridge-http
                      [6/5/20163:04:45 PMRegistering accessory 'homebridge-http.Http'
                      [6/5/20163:04:45 PM] ---
                      [
                      6/5/20163:04:45 PMLoaded pluginhomebridge-legacy-plugins
                      [6/5/20163:04:45 PMRegistering accessory 'homebridge-legacy-plugins.AD2USB'
                      [6/5/20163:04:45 PMRegistering accessory 'homebridge-legacy-plugins.Carwings'
                      [6/5/20163:04:45 PMRegistering accessory 'homebridge-legacy-plugins.ELKM1'
                      [6/5/20163:04:45 PMRegistering accessory 'homebridge-legacy-plugins.FileSensor'
                      [6/5/20163:04:45 PMRegistering accessory 'homebridge-legacy-plugins.GenericRS232Device'
                      [6/5/20163:04:45 PMRegistering accessory 'homebridge-legacy-plugins.HomeMatic'
                      [6/5/20163:04:45 PMRegistering accessory 'homebridge-legacy-plugins.HomeMaticThermo'
                      [6/5/20163:04:45 PMRegistering accessory 'homebridge-legacy-plugins.HomeMaticWindow'
                      [6/5/20163:04:45 PMRegistering accessory 'homebridge-legacy-plugins.HttpGarageDoorOpener'
                      [6/5/20163:04:45 PMRegistering accessory 'homebridge-legacy-plugins.HttpHygrometer'
                      [6/5/20163:04:45 PMRegistering accessory 'homebridge-legacy-plugins.HttpThermometer'
                      [6/5/20163:04:45 PMRegistering accessory 'homebridge-legacy-plugins.mpdclient'
                      [6/5/20163:04:46 PMRegistering accessory 'homebridge-legacy-plugins.Tesla'
                      [6/5/20163:04:46 PMRegistering accessory 'homebridge-legacy-plugins.X10'
                      [6/5/20163:04:46 PMRegistering platform 'homebridge-legacy-plugins.Domoticz'
                      [6/5/20163:04:46 PMRegistering platform 'homebridge-legacy-plugins.HomeAssistant'
                      [6/5/20163:04:46 PMRegistering platform 'homebridge-legacy-plugins.HomeSeer'
                      [6/5/20163:04:46 PMRegistering platform 'homebridge-legacy-plugins.ISY'
                      [6/5/20163:04:46 PMRegistering platform 'homebridge-legacy-plugins.LIFx'
                      [6/5/20163:04:46 PMRegistering platform 'homebridge-legacy-plugins.SmartThings'
                      [6/5/20163:04:46 PMRegistering platform 'homebridge-legacy-plugins.TelldusLive'
                      [6/5/20163:04:46 PMRegistering platform 'homebridge-legacy-plugins.ZWayServer'
                      [6/5/20163:04:46 PM] ---
                      [
                      6/5/20163:04:46 PMLoaded config.json with 0 accessories and 1 platforms.
                      [
                      6/5/20163:04:46 PM] ---
                      [
                      6/5/20163:04:46 PMLoading 1 platforms...
                      [
                      6/5/20163:04:46 PM] [HomeSeerInitializing HomeSeer platform...
                      Loading legacy platform HomeSeer
                      [6/5/20163:04:46 PM] [HomeSeerFetching HomeSeer devices.
                      [
                      6/5/20163:04:46 PM] [HomeSeerHomeSeer status function succeeded!
                      [
                      6/5/20163:04:46 PM] [HomeSeerInitializing platform accessory 'My Light'...
                      [
                      6/5/20163:04:45 PMLoaded pluginhomebridge-http
                      [6/5/20163:04:45 PMRegistering accessory 'homebridge-http.Http'
                      [6/5/20163:04:45 PM] ---
                      [
                      6/5/20163:04:45 PMLoaded pluginhomebridge-legacy-plugins
                      [6/5/20163:04:45 PMRegistering accessory 'homebridge-legacy-plugins.AD2USB'
                      [6/5/20163:04:45 PMRegistering accessory 'homebridge-legacy-plugins.Carwings'
                      [6/5/20163:04:45 PMRegistering accessory 'homebridge-legacy-plugins.ELKM1'
                      [6/5/20163:04:45 PMRegistering accessory 'homebridge-legacy-plugins.FileSensor'
                      [6/5/20163:04:45 PMRegistering accessory 'homebridge-legacy-plugins.GenericRS232Device'
                      [6/5/20163:04:45 PMRegistering accessory 'homebridge-legacy-plugins.HomeMatic'
                      [6/5/20163:04:45 PMRegistering accessory 'homebridge-legacy-plugins.HomeMaticThermo'
                      [6/5/20163:04:45 PMRegistering accessory 'homebridge-legacy-plugins.HomeMaticWindow'
                      [6/5/20163:04:45 PMRegistering accessory 'homebridge-legacy-plugins.HttpGarageDoorOpener'
                      [6/5/20163:04:45 PMRegistering accessory 'homebridge-legacy-plugins.HttpHygrometer'
                      [6/5/20163:04:45 PMRegistering accessory 'homebridge-legacy-plugins.HttpThermometer'
                      [6/5/20163:04:45 PMRegistering accessory 'homebridge-legacy-plugins.mpdclient'
                      [6/5/20163:04:46 PMRegistering accessory 'homebridge-legacy-plugins.Tesla'
                      [6/5/20163:04:46 PMRegistering accessory 'homebridge-legacy-plugins.X10'
                      [6/5/20163:04:46 PMRegistering platform 'homebridge-legacy-plugins.Domoticz'
                      [6/5/20163:04:46 PMRegistering platform 'homebridge-legacy-plugins.HomeAssistant'
                      [6/5/20163:04:46 PMRegistering platform 'homebridge-legacy-plugins.HomeSeer'
                      [6/5/20163:04:46 PMRegistering platform 'homebridge-legacy-plugins.ISY'
                      [6/5/20163:04:46 PMRegistering platform 'homebridge-legacy-plugins.LIFx'
                      [6/5/20163:04:46 PMRegistering platform 'homebridge-legacy-plugins.SmartThings'
                      [6/5/20163:04:46 PMRegistering platform 'homebridge-legacy-plugins.TelldusLive'
                      [6/5/20163:04:46 PMRegistering platform 'homebridge-legacy-plugins.ZWayServer'
                      [6/5/20163:04:46 PM] ---
                      [
                      6/5/20163:04:46 PMLoaded config.json with 0 accessories and 1 platforms.
                      [
                      6/5/20163:04:46 PM] ---
                      [
                      6/5/20163:04:46 PMLoading 1 platforms...
                      [
                      6/5/20163:04:46 PM] [HomeSeerInitializing HomeSeer platform...
                      Loading legacy platform HomeSeer
                      [6/5/20163:04:46 PM] [HomeSeerFetching HomeSeer devices.
                      [
                      6/5/20163:04:46 PM] [HomeSeerHomeSeer status function succeeded!
                      [
                      6/5/20163:04:46 PM] [HomeSeerInitializing platform accessory 'My Light'...
                      Scan this code with your HomeKit App on your iOS device to pair with Homebridge
                      config.json
                      PHP Code:
                      {
                           
                      "bridge": {
                              
                      "name""HomeBridge",
                              
                      "username""[HIDDEN]",
                              
                      "port": [HIDDEN],
                              
                      "pin""[HIDDEN]"
                          
                      },
                          
                          
                      "description""HomeBridge HTTP Status Control",


                          
                      "platforms": [
                              {
                                  
                      "platform""HomeSeer",
                                  
                      "name""HomeSeer",
                                  
                      "host""http://192.168.1.100:8",

                                  
                      "accessories": [
                                      {
                                       
                      "ref":5,
                                       
                      "type":"Lightbulb",
                                       
                      "name":"My Light",
                                       
                      "offValue":"0",
                                       
                      "onValue":"100",
                                       
                      "can_dim":true,
                                       
                      "uuid_base":"12345678"
                                      
                      }
                                  ]

                              }
                          ]




                      "accessory": "Http" example
                      PHP Code:
                      {
                           
                      "bridge": {
                              
                      "name""HomeBridge",
                              
                      "username""[HIDDEN]",
                              
                      "port": [HIDDEN],
                              
                      "pin""[HIDDEN]"
                          
                      },
                          
                          
                      "description""HomeBridge HTTP Status Control",

                          
                      "accessories": [
                              { 
                                  
                      "accessory""Http"
                                  
                      "name""BackTest"
                                  
                      "on_url""http://192.168.1.100:80/JSON?request=controldevicebyvalue&ref=5&value=100"
                                  
                      "off_url""http://192.168.1.100:80/JSON?request=controldevicebyvalue&ref=5&value=0"
                                  
                      "http_method""GET" 
                              
                      }
                          ]

                      Last edited by iDVB; June 5, 2016, 02:26 PM.

                      Comment


                        GOT IT WORKING - with
                        nfarina/homebridge + homebridge-legacy-plugins +Homeseer.js

                        SOLVE: The camera Homekit reader in my iOS app was not working, but manually adding the number worked perfect.


                        Remaining issues:
                        - Not sure how my GarageDoor Opener will work. Behind the scenes in Homeseer its actually an Insteon Garage Door opener/sensor. Homeseer, seems to have configure it to show as two separate items. One for the control and one that contains the status.

                        I noticed that @ian351c seems to have his working in the config, but I guess that is because his is a homeseer native device?

                        Comment


                          Have a look at the HomeSeer.js config doc for the garagedoor opener. You can see it's possible to setup separate HomeSeer devices for control and status.
                          --
                          stipus

                          Comment


                            Trouble launching homebridge

                            I am running into a error when attempting to launch homebridge I was hoping someone could help me with. I have copied the homeseer.js file to the homebridge directory, and have a valid config.json according to jsonlint. I can control my system just fine using a plain http shim, but when attempting to launch the homebridge application with the homeseer platform in place i get this:

                            [7/14/2016, 10:03:16 PM] [HomeSeer] Fetching HomeSeer devices.
                            /usr/local/lib/node_modules/homebridge-legacy-plugins/platforms/HomeSeer.js:253
                            for( var i=0; i<this.config.accessories.length; i++ ) {
                            ^

                            TypeError: Cannot read property 'length' of undefined
                            at Object.HomeSeerPlatform.accessories (/usr/local/lib/node_modules/homebridge-legacy-plugins/platforms/HomeSeer.js:253:48)
                            at Server._loadPlatformAccessories (/usr/local/lib/node_modules/homebridge/lib/server.js:333:20)
                            at Server._loadPlatforms (/usr/local/lib/node_modules/homebridge/lib/server.js:277:16)
                            at Server.run (/usr/local/lib/node_modules/homebridge/lib/server.js:71:36)
                            at module.exports (/usr/local/lib/node_modules/homebridge/lib/cli.js:40:10)
                            at Object.<anonymous> (/usr/local/lib/node_modules/homebridge/bin/homebridge:17:22)
                            at Module._compile (module.js:398:26)
                            at Object.Module._extensions..js (module.js:405:10)
                            at Module.load (module.js:344:32)
                            at Function.Module._load (module.js:301:12)
                            at Function.Module.runMain (module.js:430:10)
                            at startup (node.js:141:18)
                            at node.js:980:3

                            Thank you in advance.

                            Comment


                              Getting Error when enabling Homebridge plugin

                              I am getting errors when I enable the homebridge plugin

                              Jul-16 10:01:12 PM Error Getting web page from plugin page Homekit bridge_Pairing:Object reference not set to an instance of an object.
                              Jul-16 9:59:18 PM Plug-In Finished initializing plug-in Homekit bridge
                              Jul-16 9:59:18 PM Error Initializing plug-in(2): Homekit bridge Instance::No Zeroconf providers could be found or initialized. Necessary daemon may not be running.STACK: Server stack trace: Exception rethrown at [0]: at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessag e(IMessage reqMsg, IMessage retMsg) at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(Mess ageData& msgData, Int32 type) at HomeSeerAPI.IPlugInAPI.InitIO(String port) at Scheduler.clsHSPI.CheckInterfaces()
                              Jul-16 9:59:17 PM Homekit bridge INFO: Homekit bridge has started on port 62387
                              Jul-16 9:59:17 PM Homekit bridge INFO: Homekit bridge - Starting server
                              Jul-16 9:59:17 PM Warning Attempt by plugin to register a duplicate link of Homekit bridge_Pairing. Plugin: Homekit bridge Instance:
                              Jul-16 9:59:17 PM Info Plugin Homekit bridge has connected. IP:127.0.0.1:62385
                              Jul-16 9:59:17 PM Plug-In Interface Homekit bridge is running as a trial, 30 days remaining.

                              Please advise what I am missing here.

                              Comment


                                Nest Thermostat control - Windows

                                I am having trouble with the thermostat control using Stipus homeseer.js file and two Nest thermostats. I am using Windows according to the instructions published by ewilliams. I can control the state of the thermostat (heat/cool/auto), but the temperature control does not update within Homeser. The log file says temperature updates are successful (and Siri says it's able to change the temperature), but they do not take effect. I am using Fahrenheit. I have placed "false" on the correct line for temperature status read only.

                                I have also tried to get the homeseer-nest plugin to work, but have no luck getting it installed in Windows.

                                Has anyone out there been able to control Nest thermostats with Homebridge and Windows and can provide some guidance?

                                Comment

                                Working...
                                X