How to avoid TIMEOUT in ARP SEND on NuttX?

If you are configuring the NuttX network and you are receiving this error:

arp_send: ERROR: arp_wait failed: -116

Something could be wrong in your network configuration. It is strange that the only other reference I found to this error was in this nice blog: https://eadalabs.com/esp32-nuttx-and-bridged-networking/

Beside incorrect network configuration (i.e. your device IP or router/gateway IP are incorrect) this error can happen because the default timeout is only 20ms:

config ARP_SEND_DELAYMSEC
int "ARP re-send delay"
default 20
---help---
Wait this number of milliseconds after sending the ARP request
before checking if the IP address mapping is present in the ARP
table. This time should be related to the maximum round trip time
on the network since it is basically the time from when an ARP
request is sent until the response is received.

Try to increase it to 100, 200 or even 500 (if your network is really bad) and this error will not show up.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s