HomeSeer HSM100 Z-Wave MultiSensor

Anyone else have experience with these sensors? I added one to my network and it appears to report the motion fairly well, but the temp/lux is not coming across those fields are just blank. I set the update interval to 20 but it appears to have no effect. I have removed and added it 3 times with the same result.

Way back when I actually provided this multisensor to the SmartThings Dev. team /Urman who originally configured it as a new device, added it to the list of compatible-with-smartthings Z-Wave devices and sent it back to me w/everything working as expected. Temp/Lux values did display but at the time I never tried to set trigger events based upon Temp/Lix readings. Somehow over time, (and after applying all subsequent iOs app & hub software updates) I too am unable to have Temp/Lux values show up in those fields despite also removing adding the device several times.
Not sure why or what happened …

I will submit a ticket to support to see if we can get some more info on this. Thank you for the update mrmedia

Support is looking into this issue, it was escalated to a programmer to review the changes. Would love to be able to use the lux sensor to adjust dimmers.

Going back and forth with support, try using this device type:

See if it fixes the luminosity and temp for you, it did for me, waiting to hear back from support to see why the z-wave utility reference changed.

1 Like

I deleted my orig. HSM10Multi & added it again using your modified device type but still no reporting/displaying of temperature & lux values. Not sure what to do now ;^(

My guess is that there are different firmwares on the HSM100 causing the sensor to be detected in different ways.

Try using this Gist:

Once saved/published, open the live logging console on the web IDE, then press the side button on the HSM100 which will force it to update. You should see logs generated, paste me the contents of any logs for the device that start with three asterisks.

Those lines will help me understanding if your sensor is or is not sending the data, then we can determine why it isn’t parsing it properly.

No having any luck it seems after trying your suggestion. Here’s what showed up when I opened up the live logging console. Seems to only show the 1 minute interval report setting I created under Preferences for the device once I added it back into my environment - then a few errors got registered.

Even more baffled now as to what little has been generated by the device …

That is a really odd error… are you seeing that whenever you push the side button on the sensor too? I am seeing line 78 as “def encapsulated = null” which could not possibly throw that error.

The “Will configure…” happens anytime you change the configuration/preferences on the device. Are you at least getting the motion detection working, or is that broken too?

I got my older HSM100 working using one of the device types from this thread several months ago. Recently I’ve been getting a lot of false positive alerts from this sensor. I’d like to try adjusting the sensitivity of the sensor but I don’t see any settings for this in the existing device type files.

Here are some links that indicate that this should be possible

I am not sure how to modify the groovy file to add this. Does anyone have any pointers?

I’m somewhat programmatically challenged but perhaps you could leave a comment with person who wrote/published their code in Github (sarakha63). Maybe he/she could help?

I started seeing the false positives about 3 weeks ago and removed it from the alarm system as a result. I will take a look at this in the next few days and provide an update.

I will see if I can add a setting for sensitivity, however looking through the documentation SmartThings has pre-defined zwave commands such as the wakeUpV2 command that is used to wake the HSM100 device up. I do not see one that appears to modify sensitivity. That said I should still be able to send a RAW command to the device from the ST hub. The issue I am going to run into is finding that command, since from what I see the only way to configure it is through HomeSeer currently. I have no method of sniffing the data between a HomeSeer Z-Troller and the HSM100.

If you can find any documentation that refers to a command or a payload we should be in business. This will probably be the correct command we just need the correct payload format.

Any updates on this? I am new to ST and have a few of these laying around from a Homeseer system I had built in our old house. I was able to connect, but not getting any temp readings.
Thanks all.

Use my gist:

You will need to login to the smartthings API, create a new Device Type under “My Device Types” then paste the above code in, and save/publish.

Then go under “My Devices” and click on your sensor(s), edit them, and change the “Type” to “HomeSeer Multisensor 2”

You should get lux and temp now.

1 Like

Thanks for this – looks like it’s working. :thumbsup:


Thanks for this code as I got my sensor working now however when it senses motion does not reset back to no motion properly. Any ideas on what I need to do in the code or HSM100 sensor to fix? This is just turning on a basement light with a 2 minute delay to turn back off using the smart lighting smart app.

PS I learned a lot as this is my first Device Handler / IDE effort!


Just to be clear, the device detects motion, then stays in the “Motion Detected” state indefinitely?

The main issue with the HSM100 is that it has a timeout period for when motion is no longer considered. If you edit the device itself you should see a “Multisensor report (minutes)” that is the value of how many minutes must past since the last time the device sees motion to send the signal that motion is no longer occurring.

I would recommend reviewing that value and determining how that effects your script. Many other motion detectors report motion in real time which may be your confusion.

Let me know, if it isn’t ever reporting No Motion then I can show you how to add some debug info into the stream to determine what is going on.

What is actually happening is that it is sensing motion, and then going to the active state, but then not sensing no motion till 20 minutes later. The sensor is disabled during that entire time.

I changed the multi sensor report down to 2, but my device says that value is for the reporting of the illuminance and the temperature, but says nothing about the motion. Also I changed that a while ago, but it is not checking every two minutes. This is actually the only parameter that the device lets you set, is that correct?

Pretty sure I found the issue in the code. Near the end on line 189 the def updated and def configure commands are set for 20 minutes? My motion is not updating for exactly 20 minutes regardless of the Multisensor report value setting. Now hopefully you can tell me how to fix.

Thanks for all the help,


def updated() {
log.debug "Will configure wakeup interval (${60 * (settings.intervalMins ?: 20).toInteger()} seconds)"
state.config = true

def configure() {
zwave.wakeUpV2.wakeUpIntervalSet(seconds: 60 * (settings.intervalMins ?: 20).toInteger(), nodeid: zwaveHubNodeId).format()