[OBSOLETE] HomeSeer Dimmer and Switch (HS-WD100+ / HS-WS100+) Device Handlers

Hi! Since january I can’t see my HS-WS100 and HS-WD100 devices when creating a new automation. I know they changed something on how custom DH are supposed to work but I’m not enough of a programmer to know how to fix this!

1 Like

I am having the same issue and it is extremely frustrating since all the switches in my house are HS-WS100 and HS-WD100. I tried updating the DTH that Darwin wrote, but it has not resolved the issue. Anyone have a fix for this?

There are newer DTHs for the Homeseer Devices that seem to be working with the new V3 app. Follow the directions on their site. Make sure you match the model number correctly. They will link back to a discussion thread in this forum where you can talk to people who are using it.


If you have an older model which is not listed on that page, try getting in touch with homeseer support to see if they know of a current DTH.

I thought the Homeseer HS/HD 100 switch was great (multiple button functions) so I bought a lot of them for my house at the time.

I am regretting that decision as I am going through the upgrade to the V3 hub.

I contacted Homeseer and their response is below.

Quote ‘Unfortunately, we are not updating these device handlers as they were originally created by a third party and new ones will not be made because the hardware is no longer supported. At this time there are no options that I am aware of to get these products to work fully on the new SmartThings app.’

I am assuming there are many others using these Homeseer switches. Are there any developers on the forum who might take this on if we paid them ?

@mwav3 has done several of these kinds of multi button DTH updates for the new V3 app. I don’t know if he would be interested in a paid project or not.

(I know this is an actually a multi button device, but the different tap patterns have historically been handled as button equivalents. It actually might be easier with the new V3 app since it does have built-in support for multiple taps. But the DTH would still need an update.)

@nickha @ggrw1011 @blanalex

I attempted an update similar to the code I wrote for the Jasco 46203 dimmer I wrote about here - [RELEASE] GE/Jasco 46203 ZW3010 Dimmer Switch

The new app only recognizes one button per device now but has a bunch of new values that must be reported as a JSON object. In non-programming terms, Samsung totally broke buttons in the new V3 app update from the way it worked before. :roll_eyes:

Hopefully the update linked below works, you’ll need to add it manually from copy paste since I didn’t add it to my repo as it is a test version. It is coded slightly different then other handlers on processing button presses so might still need to fix more if it doesn’t work. This is the dimmer and if it works I’ll do one for the on/off

As I wrote over on the other post, assuming this code works, keep in mind the following:

I was able to make changes to this device handler to now work with the native automations screen in the new Smartthings app. This means you can now setup automations with this DTH for your dimmer switch with single,double, triple taps, and hold without needing to use the smartlighting app or webcore. It will still work with those, but this is a much simpler option for people who don’t want to use webcore or a smartapp, especially for where smartlighting is not available . This is done by programming all the presses either up or down, to “button 1”, and using the new button values of “up_2x" "down 2_x” “up_3x” “up_hold” etc which will be recognized by the new app.

It is a “breaking” change for anyone that was using the 8 separate buttons, so any automation would have to be updated after applying the code update to use button one and the button values. One other minor thing I noticed is webcore is behind the times and only lists pushed and held in its default drop downs, so you would need to do an “expression” and “up_2x” or “down_2x” to continue using the DTH in webcore. (see the linked post above for Webcore example).

1 Like

Yeah you’re actually right this would be easier to probably write from scratch today with the new multi tap values versus needing a button mapping to numbers. If my fix works it wasn’t a huge rewrite - Its just a different way of doing it then before. The multi button devices are where there is a bigger issue.

1 Like

Thank you for sharing this and the work to modify it.

It is big step forward on what I had before as I can no go in and access the settings for the device.

However, when I go in to ‘Automations’ and create an automation like …IF condition on time, and selection the action. This device is not showing as one that I can configure an action against.

I think I have configured and enabled the DTH correctly for the device because the appearance and options for the device have changed.

Is it possible I have missed something ?

Thanks again

You can try going to the preferences and toggle the setting for “force settings update/refresh”

Also, there is a caching issue in the new app where stuff from the old device handler “sticks”. To try and clear that try reassigning the switch to the stock dimmer dth, then change it back to the custom code I published above.

If it’s still not working, can you try and post some live logs with doing the various triple and double taps to further troubleshoot? Also a screenshot of the device page in the IDE can help too.

Thanks for your help. I tried forcing a refresh and also excluding and the including the switch and it still does not show the device as an option when creating the automation.

I am attaching the IDE page and also logging information, thank you so much for looking at this


Ok you’re doing everything right and the values are taking, and the logs show the hub is responding to the button presses.

I had a similar issue with another device using a different handler that was not showing in the automations screen of the app. I fixed it by changing the name of the device. I think there was a charecter the new app didn’t like - in this case maybe the + sign? I updated the name of the device to remove all special characters and added a health check capability. I tested it on my GE switch and it shows in automations, I know it is a different switch but there are a ot of similiarities. Hopefully this fixes it so try this updated code now. The device will now list under “Homeseer WD100 Dimmer” in your device selection drop down - smartthingscode/wd100dimmer.groovy at master · mwav3/smartthingscode · GitHub

1 Like

Thanks so much. This has fixed it. I can now include these in automations.

One of the observations I have is that there seems to be a time lapse, and/or some quirky behaviour on the SmartThings app. It seems that sometime you need to wait for the app to correctly recognise the new DTH (sometimes overnight)

Would it be possible for you to make the same changes on the switch version of the same driver ?

Thanks again

1 Like

Very good news. Yes I’ll work on the switch too should be easy enough.

The overnight refresh is part of the annoying caching issue with the app and a lot of people have reported that. I assume some process must happen every 24 hours to refresh the data I guess.

1 Like

Here is the link to the code for the on/off switch that should work with the new app simlar to the dimmer I posted above.

I will also mention what I’ve mentioned with other code updates- with Smartthings the future of Groovy coding and the IDE remain up in the air, and the Groovy IDE is set to be phased out at some point in the next year. That being said, I don’t know what the future will hold, if this code will work on the new platform, or if I’ll be on Smartthings still/able to update it in the future. Hopefully this at least buys you more time until then and Smartthings handles the transition better then they handled to phaseout of the classic app.

1 Like

Thanks! I’ll give this a try.

I notice my model is slightly different. Your code has model: “3033”, whereas my MSRs end in 3034. I hope that won’t cause a problem?

Works like a charm, thanks! I figured out the button numbers in the SmartLighting app:

Button 1: Double Tap up
Button 2: Double Tap down
Button 3: Triple Tap up
Button 4: Triple Tap down
Button 5: Hold up (same as making dimmer brighter)
Button 6: Hold down (same as making dimmer darker)
Button 7: Single Tap up (same as turning dimmer to previous brightness)
Button 8: Single Tap down (same as turning off lights)

Hello All,

Having a SUPER hard time getting this to work.

I added the above DH for WD100 dimmer switch. The On / Off / Dim functions work as needed, but I cannot get the Double and Triple taps to work.

I have a dimmer switch in the kitchen. I want to have it so that when I double tap UP, it turns on another zwave device for undercabinet lighting and then double tap DOWN to turn it off.

I cannot get this to work. I’ve tried ABC smart app and when I go there, it says that there are no devices that can be used to do this. When I try to go do this via the Smart Lighting app to try to do it through there, I see both switches, but no functions for double tap at all…

What am I doing wrong?

Removed the switch from ST by unpairing it (was not able to reset the switch with triple tap up and down)
Removed the old DH for the WD100 dimmer
Readded the DH for the WD100 dimmer from a few posted above this one, and published it
Re-praired the WD100 dimmer in ST
Added the ABC app and published it
Added the ABC child creator app, but did not publish it
Went to Automation > scrolled down to ABC and tried to add a device to it, but says No devices found

I am stuck and cannot figure this out for the life of me.

On the old ST Classic, it used to work without a hitch, but now with the new version, it does not work.

Note: I did not use ST and the dimmers for about 2-3 years as I was in the process of moving cross country and now reconnected everything and it does not work with the new ST for double/triple tap functions anymore :frowning:

Not sure what I am doing wrong, but I would loveeee some help please.

I wanted to provide a bit of a recap in this thread for those who might come along a bit later. I have had a pretty stable environment with multiple HomeSeer dimmer (WD100/100+/200+ and WS100/200/300). I had a switch fail in the last 6mo (power failure) and after replacing I had noticed that some of the “double click” rules were not behaving, however, this was a low volume action and had not taken the time to look into it.

Recently, I had attempted to introduce additional rules via ABC - Advanced Button Controller (@Paul_Sheldon) and was struggling with creating a new automation as the dimmer was only returning a single “button”.

After digging in, the introduction of the new button formats in this thread device handler update to ==> 1.08 (03/24/2021) - Update to support new button values (@mwav3) and noticed this change was also incorporated via a Pull Request back into the original @Darwin device handlers ‘1.08 (03/24/2021) - Update to support new button values (Tim Grimley)’ code base I was able to work through my first transition away from the ABC - Advanced Button Controller and restore some level of functionality via the Smart LIghting app.

I understand the Smart Lighting App is set to go away as part of the shift away from Groovy, but I am not currently aware of an alternative (will dig around to find out the proper solution) so here I am today.

In any case, you can emulate the ABC - Advanced Button Controller functionality with the new device handler (>= 1.08) by creating a Smart Lighting automation which is associated with:

  • Choose the devices you want to control
  • Select trigger = Button
  • Which button =
  • Button action = <up/down/up_hold/down_hold/up_2x/down_2x/up_3x/down_3x>

EDIT – I was also able to restore/emulate this functionality via an Automation->Routine

Just wanted to say thanks for this!
I tried routines in the past but they were missing the features of getting the double and tripple tap actions i think. Just tried this again and it is now there, and more importantly, it works better than SmartLighting by almost eliminating the delay and instability.