0.22.0
Pre-release
Pre-release
Added
EthernetClass::setDHCPEnabled(flag)
enables or disables the DHCP client. May be called either before or after Ethernet has started.EthernetClass::isDHCPEnabled()
returns whether the DHCP client is enabled. Valid whether Ethernet has been started or not.- New
LinkWatcher
example. - Added support for building for unsupported boards via a new bare lwIP driver.
Changed
- Limit the number of times
enet_proc_input()
can loop to twice the ring size. - Limit UDP output size to the maximum possible (65535 - 28(total header)).
- It's now possible to know when adding or removing a MAC address filter failed.
- Make it possible to disable and exclude DHCP, DNS, IGMP, TCP, and UDP.
- Changed
EthernetClass::setMACAddress(mac)
to use the built-in MAC address if the given array is NULL. - Changed
EthernetClass::begin(mac)
to wait for an IP address. The default is a 60-second timeout. There's also a new, optional,timeout
parameter for specifying that timeout. This change makes the API match the Arduino Ethernet API. - Renamed
enet_getmac(mac)
toenet_get_mac(mac)
. - Better NULL argument checking.
- Simplified
ServerWithListeners
example. - Changed
enet_init(...)
to return abool
for detecting init. failure.
Fixed
- Fixed how
EthernetClient
functions work when there's a pending connect triggered byconnectNoWait()
. - Fixed how raw frame size limits are checked. Padding is already handled by the MAC.
- Fixed compilation if
LWIP_IGMP
is disabled, including makingLWIP_MDNS_RESPONDER
dependent onLWIP_IGMP
(in addition toLWIP_UDP
). - Improved
trng_is_started()
by adding an additional check for the "OK to stop" bit. It now works at system startup if the clock is already running.