Network pingdevices all returning false positives

Hi folks,

My OH2 Network binding appears suddenly to have developed a bug where ping devices that had previously been working correctly, are now constantly returning ON, even though some of them aren’t even physically here let alone connected to the network. It’s as if the ping function has just been replaced by something that says “return(true)”. HALP! I have no idea even where to start - I’ve restarted OpenHAB (same behaviour), uninstalled and reinstalled the network binding (same behaviour), and I haven’t even touched the network configuration files since it used to work.

I guess for a start, what log setting could I use to find out what it thinks it’s doing?

On the bright side, my house which was heated all morning while no-one was at home is delightfully cosy now…

In case it’s useful, here’s one of the lines from the network.things file (all the others are similar, except with different thing names and different IP addresses in the hostname):

Thing network:pingdevice:terribleterror [ hostname="192.168.11.73" ]

And this is the network config file:

binding.network:allowSystemPings=true
binding.network:allowDHCPlisten=true
binding.network:arpPingToolPath=/usr/local/sbin/arping
binding.network:cacheDeviceStateTimeInMS=2000

Note that running arping from the command line gives the correct result for each device, as does regular system ping.

This one is a dodgy one. I’ve managed to resolve it, but I have no idea how. I traced the start of the faulty behaviour back to a cycle of uninstalling and reinstalling the HomeKit binding prior to a restart of OpenHAB needed for another binding bug (the un/re-install necessary because of this - https://github.com/openhab/openhab2-addons/issues/1822#issuecomment-297860690)… and for all there was no clear indication in the log at the time, I thought I’d try the same set of actions again in the hope that whatever random thing went wrong then would go right this time. Steps taken:

  • uninstall Network binding
  • uninstall HomeKit binding
  • delete the homekit jsondb file
  • reinstall HomeKit binding
  • quit OpenHAB
  • launch OpenHAB
  • clear HomeKit pairings
  • reconnect HomeKit client device
  • install Network binding

… and now it’s working. It shouldn’t have made any difference compared to what I’d already done, but it’s working for now. So at this point, I’m just going to set up an automated warning for a false positive network binding returns so that I can uninstall it before it runs our heating in an empty house again, and hope the cause disappears in a future update of OH2.