Has anbody a working setup of the Fibaro Motion Sensor FGMS001?

I found this thread on the fhem forum (in German ) fhem.
They say that the v3.2 motion sensor has the same name like the old v2.6 but it is really a new device. For example it has 5 association groups instead of 3 like the old one. They created a new configuration file that is included in fhem. It´s avalaible here fhem_zwave_deviceconfig.xml. Check the product name “fibaro/fgms-zw5.xml” in the xml file. It seems that this file is currently not included in open-zwave.

I have to find out how to use it.

3 Likes

thanks, great find!
But I also dont have a clue what to do with it :grin:

Simply putting it in the openzwave config directory wont solve it I gues…

BTW, here’s a nice article about Zwave security.

I would like to have all my devices use secure connections.

2 Likes

For setting the Zwave secure connections, here is an information I could not find anywhere:
If the network key is properly found in options.xml, then you can see in OZW_Log.txt this message:
Setting Up Provided Network Key for Secure Communications

I tried to add this to open-zwave wiki but I cannot edit it (what kind of wiki is that…)

2 Likes

Did anyone figure out how to setup the v3.2 sensor correctly?

So I am going to summarize my findings:

The new Fibaro Motion Sensor with software version 3.2 is a new device. It supports zwave+ and behaves differently than the motion sensors until version 2.6. The versions until 2.6 are the old zwave version without the +. The important difference between the new and the old version is the mechanism to report motion and tampering. The old version used a binary switch to report changes. This is supported by Home Assistant and so it was possible to use the entity binary_sensor.fibaro_system_fgms001_motion_sensor_sensor.
The new version behaves differently. It uses a basic command that uses the value 255 for state ‘on’ and the value 0 for the state ‘off’. By the way those values can be changed in OZWCP. But this basic command seems not to be supported by Home Assistant. Check this link.
The only way to find out what the new sensor reports is the entity sensor.fibaro_system_fgms001_motion_sensor_burglar. This entity switches from value 0 to 8 in case of a motion detection and from 0 to 3 for tampering. I don’t know the reason why the entity burglar is used for both. But nevertheless we can use this to react on it.
Motion:

alias: Unexpected motion
trigger:

  • platform: state
    entity_id:
    • sensor.fibaro_system_fgms001_motion_sensor_burglar_33
      state: ‘8’
      condition:

      action:

Tampering:

alias: Burglar alarm
trigger:

  • platform: state
    entity_id:
    • sensor.fibaro_system_fgms001_motion_sensor_burglar_33
      state: ‘3’
      action:

You can also setup two binary sensors that show the state motion and tampering separately. The entities binary_sensor.motion and binary_sensor.tampering:

binary_sensor:
platform: template
sensors:
motion:
value_template: ‘{{ is_state(“sensor.fibaro_system_fgms001_motion_sensor_burglar_33”, “8”) }}’
tampering:
value_template: ‘{{ is_state(“sensor.fibaro_system_fgms001_motion_sensor_burglar_33”, “3”) }}’

The z-wave configuration that is part of openZWave is outdated and does not support the new zwave+ device completely. Somebody from the fhem forum created a new configuration that is part of this.
I have extracted the fibaro fgms configuration and attached the file “fgms-zw5.xml”. If you like to use this configuration you have to do the following steps (my installation is a raspberry pi 3 with the all-in-one-installer):

  1. Remove the sensor from your z-wave network with OZWCP
  2. Copy the file “fgms-zw5.xml” to /srv/hass/hass_venv/lib/python3.4/site-packages/libopenzwave-0.3.1-py3.4-linux-armv7l.egg/config/fibaro
  3. Open the file “manufacturer_specific.xml” at “/srv/hass/hass_venv/lib/python3.4/site-packages/libopenzwave-0.3.1-py3.4-linux-armv7l.egg/config” and change the following two lines:

Product type=“0801” id=“1001” name=“FGMS001 Motion Sensor” config=“fibaro/fgms.xml”
Product type=“0801” id=“2001” name=“FGMS001 Motion Sensor” config=“fibaro/fgms.xml”

to

Product type=“0801” id=“1001” name=“FGMS001 Motion Sensor” config=“fibaro/fgms-zw5.xml”
Product type=“0801” id=“2001” name=“FGMS001 Motion Sensor” config=“fibaro/fgms-zw5.xml”

Start OZWCP and integrate the sensor again into your z-wave network. You will notice that the new configuration has 5 association groups instead of three.

  1. Lifeline
  2. Motion Alarm
  3. Tamper Alarm
  4. Motion Backward Compatibility Alarm
    5, Tamper Backward Compatibility Alarm

If you use a secure z-wave+ network you must associate the group 1,2 and 3 with the controller (my controller has the node id 1) and you must not associate group 4 and 5.
With this setup you can use the scripts that I have shown at the beginning of this post.
For setting up a secured network you have to generate also a network key. Check “Generate Security Key” at this link. And add it to the file options.xml.
It is located at /srv/hass/hass_venv/lib/python3.4/site-packages/libopenzwave-0.3.1-py3.4-linux-armv7l.egg/config
See Adding Security Devices from the Home Assistant documentation.

If you don’t care you can assign only the group 1,4 and 5 with the controller and now the sensor behaves like the old version sensor. It uses a binary sensor so that you can use the entity binary_sensor.fibaro_system_fgms001_motion_sensor_sensor that is supported by Home Assistant.
fgms-zw5.xml (18.8 KB)

6 Likes

Thanks for the info hdunst!
A lot of work… I stick with looking for burglar state == 8
Maybe in a few months the neccecary packages and configs are upgraded and then maybe it will work “out of the box” ?

Very good information, I just followed your guide and it’s working now.
Thank you! :+1:

I have noticed that the new config file for the deice linked a few post above isn’t actually 100% compliant with the new v3.2 sensor according for Fibaros documentation.

For example #24 has other values than what’s shown.
I started to update toe file but got stuck at one parameter.
It works as it is, but you should be aware if the changes and look in the manual if you face any issues.

bump I know this thread is an old issue from a few month ago but i’m not sure if we still have a proper working solution here (not even sure if the issue lies with HA). I added one of these to my HA setup:

Fibaro Motion Sensor FGMS001 with software version 3.2

and this is what got created:

binary_sensor.fibaro_system_fgms001_motion_sensor_sensor_89_0
sensor.fibaro_system_fgms001_motion_sensor_alarm_level_89_1
sensor.fibaro_system_fgms001_motion_sensor_alarm_type_89_0
sensor.fibaro_system_fgms001_motion_sensor_burglar_89_10
sensor.fibaro_system_fgms001_motion_sensor_general_89_0
sensor.fibaro_system_fgms001_motion_sensor_luminance_89_3
sensor.fibaro_system_fgms001_motion_sensor_seismic_intensity_89_25
sensor.fibaro_system_fgms001_motion_sensor_sourcenodeid_89_2
sensor.fibaro_system_fgms001_motion_sensor_temperature_89_1

I’ve managed to get automaition working with the v3.2 version by checking if this is “8” or “0”:
sensor.fibaro_system_fgms001_motion_sensor_burglar_89_10

but the thing is that this is getting created in the HA front end as a switch which is permanently on (which i’m hiding)

binary_sensor.fibaro_system_fgms001_motion_sensor_sensor_89_0

So my question is this:

  1. Do we still have an issue?
  2. I assume this relates to OpenZWave / xml files , yes?
  3. Should we open a bug report in the OpenZWave github ?:
    https://github.com/openzwave

I would open the report myself but i’m not 100% sure what to put ? Thoughts ?

I’m also seeing the switch, though mine is ‘off’ most (not all) of the time.
Aside from that, I’m not sure what to do with some of the other entities like

  - sensor.fibaro_system_fgms001_motion_sensor_alarm_level_8_1
  - sensor.fibaro_system_fgms001_motion_sensor_alarm_type_8_0
  - sensor.fibaro_system_fgms001_motion_sensor_general_8_0
  - sensor.fibaro_system_fgms001_motion_sensor_sourcenodeid_8_2

Since the sensor does work without any problems (at least for me), I just decided to ignore the additional stuff.
I’m not sure that this would be a bug that concerns the OpenZWave people, but I’m no expert.

Sebastian

1 Like

@sebk-666 are you sure you have the v3.2 /zwave plus model? I wonder what binary_sensor events are you seeing in the ozw log file?

Yes, I’m sure. Bought it like a month ago.
What exactly are you interested in regarding the events in my OZW_log?
Reports from the Fibaro look like this:

2016-12-01 14:01:19.211 Detail, Node008,   Received: 0x01, 0x0c, 0x00, 0x04, 0x00, 0x08, 0x06, 0x31, 0x05, 0x01, 0x22, 0x00, 0xb7, 0x59
2016-12-01 14:01:19.212 Detail,
2016-12-01 14:01:19.212 Info, Node008, Received SensorMultiLevel report from node 8, instance 1, Temperature: value=18.3C
2016-12-01 14:01:19.212 Detail, Node008, Refreshed Value: old value=18.4, new value=18.3, type=decimal
2016-12-01 14:01:19.212 Detail, Node008, Changes to this value are not verified
2016-12-01 14:01:19.212 Detail, Node008, Notification: ValueChanged

Sebastian

Curious to see why the switch goes to “off” and what might trigger it

Ah, I see. I haven’t figured that out yet.
The state doesn’t usually change for days. Looking at my mysql db, it’s been “off” for at least two weeks now (that’s my retention time).
I’ll keep this in mind and look at the logs should the state change to “on” again.

Sebastian

I just did some “grep magic” on my old log files and these seem to be the reports you’re looking for:

Info, Node008, Received SensorBinary report: Sensor:216 State=Off
Info, Node008, Received SensorBinary report: Sensor:216 State=Off
Info, Node008, Received SensorBinary report: Sensor:25 State=Off
Info, Node008, Received SensorBinary report: Sensor:213 State=Off
Info, Node008, Received SensorBinary report: Sensor:213 State=Off
Info, Node008, Received SensorBinary report: Sensor:79 State=Off
Info, Node008, Received SensorBinary report: Sensor:56 State=Off
Info, Node008, Received SensorBinary report: Sensor:106 State=Off
Info, Node008, Received SensorBinary report: Sensor:21 State=Off
Info, Node008, Received SensorBinary report: Sensor:88 State=Off
Info, Node008, Received SensorBinary report: Sensor:50 State=Off

As you can see, the sensor IDs vary. There seems to be a lot of “chatter” around these log lines - I’m not sure where the relevant part starts or ends. I could share one of the logs via dropbox, if you’re interested.

Sebastian

1 Like

Seems weird to me. My Aeon multisensors show up basically the same way,

binary_sensor.aeotec_multisensor_6_sensor_7_0

but this binary switch reacts as motion for me changing whenever motion is sensed. I know that @bruhautomation had set up one of these sensors in his ZWave video, perhaps you could ask him for config tips?

1 Like

Just to be clear - my question purely relates to the zwave plus / v3.2 version of the fibaro system fgms001 motion sensor and why binary_sensor appears to do nothing and we’re stuck with checking for a burlgar value.

This post above from @hdunst:

seemed to hint that openzwave and xml files are at fault here so i wondered what the long term fix is? (ie something that “just works” out of the box).

Thoughts ?

I’d suggest again to ask Ben - I just watched his video again and paused it when he opened his Fibaro manual and it’s the same version you specified. I’m betting he will be able to help you on this.

EDIT: Same MODEL. Not sure if the same FW version. Definitely not the same FW as @sebk-666.

Ah, ok - so the binary sensor is supposed to reflect the motion sensor’s state?

This is mine, btw.:

Sebastian