Yeah, I guess I wasn’t considering binding directly to a device, maybe I didn’t make that statement clear. What I was kind-of expecting was that there would be a way to select the ST devices that you want to control during the config part of the device handler (when you add a new dimmer switch), then unless you re-configure it the switch would always trigger the on/off/dim events to those specific devices.
I have an updated copy of the device handler on the github site previously linked if you wouldn’t mind checking it out and see if I am on the right track. At this point I think I have the logic setup as needed but still trying to understand how to create these events and then what the next step would be. Currently the code has a bunch of debug log statements just so I can see the flow is working correctly, the output I now get when pushing the buttons is below. This is with the conditional logic in place and showing that the correct function is called and the command/data fields were passed which I am guessing is all I need for the event.
c56e4422-3682-498e-abce-a9102dedf37d 8:02:40 PM: debug Stopping brightness change. c56e4422-3682-498e-abce-a9102dedf37d 8:02:40 PM: debug Command is 3 and data is [] c56e4422-3682-498e-abce-a9102dedf37d 8:02:40 PM: debug SmartShield(clusterId: 0x0008, command: 0x03, data: [], destinationEndpoint: 0x01, direction: 0x00, isClusterSpecific: true, isManufacturerSpecific: false, manufacturerId: 0x0000, messageType: 0x00, number: null, options: 0x0140, profileId: 0x0104, senderShortId: 0x601d, sourceEndpoint: 0x01, text: null) c56e4422-3682-498e-abce-a9102dedf37d 8:02:40 PM: debug parse description: catchall: 0104 0008 01 01 0140 00 601D 01 00 0000 03 00 c56e4422-3682-498e-abce-a9102dedf37d 8:02:39 PM: debug Decreasing light(s) brightness. c56e4422-3682-498e-abce-a9102dedf37d 8:02:39 PM: debug Command is 5 and data is [0, 50] c56e4422-3682-498e-abce-a9102dedf37d 8:02:39 PM: debug SmartShield(clusterId: 0x0008, command: 0x05, data: [0x00, 0x32], destinationEndpoint: 0x01, direction: 0x00, isClusterSpecific: true, isManufacturerSpecific: false, manufacturerId: 0x0000, messageType: 0x00, number: null, options: 0x0140, profileId: 0x0104, senderShortId: 0x601d, sourceEndpoint: 0x01, text: null) c56e4422-3682-498e-abce-a9102dedf37d 8:02:39 PM: debug parse description: catchall: 0104 0008 01 01 0140 00 601D 01 00 0000 05 00 0032 c56e4422-3682-498e-abce-a9102dedf37d 8:02:37 PM: debug Stopping brightness change. c56e4422-3682-498e-abce-a9102dedf37d 8:02:37 PM: debug Command is 3 and data is [] c56e4422-3682-498e-abce-a9102dedf37d 8:02:37 PM: debug SmartShield(clusterId: 0x0008, command: 0x03, data: [], destinationEndpoint: 0x01, direction: 0x00, isClusterSpecific: true, isManufacturerSpecific: false, manufacturerId: 0x0000, messageType: 0x00, number: null, options: 0x0140, profileId: 0x0104, senderShortId: 0x601d, sourceEndpoint: 0x01, text: null) c56e4422-3682-498e-abce-a9102dedf37d 8:02:37 PM: debug parse description: catchall: 0104 0008 01 01 0140 00 601D 01 00 0000 03 00 c56e4422-3682-498e-abce-a9102dedf37d 8:02:36 PM: debug Increasing light(s) brightness. c56e4422-3682-498e-abce-a9102dedf37d 8:02:36 PM: debug Command is 1 and data is [1, 50] c56e4422-3682-498e-abce-a9102dedf37d 8:02:36 PM: debug SmartShield(clusterId: 0x0008, command: 0x01, data: [0x01, 0x32], destinationEndpoint: 0x01, direction: 0x00, isClusterSpecific: true, isManufacturerSpecific: false, manufacturerId: 0x0000, messageType: 0x00, number: null, options: 0x0140, profileId: 0x0104, senderShortId: 0x601d, sourceEndpoint: 0x01, text: null) c56e4422-3682-498e-abce-a9102dedf37d 8:02:36 PM: debug parse description: catchall: 0104 0008 01 01 0140 00 601D 01 00 0000 01 00 0132 c56e4422-3682-498e-abce-a9102dedf37d 8:02:32 PM: debug Turning light(s) on. c56e4422-3682-498e-abce-a9102dedf37d 8:02:32 PM: debug Command is 1 and data is [] c56e4422-3682-498e-abce-a9102dedf37d 8:02:32 PM: debug SmartShield(clusterId: 0x0006, command: 0x01, data: [], destinationEndpoint: 0x01, direction: 0x00, isClusterSpecific: true, isManufacturerSpecific: false, manufacturerId: 0x0000, messageType: 0x00, number: null, options: 0x0140, profileId: 0x0104, senderShortId: 0x601d, sourceEndpoint: 0x01, text: null) c56e4422-3682-498e-abce-a9102dedf37d 8:02:32 PM: debug parse description: catchall: 0104 0006 01 01 0140 00 601D 01 00 0000 01 00 c56e4422-3682-498e-abce-a9102dedf37d 8:02:29 PM: debug Turning light(s) off. c56e4422-3682-498e-abce-a9102dedf37d 8:02:29 PM: debug Command is 0 and data is [] c56e4422-3682-498e-abce-a9102dedf37d 8:02:29 PM: debug SmartShield(clusterId: 0x0006, command: 0x00, data: [], destinationEndpoint: 0x01, direction: 0x00, isClusterSpecific: true, isManufacturerSpecific: false, manufacturerId: 0x0000, messageType: 0x00, number: null, options: 0x0140, profileId: 0x0104, senderShortId: 0x601d, sourceEndpoint: 0x01, text: null) c56e4422-3682-498e-abce-a9102dedf37d 8:02:29 PM: debug parse description: catchall: 0104 0006 01 01 0140 00 601D 01 00 0000 00 00