I have a KY-040 rotary encoder with a push button wired to an ESP8266. My objective is to be able to detect if the button is pressed or not on boot. In the below code, if I hold the button down and power on the ESP8266, neither "IT'S STARTED" or "IT'S LOOPING" is printed in the serial monitor, even if I release the button. If I don't press the button, the code works as expected and prints "IT'S STARTED" followed by "IT'S LOOPING". It's as though the code gets stuck/halted if I press the button on boot. Can someone explain why this is happening? I would also appreciate suggestions on how I can detect the status (pressed/not pressed) of the button when the ESP8266 is powered up. Here is my code: ```cpp void setup() { pinMode(D3, INPUT_PULLUP); Serial.begin(115200); Serial.println("IT'S STARTED"); } void loop() { Serial.println("IT'S LOOPING"); delay(1000); } ```