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.
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!!!
Great - thanks for the feedback .
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 .
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:
- most of the time: āBATTERY + WAKE_UPā messages (without CENTRAL_SCENE message).
- 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