NodeMCU v2 stürzt ab

Ganz allgemein:

Falls in deinem Programmablauf Verzögerungen enthalten sind, etwa in Form von längeren Schleifen, blockierendem Warten auf einen Zustand oder Ähnlichem, die länger als etwa 20 Milisekunden dauern, kann das zu Problemen führen - hat damit zu tun, dass anscheinend der Sheduler nicht oft genug aufgerufen wird.

Auch wenn AnalogRead zu oft ausgeführt wird, kann das Probleme machen. Man sollte nicht in jedem Loop-Durchlauf AnalogRead durchführen, sondern höchstens alle 100-200ms.
Siehe: analogRead forces WiFi to disconnect · Issue #1634 · esp8266/Arduino · GitHub