forked from espressif/arduino-esp32
eliminates error messages when using Ethernet Static IP (#5836)
Summary Only affects ETH (not WiFi) This PR solves #5733 by allowing the DHCP IDF server to complete its tasks and only then it sets a static IP. This also solves another related failure reported in this issue (#5733 (comment)). fix #5733 Impact Adds a delay in order to wait for DHCP to actually terminate before setting the static IP configuration in ETH.
This commit is contained in:
@ -368,6 +368,10 @@ bool ETHClass::begin(uint8_t phy_addr, int power, int mdc, int mdio, eth_phy_typ
|
|||||||
log_e("esp_eth_init error: %d", err);
|
log_e("esp_eth_init error: %d", err);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
// holds a few microseconds to let DHCP start and enter into a good state
|
||||||
|
// FIX ME -- adresses issue https://github.com/espressif/arduino-esp32/issues/5733
|
||||||
|
delay(50);
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -396,7 +400,8 @@ bool ETHClass::config(IPAddress local_ip, IPAddress gateway, IPAddress subnet, I
|
|||||||
if(err != ERR_OK){
|
if(err != ERR_OK){
|
||||||
log_e("STA IP could not be configured! Error: %d", err);
|
log_e("STA IP could not be configured! Error: %d", err);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(info.ip.addr){
|
if(info.ip.addr){
|
||||||
staticIP = true;
|
staticIP = true;
|
||||||
} else {
|
} else {
|
||||||
|
Reference in New Issue
Block a user