diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/Networking/ESP8266WiFi/WiFiInterface.cpp | 10 | ||||
-rw-r--r-- | src/Networking/ESP8266WiFi/WiFiInterface.h | 4 |
2 files changed, 7 insertions, 7 deletions
diff --git a/src/Networking/ESP8266WiFi/WiFiInterface.cpp b/src/Networking/ESP8266WiFi/WiFiInterface.cpp index a990e15e..9e08438b 100644 --- a/src/Networking/ESP8266WiFi/WiFiInterface.cpp +++ b/src/Networking/ESP8266WiFi/WiFiInterface.cpp @@ -576,7 +576,7 @@ void WiFiInterface::Start() noexcept transferAlreadyPendingCount = readyTimeoutCount = responseTimeoutCount = 0; lastTickMillis = millis(); - lastState = 0; + lastDataReadyPinState = 0; risingEdges = 0; SetState(NetworkState::starting1); } @@ -614,14 +614,14 @@ void WiFiInterface::Spin() noexcept { case NetworkState::starting1: { - const bool currentState = digitalRead(EspDataReadyPin); - if (currentState != lastState) + const bool currentDataReadyPinState = digitalRead(EspDataReadyPin); + if (currentDataReadyPinState != lastDataReadyPinState) { - if (currentState) + if (currentDataReadyPinState && risingEdges < 10) { risingEdges++; } - lastState = currentState; + lastDataReadyPinState = currentDataReadyPinState; } // The ESP toggles CS before it has finished starting up, so don't look at the CS signal too soon diff --git a/src/Networking/ESP8266WiFi/WiFiInterface.h b/src/Networking/ESP8266WiFi/WiFiInterface.h index 3512019a..5776f1e6 100644 --- a/src/Networking/ESP8266WiFi/WiFiInterface.h +++ b/src/Networking/ESP8266WiFi/WiFiInterface.h @@ -120,8 +120,8 @@ private: Platform& platform; uint32_t lastTickMillis; - bool lastState; - int risingEdges; + bool lastDataReadyPinState; + uint8_t risingEdges; struct MessageBufferOut { |