Workaround: Problem with Hubitat Safety Monitor: can't Configure Arming/Disarming/Cancel Options

I updated to Platform 2.2.7.126 today, then tried to adjust my arm/disarm options in HSM following the update. When I clicked on Configure Arming/Disarming/Cancel Options in HSM, it moves to the next screen and I get:

Unexpected Error

An unexpected error has occurred trying to load the app. Check Logs for more information.

Error: com.hubitat.app.DeviceWrapperList cannot be cast to java.lang.Comparable

In my logs I saw:

app:828 2021-05-29 01:23:43.820 pm error java.lang.ClassCastException: com.hubitat.app.DeviceWrapperList cannot be cast to java.lang.Comparable on line 350 (autoArm)

I downgraded my platform to 2.2.7.121, and restored the DB to the backup I took just before upgrading. I still wasn't able to open the Arm/Disarm Options, and it gave me the same error.

After that, I removed HSM, then re-installed the app. I then set up my configuration again, and when I finished that, I tried to configure arm/disarm again and got the same error.

Everything seemed to be working fine. Logs seem fine until I try to configure arm/disarm in the app:

Summary

app:8282021-05-29 01:28:48.573 pm errorjava.lang.ClassCastException: com.hubitat.app.DeviceWrapperList cannot be cast to java.lang.Comparable on line 350 (autoArm)

app:8282021-05-29 01:23:43.820 pm errorjava.lang.ClassCastException: com.hubitat.app.DeviceWrapperList cannot be cast to java.lang.Comparable on line 350 (autoArm)

app:8282021-05-29 01:11:46.232 pm infoDisarmed

app:8282021-05-29 01:11:41.027 pm errorjava.lang.ClassCastException: com.hubitat.app.DeviceWrapperList cannot be cast to java.lang.Comparable on line 350 (autoArm)

app:8282021-05-29 12:46:21.051 pm errorjava.lang.ClassCastException: com.hubitat.app.DeviceWrapperList cannot be cast to java.lang.Comparable on line 350 (autoArm)

app:8282021-05-29 12:39:02.831 pm errorjava.lang.ClassCastException: com.hubitat.app.DeviceWrapperList cannot be cast to java.lang.Comparable on line 350 (autoArm)

app:8282021-05-29 12:37:43.902 pm errorjava.lang.ClassCastException: com.hubitat.app.DeviceWrapperList cannot be cast to java.lang.Comparable on line 350 (autoArm)

app:8282021-05-29 12:33:38.611 pm errorjava.lang.ClassCastException: com.hubitat.app.DeviceWrapperList cannot be cast to java.lang.Comparable on line 350 (autoArm)

app:8282021-05-29 12:22:39.491 pm errorjava.lang.ClassCastException: com.hubitat.app.DeviceWrapperList cannot be cast to java.lang.Comparable on line 350 (autoArm)

app:8282021-05-29 12:22:10.980 pm errorjava.lang.ClassCastException: com.hubitat.app.DeviceWrapperList cannot be cast to java.lang.Comparable on line 350 (autoArm)

app:8282021-05-29 06:20:04.500 am infoDisarmed

app:8282021-05-28 11:52:15.973 pm infoArmed Night

app:8282021-05-28 05:52:46.578 am infoDisarmed

app:8282021-05-27 11:06:57.549 pm infoArmed Night

app:8282021-05-27 07:08:35.115 am infoDisarmed

app:8282021-05-26 11:08:11.838 pm infoArmed Night

app:8282021-05-26 07:32:37.218 am infoDisarmed

app:8282021-05-25 11:16:29.970 pm infoArmed Night

app:8282021-05-25 07:32:12.014 am infoDisarmed

app:8282021-05-24 11:01:38.379 pm infoArmed Night

app:8282021-05-24 07:31:08.167 am infoDisarmed

app:8282021-05-23 11:25:26.811 pm infoArmed Night

app:8282021-05-23 04:38:25.681 pm infoDisarmed

app:8282021-05-23 04:38:07.791 pm warnAlert Intrusion pending Doors open

app:8282021-05-23 12:27:16.006 pm infoArmed Away

app:8282021-05-23 12:26:30.734 pm infoDisarmed

app:8282021-05-23 12:26:20.506 pm warnAlert Intrusion pending Doors open

app:8282021-05-23 12:25:22.466 pm infoArmed Away

app:8282021-05-23 12:24:29.811 pm warnAlert Intrusion-Night canceled

app:8282021-05-23 12:24:29.634 pm warnAlert Intrusion-Night canceled

app:8282021-05-23 12:24:29.006 pm infoDisarmed

app:8282021-05-23 12:24:21.547 pm warnAlert Intrusion-Night Doors open

app:8282021-05-23 12:24:19.596 pm infoArmed Night

app:8282021-05-23 09:05:44.410 am infoDisarmed

app:8282021-05-22 11:55:26.029 pm infoArmed Night

app:8282021-05-22 07:20:03.652 am infoDisarmed

app:8282021-05-21 11:09:46.737 pm infoArmed Night

Everything was working as expected until I tried to configure the arm/disarm options, and it threw an error each time. Any suggestions?

I have the same issue. Is there a solution?

Same issue for me as well. Just emailed support

I hope it will get fixed. In the meantime, I had some virtual buttons for arming/disarming that were set up some time ago, and to add arm/disarm options, I just pressed those existing buttons. For now it's working for me, but I really should be able to adjust the arm/disarm options.

I have this issue too.

Same here. New setup, so Iโ€™m kind of stalled. I sent a message to support. Hopefully we all hear something soon.

No word back from support and not seeing much for responses here. Any way to get more visibility on this?

Good question.

I've actually never seen any support from Hubitat. I put in a support request once, and I've posted here with requests that only Hubitat could fix, but never gotten any response. I've seen plenty of responses from developers here, providing free additional code, but never from Hubitat support.

I've seen lots of improvements in the code, but when I've noticed specific bugs, I've never gotten a response. I guess you can keep bugging support until they at least recognize the problem. For me, I have a workaround, so it's fallen off of my RADAR.

I don't use HSM for this purpose (alarm) so I just set up a fake instance on my spare C5 using some totally random devices and settings. It works fine for me.

Maybe show how you have set this up with some screenshots, so someone can duplicate (to the best of our ability) what settings you are using?

If I had this trouble though, I would try completely uninstalling HSM app, and reinstall it. That has worked for other apps with similar issues. Be sure to de-select all devices in HSM first though or you might make it worse...

1 Like

Thanks for the input. Like @BrianP i saw the same error after uninstall/reinstall. Your post did motivate me to fiddle with it some more, however, and I was able to get past the error. Some combination of not enabling the Night intrusion mode and/or choosing individual sensors for each alert via using the โ€œallโ€ option has allowed me to get in and configure things. Still some kind of bug there, but at least Iโ€™ve been able to get past it. Thanks.

Interesting that you got this to work after messing with the settings. I'll see what I can do to change things. I think I'm using "all" on some of the options. I'll try to fix/reproduce the issue and reply back here if it works.

I also had no improvement after removing and reinstalling HSM.

Yep, this is fixed by adding at least one open/close sensor to the "Intrusion-Night" settings.

If at least one is selected, I can choose "Use every open/close and shock sensor but no motion sensors" and everything still works. However, if "Use every open/close and shock sensor but no motion sensors" is deselected and none of the open/close sensors are checked in the "Open/Close sensors (must be closed when arming)" list, then when "Use every open/close and shock sensor but no motion sensors" is reselected, the same problem will occur. So either select the sensors manually, or check at least one sensor in the list before choosing "Use every open/close and shock sensor but no motion sensors."

I did not see this problem with "Intrusion-Home" and I didn't test it with "Intrusion-Away" or "Smoke and Carbon Monoxide."

This is definitely a bug. Not sure when it first appeared.

Looks like a fix will be coming in an upcoming release:

https://community.hubitat.com/t/hsm-bug/75264