diff --git a/src/system.cpp b/src/system.cpp index 472a30b4a..f0f09f81a 100644 --- a/src/system.cpp +++ b/src/system.cpp @@ -790,10 +790,12 @@ void System::network_init(bool refresh) { // reset power and add a delay as ETH doesn't not always start up correctly after a warm boot // TODO still experimental - pinMode(eth_power_, OUTPUT); - digitalWrite(eth_power_, LOW); - delay(1000); - digitalWrite(eth_power_, HIGH); + if (eth_power_ != -1) { + pinMode(eth_power_, OUTPUT); + digitalWrite(eth_power_, LOW); + delay(500); + digitalWrite(eth_power_, HIGH); + } #if ESP_IDF_VERSION_MAJOR < 5 eth_present_ = ETH.begin(phy_addr, power, mdc, mdio, type, clock_mode);