I’ve got three Marpac white noise generators distributed around my bedroom. It is a mild nuisance to have to walk around the room and switch each one’s state at the boundary of a sleep session. And so I acquired an Aeotec “Smart Switch” for each one of them and an Aeotec “Minimote” to operate them under the yoke of my growing Home Assistant driven Z-Wave network.
I was a little bit muddled by the Minimote’s setup until I realized that you can use it either as a primary or secondary Z-Wave controller and it was the latter I wanted which entailed pressing the “Learn” button as opposed to the “Include” button when joining it to the existing network. The other configuration was to set it to “Scene” mode vs “Group” mode, the former giving you two distinct “scenes” per button with a short and long press.
I only made one configuration change to the Smart Switches out of the box. Specifically, I configured parameter 81, “Configure the state of the LED”, to “When the state of the Switch changes, the LED will follow the status (on/off) of its load, but the LED will turn off after 5 seconds.” This provides useful visual telemetry without leaving you with glowing orbs in the room you’d like to be dark for sleeping.
There were some other bumps along the way…
The switches had some identity crises at the outset. I started with node id 14, added one that became 19, and added another that became 21. 14 then disappeared and, I think, came back as 22. Now 14, 19, and 22 seem to be the healthy ones and 21 is AWOL. Things seem to work now, but I was a bit perplexed for a while, and not sure what exactly happened. I would probably have to have been tracking raw device identifiers to truly understand. Maybe I can do that forensically later.
Initially I imagined just using a single “scene” on the Minimote and invoking the “switch.toggle” service, but this was not fault tolerant, the failure mode being that if a hiccup in command distribution prevented all devices from receiving a broadcast then a subsequent toggle command would cause a subset of the switches to be on and a subset off. Ugh. So I’m consuming both of the “scenes” of one of the buttons to do an explicit “switch.turn_on” or “switch.turn_off” command.
Lastly, occasionally, as captured in the below video (listen closely and you hear two of the three devices switch off immediately), there is a bit of delay between button-press and response, but generally it is immediate. This has me developing the suspicion that I am getting some network congestion. I modified configuration parameter 111, “Group 1 Interval”, to 60 for all of my MultiSensor devices to get them to submit reports every minute instead of what appeared to be an hourly out-of-the-box configuration. Now I am getting the reports I want but possibly congestion once per minute. Maybe I need a lower reporting frequency and some staggering? I also note that this upped frequency sabotages having set the bedroom-located MultiSensors’ parameter 81, “LED report”, to “Disable” to prevent obnoxious blinking in response to the motion sensor, because the LED will also blink whenever it sends its period report. UGH. I ended up using the l337 hack of putting electrical tape over the LED in those devices.
[sourcecode]
group:
smart_switches:
name: "Smart Switches"
entities:
– switch.aeotec_zw096_smart_switch_6_switch
– switch.aeotec_zw096_smart_switch_6_switch_2
– switch.aeotec_zw096_smart_switch_6_switch_4
automation:
– alias: Start White Noise
trigger:
platform: event
event_type: zwave.scene_activated
event_data:
entity_id: zwave.aeotec_dsa03202_minimote
scene_id: 1
action:
service: switch.turn_on
entity_id: group.smart_switches
– alias: Stop White Noise
trigger:
platform: event
event_type: zwave.scene_activated
event_data:
entity_id: zwave.aeotec_dsa03202_minimote
scene_id: 2
action:
service: switch.turn_off
entity_id: group.smart_switches
[/sourcecode]
1 thought on “Analog Device Automation”