ARP state display not working in Paper UI

  • Platform information:
    • Hardware: Raspberry Pi 3B
    • OS: Openhabian
    • Java Runtime Environment: Zulu Embedded OpenJDK Java 8
    • openHAB version: 2.4.0-1

My issue is that the Paper UI does not show the correct ARP state.

I have a .things file with:

Thing network:pingdevice:smartphone "Phone (Lou)" [ hostname=“192.168.1.7”, uses_dhcp_listen=1, uses_arp_pings=1, retry=30, timeout=5000, refreshInterval=10000 ]

…where the device referenced is recognized by the network binding in Paper UI. The network binding has ‘allow system pings’ and ‘listen for dhcp requests’ enabled

I have arping installed at /usr/bin/arping, and the path is written the same in the ‘ARP ping tool path’ of the network binding. $PATH includes /usr/bin. However, the ‘arp_state’ of the device shows ‘Disabled’ even though manually pinging the device with the command /usr/bin/arping 192.168.1.7 is successful.
The command:

arping -w 5 -c 1 -I eth0 192.168.1.7

also is successful.

Access rights for arping are elevated:

-rwxr-xr-x root root

My network.cfg file matches the settings in Paper UI:

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

I have read several threads on this subject and have run out of ideas. Any steps I am missing?

Full properties in Paper UI for the phone tested are:

|arp_state |Disabled|
|---|---|
|dhcp_state |Running normally|
|icmp_state |IPUTILS_LINUX_PING|
|presence_detection_type ||
|uses_ios_wakeup |Yes|

Channels for the phone are online, latency, and last seen.

Logs?

The issue is ‘false positives’ so logs are not going to help:
Arping Related Network Binding Issue

There is a whole host of stuff that happens between the arping and the result being shown in PaperUI or any other UI. The problem can occur at any one of those steps. Logs are where you determine at which step the problem is occurring.

1 Like

rlkoshak, thanks so much for your patience. I found a solution and posted it here: