Homekit Bridge, Siri, iOS, Apple Watch Et Al...

Posted on
Wed Mar 31, 2021 11:44 pm
P15-D24 offline
User avatar
Posts: 110
Joined: Jun 25, 2005
Location: Santa Barbara, CA

Homekit Bridge, Siri, iOS, Apple Watch Et Al...

Only time I visit the forums is when I have an issue or trying to do something new. Because Indigo is so stable I rarely have to visit! :-). That said I just finished reading the thread about EOL support for Homekit Bridge (HKB) and the issues facing Indigo Domotics in building/supporting a software interface to Apple's Home app. Seems to me there are three potential paths:
1. Apple will allow software only solution and supported by Indigo. (Very unlikely with the current licensing limitations Apple is imposing)
2. Some vendor comes up with a certified hardware interface. ( Even more unlikely as they will probably never see a profit based on potential market size.)
3. Enhance/build an updated Indigo iOS app/Apple Watch app that uses the Siri interface interfacing directly to Indigo, bypassing Apple's Home app. I don't know how robust the Siri API is for building voice interfaces but assuming it provides a core functionality to send command to control outputs. Using iOS and Apple Watch (and maybe even Apple TV) you would get an interface directly to Indigo, not the Home app. I'm assuming HomePods would not work unless there is some way to interface them to an iOS app via voice control.

Like many other users HKB has provided a fantanstic level of functionality that I dread seeing going away at some point in the future. At least the approach in #3 could bring back much of the same functionality and more importantly allow Indigo (the company) a lot more control and stability in the process. Plus I don't look forward to telling my 87 year old mother in law she has to start getting out bed to turn the lights out instead of using Siri. :D

Thoughts/comments?

Running OS X 12.2.1 on 2018 Mac Mini, Indigo 2022.2
http://www.p15-d24.com

Posted on
Thu Apr 01, 2021 9:26 am
WagnerOne offline
Posts: 150
Joined: Jun 12, 2009
Location: Chicago, IL

Re: Homekit Bridge, Siri, iOS, Apple Watch Et Al...

WUT?! Please link the HKB discussion. :cry:

Posted on
Thu Apr 01, 2021 10:22 am
P15-D24 offline
User avatar
Posts: 110
Joined: Jun 25, 2005
Location: Santa Barbara, CA

Re: Homekit Bridge, Siri, iOS, Apple Watch Et Al...

viewtopic.php?f=201&t=22273

Read the full thread.

Running OS X 12.2.1 on 2018 Mac Mini, Indigo 2022.2
http://www.p15-d24.com

Posted on
Thu Apr 01, 2021 10:27 am
jay (support) offline
Site Admin
User avatar
Posts: 18220
Joined: Mar 19, 2008
Location: Austin, Texas

Re: Homekit Bridge, Siri, iOS, Apple Watch Et Al...

This is the key post from Matt on that topic: viewtopic.php?p=199098#p199098

Jay (Indigo Support)
Twitter | Facebook | LinkedIn

Posted on
Fri May 07, 2021 10:09 pm
makedrinklas offline
Posts: 124
Joined: Oct 12, 2004

Re: Homekit Bridge, Siri, iOS, Apple Watch Et Al...

Yes. I too have started using HomeKit bridge. It’s is good but not great. (That may be Apples fault). But I’ve watched enough Star Trek to know voice control is the clear next step for home automation. As an early 2000 Indigo user, I am heartbroken we can’t together find a path to further building HomeKit connection to Indigo. It works randomly for now. But our lives will be seriously deprecated (I struggled for a word) without PA’s passion an support for home automation (and the amazement of others) is lost to… I’m not sure what. It’s an incredible life’s-work effort that Matt and Jay have expended. Love you guys you have changed many lives forever. And made many users into genius/magicians to family and friends. Voice control is the future. I will look at the other thread, rant over!

Posted on
Sat May 08, 2021 10:01 am
jay (support) offline
Site Admin
User avatar
Posts: 18220
Joined: Mar 19, 2008
Location: Austin, Texas

Re: Homekit Bridge, Siri, iOS, Apple Watch Et Al...

The next Indigo release (coming very soon) will add a couple of options for voice control: Alexa support will be included, and Google Home support will be provided by our resident 3rd party Google dev guru @RogueProeliator. Both of these excellent systems provide robust APIs for integrating into their environments. We know that voice control is the future.

Unfortunately, Apple has yet to provide any way to integrate beyond specific hardware devices, so any 3rd party software bridges/hubs (like Indigo) have to rely on reverse-engineered open source solutions (HomeKit Bridge uses this) that are generally fragile and only work at the whim of Apple (who can break them at any time). This is the unfortunate reality of where Apple is with HomeKit at the moment. There may be light at the end of the tunnel given efforts to develop an open-standards API for device communication, but there has yet to be any tangible results.

Jay (Indigo Support)
Twitter | Facebook | LinkedIn

Posted on
Fri May 14, 2021 6:38 pm
Ramias offline
Posts: 272
Joined: Nov 24, 2015

Re: Homekit Bridge, Siri, iOS, Apple Watch Et Al...

I now run the oznu/homebridge docker container on my NAS (but it can run anywhere) and the Cmd4 plugin for 'integration' with Indigo. Cmd4 requires configuring devices (it supports all homekit device types) in the hombridge config file and points to a script (I did mine in bash but also supports js) that calls into Indigo via curl commands for device polling or on/off. It passes device name as a parameter to the script so most of my Indigo devices all use the same script. For devices with native homebridge plugins I use those. For others, esp. Indigo virtual devices, I use the Cmd4 plugin.

in case it helps anybody, here's my shell script:

Code: Select all
#!/bin/sh

#
# This Cmd4 example demonstrates how you can test if an accessory is on the network using ping.
#
# Your Cmd4 .homebridge/.config.json file would have a state_cmd like:
# state_cmd: ".homebridge/Cmd4Scripts/Examples/ping.sh"
#
#
# Testing from the shell prompt:
#    ./basic_ping.sh Get My_TV On
#    or
#    ./basic_ping.sh Set My_TV On 1



# Exit immediately if a command exits with a non-zero status
set -e

# Define the accessories IP you wish to test
indigo_ip="192.168.0.XX"
indigo_creds="username:password"
# Check if the first parameter to this script was "Get" for getting an accessory's
# specific attribute.

dev=$(echo $2 | sed 's/ /%20/g')

if [ "$1" = "Get" ]; then

   # Normally we would exit immediately if a command fails with a non-zero status.
   # In this case ping can fail and we would rely on the failing exit status to
   # tell Cmd4 that the accessory is not on the network. That would be the prefered
   # thing to do. However for this example we are going to output '0' (false) so
   # that you can see the '0' on the console telling us that the accessory is not
   # on the network.
   set +e

   # $2 would be the name of the accessory
   # $3 would be the accessory's charactersistic 'On'
   # On OSX the string is returned differently than on linux.
   # ping -c 2 -W 1 "${ip}" | sed -E 's/2 packets received/2 received/g' | grep -i '2 received' >> /dev/null
   if [ "$3" = "On" ]; then
      curl --silent -X GET -d isOn -u ${indigo_creds} --digest http://${indigo_ip}:8176/devices/${dev}.txt | grep -q 'isOn : True'
      rc=$?

      # Exit immediately if a command exits with a non-zero status
      set -e

      # Check if we got the message '2 packets recieved' meaning the accessory is
      # on the network by seeing if the return code of the above command passed or
      # failed.
      if [ "$rc" = "0" ]; then
         # The message was recieved so the target is up, sending a '1' (true), like
         # a binary number is, back to Cmd4.
         echo "1"

         # Exit this script positivitely.
         exit 0
      else
         # The message was not recieved so the target must be down, sending a '0' (false), like
         # a binary number is, back to Cmd4.
         echo "0"

         # Exit this script positivitely, even though ping failed.
         exit 0
      fi
   fi
fi

# Check if the first parameter to this script was "Set" for setting an accessory's
# specific attribute.
if [ "$1" = "Set" ]; then

   # $2 would be the name of the accessory.
   # $3 would be the accessory's charactersistic 'On'.
   # $4 would be '1' for 'On' and '0' for 'Off', like a binary number is.
   # $4 would be 'true' for 'On' and 'false' for 'Off' with
   # outputConstants=true in your .homebridge/.config.json file.

   # Cmd4 will pass the IP in the config.json defined by state_cmd_suffix as the fifth
   # parameter to a Set command.

   # Cmd4 will pass the MAC Address in the config.json defined by state_cmd_suffix as the sixth
   # parameter to a Set command.
   if [ "$3" = "On" ]; then
      if [ "$4" = "1" ]; then
         curl --silent -X PUT -d isOn=1 -u ${indigo_creds} --digest http://${indigo_ip}:8176/devices/${dev}
         rc=$?
      else
         curl --silent -X PUT -d isOn=0 -u ${indigo_creds} --digest http://${indigo_ip}:8176/devices/${dev}
         rc=$?
      fi

      if [ "$rc" = "0" ]; then
         exit 0
      else
         exit $rc
      fi
   fi

fi

# The proper arguments to this script were not passed to it so end with a failure exit status.
exit 66

Posted on
Sat May 15, 2021 7:40 am
Different Computers offline
User avatar
Posts: 2541
Joined: Jan 02, 2016
Location: East Coast

Re: Homekit Bridge, Siri, iOS, Apple Watch Et Al...

Cmd4?

I just searched the plugin store for this and came up empty. And I don't think this integration requires a marine grade CD player that is EOL.

SmartThings refugee, so happy to be on Indigo. Monterey on a base M1 Mini w/Harmony Hub, Hue, DomoPad, Dynamic URL, Device Extensions, HomeKitLink, Grafana, Plex, uniFAP, Fantastic Weather, Nanoleaf, LED Simple Effects, Bond Home, Camect.

Posted on
Sat May 15, 2021 9:22 am
FlyingDiver offline
User avatar
Posts: 7217
Joined: Jun 07, 2014
Location: Southwest Florida, USA

Re: Homekit Bridge, Siri, iOS, Apple Watch Et Al...

Different Computers wrote:
Cmd4?

I just searched the plugin store for this and came up empty. And I don't think this integration requires a marine grade CD player that is EOL.


He means the Cmd4 plugin for homebridge: https://www.npmjs.com/package/homebridge-cmd4

joe (aka FlyingDiver)
my plugins: http://forums.indigodomo.com/viewforum.php?f=177

Posted on
Sat Oct 02, 2021 3:18 pm
Jann offline
Posts: 120
Joined: Mar 12, 2006
Location: Auburndale, FL

Re: Homekit Bridge, Siri, iOS, Apple Watch Et Al...

Okay, maybe I'm lost a bit - and sorry if I am - but didn't Apple enable "software HomeKit integration" as of 11.3 in iOS (and therefore their HomeKit TOSes changed to reflect that?
OR is that software in the device and still requires the hardware on the controller's end?

https://www.imore.com/how-homekits-soft ... tion-works

Again, sorry...not meant to derail, bit this was a while back (4 iOS versions ago)

Posted on
Sat Oct 02, 2021 4:08 pm
jay (support) offline
Site Admin
User avatar
Posts: 18220
Joined: Mar 19, 2008
Location: Austin, Texas

Re: Homekit Bridge, Siri, iOS, Apple Watch Et Al...

Apple’s licensing agreement for HomeKit doesn’t allow software bridges. Since indigo is a software solution we can’t directly support HomeKit.

Jay (Indigo Support)
Twitter | Facebook | LinkedIn

Posted on
Sat Oct 02, 2021 4:19 pm
Jann offline
Posts: 120
Joined: Mar 12, 2006
Location: Auburndale, FL

Re: Homekit Bridge, Siri, iOS, Apple Watch Et Al...

jay (support) wrote:
Apple’s licensing agreement for HomeKit doesn’t allow software bridges. Since indigo is a software solution we can’t directly support HomeKit.


Gotcha!
This is SO shortsighted ... and the reason I am reluctant to move from Z-Wave to HomeKit!

Posted on
Mon Oct 04, 2021 10:16 am
jay (support) offline
Site Admin
User avatar
Posts: 18220
Joined: Mar 19, 2008
Location: Austin, Texas

Re: Homekit Bridge, Siri, iOS, Apple Watch Et Al...

I'm curious, why would you want to move from Z-Wave to HomeKit?

Jay (Indigo Support)
Twitter | Facebook | LinkedIn

Posted on
Mon Oct 04, 2021 10:29 am
Jann offline
Posts: 120
Joined: Mar 12, 2006
Location: Auburndale, FL

Re: Homekit Bridge, Siri, iOS, Apple Watch Et Al...

I don't...but so many of the newer devices I'm seeing are either Zigbee or HK enabled OR have their own proprietary boxes and adapters that make them work with their app - and don't have APIs a plug-in can use. At LEAST with homekit I can make rules, etc...

I love my Z-Wave but for things like my blinds, I tried iBlinds...and they don't fit my header. Clever doesn't work with plastic headers (most of the 2" blinds out there). E-Wand uses Zigbee, etc...
My Ecobee has HK but there's a plugin which I'm thrilled about and works with Indigo flawlessly. Same with my Hue lights - plug-in.
My garage door opener's plugin works with Indigo...but not well. My locks (yale) works with a plugin.

But I am just so tired of all the adapters, boxes, and cabling needed to make the other items I have/want work! EVERYTHING seems to want to be it's own ecosystem. HK solves that mostly...
Mostly cos Apple has some heft behind a technology push. Doesn't seem like ANY company is pushing their Z-Wave integration so I can get things that can control my blinds, etc, with Indigo.

Posted on
Mon Oct 04, 2021 12:39 pm
jay (support) offline
Site Admin
User avatar
Posts: 18220
Joined: Mar 19, 2008
Location: Austin, Texas

Re: Homekit Bridge, Siri, iOS, Apple Watch Et Al...

HK is missing a lot of device types and the selection at the moment is much smaller than Z-Wave in general. HK really IMO is no better than the rest, except for its ingrained Siri integration which nobody else can do (from a licensing perspective). Supposedly with Matter there will be a consolidation of smart home technology/protocols which will make things better. We'll see.

Jay (Indigo Support)
Twitter | Facebook | LinkedIn

Who is online

Users browsing this forum: No registered users and 6 guests