ESP32-Develboard "E32 LiPo"

Bilder

Von oben:

Von unten:

Vergleich zum D32 pro LiFePO4:

Einleitung

Mit dem D32 pro LiFePO4 habe ich kürzlich ein Develboard vorgestellt, welches ausschließlich für LiFePO4-Akkus gemacht ist. Davon habe ich nun ein Derivat entwickelt, das ausschließlich für LiPo-Akkus gedacht ist. Da so ziemlich alle ESP32-Develboards, die man käuflich erwerben kann, Akkuunterstützung für LiPo bieten, ist dies erstmal nichts Revolutionäres. Mir persönlich ging es primär darum, auch ein LiPo-Develboard mit USB-C zu haben. Als kleine Weiterentwicklung zum D32 pro FePo habe ich den Reset-Button nach unten verschoben, weswegen die Platine ein kleines bisschen kürzer geworden ist. Und einen Akku-seitigen Verpolschutz habe ich ebenfalls integriert.

Vergleich zum Lolin D32 pro

Pate für dieses Develboard stand der Wemos Lolin D32 pro. Das bedeutet, dass die funktionelle Anschlussbelegung der oberen beiden Pinreihen zu 100% identisch ist und auch ein ESP32-WROVER-E mit 16 MB Flashspeicher verbaut ist.

  • Länge: 69,9 mm (anstelle 65 mm beim D32 pro).
  • Verwendet als Akku-Laderegler den Chip TP5000 (anstelle TP4054 beim D32 pro). Vorteil: Höherer Ladestrom möglich.
  • Unterstützt ausschließlich LiPo-Akkus (wie auch der D32 pro).
  • Verwendet als 3.3V-Festspannungsregler den ME6211 (wie auch der D32 pro).
  • Max. Ladestrom (einstellbar über R5) des Akkus beträgt 1 A (anstelle 0,5 A beim D32 pro).
  • 16 poliger USB-C-Anschluss (anstelle micro-USB beim D32 pro).
  • Besitzt (realisiert mit einem Mosfet) einen Verpolschutz am Akkuanschluss (anstelle ohne beim D32 pro).
  • Auf der rechten Pinreihe gibt es einen Pin, der CHRG heißt. Hiermit lässt sich detektieren, ob der Akku gerade geladen wird (wird dann auf GND gezogen). Das klappt allerdings nur, wenn keine LED für die Ladekontrolle eingelötet ist. Beim D32 pro ist dieser Pin der Pinreihe unbelegt. ESPuino unterstützt das Auslesen von CHRG derzeit nicht. Kurz: Ist unklar, ob das jemals gebraucht wird, aber haben ist besser als brauchen :slight_smile:.
  • Auf der rechten Pinreihe gibt es weiterhin einen Pin, der „VIN“ heißt. VIN ist der „kombinierte Strompfad“ von USB/LiPo. Immer, wenn USB angeschlossen ist (egal ob mit oder ohne Akku), liegen hier 5 V an. Ist nur der Akku angeschlossen, dann liegt hier die Akkuspannung an. Das hat erstmal keine Auswirkungen, aber Bastler haben damit einen Pin zur Verfügung, den man ggf. für externe Beschaltung gebrauchen kann und beim D32 pro ohne Lötarbeit nicht erreicht. Beim D32 pro ist dieser Pin der Pinreihe unbelegt.
  • Die Konnektoren für SD, I2C und Display sind auf meinem Board nicht vorhanden. Einerseits ist dafür eh kein Platz und andererseits machen wir das ohnehin extern.
  • Spannungsteiler zum Messen der Akkuspannung ist 300k + 300k (anstelle 100k + 100k beim D32 pro) => spart Strom im Akkubetrieb. Wenn man möchte, dann kann man das hier eintragen. Es ist aber nicht notwendig, da es gar nicht um die absoluten Zahlen geht, sondern nur um das Verhältnis beider Zahlen zueinander. Und hier macht 100/100 zu 300/300 keinen Unterschied.
  • Statt einer roten LED ist eine blaue LED verbaut. Sie blinkt (mehr oder weniger schnell), wenn USB angeschlossen ist aber kein Akku. Sie leuchtet, wenn USB+Akku angeschlossen sind. Ist nur der Akku angeschlossen, so leuchtet sie nicht. In kurz etwa so :rofl:.

Schaltplan

Schematics E32 LiPo.pdf (191,1 KB)

Warum getrennte Boards für FePo und LiPo?

Wie auch beim D32 pro LiFePO4 besitzt dieses Board als LiPo-Laderegler den TP5000. Heißt: Man kann den TP5000 entsprechend konfigurieren. Theoretisch benötigt man nur eine kleine Verbindung mehr für LiPo (ggü. FePo), so dass man das Ganze recht einfach und universell mit einer Lötbrücke konfigurierbar halten könnte. Da ich das FePo-Board aus Effizienzgründen jedoch absichtlich so designed habe, dass die Versorgung per Akku am Festspannungsregler vorbeiläuft, wäre der Schaltungsaufwand hier höher und das Ganze kriege ich hier einfach nicht mehr unter auf dieser Größe. Aber ich denke das ist kein Beinbruch, da man eigentlich vorher weiß, ob man LiPo oder FePo möchte.

Hinweise

  • Auf keinen Fall darf ein FePo-Akku angeschlossen werden, da die Ladespannung bei LiPo bis zu 4,2 V beträgt und damit zu hoch wäre FePo wäre.
  • Die Polarität der Buchse des Akkuanschlusses (JST-PH) entspricht derer, die auch z.B. der D32 pro aufweist. Das ist insofern wichtig zu wissen, da das gegenüber dem D32 pro LiFePO4 gedreht ist. Das war kein Versehen sondern ich habe mich daran orientiert, wie Eremit seine LiPo-Akkus konfektioniert, da ich deren Akkus immer emfehle und selbst auch nutze. Wie auch immer: Prüft bei allem, was ihr anschließt, IMMER die Polarität!
  • Ein passender Akku mit integrierter Schutzschaltung wäre z.B.: LiPo-Akku mit 2500 mAh. Gibt auch andere Größen, die dort bestellt werden können. Achte darauf, einen Akku mit einem JST-PH-Anschluss zu bestellen! Es ist mit einem Strombedarf von 150 bis 180 mA zu rechnen. D.h. mit 2500 mAh sind auf jeden Fall weit über 10 h Akkubetrieb möglich.

Kompatibilität zu ESPuino

Wie schon erwähnt ist das Board funktional 100% pinkompatibel mit dem D32 pro von Wemos. Das bedeutet im Gegenzug natürlich auch, dass man es ohne Einschränkungen z.B. für ESPuino-miniD32(pro): Lolin D32/D32 pro mit SD_MMC und Port-Expander (SMD) verwenden kann. Und das bedeutet gleichwohl, dass als Profil in PlatformIO ebenfalls lolin_d32_pro_sdmmc_pe verwendet wird.

Tipps und Tricks

Ausblick

Für’s Erste werde ich fünf Exemplare löten, wovon ich vier Stück abgeben kann. Dann muss ich erstmal neue Teile bestellen. Wer schon immer mal ein D32 pro-kompatibles Develboard mit USB-C-Anschluss haben wollte, kann sich bei mir melden.

Update August 2022

Inzwischen habe ich von diesem Develboard immer mal wieder Exemplare da. Wer also eines benötigt, der kann sich bei mir melden.

3 „Gefällt mir“

Ich habe gestern eine davon in Betrieb genommen und war auf Anhieb begeistert. Ist eine echt runde und durchdachte Sache. Hut ab vor soviel Intiative und Know-How. Auch die Verarbeitung ist absolut erste Sahne!
Vielleicht gibt es ja mal ein zukünftiges Release mit nem Anschluss für ne externe pigtail Antenne?
Ist warscheinlich das einzige ESP32 Devel Boad designed and assembled in Germany?

1 „Gefällt mir“

Das Traurige ist ja, dass ich inzwischen ich glaube 22 Stück (FePo oder LiPo) gelötet, aber kein einziges mehr hier habe :rofl:. Mit der nächsten Fuhre werde ich auch mal an mich denken :slight_smile: .
Die rev1 hat auf Anhieb funktioniert. Bei der rev2 habe ich versucht, das Ganze ohne den CH340-internen Spannungswandler auf 3.3 V zu betreiben. Laut PCB-Artists sollten die ESP32 das mitmachen; tun sie aber offenbar nicht. Zwei WROVER-Module habe ich damit mutmaßlich geschrottet.
Mit der rev3 bin ich jetzt wieder auf das Design der rev1 zurück, habe jedoch die beiden Schottky-Dioden auf SS14 geändert, nachdem die MBRS130LT3G über meine alte Quelle nicht mehr lieferbar waren. Das Gehäuse der SS14 (SMA/DO-214AC) ist auch ein klein wenig kompakter und zudem ist SS14 auch ein Basic Part bei JLCPCB.

In letzter Zeit werde ich wieder vermehrt nach LiPo-Boards gefragt. Das hier genannte habe ich eine Weile lang angeboten, aber irgendwann wurde es mir doch zu viel, zwei unterschiedliche Develboards vorzuhalten und vor allem, dies komplett alles immer von Hand zu löten.
Da es beim LiFePO4-Board keine Alternativen gibt, habe ich mich auf dieses konzentriert, es neu designed und lasse es seitdem als 4Layer-Board von JLCPCB vorlöten. Mitunter wird es auch von Leuten angefragt, die mit ESPuino gar nichts am Hut haben.

Wie auch immer: Das Redesign des E32 LiPo hatte ich schon vor längerer Zeit in Angriff genommen, es jedoch mangels Zeit und/oder Bock nicht finalisiert. Das habe ich nun vor ein paar Tagen nachgeholt. Ob’s funktioniert wird man dann sehen, aber ich kündige einfach mal großspurig an, dass etwas in der Mache ist :slight_smile:. Hat jetzt, siehe Bild unten, ebenfalls 4 Layer mit SMD-Bauteilen in 0402/0603.

Als Festspannungsregler soll nun ein RT9080 zum Einsatz kommen. Dieser bietet einen max. Strom von 600 mA und soll angeblich ziemlich sparsam sein (vielleicht kennt ihn auch jmd. vom ESP32 Firebeetle-Develboard). Weiterhin, da bin ich mal gespannt drauf, einen Kurzschlussschutz:

The RT9080 provides current limit function to prevent the
device from damages during over-load or shorted-circuit
condition. This current is detected by an internal sensing
transistor.

Nachfolgend mal ein paar Bilder davon:

2 „Gefällt mir“

Die erste Iteration des Neuentwurfs ging leider in die Hose. Einerseits ist ein Fehler im Platinenlayout und mir ist einigermaßen unklar, wie KiCad den da reingezimmert hat. Aber davon ab startet der ESP32 auch nicht.
Muss ich mir nochmal genauer anschauen. Aber 3,3 V sind auf jeden Fall da und die Ladeelektronik funktioniert auch. Das rettet zwar die Platine nicht, aber zumindest ist nicht alles für die Füße.