[DEPRECATED] Fibaro Motion Detector v3.2 (Alpha Release)

I feel your pain. I struggled for a few weeks to get it sorted and finally it all seemed to start working. I don’t really know what i did any different.

I updated the ZW5 handler by adding the config lines as described here

Have you used IDE to alter configuration. I created a new device handler called ‘ZW5new’, added config lines to change parameters i wanted then used the IDE simulator to send parameter to device once i’d triple clicked button inside sensor

@Jonpho thanks for the quick response.
I’m using the ‘stock’ ZW5 DH which doesn’t appear under my DH section in the ide and therefore I cannot alter the code.
Is there a different one out there that I can use?

go here

go to My Device Handlers in IDE and ‘create new device handler’, use the ‘from code option’, copy and paste code from above link and then save and then publish for me. Call it another name so you can differentiate from the handler already assossciated with your sensor.

You can then add config lines as here

Then save and publish

You need to associate your device with new handler. Go to devices section of IDE then find device and edit the type to the new handler you created above and save

Then you need to go into simulator on right hand side of IDE device handler section. Set location to Home, select your sensor then install,

Once you’ve installed you should see a configure button, bottom right. Get your sensor and triple click the button so its ready to pair and then hit configure and away you go!!!

Have you got the Fibaro manual so you know which parameters to alter??

I think I’ve got above correct…

1 Like

Thanks @Jonpho.
Perfect instructions.
I have the manual with all the configurable parameters.
I think I will add all the parameters that I want configured and give it a go.
Cheers.

Good luck, I must have spent 4 weeks trying to get it sorted, nearly sent it back as thought it was faulty but has worked fine ever since i used above. Plus the WAF has gone up a lot since i turned the blinking on motion lights off!!

1 Like

Thanks @Jonpho
Here is my update and an account of what I have done for future reference and to help out any other peeps out there who may encounter this issue.

I downloaded the Fibaro Motion Sensor ZW5 device handler (DH) that is listed at the beginning of this thread.
I then copied in all the parameters as listed in the manual with the settings that I require into the def configure section.

Here is a copy of the complete section:-
def configure() {
log.debug “Executing ‘configure’”

def cmds = []

cmds += zwave.wakeUpV2.wakeUpIntervalSet(seconds: 7200, nodeid: zwaveHubNodeId)//FGMS' default wake up interval
cmds += zwave.manufacturerSpecificV2.manufacturerSpecificGet()
cmds += zwave.manufacturerSpecificV2.deviceSpecificGet()
cmds += zwave.versionV1.versionGet()
cmds += zwave.associationV2.associationSet(groupingIdentifier:1, nodeId:[zwaveHubNodeId])
cmds += zwave.batteryV1.batteryGet()
cmds += zwave.sensorMultilevelV5.sensorMultilevelGet(sensorType: 1, scale: 0)
cmds += zwave.sensorMultilevelV5.sensorMultilevelGet(sensorType: 3, scale: 1)
cmds += zwave.wakeUpV2.wakeUpNoMoreInformation()
cmds += zwave.configurationV2.configurationSet(parameterNumber: 1, size: 1, configurationValue: [8])
cmds += zwave.configurationV2.configurationSet(parameterNumber: 2, size: 1, configurationValue: [3])
cmds += zwave.configurationV2.configurationSet(parameterNumber: 3, size: 1, configurationValue: [1])
cmds += zwave.configurationV1.configurationSet(parameterNumber: 4, size: 1, configurationValue: [1])
cmds += zwave.configurationV1.configurationSet(parameterNumber: 6, size: 2, configurationValue: [0,20])
cmds += zwave.configurationV1.configurationSet(parameterNumber: 8, size: 1, configurationValue: [0])
cmds += zwave.configurationV1.configurationSet(parameterNumber: 9, size: 2, configurationValue: [0,100])
cmds += zwave.configurationV1.configurationSet(parameterNumber: 12, size: 1, configurationValue: [0])
cmds += zwave.configurationV1.configurationSet(parameterNumber: 14, size: 2, configurationValue: [0,255])
cmds += zwave.configurationV1.configurationSet(parameterNumber: 16, size: 2, configurationValue: [0,0])
cmds += zwave.configurationV1.configurationSet(parameterNumber: 18, size: 2, configurationValue: [0,15])
cmds += zwave.configurationV1.configurationSet(parameterNumber: 20, size: 1, configurationValue: [20])
cmds += zwave.configurationV1.configurationSet(parameterNumber: 22, size: 2, configurationValue: [0,30])
cmds += zwave.configurationV1.configurationSet(parameterNumber: 24, size: 1, configurationValue: [0])
cmds += zwave.configurationV1.configurationSet(parameterNumber: 25, size: 1, configurationValue: [1])
cmds += zwave.configurationV1.configurationSet(parameterNumber: 28, size: 1, configurationValue: [0])
cmds += zwave.configurationV1.configurationSet(parameterNumber: 29, size: 1, configurationValue: [0])
cmds += zwave.configurationV1.configurationSet(parameterNumber: 40, size: 2, configurationValue: [0,200])
cmds += zwave.configurationV1.configurationSet(parameterNumber: 42, size: 2, configurationValue: [0,300])
cmds += zwave.configurationV1.configurationSet(parameterNumber: 60, size: 2, configurationValue: [0,20])
cmds += zwave.configurationV1.configurationSet(parameterNumber: 62, size: 2, configurationValue: [3,900])
cmds += zwave.configurationV1.configurationSet(parameterNumber: 64, size: 2, configurationValue: [0,0])
cmds += zwave.configurationV1.configurationSet(parameterNumber: 66, size: 2, configurationValue: [0,0])
cmds += zwave.configurationV1.configurationSet(parameterNumber: 80, size: 1, configurationValue: [0])
cmds += zwave.configurationV1.configurationSet(parameterNumber: 81, size: 1, configurationValue: [50])
cmds += zwave.configurationV1.configurationSet(parameterNumber: 82, size: 2, configurationValue: [0,100])
cmds += zwave.configurationV1.configurationSet(parameterNumber: 83, size: 2, configurationValue: [3,1000])
cmds += zwave.configurationV1.configurationSet(parameterNumber: 86, size: 1, configurationValue: [18])
cmds += zwave.configurationV1.configurationSet(parameterNumber: 87, size: 1, configurationValue: [28])
cmds += zwave.configurationV1.configurationSet(parameterNumber: 89, size: 1, configurationValue: [1])

encapSequence(cmds, 500)

}

I then changed the sensor DH to the amended DH that includes all the parameters above.
I did a three button press to put the sensor in configuration mode.
Pressed the configuration button in the ide for the device.
Waited a couple of minutes and the device settled down OK.
No more flashing LED with motion and I am also getting the reports for lux and temp as per my settings.
Happy days.
Thanks to all who have provided me with guidance and information to enable me to complete this reconfiguration.
Now to start on the second sensor… :grin:

1 Like

Great news! Glad it worked!!

James,

The fix worked and it’s been running flawlessly. I’m going to add in the sensitivity parameter and call it done, but it’s ST so it is never done.

Thanks again for your help!

1 Like

@Fuzzyligic

I have the fibaro ZW5 motion sensor its the latest model. Does this device handler work with it?

If yes will i be able to configure the sensitivity with it?

Thank u

See my post 109 above.

1 Like

I will try it thanks.

Thank u i will try!

Hi all, I’m about to pull my hair out trying to figure out how to modify the lux settings of this sensor. I have the newest version of this sensor (v3.2). I simply want to have the sensor report lux every 5 mins. I’ve read through this thread closely and I’m using the default device handler and I added the following two config lines, I then initiate simulator, wake up the sensor by hitting the button 3 times and waiting for the LED to turn blue, then I hit the configure button and log shows a bunch of commands being sent. But my sensor is still constantly reporting lux about once or twice a minute.

cmds += zwave.configurationV2.configurationSet(parameterNumber: 40, size: 2, configurationValue: [0,200])
cmds += zwave.configurationV2.configurationSet(parameterNumber: 42, size: 2, configurationValue: [0,300])

What could I be possibly doing wrong? When I look at the history tab on my iPhone I see constant lux updates even with small changes like 2-3 lux. and couple of times a min. I thought parameter 40 is only supposed to send an update if there is variance in lux greater than 200 or parameter 42 is supposed to send updates every 300 seconds or 5 minutes.

Trying to get this sensor to behave the way I want it is sooo frustrating.

Edit: Is there a way to read the current parameter values from the sensor to confirm if in fact it’s taking my updates?

I tried all the parameter combinations but couldn’t get the sensor to calm down, it had false motion detections (too sensitive, I guess) and the lux readings were sent 3-4 times a minute. After two weeks, my motion sensor battery was already reduced to 70%. I’ve reverted back to the stock handler that ST published and put the lux readings onto another sensor in the house until this is fixed. I’m not sure why Fibaro messed with the firmware, the previous sensor was faultless, I have five of them. This new 3.2 version is a pain. Hopefully someone with better coding skills steps in to help.

I’ve been trading emails with Fibaro support over the last couple of days. They have escalated to one of their programmers to see why the parameter values aren’t behaving as expected. I suggest you guys should contact them as well so they realize this is having a wider effect. support-usa@fibaro.com

I just contacted Fibaro, thanks for the recommendation.

Ok banging my head against the wall…
So followed instructions as you did it … but none of the settings takes hold…
downloaded code from link…
changed to the following: (all other sections remained untouched).

def configure() {
log.debug “Executing ‘configure’”

def cmds = []

cmds += zwave.wakeUpV2.wakeUpIntervalSet(seconds: 7200, nodeid: zwaveHubNodeId)//FGMS' default wake up interval
cmds += zwave.configurationV2.configurationSet(parameterNumber: 20, size: 1, configurationValue: [0])
cmds += zwave.configurationV2.configurationSet(parameterNumber: 40, size: 2, configurationValue: [0,10])
cmds += zwave.configurationV2.configurationSet(parameterNumber: 42, size: 2, configurationValue: [0,60])
cmds += zwave.configurationV2.configurationSet(parameterNumber: 80, size: 1, configurationValue: [19])
cmds += zwave.manufacturerSpecificV2.manufacturerSpecificGet()
cmds += zwave.manufacturerSpecificV2.deviceSpecificGet()
cmds += zwave.versionV1.versionGet()
cmds += zwave.associationV2.associationSet(groupingIdentifier:1, nodeId:[zwaveHubNodeId])
cmds += zwave.batteryV1.batteryGet()
cmds += zwave.sensorMultilevelV5.sensorMultilevelGet(sensorType: 1, scale: 0)
cmds += zwave.sensorMultilevelV5.sensorMultilevelGet(sensorType: 3, scale: 1)
cmds += zwave.wakeUpV2.wakeUpNoMoreInformation()

encapSequence(cmds, 500)

}

Then i saved/published as a different name to my device handlers.
opened Device in IDE device list changed handler associated with my sensor to the new one.
opened up the simulator selected my device - triple clicked the button on the sensor… and pressed configure in the simulator…
What am i missing folks?

Any help would be appreciated.
Cheers
ROfu

Did you get any further with fibaro support? I I’m having very similar issues I think, would be great to somehow read its current values to know what’s being changed if any :confused:

I’m trying to merge the official device handler + the handler from Cyril + handler from Ronald Gouldner . I got the front-end working for now but the configure setup in testing stage.

This device handler will show the motion status on the “Things” listing, when no motion it’s white, and when there’s motion it’s blue. The default green for no motion & amber for motion are confusing to me as other motion sensor show blue when there’s motion. The color schema is set to similar for vibration.

code removed, to release an updated version later

Hi, I’m willing to test your code once ready. I’ve had nothing but frustration trying to modify the default parameters with no success. I opened a case with Fibaro but after several emails back & forth they referred back to ST. They also confirmed to me that there is currently no way to read the parameters from the sensor using ST.

I’ve tried following earlier instructions in this thread to modify a couple of parameters and every time I push a new config the sensor doesn’t behave as expected. I have to perform a factory reset every time and go back to the default settings.

I really wish I could modify the motion sensitivity since the default settings just aren’t sensitive enough for my use case. If I’m standing more than 6-8 feet away from it and wave my hands like a monkey it will not trigger motion at all.

I too wouldn’t have purchased this sensor knowing all these limitations.