Monoprice Z-Wave motion/temp sensor and IDoorContact

More information would be good… The variables look like they are from a motion sensor… but the iDoorContacts variable should not be present on the motion sensor…

First… look in the LuaUPnP.log… I added some debug logging to the updated implementation, so you should be able to see what is happening…

It should look something like:

02      11/14/15 11:36:33.295   luup_log:293: (iDoorContact::Startup) Starting iDoorContact ATS controller with autodetect <0x76bc6520>
02      11/14/15 11:36:33.296   luup_log:293: (iDoorContact::findDevices) Discovering eligable devices <0x76bc6520>
02      11/14/15 11:36:33.297   luup_log:293: (iDoorContact::findDevices) found device -  id [291] name [LR ZW Motion Sensor] type [urn:schemas-micasaverde-com:device:MotionSensor:1] <0x76bc6520>
50      11/14/15 11:36:33.298   luup_log:293: (iDoorContact::CreateChildDevices) Creating/updating ATS device for Z-Wave device [291] <0x76bc6520>
50      11/14/15 11:36:33.300   luup_log:293: (iDoorContact::GetChildDevices) Found ATS device [294] for Z-Wave device [291] <0x76bc6520>
50      11/14/15 11:36:33.301   luup_log:293: (iDoorContact::Startup) Monitoring device [291] <0x76bc6520>
02      11/14/15 11:36:33.302   luup_log:293: (iDoorContact::Startup) Startup complete <0x76bc6520>

The temperature value that is diaplayed (0 - zero), indicated that the temperature device has never been updated… Have you waited for at least the pool interval? The motion sensor does not update the temperature reading continuously… only when the device determines that the temperature has changed enough to sent a new report.

So the next step is to test that a change in the CurrentTemperature variable actually updated the ATS device… Go to the advanced/variables tab for the motion sensor device and change the CurrentTemperature variable to 1… then look in the log… you should see something like…

50      11/14/15 11:51:14.573   luup_log:293: (iDoorContact::UpdateLevel) Updating ATS device [294] for Z-Wave device [291] <0x72661520>
50      11/14/15 11:51:14.575   luup_log:293: (iDoorContact::getAverageTemp) Calculated average temperature [1] from [1] devices. <0x72661520>

This verifies that the plugin works.

If you do NOT see the log output for the UpdateLevel function, then verify that you are changing the variable for the correct motion sensor device.

If everything in the logs looks ok, then test your motion sensor… Remove it from the wal/ceiling/test bench and place it in the freezer for a few minutes… then replace the sensor in its original location… As the sensor cools down and warms up, it should send updated temperature reports… and you should see this reflected in the logs.

50      11/14/15 12:05:29.510   luup_log:293: (iDoorContact::UpdateLevel) Updating ATS device [294] for Z-Wave device [291] <0x76dc6520>
50      11/14/15 12:05:29.511   luup_log:293: (iDoorContact::getAverageTemp) Calculated average temperature [23] from [1] devices. <0x76dc6520>
50      11/14/15 12:06:48.624   luup_log:293: (iDoorContact::UpdateLevel) Updating ATS device [294] for Z-Wave device [291] <0x76dc6520>
50      11/14/15 12:06:48.626   luup_log:293: (iDoorContact::getAverageTemp) Calculated average temperature [17] from [1] devices. <0x76dc6520>

50      11/14/15 12:13:43.374   luup_log:293: (iDoorContact::UpdateLevel) Updating ATS device [294] for Z-Wave device [291] <0x76dc6520>
50      11/14/15 12:13:43.376   luup_log:293: (iDoorContact::getAverageTemp) Calculated average temperature [19] from [1] devices. <0x76dc6520>
50      11/14/15 12:15:58.684   luup_log:293: (iDoorContact::UpdateLevel) Updating ATS device [294] for Z-Wave device [291] <0x76dc6520>
50      11/14/15 12:15:58.686   luup_log:293: (iDoorContact::getAverageTemp) Calculated average temperature [21] from [1] devices. <0x76dc6520>

If you do not see the UpdateLevel function being triggered, you may have a defective sensor, or the sensor did not pair with your Vera properly, in which case you should unpair (exclude) the sensor… make sure the Vera device is removed from the UI, and re-pair (include) the sensor.

The other possibility… Some of the more recent monoprice sensors have been ZP3102-5 instead of ZP3102… These newer sensors are Z-Wave Plus, and may not report temperature (and may not even pair correctly) with a VeraLite/Vera3… Check the model number reported on the motion sensors advanced/parameters page…

@Cybrmage: I have several Monoprice (Vision) ZP3102-5 PIR sensors on my UI7 Vera 3 and for all of them I have a working temperature sensor using the original ATS plugin. Granted. I installed them way back somewhere between 7.02 and 7.04. I lost the ATS device (without losing the temp sensor functionality) but your fix resolved that.

I’m wondering if something changed in a recent firmware that is causing new temp sensors no longer to work. Unfortunately I don’t have any spare ZP3102-5’s and I really don’t want to remove and re-add an existing one and lose my temperature sensor for it.

If I install your auto config, will it mess with my existing ones? If not I can try that if you need logs. Worst case I run a backup before and restore to that.

So… that eliminates the possibility of it being a Z-Wave plus issue…

Something has changed… The main ATS device now displays a generic default icon… the filename of the default icon has changed… but that’s only cosmetic…

Also, the z-wave firmware changed (sometime around 7.0.8)… this may be causing an issue with veralite/vera3…

Did you follow the troubleshooting steps I posted above?? what was the results?? Does the motion sensor device has a CurrentTemperature variable? does it update with the current temperature??

It shouldn’t… The new implementation file does not change the mechanism for creating the child devices… It just eliminates the need to configure the plugin… Instead of storing the list of iDoorContact devices in a variable, it creates the list on startup by testing the installed devices. It also extends the base main ATS device with Average temperature (for the devices it monitors)…

The new D_iDoorContact1.json file, that fixes the icon and displays the average temperature, is attached.

My temp sensors have worked correctly since I installed the plugin. The only issue I ever ran into was that the ATS device no longer displayed.Your file fixed that. But even then, and still, my temp sensors are displaying correctly. So whatever changed in the firmware does not seem to affect already set up devices.

The ATS device does have a default zwave icon on my now. All temp sensor devices it has created have a CurrentTemperature variable that shows the current temperature and does change appropriately.

I just got home from work and am trying to wind down. I’ll give your file a try tomorrow after I create a backup just in case. :slight_smile:

Hey, thanks for all the help. I left for the day, came back and now i am seeing temp readings on the new device. I guess I’ll need to see how often it updates. I’m guessing every 30 mins.

Now I will need to research on how to use this to adjust my nest. The plan was to use this like an ecobee sensor in my daughter’s room. When the temp gets too low, I want to turn the heat up on the nest. I’ll ask in the appropriate thread. Any tips welcome. Thanks again!

Sent from my Nexus 5 using Tapatalk

If I change the polling interval of the sensor, does that also change how often the temperature is updated in vera?

Sent from my Nexus 5 using Tapatalk

I ended up switching to use a scene to update temperatures as described in this link:
http://forum.micasaverde.com/index.php/topic,13041.msg146816.html#msg146816

It works well. Will update on whatever interval i need. Thanks all for the help.

Installed this as per directions. I see my two temperature sensors, but both have had 0F listed for a couple of days now. I have the newer ZP3102-5 sensors. It looks like maybe they broke something or changed something that doesn’t like these new sensors. I have tried just about everything and can not get them to display a temp. Anyone else get these new sensors actually showing a temp?

Same problem here :frowning:

OK, i’m really not understanding this. I paired my monoprice motion/temp sensor using add “generic device”.
I even get a “CurrentTemperature” variable in the “advanced” then “variables” page in UI7 for the added motion sensor!

I’ve followed all these instructions multiple times but nothing!

If the temp seems to be in the motion sensor device’s variables correctly, how can this be so hard to display in UI7 somewhere?!

Note:
Installing as a Vision ZP3102-5 also gives the “CurrentTemperature” variable

Well now i have some success. WTF did i do? :frowning:

Hi guys,

Not sure if I’m missing something here, but when including my vision as a “Generic Device” its automatically creating the temperature sensor, and its updating regularly. All is well, however its not reporting any motion?! Any ideas? The sensor’s LED is flashing for motion.

i would un-enroll the motion sensor then pop out its battery and wait a bit then re-enroll it as a Vision ZP3102-5 after you have all the pieces in place for the “additional temperature sensor” to auto find the temperature sensor that were included earlier in this thread.

Still no luck :frowning: When I initially include the sensor, I get two devices, a motion sensor and a temp sensor. After a few wakes, I get a value on the temperature sensor, but then it stops detecting motion. A little more time, and I lose the temperature device and the motion sensor itself starts detecting motion. At no point do I get an extra device for the sensor from the plugin.

I followed reply 18, installing the plugin, updating the advanced settings and then uploading the xml.

CurrentTemperature is present and populated.

And what does your LuaUPnP log show for the plugin during a restart?