Lolin32 D32 pro mit RC522 als RFID-Leser

Das hatte ich noch nicht gesehen, kann es gedanklich allerdings nachvollziehen. An der Stelle muss ich leider tatsächlich zugeben, dass mir hier ein konzeptioneller Fehler in der Schaltung unterlaufen ist. Und zwar wenn man sich den Schaltplan anschaut, dann sieht man, dass mit GPIO5 eine LED verbunden ist. Die LED ist dauerhaft mit 3.3V verbunden, kriegt ihr GND dann vom GPIO5. D.h. würde man an GPIO5 einen Taster anschließen, dann würde die LED immer dann leuchten, wenn dieser gedrückt ist.

Jetzt verwende ich ausgerechnet GPIO5 halt, um das Gate des IRL3103 anzusteuern. D.h. im eingeschalteten Zustand ist der GPIO5 auf HIGH. Im ausgeschalteten Zustand ist es undefiniert, aber durch die beiden externen Widerstände R1 (1k) und R2 (10k) wird der Ausgang definiert auf GND gezogen (PullDown), damit der Mosfet auch wirklich sicher nicht durchsteuert. Das führt jetzt hier aber dazu, dass die LED, die ja dauerhaft mit 3.3V verbunden ist, über einen Gesamtwiderstand von 11k mit GND verbunden ist. Das führt zu einer (unnötigen) Stromaufnahme von 300 uA, mit der der LED dann offenbar bei dir leuchtet. Nehmen wir an, wir haben einen LiPo mit 2500 mAh und davon könnte man 90% Kapazität nutzen, dann wäre dieser aufgrund des Design-Fehlers (andere Verbräuche außen vor) in 7500 Stunden (312 Tage) leer. Bedeutet: Ist natürlich unnötig, aber die Ausmaße sind jetzt auch nicht dramatisch.

Behebung:

  1. Ursächlich beheben kann man das in diesem Falle jetzt nur, wenn man die LED auslötet (gebraucht wird sie ja nicht). Da sollte man eine etwas größere Lötspitze nehmen, so dass auch hinreichend viel Wärmeenergie auf die LED übertragen wird. Wenn die LED heiß genug ist, kann man die zur Seite schieben - nicht zu viel Druck aufwenden, so dass nicht irgendwie eine Leiterbahn ausreißt oder so. Und sicherstellen, dass die beiden SMD-Pads der LED anschließend keinen Kurzschluss haben. Also es macht sicher Sinn, da im Anschluss mit Entlötlitze mal drüber zu gehen.

  2. Man könnte ein bisschen experimentieren, ob man die Widerstände nicht auch bissl vergrößern kann. Speziell R2, das ist der zweite von unten (direkt oberhalb des 1k), da gehen vielleicht auf 47k oder 100k - das würde den Strom nochmal deutlich reduzieren.

Das geht im aktuellen Design nicht (außer man baut einen Schalter ein). Nur @compactflash hat hier einen weiteren Ansatz, bei dem er den LTC2954 verwendet. Dieser wird dem ESP32 vorgeschaltet und schaltet dessen Betriebsspannung. Das ist ne schöne Lösung, die er auch hier u.a. präsentiert hat. Schön daran ist auch, dass man damit den ESP32 auch komplett ausschalten kann, wenn dieser mal nicht reagieren sollte. Sie hat halt den Nachteil, dass man dafür SMD löten muss. Ich habe hier halt geschaut, dass das relativ einfach zu löten ist, damit das auch von mehr Leuten genutzt werden kann.

Wie auch immer: Sorry für den Designfehler in meinem PCB :pleading_face: