iOS 16, Matter, Thread, and New Architecture

Late 2022 HomeKit Changes

iOS16, iOS 16.1, Matter, Thread, New HomeKit Architecture:

iOS 16 and 16.1 have brought the first significant changes to Apple's HomeKit in several years. The Home app has a new user interface design, Matter 1.0 has officially been released, Thread devices are out on the market, and HomeKit is getting a completely "New Architecture". One of the problems with big changes like this is that people tend to blend all of the changes and new features together and talk about any one of them like they are all the same thing. But each change brings their own unique features, and the combination of all the new features acting together brings its own combined changes to HomeKit. Let's take a closer look at each of these new changes and what they each mean on their own:

iOS 16 Home App User Interface Redesign:

iOS 16 brought a whole new user interface design to the core Home app. Apple removed the "Rooms" tab, and moved all of the rooms to the "Home" tab as a long scrolling list. You can customize the order that rooms appear in the list and you can customize which devices appear on the Home page's room view.

The Home tab still has a "Favorites" section (think of this as "home favorites"). So now you can customize an overall "top favorites" section to appear on the Home tab which contains your favorite devices across all your rooms, as well as "Home View" favorite devices for each room (think of these as "room favorites"), and finally you can view all of the devices in a Room by clicking on the Room heading in the Home tab's list view.

This gives a lot of flexibility — you can have every device added as a Favorite, or elect to pick and choose individual Favorite devices, or have no Favorites at all. Plus you can choose which devices appear in each room's "Home View", or add every device from a room to Home View, or have no devices in a room's Home View.

I really like the flexibility of this new design, I just wish that they also kept the Room tab at the bottom—there is no reason that the Room button needed to be removed.

Apple also significantly changed the look and behavior of device buttons: Each button is now a horizontal rectangular shape instead of a square shape. Tapping on the left side of the button acts as a toggle switch; tapping on the right side of the button shows the device's "control" view, where you can adjust the device; and a long press will bring you to the device settings.

Overall, I am pretty happy with these design changes. Unfortunately, no significant changes to Automations.

iOS 16.1.x New HomeKit Architecture:

An update sometime after iOS 16.1 will bring an updated architecture to how the HomeKit framework fundamentally works. It changes how devices communicate with HomeKit on a fundamental level. Moving to the new architecture is opt-in, and requires that all of your devices be running the latest versions of iOS, iPadOS, tvOS, HomePodOS, and macOS in order to work with HomeKit. iPads can no longer be HomeKit hubs with the new architecture. Devices that cannot run the latest OS versions will no longer be able to interact with HomeKit after upgrading to the new HomeKit architecture.

So what is this "new HomeKit architecture"? During the WWDC 2022 keynote, Apple’s Corey Wang said this: "We reimagined [the new Home app] from the ground up starting with the underlying architecture so it’s more efficient and reliable, especially for homes with many accessories."

So how is the New Architecture more efficient and stable? With previous versions of HomeKit, your HomeKit "controller" (the Home app on an iPhone, iPad, or Mac, for example) talked directly to each device in your home. The state of a device is not updated in the background, which is why when you open the Home app, devices say "Updating..." for awhile; the Home app is literally asking every device in your home for its current status. The more devices you have, the longer it can take.

In the New HomeKit Architecture, ALL HomeKit requests are serviced by the HomeKit Hub. Your Home app no longer need to query each device individually. The HomeKit Hub is continually maintaining an up-to-date status of each device and simply passes that information to the Home app.

This should virtually eliminate the "Updating..." issue since current status of every device is always immediately available and should result in a much better user experience.

It is important to note that the new support for Matter in iOS 16.1 is not the same thing as the "new HomeKit architecture". They are two separate new features. Matter support will be included in iOS 16.1. The new architecture will be opt-in and will come as an update after iOS 16.1 is released. The upgrade to the new architecture will be available in the Home app’s settings in a later iOS 16.1 update.

It is also important to note that while this is an improvement to how devices communicate with the Home app, this is not going to fix a poorly configured network. In my example above I mention the "Updating..." message, I did not mention the "No Response" message. This new architecture should improve the response time that it takes from opening the Home app to seeing the current state of devices. It may also have enough of an impact on your network traffic to reduce or eliminate the "No Response" message is some circumstances, but I think for most people, the "No Response" message is related to the devices or network environment more than this hub-centric change in architecture. Time will tell.

iOS 16.1 Support for Matter:

iOS 16.1 brings support for Matter. Matter is a new connectivity standard that vendors can follow to ensure that a device will work on any smart home platform (Apple, Google, Amazon, etc). It makes it easier for manufacturers to support multiple smart home platforms, and it makes it easier for consumers to purchase devices, knowing that it will work on their preferred platform. A consumer will also be able to switch platforms a lot easier.

Matter isn't really going to fundamentally change how these devices operate on a network, and it's not going to fundamentally change how a smart home platform is going to operate with the devices. Apple is still going to do their thing and Google is still going to do their thing.

But it greatly simplifies the knowledge/skill base that a vendor needs in order to support all of the home platforms, because they only need to engineer their devices to work with Matter. They don't have to build separate code bases for HomeKit, Google Home, Alexa and Samsung SmartThings. Less to learn, less to troubleshoot, less code to write, and easier to get products certified and keep them updated.

Also keep in mind that Matter 1.0 only provides support for common devices like lights, switches, locks, thermostats, shades, garage doors, and security sensors. There is no support (yet) for cameras, robot vacuums, etc.

So matter should result in more devices being available and increase the likelihood that they will be well supported in HomeKit. At the same time, Matter doesn't fundamentally change how HomeKit works, and these advantages will only apply to devices that support Matter, and it will not prevent buggy devices from being released.

For more information, see the Matter page under Networking.

Thread:

Thread isn't really part of the changes in iOS 16, as Apple HomePod minis and AppleTV 4K have supported Thread previous to iOS 16, but I think it should be part of this discussion because Thread is really going to start taking off now that Matter has been published, and people often conflate Matter and Thread (Matter is not Thread and Thread is not Matter).

Thread is a radio networking standard, based on IP, and the HomePod minis and AppleTV 4Ks have Thread radios in them and can act as Thread border routers. These two Apple border routers allow Thread devices to integrate into a HomeKit network, appearing in the Home app, and responding to Siri commands and automations, and enabling you to obtain data from and control your Thread devices remotely.

Thread has a number of advantages over both Bluetooth and Wi-Fi. Thread was designed from the start with home automation in mind. It is a simple protocol designed with low latency, requires very little power, and can automatically extend itself by creating its own mesh network. A Thread network is self-healing, so traffic can reroute itself if a device is removed or unavailable. And finally, Thread was designed to handle hundreds of connected devices.

Thread also has some advantages over bridges. With bridges and hubs, there’s a translation that happens; they see the data sent to them and then translate it from one environment to the other. A Thread router only ‘routes’ data. It doesn’t translate or even see the packages it’s transferring.

For more information, see the Thread page under Networking.

Summary:

So how will all of the above changes impact HomeKit's usability and reliability? Lets take a look:

  1. iOS 16 Home App User Interface Redesign:

    • The new Home app user interface will in and of itself not substantially improve reliability. Presumably with each release of iOS, bugs are removed, and that is certainly the hope for iOS 16. The new interface does however bring additional flexibility into how we interact with our home devices.

  2. iOS 16.1.x New HomeKit Architecture:

    • The change in how home controller apps work with HomeKit should see significant increases in how quickly the home app will register the current state of devices, especially in homes with many devices. It may also reduce some of the "No Response" issues, but it is not a magic bullet that will fix a poorly configured network or a poorly engineered device.

  3. iOS 16.1 Support for Matter:

    • Matter will help the smart home industry as a whole. Having to design a device around one common connectivity standard should not only increase the number of devices that are available to HomeKit, but it should also make it easier to make a device work reliably, because the engineers won't have to learn the specific standards of each platform. There will only be one code base to develop, troubleshoot, and maintain. There will only be one certification that a vendor has to obtain. This should help device reliability overall, but again, not a magic bullet to bad code.

  4. Thread:

    • This might be the biggest impact on reliability over the long run. Thread was designed from the beginning for home automation. It's designed to handle hundreds of connected devices, and is low power, low latency, self-healing, and self-extending. For those of you that have always heard how reliable Lutron switches are, Thread is basically like Lutron's radio protocol for HomeKit. Getting as many HomeKit devices off our Wi-Fi network as practical (not to mention Bluetooth!) is also going to improve overall HomeKit performance. It will take time to get more of the devices that we want on Thread (and Thread can't support high-bandwidth applications like cameras), and for those of us that have already invested significant amounts of money on devices may not want to immediately buy Thread-versions of everything, but Thread is positioned to make a significant impact on the reliability of HomeKit.

When you take all of these individual pieces together, bug fixes in iOS 16, hub-centric communication architecture, new Matter devices, more devices on Thread, fewer devices on Wi-Fi, and fewer devices on Bluetooth (hopefully none!), sprinkle in some additional time to let them all "bake", they can all add up to a reliable smart home. Unfortunately getting everything to this state is not going to be soon or cheap. It will take time.

Will Matter and Thread and the new HomeKit Architecture Solve All Of Our Problems?

The short answer is no. Matter and Thread are still new and growing. There are going to growing pains, missteps and bugs. We will still be supporting legacy devices and networks. You will still have poorly implemented hardware and software. You will still be dealing with application interfaces that don't work the way you want them to. And at the end of the day, software developers still have to build the applications that manage the actual platforms.

Smart home ecosystems have several categories of devices, and not all of them are going to be supported by Matter on day one. The first release of Matter will support lighting, plugs, door locks, thermostats, shades, sensors, and garage doors. Future releases are expected to support home appliances, vacuums, cameras, etc.

I have seen existing products get updated with Thread and respond more than three times as fast. I have also seen software updates completely break Thread and bring HomeKit to its knees.

That being said, Matter should make more devices available and compatible with each other, and possibly less expensive; and Thread should improve communication speed and reliability for controlling smart home devices and make managing our networks easier.