Ich habe eine der günstigsten Powerbanks mit brauchbarer Kapazität gekauft, die Intenso S10000 (10Ah, 12€ bei Amazon Prime), und da was interessantes herausgefunden:
Beim Anschließen der Elektronik schaltet sie sich automatisch ein und bleibt auch an, wenn man abspielt oder pausiert. Wenn man aber per Software RFID-Leser, DFPlayer und AVR auf Stromsparen stellt (Code unten), geht der Stromverbrauch auf 27mA runter, und die Powerbank schaltet nach etwa einer Minute von allein ab und bleibt aus. Erst wenn man den Player trennt und wieder einstöpselt, geht sie wieder von allein an.
Wenn man also zum Einschalter einen Taster mit Öffner verbaut, der die Stromversorung kurz trennt,
und nach x Minuten der Software alles schlafenlegt, hat man ohne Pololu oder ähnliche Schaltungen
ebenso automatisches Abschalten.
Code:
// powerdown to 27mA (powerbank switches off after 30-60s)
mfrc522.PCD_AntennaOff();
mfrc522.PCD_SoftPowerDown();
mp3.sleep();
set_sleep_mode(SLEEP_MODE_PWR_DOWN);
cli(); // Disable interrupts
sleep_mode();
So ich habe die Powerbank heute bekommen und direkt den Code eingebaut…
ES KLAPPT!!! SUPER GUT!!! Nach ca. 30 Sekunden schaltet die Powerbank ab. Sobald das USB-Kabel neu verbunden wird startet der TonUINO wieder ganz normal.
Mega! Wird so in die Firmware eingebaut. Danke @Hendrik!!!
Mit meiner Anker® 2. Gen Astro E3 10.000mAh Ultra Dünn & Kompakt Externer Akku Dual-Port USB klappt es auch - gibt es aber nicht mehr daher leider kein Link.
Ich würde fast tippen, dass es mit allen hochwertigen Powerbanks funktioniert. @stephan testet auch gerade und wird sicher noch sein Modell hier preisgeben.
Ich habe hier eine ganz günstige von LogiLink, die schaltet nicht ab. Vielleicht sollten wir irgendwo eine Positivliste pflegen mit den Flags ob Abschaltung und Durchladefähigkeit gegeben sind.
Ja, genau das selbe für die Tag’s und jeweils ein FAQ fest gepinnt oben bei den Themen Hardware, Software und hier bei Stromversorgung. Vielleicht auch gleich eine Kategorie FAQ als Wiki wo wir alle Erkenntnisse aus den ganzen Einzelbeiträgen bündeln können.
OK, nur damit ich das jetzt richtig verstehe… wir verzichten hier auf den Poludingsda und verwenden eine Powerbank die bei unter 30mA abschaltet. Per Software wird der Stromverbrauch nach einer gewissen Zeit der Inaktivität eben unter diese 30mA gebracht und das wars dann. Zum erneuten Einschalten, muss der Schalter der zwischen dem USB Ausgang der Powerbank und dem Arduino/Tonuino hängt, aus und wieder ein geschaltet werden. Korrekt?
Triggert denn die Software trotzdem noch einen Pin bevor der Stromsparmodus aktiviert wird, damit ggf. ein externer Schalter aktiviert werden kann? High oder Low?
Auf jeden Fall sehr interessant welche Entwicklung dieses Projekt hier nimmt
Finde das eine gute Lösung! Ist es denn möglich trotzdem eine PowerLed zu betrieben? Damit das Kind optisch sehen kann ob die Box an ist oder nicht?
Dachte an einen Öffner mit LED die dann leuchtet wenn die Box an ist.
Oder hindert die LED dann die Powerbank daran sich auszuschalten?
Ich fürchte ja - die LED müsste also über den Arduino angesteuert werden (was ja aber kein Problem ist). Ich habe gerade einen Powerschalter mit separater LED (Adafruit) bestellt und werde das hier mal vorstellen wenn es fertig ist… ja: die Status-LED aus @stephan’s Firmware wird dann auch in meine Firmware wandern.
Das geht, wenn die LED mit Vorwiderstand zwischen einen Microcontroller-Pin und +5V hängt. Der Pin muss als Output eingestellt werden, und die LED leuchtet, wenn der Pin auf 0 gesetzt ist. Vor dem Software-Abschalten muss der Pin auf 1, damit die LED aus und der Stromverbrauch runtergeht.
Vorwiderstand ist (für knapp 20mA) mindestens 200 Ohm für rot, und etwas weniger für andere Farben.
Die Controller können idr. In beide Richtungen, da die IO ja tristate sind. Können aber nicht in beide Richtungen gleich viel Strom leiten, da vorher noch mal in das Datenblatt schauen was unter sink eingetragen ist.