Switchmate Snap-On Instant Smart Light Switch
UPDATE 2022-11-21: The Home Assistant integration for this device has stopped working for over 2 months now. There is a solution here but it does not work for me. I do not recommend this device for use with Home Assistant at this time.
This might be the single most ridiculous device I ever bought. Yet, it is one of my favourites. This is a smart switch that you just magnetically stick on top of an actual light switch, and it will physically flick it on your command.
It has some bad reviews on Amazon, mostly because it promises to work directly with Google Home and Alexa, and apparently it is not that simple. That being said, using this device with Home Assistant, I am having no serious issue with it.
It comes in a toggle version and a rocker version to adapt to 2 different styles of light switches. It will not work on a light switch that is too out of the ordinary.
There are only two drawbacks that I can think about for this device. The first one is that it uses BLE to communicate with its controller, and the range is just not as good as Z-Wave or Zigbee. The second one is that it could be considered noisy by some people, as the sound it makes when toggling the underlying dumb switch is not exactly quiet.
UPDATE (2022-05-29): This device seems difficult to find at the moment. Alternatives exist, such as the Ecolink Z-Wave Plus Motorized Light Switch.
Below is a short video showing the mechanism in action:
Making It Work with Home Assistant
As indicated in the documentation for Home Assistant's Switchmate integration,
knowing the device's Bluetooth MAC Address is necessary to make it controllable by Home Assistant. The easiest way to find that information
is by using Switchmate's official mobile app. In case that app ever becomes unavailable, the MAC address could probably be found using a
Bluetooth scanner app. The MAC address for my Switchmate device starts with db:6c:46
, so it is possible that other units would have a
MAC address that starts with that value as well. Pressing the switch's physical button might be necessary for it to be detected by a
Bluetooth scanner, as it is part of the official app's pairing process.
In the past, I have had an issue after changing the device's batteries, where it would remain unavaible to Home Assistant until a seemingly random time. I found a hacky and ludicrous way around that issue: that is rebooting Home Assistant while pressing the switch's physical button every few seconds. Doing this seems to allow Home Assistant to "find" the device while the Switchmate integration boots up. There is most probably a better way to do this (I expect there is a way to restart the Switchmate integration without rebooting Home Assistant as a whole), but this is the solution I found so far. If you know a better one, please let me know!
This product review is provided with no guarantee that you will have the same experience as its author. (Full Disclaimer)