FGPB-101 not recognized properly

No - just one channel/item is needed. It will be set to 1.0 for a single press, 1.2/1.3/1.4 etc for more presses. You can then use this in a rule to work out what to do.

1 Like

Yezzzzz, seems to work!

My item:

Number  SchTest "Mushroom" <contact> { channel="zwave:device:1578e7a83ee:node85:scene_number" }

My rule (test):

rule "Mushroom Pushing"
when
        Item SchTest received update
then
        if (SchTest.state == 1.0) {
                logInfo("Test", "Mushroom 1x pushed")
        }
        if (SchTest.state == 1.1) {
                logInfo("Test", "Mushroom leave alone")
        }
        if (SchTest.state == 1.2) {
                logInfo("Test", "Mushroom kept in")
        }
        if (SchTest.state == 1.3) {
                logInfo("Test", "Mushroom 2x pushed")
        }
        if (SchTest.state == 1.4) {
                logInfo("Test", "Mushroom 3x pushed")
        }
        if (SchTest.state == 1.5) {
                logInfo("Test", "Mushroom 4x pushed")
        }
        if (SchTest.state == 1.6) {
                logInfo("Test", "Mushroom 5x pushed")
        }
end

Thanks a lot!!!

1 Like

Great - thanks for the feedback :slight_smile: .

Just added some functions (rules) to the button. And all works as expected.

Except when the button isnā€™t used for a while. Itā€™s like you must wake up the button before it starts sending out signals.
When I donā€™t use it for approx 30 seconds, I need to push the button, and repush it before Iā€™m getting a ā€˜1 time pushā€™.
After this itā€™s working fine. Till I wait again some timeā€¦

I guess some options must be changed to the button in order to get this working on the first push? I tried to update option 10 to 1 in paperUI. But once I push the save button, Iā€™m getting following status:

1. Thing updated
2. Error 404 - Not found

My first push:

2016-11-02 17:27:06.086 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 85: Application Command Request (INITIALIZING:PING)
2016-11-02 17:27:06.087 [DEBUG] [ng.zwave.internal.protocol.ZWaveNode] - NODE 85: Node is ALIVE. Init stage is PING.
2016-11-02 17:27:06.087 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 85: Got an event from Z-Wave network: ZWaveNodeStatusEvent
2016-11-02 17:27:06.087 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 85: Setting ONLINE
2016-11-02 17:27:06.087 [DEBUG] [alization.ZWaveNodeInitStageAdvancer] - NODE 85: Node Status event during initialisation - Node is ALIVE
2016-11-02 17:27:06.088 [hingStatusInfoChangedEvent] - 'zwave:device:1578e7a83ee:node85' changed from ONLINE: Node initialising: WAIT to ONLINE
2016-11-02 17:27:06.089 [DEBUG] [alization.ZWaveNodeInitStageAdvancer] - NODE 85: Node advancer - PING: queue length(0), free to send(true)
2016-11-02 17:27:06.089 [DEBUG] [alization.ZWaveNodeInitStageAdvancer] - NODE 85: Node advancer: loop - PING try 1: stageAdvanced(false)
2016-11-02 17:27:06.089 [DEBUG] [alization.ZWaveNodeInitStageAdvancer] - NODE 85: Node advancer: PING - send NoOperation
2016-11-02 17:27:06.090 [DEBUG] [ndclass.ZWaveNoOperationCommandClass] - NODE 85: Creating new message for command No Operation
2016-11-02 17:27:06.090 [DEBUG] [alization.ZWaveNodeInitStageAdvancer] - NODE 85: Node advancer - queued packet. Queue length is 1
2016-11-02 17:27:06.090 [DEBUG] [commandclass.ZWaveWakeUpCommandClass] - NODE 85: Putting message SendData in wakeup queue.
2016-11-02 17:27:06.090 [DEBUG] [ve.internal.protocol.ZWaveController] - NODE 85: Node Status event - Node is ALIVE
2016-11-02 17:27:06.091 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 85: Incoming command class BATTERY
2016-11-02 17:27:06.091 [DEBUG] [ommandclass.ZWaveBatteryCommandClass] - NODE 85: Received Battery Request
2016-11-02 17:27:06.091 [DEBUG] [ommandclass.ZWaveBatteryCommandClass] - NODE 85: Battery report value = 100
2016-11-02 17:27:06.092 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 85: Got an event from Z-Wave network: ZWaveCommandClassValueEvent
2016-11-02 17:27:06.092 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 85: Got a value event from Z-Wave network, endpoint = 0, command class = BATTERY, value = 100
2016-11-02 17:27:06.092 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 85: Updating channel state zwave:device:1578e7a83ee:node85:battery-level to 100 [DecimalType]
2016-11-02 17:27:06.098 [DEBUG] [alization.ZWaveNodeInitStageAdvancer] - NODE 85: CC event during initialisation stage IDLE
2016-11-02 17:27:06.204 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 85: Application Command Request (ALIVE:DETAILS)
2016-11-02 17:27:06.204 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 85: Incoming command class WAKE_UP
2016-11-02 17:27:06.204 [DEBUG] [commandclass.ZWaveWakeUpCommandClass] - NODE 85: Received Wake Up Request
2016-11-02 17:27:06.204 [DEBUG] [commandclass.ZWaveWakeUpCommandClass] - NODE 85: Received WAKE_UP_NOTIFICATION
2016-11-02 17:27:06.205 [DEBUG] [commandclass.ZWaveWakeUpCommandClass] - NODE 85: Is awake with 1 messages in the wake-up queue.
2016-11-02 17:27:06.205 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 85: Got an event from Z-Wave network: ZWaveWakeUpEvent
2016-11-02 17:27:06.205 [DEBUG] [alization.ZWaveNodeInitStageAdvancer] - NODE 85: Wakeup during initialisation.
2016-11-02 17:27:06.207 [DEBUG] [alization.ZWaveNodeInitStageAdvancer] - NODE 85: Node advancer - DETAILS: queue length(1), free to send(false)
2016-11-02 17:27:06.208 [DEBUG] [alization.ZWaveNodeInitStageAdvancer] - NODE 85: Node advancer - queued packet. Queue length is 1
2016-11-02 17:27:06.209 [DEBUG] [ing.zwave.handler.ZWaveSerialHandler] - NODE 85: Sending REQUEST Message = 01 08 00 13 55 01 00 25 62 F7 
2016-11-02 17:27:06.226 [DEBUG] [l.serialmessage.SendDataMessageClass] - NODE 85: Sent Data successfully placed on stack.
2016-11-02 17:27:06.251 [DEBUG] [wave.internal.protocol.SerialMessage] - Assembled message buffer = 01 09 00 13 62 00 00 02 00 00 85 
2016-11-02 17:27:06.251 [DEBUG] [ve.internal.protocol.ZWaveController] - Process Message = 01 09 00 13 62 00 00 02 00 00 85 
2016-11-02 17:27:06.252 [DEBUG] [l.serialmessage.SendDataMessageClass] - NODE 85: SendData Request. CallBack ID = 98, Status = Transmission complete and ACK received(0)
2016-11-02 17:27:06.252 [WARN ] [l.serialmessage.SendDataMessageClass] - NODE 85: Already processed another send data request for this callback Id, ignoring.

And the push after:

2016-11-02 17:27:11.210 [ERROR] [ocol.ZWaveController$ZWaveSendThread] - NODE 85: Timeout while sending message. Requeueing - 0 attempts left!
2016-11-02 17:27:11.210 [DEBUG] [commandclass.ZWaveWakeUpCommandClass] - NODE 85: Is sleeping
2016-11-02 17:27:11.211 [DEBUG] [commandclass.ZWaveWakeUpCommandClass] - NODE 85: Putting message SendData in wakeup queue.
2016-11-02 17:27:11.211 [DEBUG] [commandclass.ZWaveWakeUpCommandClass] - NODE 85: Message already on the wake-up queue. Removing original.
2016-11-02 17:27:11.211 [DEBUG] [commandclass.ZWaveWakeUpCommandClass] - NODE 85: Putting message SendData in wakeup queue.
2016-11-02 17:27:11.404 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 85: Application Command Request (ALIVE:DETAILS)
2016-11-02 17:27:11.404 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 85: Incoming command class CENTRAL_SCENE
2016-11-02 17:27:11.404 [DEBUG] [dclass.ZWaveCentralSceneCommandClass] - NODE 85: Received CENTRAL_SCENE command V1
2016-11-02 17:27:11.405 [DEBUG] [dclass.ZWaveCentralSceneCommandClass] - NODE 85: Received scene 1 at key 0 [Single Press]
2016-11-02 17:27:11.405 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 85: Got an event from Z-Wave network: ZWaveCommandClassValueEvent
2016-11-02 17:27:11.405 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 85: Got a value event from Z-Wave network, endpoint = 0, command class = CENTRAL_SCENE, value = 1.0
2016-11-02 17:27:11.406 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 85: Updating channel state zwave:device:1578e7a83ee:node85:scene_number to 1.0 [DecimalType]
2016-11-02 17:27:11.412 [DEBUG] [.serialmessage.ZWaveCommandProcessor] - Checking transaction complete: Sent Message: class=SendData[0x13], type=Request[0x00], priority=Immediate, dest=85, callback=99, payload=55 01 00 
2016-11-02 17:27:12.061 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 85: Transaction not completed: node address inconsistent.  lastSent=85, incoming=255

Are you somehow filtering these logs? I donā€™t see any data receive messagesā€¦

Maybe Iā€™ve started a bit to fast the logs (after enabling the debug) with a filter ā€˜85ā€™ for node 85 (=switch).

Iā€™ve put 2 new debug logs over here: In this, Iā€™ve pushed the button 3 times with +/- 5 seconds in between.

Iā€™m not sure I can offer a lot of help. The following is from the log viewer, but it probably just reiterates what you already knew :frowning: .

The first press just seems to generate a wakeup and a battery notification - the binding then does some polling and the device goes to sleep. Looks fine.

The second and third presses generate the CENTRAL_SCENE notification.

I donā€™t know why - maybe thereā€™s a setting since this device has a lot of configuration, although I didnā€™t see anything obvious in my very quick look. I donā€™t think thereā€™s anything the binding can do to influence this though, so I donā€™t have any suggestions at the moment - sorry.

Hello, same behaviour for me.
When the button is pressed, there are 2 options that I see in the log:

  1. most of the time: ā€œBATTERY + WAKE_UPā€ messages (without CENTRAL_SCENE message).
  2. sometimes; a ā€œCENTRAL_SCENEā€ message alone
    Iā€™ve two FGPB-101, they seem to have the same behaviour and Iā€™m not able to find a pattern.

When the CENTRAL_SCENE message is received, then the scene number is OK (with the decimal) so thanks @chris for this fix.

@brononius, if you find a solution, Iā€™m interestedā€¦

Iā€™m not sure thereā€™s a lot to be done here, but letā€™s seeā€¦ I hope to be getting one of these from Fibaro shortly, and if I canā€™t get it to work Iā€™ll discuss the issue with them.

Please post here if you do find a setting to change this (anyone ;)).

Iā€™ve raised the question at Fibaro. When Iā€™m getting feedback, Iā€™ll inform youā€¦

Follow Fibaro, this is a hardware failure. So they ask me to return the push button to them for repair.
Iā€™ll ship it tomorrow, and weā€™ll see ā€¦

Iā€™ll keep you informed.

Interesting - thanks for the infoā€¦

Hi I have problem with my button when i press it I see this:
2016-11-06 22:45:52.928 [WARN ] [.z.internal.ZWaveActiveBinding] - NODE 83: No item bound for event, endpoint = 0, command class = BATTERY, value = 100, ignoring.
or this:
2016-11-06 22:45:58.007 [ERROR] [ApplicationCommandMessageClass] - NODE 83: Unknown command class 0x5b

I used the same parameters as brononius (item and rule), only of course Iā€™ve changed homeid to my homeid
What did I wrong?

Yesterday, my push button came back from the distrubitor. Sadly, they didnā€™t repair it, they just send me a new one.
But with changing anything in my configs, of course an update of the node ID, it works!

So, if the first push doesnā€™t send the scenario number, itā€™s a problem with the hardware.

The first warning is because you donā€™t have an item associated with the battery information.

The second possibly indicates you have an old version of OH, and almost certainly indicates youā€™re not using OH2 which is what this thread is discussing. If I remember correctly OH1 does support central_scene, but the data is presented slightly differently. What version are you using?

I recently migrated from openHAB1 to openHAB2, but have issues to add the FGPB-101 button in openHAB2 using HABmin. I included FGPB-101 successfully but only the battery level works, when I press the FGPB-101 button I get the following logs:

23:19:07.098 [DEBUG] [WaveSerialHandler$ZWaveReceiveThread] - Receive Message = 01 0E 00 04 00 26 08 60 0D 00 00 26 01 FF FF 91
23:19:07.104 [DEBUG] [ve.internal.protocol.ZWaveController] - Receive queue TAKE: Length=0
23:19:07.105 [DEBUG] [wave.internal.protocol.SerialMessage] - Assembled message buffer = 01 0E 00 04 00 26 08 60 0D 00 00 26 01 FF FF 91
23:19:07.106 [DEBUG] [ve.internal.protocol.ZWaveController] - Process Message = 01 0E 00 04 00 26 08 60 0D 00 00 26 01 FF FF 91
23:19:07.107 [DEBUG] [ve.internal.protocol.ZWaveController] - Message: class=ApplicationCommandHandler[0x04], type=Request[0x00], priority=High, dest=255, callback=0, payload=00 26 08 60 0D 00 00 26 01 FF FF
23:19:07.109 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 38: Application Command Request (ALIVE:DONE)
23:19:07.109 [DEBUG] [alization.ZWaveNodeInitStageAdvancer] - NODE 38: Starting initialisation from DONE
23:19:07.110 [DEBUG] [ve.internal.protocol.ZWaveController] - Event Listener org.openhab.binding.zwave.internal.protocol.initialization.ZWaveNodeInitStageAdvancer@1dbcbed already registered
23:19:07.110 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 38: Incoming command class MULTI_INSTANCE
23:19:07.111 [DEBUG] [class.ZWaveMultiInstanceCommandClass] - NODE 38: Received MULTI_INSTANCE command V0
23:19:07.112 [DEBUG] [class.ZWaveMultiInstanceCommandClass] - NODE 38: Requested Command Class = SWITCH_MULTILEVEL (0x26)
23:19:07.112 [ERROR] [class.ZWaveMultiInstanceCommandClass] - NODE 38: Endpoint 0 not found. Cannot set command classes.
23:19:07.113 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 255: Transaction not completed: node address inconsistent.  lastSent=255, incoming=255

Endpoint 0 not found. Cannot set command classes.
It looks like it is somehow not correctly initialized, hence I deleted the corresponding XML file in ā€œ/var/lib/openhab2/zwaveā€ and performed a reinitialization in HABmin but the result is the same: ā€œEndpoint 0 not found. Cannot set command classes.`ā€ I tried this a couple of times including reboots.

I compared the openHAB produced XML file with the one in the database: Generic Class and Specific Class are different my installation:

<genericDeviceClass>REMOTE_SWITCH_2</genericDeviceClass>
<specificDeviceClass>SWITCH_REMOTE2_MULTILEVEL</specificDeviceClass>

node38.xml (14.4 KB)

Shouldnā€™t it ā€œGENERIC_TYPE_WALL_CONTROLLERā€ and ā€œSPECIFIC_TYPE_BASIC_WALL_CONTROLLERā€, and is this the reason why the command class cannot be set?
Following this thread FGPB-101 should work in openHAB2, what is wrong with my installation?

-thx

Hey all, does someone runt the FGPB-101 button? If yes, could you check the device classes the button was mapped to by openHAB? -thx

<node>
  <deviceClass>
    <basicDeviceClass>ROUTING_SLAVE</basicDeviceClass>
    <genericDeviceClass>REMOTE_SWITCH_2</genericDeviceClass>
    <specificDeviceClass>SWITCH_REMOTE2_MULTILEVEL</specificDeviceClass>
  </deviceClass>

FGPB-101-3 v3.2 EU

node5.xml (15.1 KB)

@Dim Thanks! My device classes are the same. But I got a FGPB-101-6 v3.2 EU, not a FGPB-101-3 v3.2 EU. Do you run your button in alarm or scene mode?

When I compare your node5.xml with my node38.xml, I see minor differences in respect to the order of entries. MULTI_INSTANCE_ASSOCIATION is the same:

    <entry>
      <commandClass>MULTI_INSTANCE_ASSOCIATION</commandClass>
      <multiAssociationCommandClass>
        <version>3</version>
        <instances>1</instances>
        <versionSupported>3</versionSupported>
        <maxGroups>4</maxGroups>
      </multiAssociationCommandClass>
    </entry>
16:38:04.541 [ERROR] [class.ZWaveMultiInstanceCommandClass] - NODE 38: Endpoint 0 not found. Cannot set command classes.

How can I identify the root cause of this error message? -thx

@chris, I sent you an email to get permission to upload my node38.xml and request a database update on zwave device database. Could you check and grand me access if it makes sense? -thx