Neu: Die KI-Firewall überwacht die gesamte Plattform und erklärt jeden Vorfall in einfachen Worten. So funktioniert es

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.
Akzeptierte Lösung♥ 3