Is there a better DH for Fibaro FGMS-001, built in support is disappointing

I just installed my first device. Fibaro Motion Sensor. I am very disappointed with the default DH.

The only parameter configurable by the OTB DH is Lux sensitivity.

This device has wonderful configuration settings like motion sensitivity, PIR mode, LED controls, Tamper mode etc
Documented here

I have the SmartThings DH with all these settings, should I port that, has someone already, or is there a way to edit the OTB to improve on it?

https://community.hubitat.com/t/compatible-devices-list/113/102?u=csteele

I is listed as supported. And it was recognized, they just implemented 1 of something like 24 parameters which is disappointing. I also saw a post about the default DH sucking up batteries. The batteries for this deivce are $8 each. So that's not good. Don't worry, I'll deal, just felt like venting a little haha

I don't think you're using the one I pointed you to....

When I grab the source from the NEXT reply at:
https://community.hubitat.com/t/compatible-devices-list/113/102?u=csteele

and paste it in as Driver Code. Then select it in a device, I get:

Which sure looks like a LOT more than ONE parameter?

You pointed me to one message before the post so I read.

Fibaro FGMS-001 ZW5 V3.2 Motion Sensor
Has someone ported a device driver for this? I’ve tried the stock Fibaro driver and generic z-wave motion driver, neither seem to be registering motion changes. Thanks in advance!

And didn't know why you were pointing to someone else complaining also. haha

The next post is 103 not 102
https://community.hubitat.com/t/compatible-devices-list/113/103

However, the posts after that mention issues with the posted code. So I don't want to start with someone else's port that has bugs. I also hate a post that is embedded in community and not shared with github. Community code often has a post a few lines down saying....oh wait there is a bug, change line 100 to ..... or use this version instead.....

So here is my preference

  1. hubitat base code (but I hate that I can't see the source, this may be a show stopper for me and $115 wasted)
  2. community code shared via github and clearly being maintained
  3. my own code which I then share with community on github and maintain
  4. pasted code if I really have to but then I copy into github for myself, don't share but maintain for my self because it was someone else's code and I will only share if they say OK

I am trying to port my copy of the Fibaro Motion Sensor code and I am getting an error I don't understand.

dev:32018-06-06 19:06:38.555:errorgroovy.lang.MissingMethodException: No signature of method: java.lang.String.call() is applicable for argument types: (java.util.LinkedHashMap) values: [[value:active, name:motion, descriptionText:FloatingMotion1 detected motion]] Possible solutions: wait(), any(), wait(long), each(groovy.lang.Closure), take(int), any(groovy.lang.Closure) on line 327 (parse)

dev:32018-06-06 19:06:38.514:debugparse cmd=BasicSet(value:255) description=zw device: 04, command: 2001, payload: FF

It's happening at this line in the code

Anyone understand why this is saying I am making a call to String.call() ? the line is
result << createEvent(zwaveEvent(cmd))

debug command states
cmd=BasicSet(value:255) description=zw device: 04, command: 2001, payload: FF
FloatingMotion1 detected motion at this line.

We we must have just returned from this event section but I don't see the issue here.

The built-in Fibaro ZW5 driver supports all of that device's configuration parameters.

Which driver was automatically assigned to your device?

Yes, I can confirm it does. However my experience with the ZW5 version of this device is that motion detection is inconsistent at best (I believe it's a firmware issue because it's discussed on fibaro's own forums). In the end I returned all but two of them which I use for lumimace, and temperature only.

Dude, I didn't even think to check if it picked the wrong default because the name was "Fibaro Motion Sensor" and that seemed correct.

You are correct, switching to Fibaro Motion Sensor ZW5 has all the parameters.

Do you know if it is possible to see the code behind the defaults? It's hard to debug an issue if you can't see the code.

Thanks for pointing this out. This version is much better. I wonder what other motion sensor Fibaro makes that it was picking? I am unaware of another device. Shouldn't the device signature pick the correct device?

Thanks for pointing that out. I can junk my attempt to write my own now :slight_smile: This make me happy but I will probably have to learn about converting for my next device. I wrote the DH for ztx-120 for the most part and it hasn't been converted yet. So this will be my next effort :slight_smile:

On SmartThings my motion detection is 100% spot on so it's not firmware in my devices anyway. I think I did see mention of newer firmware version 3.4 I think that said there were issues. How can we determine our version of the firmware. I bought all of mine over a year ago and I have 4 of them working fine.

@halfrican.ak UPDATE: you might be correct. the motion sensor wasn't working at all on Hubitat. I tried removing it and re-adding. Playing with various configuration settings. but nothing made it work correctly. I excluded it and moved it back to SmartThings and it is spot on now.
Looks like I wasted $115 on this hub. At least for now, perhaps it will improve.

Mine were latest version purchased only a few months ago. They didn't report motion reliably in smartthings, Vera, or hubitat so I'm doubting the hub is the issue. Generally my problems manifested as the sensor getting "stuck" in motion active until it detected motion again which then generally resulted in it working again. I spent a lot of time trying to resolve this issue to no resolve so moved on to sensors from dome, zooz, Aeotec, and Iris which have been working perfectly for me.

Edit: I should mention, that even when they do work properly, they have a much slower response time than my other sensors. The Aeotec are not speed demons either, but at least they work consistently.

This is exactly what happened to me on Hubitat. Never happened to me on SmartThings. These motion sensors are key elements in most of my Home Automation and have NEVER failed me. I consider them the best zwave devices I own. But when I moved to Hubitat it was acting terrible. I moved it back t ST and it is working 100% again. I plan to move it back to Hubitat one more time to be sure. I don't know how to tell what firmware I am running so not sure how to check. But again the 4 I own are rock solid.

Fibaro buttons on the other hand are 100% garbage...just sayin LOL

The only thing I could possibly attribute to their performance issues was that they are unique among my motion sensors in that they only pair using "secure" mode. All my other sensors either have the option to pair secure/standard or do not offer secure as an option. I don't know enough about z-wave networking to know if this could be a factor mesh performance as none of my repeaters offer secure mode as an option either. Maybe I was experiencing a weak signal issue, not sure. All I know for sure is changing brands solved my issues.

OK I moved the sensor back to HE

  1. Motion stuck on active, never changes
  2. acceleration (assuming this is vibration) never triggers, remains inactive even if I play catch with the thing.
  3. Tamper says clear: I can juggle the thing around, tamper lights blinking away and HE say "clear"

Sorry to say HE doesn't work at all with this device.

Report your findings to Hubitat's @mike.maxwell. He is usually very responsive to device driver issues.

The stock driver for this device isnt awesome, but it`s not this bad. Sounds like the configuration parameters didnt set.
I have 4 of the original sensors in production and they do not behave this way.

I think there are few firmware versions of the ZW5 so it's possible the clusters or product number changed between versions which could explain why it didn't get assigned to the correct driver.

I wrote the original ST handler that was linked to above so if you post the fingerprint data i can see if there's a difference between my ZW5 and yours.

I still need to port my ZXT-310 IR Extender, but Remotec devices can sometimes be challenging so I'm saving that one for last.

I already did, see screenshot above. However technically it doesn't matter because when I pick the ZW5 DH the device doesn't work at all and is non-responsive. I tired uninstalling and re-installing several times and it jus doesn't work. I see activity in the logs but states don't change. When I move the device back to ST it works perfectly. I went back and forth 3 times last night with same results. Since I can't see the code behind the ZW5 device I can't add debugging code to it to figure out what is happening. That is the main reason I am considering leaving the platform. SmartThings published their DH code to github in open source so I can look at it, make changes and test. I can also use the open code for reference when working on custom code. Given the lack of documentation it seems to me that open code would be helpful. Is the code the system uses available? I was told by another owner that it is not.

Unfortunately it is very hard for me to debug these issues because I have a full time job and living in Hawaii by the time I start working on the system at home each night it's is the middle of the night for the support folks. The turn around on issues will be too slow. I thought the devices listed as working, which is quite large, meant that they actually worked. I didn't realize that the state of this device was so beta. I don't feel like that was made clear at point of purchase.

The Driver code that Hubiat themselves produce is not disclosed. All Community supplied code must be, since copy paste is the only way to add it to our Hubs.

Therefore, you might want to try the Code @krlaframboise produced. It would give you the chance to inspect/modify the code to debug. IF at the end, you find you can return to the "native" code, you have that option.

Yes, this the code I am talking about. Given that it should be the best designed code written by the company stakeholders. It would be a good reference. But it isn't open.

But the version was posted as a comment, not in github. The thread that follows discusses issues with it. No offense to Kevin, he does great work. But given that his version is now the base code for the system version I want to see the official code. I can't debug issues with the "native" code by switching to random code posted on the community forum. That would just be a waste of my effort.

I purchased Hubitat because I wanted to port my ZXT-120 code over. I wanted to contribute. But with no documentation to help me convert other than random comments from anyone that is hacking away at converting their own and no ability to view clean approved code I don't have the time to invest to help this product succeed. Especially when I realize that the code I provide will eventually be taken into the system (that would be my hope anyway) and then closed down so I have no way to maintain it. I feel this isn't the place for me. I was hoping this effort was going to be more open like HASS but on a platform better designed for easy implementation. I think the second part is planned but I think the plan is to create a closed product given the fact I can't see the existing DH and App code.