Schedule() runs but is not sending commands to device

A scheduled method in a SmartApp doesn’t require hubaction to send commands to the device, but it is required for scheduled methods in a device handler. The ability to run schedules from within a device handler is relatively new so I’m pretty sure it’s always been required.

As far as I know, that’s the only place within a device handler that hubaction is needed to send a command to the device.

Response is needed when returning commands from the updated method or the parse method, but it’s not needed from the configure method (the first time it’s called by SmartThings).

The “updated” method is executed twice when tapping done from the device’s settings screen which can cause problems if you’re sending a lot of commands to the device from that method. I’m not sure if this happens with iOS, but it’s been doing this on Android for over a year.

Most of this isn’t documented, but it’s the behavior I’ve observed for all the zwave devices I’ve created handlers for.

1 Like