Waiting for Customer

Smoke alarm

lee.nesss 11 months ago in Panels (dashboards) • updated by Terry (ActionTiles) (Co-Founder) 11 months ago 5

I've added a Z-Wave Smoke Alarm to Smartthings. The icon shows a smoke alarm on the ST app, which is great. On the AT maintenance panel, it shows a smoking cigarette, which is fine, but the panel display only shows a question mark. 

Waiting for Customer

Hi Lee...

Please check what latest value the SmartThings cloud has for your device:

The ? indicator from a connected Thing generally means it is not getting an expected Attribute Value from SmartThings. In this case, the Device Type Handler you are using probably hasn't set a value for "attribute switch".

Login to your SmartThings IDE API webpage, check under "My Devices", open the detail page for the Thing, and check this section, "Current States:



Hi Terry

Thanks for the quick response. 

My device state is as follows:

That obviously doesn't look correct!

It should be a smoke alarm. I'll see if I can download the device handler and have a look and see if I can spot the problem.

It is definitely missing Attribute "smoke":


I've been playing at it for ages and tried quite a few device handles. I've also modified a few as well. I can't get the states to show smoke. However, on the ST app it shows the icon and the "clear"? It's different to the original handler when I posted before, but now only shows "Battery: 100%" Here's the code I have at the moment:

Can you shed any light on it?

The only valid values for Attribute "smoke" are [clear, detected, tested], per https://smartthings.developer.samsung.com/develop/api-ref/capabilities.html#Smoke-Detector

No value or NULL is not valid. It is up to the Device Type Handler to determine if it needs to initialize the Attribute with an assumed value, poll or refresh the device (if possible) to determine the current value), or wait for a valid value to be sent.

It is outside of our scope to write DTH code, but my recommendation would be to add a configure() and/or refresh() method that does a sendEvent() to set "smoke" to "clear". You can optionally add a standardTile to trigger this method(s).