Nikobus binding: switch states do not follow physical changes

I have some syncing issues on a RPI2 running Raspbian and Openhab 1.8.0 with the Nikobus binding

I use both Nikobus switches and corresponding Mios switches to have synced states.
When I control my Nikobus lights through Openhab using a Mios or the Openhab GUI, the real Nikobus light does respond (light goes on or off)
However when I use the Nikobus physical buttons, the status is not reflected in any Openhab (IOS app nor web) or Vera app (homewave nor web)
The debug log does not give any errors on Mios nor Nikobus binding.
Am I overlooking something or could there be a bug?

YESTERDAY I’VE TESTED WITH DISABLING THE MIOS SYNC RULES (ONLY USING THE NIKOBUS BINDING AND ITEMS) and the problem was also existing. Physical commands do not get reflected in Openhab.

Below my items and rules to do the syncing:

items
/* nikobus /
Switch LP_garage “Licht Garage” (Lichten) { nikobus=“1D5E:1” }
/
Mios */
//Switch LPgarageStatus “LP_garage Status” (Lichten) {mios=“unit:vera,device:35/service/urn:upnp-org:serviceId:SwitchPower1/Status,command:ON|OFF,in:MAP(miosSwitchIn.map)” }

rule
var java.util.concurrent.locks.ReentrantLock lock = new java.util.concurrent.locks.ReentrantLock()
rule "Link LPgarageStatus to LP_garage"
when
Item LPgarageStatus changed
then
lock.lock()
try {
if(LP_garage.state != LPgarageStatus.state && SystemStarting.state == OFF) {
LP_garage.sendCommand(LPgarageStatus.state.toString())
LP_garage.postUpdate(LPgarageStatus.state.toString())
logDebug(“vera”, “Vera switch LPgarageStatus has been synced with Nikobus switch LP_garage”)
}
} finally{
lock.unlock()
}
end

rule "Link LP_garage to LPgarageStatus"
when
Item LP_garage changed
then
lock.lock()
try {
if(LP_garage.state != LPgarageStatus.state && SystemStarting.state == OFF) {
LPgarageStatus.sendCommand(LP_garage.state.toString())
LPgarageStatus.postUpdate(LP_garage.state.toString())
logDebug(“vera”, “Nikobus switch LP_garage has been synced with Vera switch LPgarageStatus”)
}
} finally{
lock.unlock()
}
end

In order for openHAB to refresh the state, it needs to know what to refresh when a given button is pressed. Did you also declare your physical switch button in openHAB?

Switch Wall_Switch_Garage_Top_Left {nikobus="#N003334[1D5E-1]"}

So Davy I need additionally to define all my buttons as items?
In 1.6.0 I rembered all was working without button configs or maybe this was just luck

yes. There is also a scheduled refresh that runs every 10min by default. But it polls only 6 channels at a time. So if you have 2 12 channel modules, it takes 40 minutes for all states to be loaded.
When you define a button, the state is loaded immediately.

I’ve configured all my buttons in the items file. No errors in the debug log so far.
I’ll monitor the refreshing in the coming days since I’m currently abroad.

All syncing seems to be correct now.
Thanks Davy, much appreciated!