Pre-release of Fibaro Motion Sensor

@YEM done
I also made some cleanup changes including the following

  • Added param 8 and 9
  • remove GET calls during config to improve performance
  • Renamed “List” tile to “Report” and fixed the method to report correctly
    by increasing the delay.
  • added cleaner debugging comments to config and ordered config based on
    parameter number so debuggin comments present in that order.

The “Report” tile takes 2 seconds between each param report so they all display correctly. This takes a while to get them all displayed so I recommend you do a new “triple B-Button” click for report.
To set config “Triple B-Button” and press Config Tile
To see results worked "wait for config triple click to finish (blue light goes out), triple B-Button click (blue light displays) and press “Report”.
All params should now report their current setting.

Wow it really looks great. And works like a dream. Thanks so much. You’ve been so much help.

Yes, multichannel association should work fine. I don’t think that’s required in this situation, though. If you just want to associate to a different group, that’s just an associationSet with a different groupingIdentifier. Multichannel association is more if you want a sensor or remote switch to directly control one outlet on a power strip or something like that.

1 Like

Fibaro suggests using multichannel association to put just the tamper alerts in a different association group, so group 1 for most of the sensor notifications, group 2 for tamper. It’s in their manual.

The manual I’m looking at says

2nd Association Group is assigned to the tamper alarm. Alarm frame will be sent to the associated devices once tampering is detected.

that means if you put the hub in association group 2 by sending zwave.associationV2.associationSet(groupingIdentifier:2, nodeId:[zwaveHubNodeId]).format() then it will send tamper alarms to the hub.

The original question was for an MCO Home light switch with two buttons, one for association group 1, one for association group 2. Uses multichannel association. So more like your power strip example:

Perhaps a new thread would be better for this topic since this thread is about the specific Motion Sensor device ?

That’s why I linked to the other thread. :wink:

Upon further inspection I don’t think my settings are being configured to the device. I tested changing the LED color and all I get is a red blink upon motion. And my day / night setting is not working (lights coming on at mid day). Is there a direct way to tell if the device took the settings changes?

You should be able to triple press the internal button and click the “report” button on the app. Be sure to be in Live Logging to see the results.

1 Like

Thanks, I see the logging now. I was looking in the wrong place. But that confirms my unit is not receiving parameter changes. To make these changes hit the device - I triple click the button on the device, the light turns blue, and I click Configure in the app, correct?

That is the correct process. It sounds like you did re-add the device with the new device driver. Try changing another parameter (like LED brightness P81)…And see if that changes. If so, the code may need to be reexamined for that parameter. If it doesn’t change the LED either, remove and re-add the device again (I had to do this) and then try to add the parameters again.

@YEM

1)how quickly are you triple clicking and sending config. The triple click only lasts a short time.
2) Do you see the output in the logs saying it set setting params when you click config ?
NOTE this output happens as the commands are being built and then they are sent after with a .5 second delay on each command so it doesn’t mean 100% that the settings are getting done. The device needs to stay blue while the commands are sent. This is why I removed the get value calls to allow the set params time to finish before the timeout.
It should look like this

3847693e-2c8e-4d90-a33b-1128b01d6511 9:05:46 AM: debug Setting Param 89 to 0
3847693e-2c8e-4d90-a33b-1128b01d6511 9:05:46 AM: debug Setting Tamper LED off
3847693e-2c8e-4d90-a33b-1128b01d6511 9:05:46 AM: debug Setting Param 81 to 5
3847693e-2c8e-4d90-a33b-1128b01d6511 9:05:46 AM: debug LED Brightness 5
3847693e-2c8e-4d90-a33b-1128b01d6511 9:05:46 AM: debug Setting Param 80 to 0
3847693e-2c8e-4d90-a33b-1128b01d6511 9:05:46 AM: debug Setting LED off
3847693e-2c8e-4d90-a33b-1128b01d6511 9:05:46 AM: debug Setting Param 60 to value of 5 - HARD CODED
3847693e-2c8e-4d90-a33b-1128b01d6511 9:05:46 AM: debug Setting Param 42 to [3, 132]
3847693e-2c8e-4d90-a33b-1128b01d6511 9:05:46 AM: debug Illum Interval Preference illumReportInt=900
3847693e-2c8e-4d90-a33b-1128b01d6511 9:05:46 AM: debug Setting Param 40 to [0, 0]
3847693e-2c8e-4d90-a33b-1128b01d6511 9:05:46 AM: debug Illum Report Threshole Preference illumReportThresh=0
3847693e-2c8e-4d90-a33b-1128b01d6511 9:05:46 AM: debug Setting Param 24 to value of 4 - HARD CODED
3847693e-2c8e-4d90-a33b-1128b01d6511 9:05:46 AM: debug Setting Param 9 to [0, 200]
3847693e-2c8e-4d90-a33b-1128b01d6511 9:05:46 AM: debug Setting Night/Day threshold 200
3847693e-2c8e-4d90-a33b-1128b01d6511 9:05:46 AM: debug Setting Param 8 to 1
3847693e-2c8e-4d90-a33b-1128b01d6511 9:05:46 AM: debug Setting pir operating mode Day
3847693e-2c8e-4d90-a33b-1128b01d6511 9:05:46 AM: debug Setting Param 2 to 15
3847693e-2c8e-4d90-a33b-1128b01d6511 9:05:46 AM: debug Setting blind time 15
3847693e-2c8e-4d90-a33b-1128b01d6511 9:05:46 AM: debug Setting Param 1 to 10
3847693e-2c8e-4d90-a33b-1128b01d6511 9:05:46 AM: debug Setting sensitivity 10
3847693e-2c8e-4d90-a33b-1128b01d6511 9:05:46 AM: debug Configuring Device For SmartThings Use

  1. Then wait for blue to go normal. Triple click again. and select “Report” while you watch the logs.
    It should look like this

3847693e-2c8e-4d90-a33b-1128b01d6511 9:08:12 AM: debug BatteryReport(batteryLevel: 100)
3847693e-2c8e-4d90-a33b-1128b01d6511 9:08:10 AM: debug Fibaro2 parameter ‘89’ with a byte size of ‘1’ is set to '[0]'
3847693e-2c8e-4d90-a33b-1128b01d6511 9:08:08 AM: debug Fibaro2 parameter ‘81’ with a byte size of ‘1’ is set to '[5]'
3847693e-2c8e-4d90-a33b-1128b01d6511 9:08:06 AM: debug Fibaro2 parameter ‘80’ with a byte size of ‘1’ is set to '[0]'
3847693e-2c8e-4d90-a33b-1128b01d6511 9:08:05 AM: debug Fibaro2 parameter ‘60’ with a byte size of ‘1’ is set to '[5]'
3847693e-2c8e-4d90-a33b-1128b01d6511 9:08:02 AM: debug Fibaro2 parameter ‘42’ with a byte size of ‘2’ is set to '[3, 132]'
3847693e-2c8e-4d90-a33b-1128b01d6511 9:08:00 AM: debug Fibaro2 parameter ‘40’ with a byte size of ‘2’ is set to '[0, 0]'
3847693e-2c8e-4d90-a33b-1128b01d6511 9:07:58 AM: debug Fibaro2 parameter ‘24’ with a byte size of ‘1’ is set to '[4]'
3847693e-2c8e-4d90-a33b-1128b01d6511 9:07:56 AM: debug Fibaro2 parameter ‘9’ with a byte size of ‘2’ is set to '[0, 200]'
3847693e-2c8e-4d90-a33b-1128b01d6511 9:07:54 AM: debug Fibaro2 parameter ‘8’ with a byte size of ‘1’ is set to '[1]'
3847693e-2c8e-4d90-a33b-1128b01d6511 9:07:52 AM: debug Fibaro2 parameter ‘2’ with a byte size of ‘1’ is set to '[15]'
3847693e-2c8e-4d90-a33b-1128b01d6511 9:07:50 AM: debug Fibaro2 parameter ‘1’ with a byte size of ‘1’ is set to '[10]'
3847693e-2c8e-4d90-a33b-1128b01d6511 9:07:50 AM: debug Listing of current parameter settings of Fibaro2

  1. You are clicking “Done” in param screen and not just returning up a level correct ?

I have tested that the settings are working as seen in above examples I have set the param 8 to night and it is getting set. I have not tested that it works as expected since I don’t really need this feature. I have tested that LED features work, on/off, color, mode etc So I know they work. If you can’t get color to work something is wrong. Not sure what

OK it started working (setting the params and logging them) after I clicked on Report and then configure. For some reason it suddenly started sending param changes. Although some weren’t working. Like the LED color. I went through and set each parameter one by one, hit done, and did the configure process. This worked for everything except the day / night thing.

For that I’ve changed parameter 9 to a very high number (55000) and a very low number (20), and nothing has helped. Although the very first few times on 55000, when motion was detected it did not activate the lights. Then it went back to its original ways. Ugh.

Edit - removed old sentence

I will have to find some time to test the day night thing. Are the parameters getting set correctly ? Is the issue just that it is not working ? Is the tolerance level (param 9) getting set as you wish. I can see this being a tricky setting since it depends on Illumination. But without an internal clock in the device I guess that was all they really could do.

How are you testing Day/Night. It might take some time to switch. If you are moving to dark room and expecting it to be enabled immediately perhaps that is the issue. Try leaving in the dark for a while and then testing if it is enabled. You are trying to turn on light in dark only correct ?

BTW just a thought but wondering if setting such extremes is unlikely to work. Why not just check the lux value with light and without. If you are getting 50 in the dark and 10,000 in the light, then set to something like 500. The scale is exponential so consider that aspect.

OK good idea. I didn’t even know what the setting meant. It isn’t very clear in the guide. I was just adjusting around trying to make it work.

I base my assumption of how this parameter works on this

  1. NIGHT / DAY
    The parameter defines the difference between night and day, in
    terms of light intensity, used in parameter 8.
    Available settings: 1 - 65535
    Default setting: 200 (200 lux)
    Parameter size: 2 [bytes]
  1. In terms of “light intensity”, so the parameter is defined as a light intensity level.
  2. default is 200 lux, so the setting is based on the lux reading.

Ron,
I have loaded your code and my device is not accepting the changes. I get an error on line 185 of the code. Here is the actual error that I see in Live Logging
org.codehaus.groovy.runtime.typehandling.GroovyCastException: Cannot cast object ‘null’ with class ‘null’ to class ‘int’. Try ‘java.lang.Integer’ instead @ line 185

Any ideas?

FWIW I put my Fibaro Motion Sensor in a tree to control my front lights at night and 2 or so weeks later it’s doing great. There was a very light rain and lots of fog (San Francisco) and no problems. It’s still reporting 100% battery as well. In those 2 weeks the older (not gen5) Aeon motion sensor would have lost (not joking) 50% battery.