How to debug Device Handlers that worked in Classic but no longer work in the "New" app?

I have a couple of custom device handlers that did (and still do) display properly in the Classic app, but do not in the “new” app (missing action buttons, etc.).

There appears to be no documentation and/or debugging capability to figure out what’s going on here. If anyone can point me in the right direction to even try and figure out why they aren’t showing properly, it would be much appreciated!

Most often this is because of custom capabilities which are not yet supported in the new app.

There’s quite a bit of discussion of this in the following thread, although it’s also mixed in with discussion of other features of the new platform that wouldn’t apply to hub – connected devices, so just be prepared for that.

Custom Capability and CLI Developer Preview

@jkp or @orangebucket might be able to add any other relevant threads. Because none of these kind of conversations work well with my voice reader, I don’t follow them very closely.

To cut a long story short, here is a post I knocked up yesterday …

1 Like

Thanks @JDRoberts and @orangebucket. I will read through the mentioned resources and report back once I’ve had a chance to investigate further.

1 Like

You’ll need to rewrite it to use standard capabilities or create custom capabilities.
If you showed us the handler I could provide some ideas.

1 Like

Thanks @mvevitsis, would greatly appreciate if you could give me a head start. It’s a custom device handler for my DSC alarm system. The handler is backed by a smartapp that communicates with a node server process that I wrote and run on a raspberry pi computer.

You will need custom capabilities for the arm state
There is no simple solution for you, it has to be rewritten to use custom capabilities made with the cli
Or you can only do two arm states based on the lock capability.
And you cannot integrate directly with STHM

I can live without the STHM integration. So the offending issue is the custom attribute?

attribute "partitionState", "enum", ["disarmed", "in_exit_delay", "armed_stay", "armed_away", "in_entry_delay", "alarming"]

Alarm is a standard capability but you have defined non standard attributes. You’ll have to replace the alarm capability with something else.