Ich versuche, eine "Selbstabschaltung" für meinen ESP8266 zu bauen.
Ich möchte Code vor der Abschaltung ausführen. Dafür verwende ich einen Logic-Level-N-Channel-MOSFET, dessen Gate von einem GPIO-Pin des ESP8266 gesteuert wird. Der GPIO-Pin wird auf HIGH gesetzt, sobald ich den ESP einschalte, und ich möchte ihn auf LOW setzen, sobald ich den Schaltzustand mit einem zweiten GPIO erkenne. Das Ein- und Ausschalten funktioniert größtenteils gut, aber ich habe Probleme, den Schaltzustand zu erkennen, da alle Schaltterminals mit einem GND Potential verbunden sind. Es handelt sich um einen Schiebeschalter mit 3 Terminals. Eines ist mit dem Batterie-GND verbunden, das Mittlere mit einem "common" GND, und das letzte ist mit dem MOSFET-Drain verbunden.
Gibt es eine gute Idee, den Schaltzustand zu erkennen? Meine Recherche hat mich in Richtung eines Spannungsteilers geführt, und das Lustige an dem Spannungsteiler (10k vom Erkennungs-GPIO zu 3,3 V und 3k3 vom MOSFET-Drain zum Erkennungs-GPIO) ist, dass er funktioniert, solange ich über USB-C mit meinem Laptop verbunden bin. Aber sobald ich auf meine Batterie umschalte, erkennt er den Schaltzustand nicht mehr.
Ich bin für jede Idee dankbar. In folgender Darstellung habe ich versucht den Kern der Schaltung zu extrahieren.

