Nikobus v2

Can you please provide some more info? I.e. share your (full) configuration? From provided information it’s hard to see what modules you have in place and what you want to do … thx!

Hello, here is the configuration requested:

Openhab runs on a Raspberry Pi 4 4GB. I have already tried a lot of combinations regarding addresses but without success with regard to Nikobus push buttons. Do you have a lead?

Hey! Thx for the config - can you please let me know how did you get module’s addresses?

Hello, the addresses are from the Nikobus program:
Switch module1 -> 5F3D (Nikobus) = 3D5F (OpenHab)

The configuration you shared was done through PaperUI so not 100% sure if I’m looking into the right values, but did you enter those addresses when setting up modules? And did you select bridge? Are module things green?

Please make sure bridge was selected and valid address was entered.


Hello, the bridge has been chosen and the modules are green. The Nikobus push button address is 166F56. Should it be modified like that of the output modules?

OK, you are past the basics, great :slight_smile:

Next question - how did you discover address of Nikobus button(s)?

Here:
image

Unfortunately this is not correct. The shared address is the Nikobus address (per switch), but you need per-button address. The process to get it is a bit complicated but you only need to do it once, so here it goes:

Please make sure you have log level set to DEBUG for Nikobus binding, one way to do so is to add

log4j2.logger.nikobus.name = org.openhab.binding.nikobus
log4j2.logger.nikobus.level = DEBUG

into

userdata/etc/org.ops4j.pax.logging.cfg. Once having debug messages being logged, please go and press a Nikobus button. This should generate something like

2020-03-03 08:07:24.959 [DEBUG] [nternal.handler.NikobusPcLinkHandler] - Received command '#NADEA2A'

in the userdata/logs/openhab.log - #NADEA2A is the button’s address that you should use/enter (without the #N part - so ADEA2A) for a button thing and you need to do so for each button to get it’s address.

2 Likes

image
Thanks a lot for your help! I was missing this step for addressing.

:+1: great to hear! Yes the process is a bit complicated :sweat: but one only needs to do it once :slight_smile:

1 Like

Hello, if anyone is interested, here are 32 virtual Nikbus addresses for OpenHab. Have a good day !

Hi,

I have some strange behaviour with the new Nikobus binding.
If I push a physical button (wall switch) then feedback is working perfectly. In my case the item is:

Switch Schakelaar_living_eethoek_2 {channel = “nikobus:push-button:mypclink:Schakelaar_living_eethoek_2:button” }

This physical button will activate a scene with several lights involved. No problems here.
However when I use a rule that sends a command to this switch item, the feedback from the different items triggered, comes very slowly (up to 8 seconds):

rule “Test”
when
Item Test_item received command 1
then
Schakelaar_living_eethoek_2.sendCommand(ON)
end

Do you have similar experiences?

Hello,
I have troubles to get my connection with the PCLINK … since I upgraded OpenHAB 2.4 -> 2.5.3 (on Pi/debian). I would like to use the Nikobus v2 ( using OH2.4 I was using the old Nikobus binding v1 which was working ) but cannot get the serial connection working …

openhab> smarthome:things show nikobus:pc-link:mypclink
UID: nikobus:pc-link:mypclink
Type: nikobus:pc-link
Label: PC-Link
Status: UNKNOWN

No properties

Configuration parameters:

  •    port : /dev/ttyUSB0*
    
  •    refreshInterval : 600*
    

No channels

openhab> smarthome:serial identifiers
[name: /dev/ttyACM0, current owner: org.openhab.binding.zwave]
[name: /dev/ttyUSB0, current owner: null] <== Is this normal ?
[name: /dev/ttyAMA0, current owner: null]

openhab> bundle:list | grep -i seri
226 x Active x 80 x 3.15.0.OH2 x nrjavaserial
269 x Active x 80 x 2.5.0 x openHAB Core :: Bundles :: Configuration USB-Serial Discovery
270 x Active x 80 x 2.5.0 x openHAB Core :: Bundles :: Configuration USB-Serial Discovery for Linux using sysfs scanning
271 x Active x 80 x 2.5.0 x openHAB Core :: Bundles :: Configuration Serial
273 x Active x 80 x 2.5.0 x openHAB Core :: Bundles :: Serial Transport
274 x Active x 80 x 2.5.0 x openHAB Core :: Bundles :: Serial Transport for RXTX
275 x Active x 80 x 2.5.0 x openHAB Core :: Bundles :: Serial Transport for RFC2217
openhab> bundle:list | grep -i niko
296 x Active x 80 x 2.5.3 x openHAB Add-ons :: Bundles :: Nikobus Binding

openhab> bundle:capabilities 296
org.openhab.binding.nikobus_2.5.3 [296] provides:
-------------------------------------------------
osgi.wiring.bundle; org.openhab.binding.nikobus 2.5.3 [UNUSED]
osgi.wiring.host; org.openhab.binding.nikobus 2.5.3 [UNUSED]
osgi.identity; org.openhab.binding.nikobus 2.5.3 [UNUSED]
osgi.service; objectClass:List=“org.eclipse.smarthome.core.thing.binding.ThingHandlerFactory”; uses:=“org.eclipse.smarthome.core.thing.binding” [UNUSED]
service; [org.eclipse.smarthome.core.thing.binding.ThingHandlerFactory] with properties:

  • service.id = 1172*
  • service.bundleid = 296*
  • service.scope = bundle*
  • component.name = org.openhab.binding.nikobus.internal.NikobusHandlerFactory*
  • component.id = 717*
  • Used by:*
  •  org.openhab.core.config.discovery_2.5.0 [139]*
    
  •  org.openhab.core.model.thing_2.5.0 [178]*
    
  •  org.openhab.core.thing_2.5.0 [185]*
    

openhab>

In the logs, I can see
15:46:23.951 [INFO ] [.internal.service.FeaturesServiceImpl] - Refreshing bundles:
15:46:23.953 [INFO ] [.internal.service.FeaturesServiceImpl] - com.eclipsesource.jaxrs.provider.swagger/1.1.1.201605111122 (Wired to io.swagger.jaxrs/1.5.8 which is being refreshed)
15:46:23.954 [INFO ] [.internal.service.FeaturesServiceImpl] - io.swagger.jaxrs/1.5.8 (Wired to reflections/0.9.10.v20160429-1435 which is being refreshed)
15:46:23.956 [INFO ] [.internal.service.FeaturesServiceImpl] - org.openhab.binding.nikobus/2.5.3 (Wired to org.openhab.core.io.transport.serial/2.5.0 which is being refreshed)
15:46:23.957 [INFO ] [.internal.service.FeaturesServiceImpl] - org.openhab.binding.zwave/2.5.3 (Should be wired to: org.openhab.core.io.transport.serial/2.5.0 (through [org.openhab.binding.zwave/2.5.3] osgi.wiring.package; filter:="(osgi.wiring.package=org.eclipse.smarthome.io.transport.serial)"))
15:46:23.958 [INFO ] [.internal.service.FeaturesServiceImpl] - org.openhab.core.config.serial/2.5.0 (Should be wired to: org.openhab.core.io.transport.serial/2.5.0 (through [org.openhab.core.config.serial/2.5.0] osgi.wiring.package; filter:="(&(osgi.wiring.package=org.eclipse.smarthome.io.transport.serial)(version>=2.5.0)(!(version>=3.0.0)))"))
15:46:23.959 [INFO ] [.internal.service.FeaturesServiceImpl] - org.openhab.core.io.transport.serial/2.5.0 (Should be wired to: org.openhab.core.io.transport.serial/2.5.0 (through [org.openhab.core.io.transport.serial/2.5.0] osgi.wiring.package; filter:="(osgi.wiring.package=org.eclipse.smarthome.io.transport.serial)"))
15:46:23.961 [INFO ] [.internal.service.FeaturesServiceImpl] - org.openhab.core.io.transport.serial.rxtx/2.5.0 (Wired to org.openhab.core.io.transport.serial/2.5.0 which is being refreshed)
15:46:23.962 [INFO ] [.internal.service.FeaturesServiceImpl] - org.openhab.core.io.transport.serial.rxtx.rfc2217/2.5.0 (Wired to org.openhab.core.io.transport.serial/2.5.0 which is being refreshed)
15:46:23.976 [INFO ] [.internal.service.FeaturesServiceImpl] - reflections/0.9.10.v20160429-1435 (Should be wired to: com.google.guava/18.0.0 (through [reflections/0.9.10.v20160429-1435] osgi.wiring.package; resolution:=optional; filter:="(osgi.wiring.package=com.google.common.base)"))
15:46:23.977 [INFO ] [.internal.service.FeaturesServiceImpl] - swagger-jersey2-jaxrs/1.5.8.v20160511-1038 (Wired to io.swagger.jaxrs/1.5.8 which is being refreshed)
( … )

2020-04-04 15:52:25.343 [DEBUG] [core.thing.internal.ThingManagerImpl] - Calling unregisterHandler handler for thing ‘nikobus:pc-link:mypclink’ at ‘org.openhab.binding.nikobus.internal.NikobusHandlerFactory@1fda63d’.

I’m now quite lost … and I don’t see how to move forward … Can you help me, pls ?

Thanks a lot,

Hello,
Is it possible to add a location for push button using file configuration?

Thanks

Jeremy

Hello,
did you try “sudo adduser openhab dialout”?

Not 100% sure what you mean with this - would you please share relevant configurations and possible - logs to get more insight?

Please note you need to define at least one channel and bind it to item in order for pc-link to connect. Otherwise bridge thing will stay in UNKNOWN state.

Don’t think item can have location, but if you want to set location for a thing, please use

Thing <binding_id>:<type_id>:<thing_id> "Label" @ "Location" [ <parameters> ]

as defined in the documentation.

Would suggest to create a new thread(s) for issue(s) you are facing since it’s hard to follow up when topics interleave.

That is what I wanted to do, thank you very much!

Hi,

In the meanwhile I have found where my problem is coming from. Only pushing a physical button results in polling the Nikobus-modules. When I use a virtual button, this does not trigger any polling of the modules. However this worked with V1 of the binding. I can solve this with a Manual Refresh in a rule (described in post 90). Nevertheless it would be good if also a virtual button can trigger a polling of the modules. Is this something that can be easily integrated in the binding?

Thanks a lot for your feedback … It now works well… Apparently the issue was linked to the fact that I had added comments ( with /* comment */ and // … ) in my nikobus.things file … I was not receiving errors … Only removing these lines fixed the issue ! … and the channel is now well up & running… Thanks …