I spent ages getting this button to work. Here’s what I did to finally get the central scene working.
(Enable Zwave debugging via the Karaf console to assist with your troubleshooting found elsewhere in this forum.)
From Paper UI:
Go to Things menu and select the FGPB-101 Zwave node.
Click on the up/down arrows to the right.
Remove the linked items using the trash can icon on the right for all three items:
Scene Number
Alarm
Battery Level
Go to the Items menu and remove the channels listed above for your FGPB-101 Zwave node.
(Note, if you have any legacy Zwave nodes listed for your FGPB-101 from previous inclusion attempts in items, remove them from both the Things menu and the linked channels in the Items menu also.)
Restart OpenHAB
sudo /etc/init.d/openhab2 restart
From Paper UI go to the Things menu and select your FGPB-101 using the pencil icon on the right.
All parameters should be set to default:
1 = 127
3 = 7
10 = 3
11 = 255
12 = 1
13 = 99
14 = 0
15 = 255
20 = 3
21 = 255
22 = 1
23 = 99
24 = 0
25 = 255
29 = 3
30 = 127
The Association Groups at the bottom are all blank.
Click on the tick to save and then the channels will be shown.
Select just the Scene Number circle button and follow the defaults to add/link the channel.
(If you see any errors pop up on the bottom right ERROR 404 etc…, start again by removing the channels under the Items menu and adding from the Things menu.)
Click on the Items menu and check that the Scene Number item is shown.
tail the openhab.log file and then press your FGPB-101 button
tail -f /var/log/openhab2/openhab.log
You should see debug messages relating to your FGPB-101 Zwave node number.
2017-06-22 00:15:09.503 [DEBUG] [WaveSerialHandler$ZWaveReceiveThread] - Receive Message = 01 0B 00 04 00 07 05 5B 03 0F 80 01 24
2017-06-22 00:15:09.505 [DEBUG] [ve.internal.protocol.ZWaveController] - Receive queue TAKE: Length=0
2017-06-22 00:15:09.505 [DEBUG] [wave.internal.protocol.SerialMessage] - Assembled message buffer = 01 0B 00 04 00 07 05 5B 03 0F 80 01 24
2017-06-22 00:15:09.505 [DEBUG] [ve.internal.protocol.ZWaveController] - Process Message = 01 0B 00 04 00 07 05 5B 03 0F 80 01 24
2017-06-22 00:15:09.505 [DEBUG] [ve.internal.protocol.ZWaveController] - Message: class=ApplicationCommandHandler[0x04], type=Request[0x00], priority=High, dest=255, callback=0, payload=00 07 05 5B 03 0F 80 01
2017-06-22 00:15:09.506 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 7: Application Command Request (ALIVE:DETAILS)
2017-06-22 00:15:09.506 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 7: Incoming command class CENTRAL_SCENE
2017-06-22 00:15:09.506 [DEBUG] [dclass.ZWaveCentralSceneCommandClass] - NODE 7: Received CENTRAL_SCENE command V3
2017-06-22 00:15:09.506 [DEBUG] [dclass.ZWaveCentralSceneCommandClass] - NODE 7: Received scene 1 at key 0 [Single Press]
2017-06-22 00:15:09.506 [DEBUG] [ve.internal.protocol.ZWaveController] - Notifying event listeners: ZWaveCommandClassValueEvent
2017-06-22 00:15:09.507 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 7: Got an event from Z-Wave network: ZWaveCommandClassValueEvent
2017-06-22 00:15:09.507 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 7: Got a value event from Z-Wave network, endpoint = 0, command class = CENTRAL_SCENE, value = 1.0
2017-06-22 00:15:09.507 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 7: Updating channel state zwave:device:3c287edd:node7:scene_number to 1.0 [DecimalType]
A test rule can help ensure that the right number of button presses are being received.
rule "Mushroom Pushing"
when
Item Node7_SceneNumber received update
then
if (Node7_SceneNumber.state == 1.0) {
logInfo("Test", "Mushroom 1x pushed")
}
if (Node7_SceneNumber.state == 1.1) {
logInfo("Test", "Mushroom leave alone")
}
if (Node7_SceneNumber.state == 1.2) {
logInfo("Test", "Mushroom kept in")
}
if (Node7_SceneNumber.state == 1.3) {
logInfo("Test", "Mushroom 2x pushed")
}
if (Node7_SceneNumber.state == 1.4) {
logInfo("Test", "Mushroom 3x pushed")
}
if (Node7_SceneNumber.state == 1.5) {
logInfo("Test", "Mushroom 4x pushed")
}
if (Node7_SceneNumber.state == 1.6) {
logInfo("Test", "Mushroom 5x pushed")
}
end
The logInfo output will also appear in the openhab.log file.
I don’t recall the forum post where I found the above rule however, thanks to the author should you read this post.
I hope this post will assist others in a more timely resolution to the challenges this little Fibaro button presents.
Thanks Chris for maintaining the Zwave binding.