Homeseer HS-WD200 Dimmer Button Mapping

Guys, I am as green as it gets here. Just installing my Hubitat. Forced to upgrade from a ST ADT...

I have 20+ HS 100 and 200 switches in my house. I had a custom controller for ST that gave me the multi-taps and I would love to add this feature to my Hubitat now. Can you tell me what code in this post is needed and how I add it to my system.

Much appreciated,


1 Like

I was in the same boat and made the switch starting in December. I got up and running so fast with HE, that I threw out my initial plan of using HubConnect to gradually transition devices from ST to HE, and just cutover in a day. At the time, I was pretty pleased, except for the fact that the HE world didn’t have any drivers that allowed for more than double-tap. I initially resigned myself to this fact, and then this thread came along!

First off, if you haven’t installed it and learned about it, you must make friends with Hubitat Package Manager (HPM). Like the Community Installer in the ST world, but way better.

You need the driver being developed by @jvm33 called “Almost Anything Universal Z-Wave Drivers”. It’s labelled as Beta, but I’ve been using it since its initial Alpha release on my HomeSeer WD100 dimmers, and more recently on my WD200 dimmers, and it’s been rock solid.

Unfortunately, JVM is new to the HE world, as well, and putting his driver into HPM has not been a priority while he considers it to be pre-release. The good news is that you can install it manually from GitHub, and then automatically “discover” it’s updates after using the “Match Up” feature in HPM once it’s been installed manually.

The driver is at GitHub - jvmahon/HubitatCustom.

Once you’ve got that sorted, then you can start on figuring out Rule Manager (RM) to program your multi-tap functionality.

The driver is actually in HPM. I think I need to do a bit more to make it easier to find, but if you use the github URL the first time (in Hubitat Package Manager, choose "Install" and then "From URL"), it will then connect you to the Hubitat Package Manager copy so that you get updates.

I"m currently updating the driver to work better for devices connected via S2 security. I'll have that update out by Sunday (version 0.1.8) , so wait until then.

I know, that’s how I originally installed it. I went to HPM to see if you had had the time to make it findable through keywords or tags, but couldn’t find it that way yet.

So I went to screenshot this method by URL, and I got a package manifest error, so something looks to have changed that broke it. Let me know if you want more details.

Regardless, loving your work, it’s much appreciated!

I'll try again to get that fixed. This weekend, I"m trying to make the driver work with my Zooz Zen30s (a real problem device) and then I plan to publish an update, so I'll try to fix HPM at the same time.

I am real new and evidently a little slow. I believe I managed to install HPM, but I have not figured how to install the driver yet. Every web site that I copy and paste from the address bar gives me an Invalid Package File... Does not appear to be a valid Hubitat Package or does not exist.

Can you spoon feed me here?

Also trying to figure out the Basic Rules and/or Rule Machine. I created a rule that opens up the garage door when someone arrives, but I cannot figure out how to get it to close the door only when everyone (not 1 person but both) is gone. I am sure that it can be done, but I just can't seem to stumble into it.

Appreciate any help anyone is willing to give..


From HPM, select "Install":

Then select:

Then enter the URL to the packageManifest.json file:

** Must use the URL to the Github "Raw" version of the packageManifest.json file, which is:

Also, you can find the Repository by selecting "Install" then "Browse by Tags", then select the tags "Lights and Switches" and "ZWave" and scroll down until you see:

To add onto jvm33’s post, Keywords are another way to find something in HPM. Also to clarify the copy/paste links, generally when I post an alternative link it is to the raw groovy source which is suitable for pasting into the import URL option of the App or Driver Code options - it’s the manual way of updating if you don’t have HPM.

Thanks. I now have the drivers installed and applied to all of my switches. I have also configured them with Enable Advanced Configuration, Show Parameter Value Input Controls, Enable text logging, and Enable Command Supervision if supported. But I cant figure out how to access the multi-tap controls. I don't see it in Button Controllers or Rule Machine. Do I need to also update something else to gain access?



You have to trigger the rule using the Custom Attribute event. I've updated the section of the Readme discussing Central Scene events to explain this in more detail. See:

Thanks for the wonderful assistance. Got it working and loving it. Still more problems than solutions at this point, but this function is why I purchased a house full of HS WD100+ switches to begin with a few years ago.

Intimidated by the Hubitat, but glad I am here after they announced that ST ADT was going to be deactivated, it was the push I needed to get away from ST... No regrets yet. Just still need to figure out how to get the system to close garage door after both of us leave (instead of when one of us leaves). Great that I can get it to open when one of us arrives. Also need to figure out how to make alarm auto activate when we are gone, integrate Alexa text to speech for notifications, and get the system to chime when a door is opened...

Lots to do, but only switched this weekend...

Appreciate the past and any future assistance.


One additional question regarding the multi-tap....

The Button Controller program is more convenient for double taps than the RM due to being able to create one rule to manage both double tap states...

Do both the BC and RM use the actual multi-tap command from the switch or is that not even a concern for Hubitat. ST was terrible for software multi-taps and would not register them or delay action due to cloud issues. That is why I purchased the HS dimmers in the first place...


The button controller app does not support my multiTapButton attribute since its a "custom" attribute. You can, of course, still use button controller for single and double taps, but for 3 or more, you'll have to use Rule Machine. My drivers (and all Hubitat central scene aware drivers) directly process the command from the dimmers - there is no cloud involved, so you should not have delays.

If you have an iPhone, you'll want to look into Homebridge and set that up with a Hubitat plugin. You can then control your garage door through iPhone automations which make it easy to set up a "when the last of us leaves" type automation.

There are several homebridge plugins to choose from. I use the one I wrote:

But this is another very popular one:

Another thing to know, if your WD100s support S2, they will operate a bit more reliably (many people think S2 is just about security, but devices that communicate using S2 also use a feature known as "supervision" which retransmits the messages if the first gets lost). So if you haven't already connected all your dimmers, I'd recommend using the "S2" option when including them.

Thanks, but unfortunately I do not have an iPhone, so I guess that workaround is not available to me. Surprised that this is a hole in the Hubitat system. Guess that cascades to having the alarm mode set after both leave the house too. That really sucks if there is not another work-around that is not iPhone based.


I think if you install the Hubitat app on your phones it sets up "presence" devices on Hubitat. I think you could then use Rule Machine to do If (any of phones A, B, C presence changes) and (all of phones A, B, C are not present) then close doors

There are also some apps out there that detect presence based on whether your phone is connected to your local WiFi. See: [UPDATED] iPhone WiFi Presence Sensor

If you have an Android, you can use tasker to send an http request to hubitat using the hubitat app Maker API.

I have it update my presence in HE based on whether or not I am connected to my home wifi

Thank you! Just setup my new c7 and wanted to move all my z wave to the new hub. Old driver for switch was not working for the buttons. While I agree with the devs about 12 buttons, I definitely use 4 of them! Thank you again! Needed this!

@jvm33 I'm attempting to use this driver for my Homeseer WS-200+, and I'm getting the following errors when trying to turn on/off the switch with the on/off commands in hubitat, any idea why? You can see it turns off/on fine when manually pressed.

I installed the driver with HPM using:

Commands and mutitaps seems to work great though. I can see them all in the event logs, and I also am able to control devices with multitaps using the hubitat button manager without issue. This is just keeping my automations from triggering the lights on/off.

If I comment out lne 150 to test, I get:
dev:720 2023-10-12 07:27:06.125 AM java.lang.NullPointerException: Cannot invoke method get() on null object on line 1092 (method off)

I removed the comment.