Hands on with Matter and Thread(11 min read)

Matter and Thread offer many benefits, with standardised interoperability, local-only control, built-in security, multi-admin, and IPv6 support — helping drive IPv6 adoption and development skills.

Several devices have now launched, and I have tried out a few of the available devices with Google Home and Home Assistant, however these are early days, and feature implementation still lags behind native integrations in some significant areas.

Thread-based devices:

  • Nanoleaf Essentials light bulb and LED light strip
  • Eve Home smart plug

Wi-Fi devices:

  • Sonoff MINIR4M inline switch
  • Zemismart ZME2 dual inline switch
  • Wiz light bulbs
  • Tapo P110m smart plug

Most devices initially required their native app for firmware upgrades (although the new Eve device updated without it), and there were many features only accessible via native apps (even where the features are in the Matter standard).

In particular none of the switches had separate switch and relay parts for detached operation via Matter bindings, although the Sonoff does support detached mode via the native app, and the Zemismart had the Binding cluster but I couldn't get it working.

Network setup

I have several Google Hub devices in a Thread mesh, plus an OpenThread Border Router, joined to the same mesh.

Open Thread Border Router topology showing the NEST-PAN network

Google Home is used for controlling devices via voice commands, and I also run Home Assistant, which is mainly used for automations, along with the Matter Server add on.

All devices were set up in their native app first, where available, then commissioned to Google via Matter, then shared to Home Assistant for multi-admin.

Home Assistant Matter entities, include Eve energy usage

The Eve Home and Zemismart devices do not have native apps (Eve has an IOS app, but not Android), so were directly commissioned to Matter.

Some other devices I also connected directly with Matter for testing, but then reset and connected via the native app.

There is a bit of a trick when commissioning some devices that my Android would auto-detect that there is a Matter device nearby and pop up the system commissioning screen; I had to keep dismissing it and switching back to the native app to complete onboarding (otherwise it onboards to Matter instead).

Google Home device handling: Google Home was quite good at recognising when the same device was connected via both the native app and Matter, and only showed the device once. In contrast Home Assistant showed two separate devices when available via two connections.

Nanoleaf Essentials (Thread)

Nanoleaf have been strong advocates of Matter and Thread, and their app shows a view of available Thread networks, good for troubleshooting.

Nanoleaf app Thread Network page, showing Google and OpenThread border routers

My first Nanoleaf A60 E27 was purchased during the beta and needed a firmware upgrade to support Matter. Since then I've purchased a few more that have Matter out of the box, as well as an LED strip.

The bulbs support basic lighting functions — on/off, brightness level, and colour / temperature, and so you could integrate in with you home control system for automations, etc.

Features accessible through the native app, power loss behaviour and default white point setting, and at least the initial firmware updates.

You can configure power loss behaviour to restore state, but without a corresponding smart switch that could make it difficult for users — family members, visitors, etc — of the physical switch.

Initially I was using it to preserve a bright white, as the device was defaulting to a soft white, however after some firmware upgrades there now a default white point setting, so that even if restore state is off it turns on at your preferred white point. There is no explicit control for this, it is just showing the temperature value in the white point favourite button and changes whenever you change the white point.

The built in circadian lighting can't be controlled via Matter, but you can just have your own automation to adjust the temperature as needed.

The Nanoleaf bulbs also have an interesting faceted shape, rather than the standard smooth bulb.

Nanoleaf bulb, showing the faceted styling

I also have an Essentials LED light strip. It has basic colour control, but is not individually addressable so you can't use it for fancy animations.

What I like most about that Nanoleaf smart bulbs is that they support Thread and can be used to build a powered mesh, to support any subsequent Thread battery devices; however to make this useful you need integrated smart switches so that the bulbs can stay powered on.

Eve Energy Smart Plug (Thread)

I don't have a large need for smart plugs, as I don't have lamps of other devices I need to turn on or off, although energy monitoring may be useful in some cases, for example monitoring the energy usage of appliances like the clothes dryer.

The Eve Home plug is another device that I got during beta, and to upgrade the firmware I had to use Apple Home and the Eve App on an Apple device, however for this round of testing I used Android only, so no native app.

My second purchase also came with Matter support out of the box, and was connected directly to Google Home. The firmware updated automatically from 3.2.0 to 3.2.1, presumably via Matter on Google Home.

Eve Energy Smart Plug showing the too large size covering the adjacent socket (for Australia)

Unfortunately the Eve Home plugs are strangely shaped for Australia (too wide), and block a double power point. There is no support for detached switch/relay operation, which would be useful if it controlled a lamp with a smart bulb.

Power monitoring via Matter

Matter support is good, with power monitoring reported using a custom cluster that is recognised in Home Assistant (see the energy entities by clicking on the earlier HA screen shot).

I also like the strong support that Eve Home is giving Matter and Thread, and some of their other products such as the Smart Water Contfoller look useful to replace some aging Orbit B-hyve devices, but a lot of their range has not yet updated to Matter, and a lot are not available in Australia.

Sonoff MINIR4M inline switch

This is an inline switch, which you can mount behind existing light switches to make them smart (whilst keeping the existing façade).

To get them installed in Australia you need an electrician, so for testing I have a prototype applicance that I can wire them up inside, with a switch and outlet, and then plug in. The Sonoff MINIR4M also does not appear to be approved for Australia yet.

Test appliance box for inline smart switches with a switch and output socket, that can be plugged in for testing

There is a small LED on the Sonoff device to indicate status (e.g. pairing mode), and a button to change switch input between edge, pulse, and follow.

First add the device to the native eWeLink app, which is needed for firmware updates and advanced features.

Once in eWeLink, you can then add to Matter via Enable Pairing Mode, which turns on pairing and shows the default Matter pairing code, e.g. to add to Google.

I did have some trouble commissioning some devices in Home Assistant, with the app timing out and taking up to 10 minutes for HA to fully interview and add the device. The Matter support in HA is only in Beta, and initial devices were quick to add, so I am not sure why there were some issues.

Matter control is limited to basic on/off; you need the native app for firmware updaes, changing the switch mode, detached relay mode, setting the indicator, power on state, and inching settings.

Detached relay mode

The eWeLink native app can put the device into detached relay mode, where the relay is controlled via the network and the physical switch raises events but does nothing directly.

This allows configurations such as setting the switch to directly control a smart bulb, but it is only accessible via the native app.

In detached mode you still have network control via Matter to turn off, but the Matter control has no way to receive the detached switch signals (or bind the switch to a light), so the physical is only usable via native.

In the meanwhile, you could use the native Sonoff integration with Home Assistant for detach relay, until Matter support is provided.

Zemismart ZME2 dual inline switch

This is a two gang smart switch from Zemismart, supporting Matter over WiFi. You can see the device in the bottom right of the test applianc picture above.

The device has two LED push buttons that can be used to turn it on/off and show the status; it also has some mounting holes and comes with screws, so you could use it without connecting a physical switch.

Being able to control two switches instead of one is useful, although each still only appears as a single device part in Matter, so it doesn't seem to support detached mode.

There is no native app, so there are no features outside what is available via Matter; hopefully firmware updates will be deliverable via Matter.

Note: The wiring diagrams in the manual, and on the website, do not match the markings on the device for the switch inputs. Follow the markings on the device itself, which are correct, with the first (left) the common connector, the middle is K2 (switch 2), and the right is K1 (switch 1).

A promising future

Looking at the Matter technical configuration, the ZME2 parts (one for each switch) implement device type 0x0103, which is the correct type for an external switch client (that can control other devices).

It's implemented client list includes 0x0006 On/Off client, as well as it's server list including 0x001E Binding server, which would be used to set the target to which the external switch is bound. By default this would be the relay corresponding to the external switch, but detach mode would allow the binding to instead control a smart light, or other On/Off server device, as described in section 9.4 and 9.6 of the Core Matter specification 1.2.

The switch also implements 0x0006 On/Off server, to control the relay; this should probably be a second device part (e.g. device type 0x0100), but the ZME2 just has 0x0006 as an additional server implemention of the 0x0103 parts (Matter allows you to add any extra server definitions you want).

I tested setting the binding, via Home Assistant Python Matter Server, and the attribute was recorded but didn't do anything, i.e. the switch did not send On/Off commands to the light I bound it to and continued to control the inline relay, so it may not be fully implemented.

In Matter there are several ways you could configure the external switch to indicate it is detached from the associated relay. One approach is that any explicit bindings will detach the relay (i.e. no explicit bindings falls back to local operation), with an alternative to use an explicit binding configured with endpoint = 0 to represent a switch attached to the associated relay, that can then be changed.

Wiz Connected A67 and A60 E27 light bulbs

Like other available devices, Matter support is limited to basic light controls: on/off, level, and colour. I have the A67 1521 lumens, as well as the A60 E27 full colour and A60 E27 tuneable white.

Wiz Connected Matter light bulbs with a larger A67 (1521 lumens) colour bulb, and a regular sized A60 E27 tunable white bulb

You need to use the native app for advanced features including setting the power restore mode, on/off fading duration and power usage, and also the initial firmware upgrades.

The Wiz lights have a nice power restore option where, as well as restore last state, the regular switch supports two alternate modes, i.e. first switch on can be configure to full light, and if you turn off and then on again it can have a different setting, e.g. dim night mode.

This allows some measure of control from a standard switch having two modes.

One thing I liked about Wiz is as well as standard A60 bulbs (around 800 lumens), they have an A67 with 1,521 lumens, for a much brighter light is my larger light fittings.

Tapo P110M

Another smart switch, from TP-Link, this one has a compact size that does not block adjacent sockets, however it is Wi-Fi (not Thread).

Tapo P110m, with Matter, fits nicely into an Australian socket

Similar to other devices, advanced features require the native app: firmware upgrades, power monitoring, onboard on/off schedules, etc.

There is no support for detached relay operation.

Conclusions and recommendations

Zemismart, for regular lights: Smart light switches are often more useful than smart bulbs, so use the Zemismart dual inline modules on regular lights, once they are approved in Australia, despite them being Wi-Fi (and not Thread). These also show promise to get Matter support for advanced features as they have no native app.

Sonoff, with detached relay for smart bulbs: In the meanwhile for switches connected to smart bulbs where you want detached relay support, as an interim measure you could use the Sonoff (once approved), but would have to use the native integration to get detached relay working (although also Wi-Fi and not Thread).

Nanoleaf Essentials, keeping them powered for a Thread mesh: For smart bulbs the Nanoleaf Essentials have good support to become a Thread mesh, but you need to use a smart switch (such as the Sonoff) to keep the bulbs turned on as mesh extenders.

Wiz A67, for a brighter light: Where you need brighter light the Wiz A67 is an alternative (but does not have Thread).

Smart plugs (if you need them): If you have need of smart plugs, then the Eve Home will provide additional Thread mesh, but blocks a double power point, while the Tapo is smaller but only Wi-Fi. Neither is a great option yet, although the Eve has a slight edge with power monitoring support in Home Assistant.

Leave a Reply

Your email address will not be published. Required fields are marked *