Nouveau : le pare-feu IA surveille toute la plateforme et explique chaque incident en termes simples. Découvrez comment ça marche

Reply To: NodeMCU’daki FLASH butonunu loop() içinde ‘Wi-Fi’ı sıfırla’ tuşu olarak kullanabilir miyim?

Gizem evet, D3 = GPIO0. Furkan’ın dediği sadece reset anı için geçerli: güç verilirken ya da reset sırasında GPIO0 LOW ise kart flash moduna giriyor. Program çalışmaya başladıktan sonra normal bir giriş, kartta zaten pull-up var, buton GND’ye çekiyor. Bizim sahadaki cihazlarda tam olarak bunu yapıyoruz.

const int BTN = 0;   // D3 / FLASH
unsigned long downAt = 0;

void setup() {
  pinMode(BTN, INPUT_PULLUP);
  // ...
}

void loop() {
  if (digitalRead(BTN) == LOW) {
    if (!downAt) downAt = millis();
    if (millis() - downAt > 5000) {
      WiFiManager wm;
      wm.resetSettings();          // sadece Wi-Fi bilgileri silinir
      ESP.restart();               // açılışta portal kendiliğinden açılır
    }
  } else downAt = 0;
  mqtt.loop();
}

Dikkat edilecek iki şey var. Token’ı EEPROM’da ayrı tut ve bu işlemde silme; cihaz Hermetry’de aynı cihaz olarak kalsın, yeni ağa geçince aynı credential’la bağlansın. İkincisi, butona basılıyken elektrik gidip gelirse kart flash moduna açılır, birkaç saniye sonra tekrar reset atmak yeterli. Teknisyene « fişi çekip takarken butona basma » notu bırakın.

Sahadan selamlar.
Solution acceptée♥ 3