Zigbee has some dialects. The most interesting one (Zigbee Home Automation, or zha) is standard and used by a lot of products which are (mostly) interoperable. The other (Zigbee Light Link, zll) has some less interop, and is often locked in on purpose. So lets stick with zha.
Now, one of the 'challenges' with Zigbee is range. Its 2.4GHz, which is crowded with interference in my house (Sonos has its own network, 5 access points, and misc devices back channel on it). But, well, its what we got, so lets live with it.
You can increase the range of Zigbee with a 'relay'. Now, there are dedicated relays, but, we can also use (any?) a device which is hard-wired to power as a relay. And that is what we are going to do today because the USB dongle on the back of my nas in a concrete room in the basement just isn't reaching very far. (Side note: I considered adding a 6dBi antenna, but, um, its a usb-stick, it would be kinda messy, and there is no N-connector or reverse sma or anything, i'd have to cut traces and solder, which would cause other 2.4GHz problems).
So on to the project. Lets install a GE Smart dimmer. These come in two flavours: Zigbee and Z-Wave. If course we want the Zigbee ZHA one, so 45857GE is the part number. It was shockingly expensive on amazon.ca, but reasonable on amazon.com. Hmm. On the box we see compatible with Rogers (a Canadian brand), but Spanish where there should have been french. So I guess they have a weird model of localisation. But who am I to complain, I mean, I bought this grey market, and usually that is just in Chinese and I'm grabbing Google translate! So here I'm getting off quite lucky.
OK, lets look at the instructions. I mean, I know how to do this, but lets see what they say. OK, its as expected. Note... Most automation devices require a neutral wire. And this turns out to be a big deal because a lot of home wiring they skip that (it is not brought to the junction box). But I'm super confident, I mean, the fixture I'm putting in to is a home run from the breaker box to the switch to the light, where else would the neutral wander?
So first oh crap moment, I take the plate off, and sure enough the two dimmers in there, neither has a neutral. Sacré Bleu! How could this be? Panic, look at box, maybe this is the one item that doesn't need a neutral? Nope, its right there on the box.
(Here you can see I removed the first dimmer, leaving one of the original ones). PS, these are super easy to get rid of on Kijji (Craigslist to the international folks), so don't be throwing that away, some pack rat will come to your house and re-use it. Or, donate it to Habitat there's a drop-point at the Waterloo Region Landfill.
OK, now on to the switch itself. Straight forward, we just need to wire the load-end, line-end, neutral, and ground (and don't touch the mystery 'traveller' wire).
OK, done, power back on, first check no sparks. Second check, breaker didn't trip. Third check, blue light is on. Fourth check, lights work manually. So now we call the 'zha:permit' on Home Assistant, and lo and behold, the light pairs and I can control on/off/dim. That was surprisingly simple.
Later I'll check the relay bit by pairing a light in a different room.