Old Capability persists in the app even after DTH is changed

I have a recurring odd issue. I have been adding ZWave contact sensors recently. In the past I used a contact sensor to add smoke alerts using a custom device handler made for smoke/clear vs. open/closed.

This has been working fine for a long time…

When I add the new contact sensors, they arrive to the hub as the “Modified ZWave Device Handler for Smoke” and marks them with the smoke statuses.

No big deal, I log into graph and change the handler to ZWave or ZWave Plus Window/Door Sensor.

That gets them working…

However, the smoke (and other) statuses are left in the app (even though they do not exist). I also have a dashboard panel that reads the statuses. It was immediately adjusted when I changed the handler. So it just the SmartThings App.

Is there some kind of cache to clear?


This sounds like the “stale DTH“ issue, but I don’t know any more about it than what I read in the forum. Or If there’s anything new on this, good or bad. Here’s what I’m referring to:

Thanks for the tip. It does indeed sound like “stale DTH”.
Unfortunately it seems the solution is to modify the version of the handler (and something about “VID=”) to fix it. However, I am using “built-in” handlers.

Maybe I should copy the default handler and see if I can up the version.
Has anyone tried that?

1 Like

OK, I may have found a solution here…

So I have found, and this has been duplicated…

Recall, when I made a change to the device handler (say from Z-Wave Contact to Z-Wave Plus Contact), the graph.api website would change immediately and a dashboard, which reads the status of Smartthings Sensors, also immediately updates with the minor changes in the DTH statuses. For example, the Z-Wave Contact doesn’t have “tamper” while the Z-Wave Plus does. That “tamper” would come and go immediately.

But the SmartThing “App” on an iPhone would keep all the past status as if cached.

Well, if I closed the SmartThing “App” entirely, then made the DTH change, the App would show correctly.

You can imagine, I had the app open as I tested various combinations of device handlers.
I needed to fully close the app and then reopen after I made the change.
How odd…

1 Like

thanks for the awesome information.

You are lucky, the interface will become what you expected after restarting the application. The situation I have encountered is that if I delete a function halfway, the function will be retained after the refresh-unless I re-create a DTH (with a new name).