Verkabelung
Mit dieser Seite verkabelst du den Lader zu Hause und schaltest ihn zum ersten Mal ein, ohne etwas zu zerstören. Die häufigsten Fehler (ein falsch eingestellter Wandler, ein Drehgeber an 5 V, ein Servo, das die Akkuspannung nicht verträgt) beschädigen Bauteile schon in der ersten Sekunde. Nimm dir also die Zeit, die Checkliste der Reihe nach abzuarbeiten.
Pinbelegung des ESP32
Abschnitt betitelt „Pinbelegung des ESP32“Das Board ist ein ESP32-C3 SuperMini. Die Tabelle folgt firmware/src/config.h: Sollten die
beiden einmal voneinander abweichen, gilt config.h.
| GPIO | Funktion | Gut zu wissen |
|---|---|---|
| 0 | Akkuspannung (Analogeingang) | Über einen Spannungsteiler 100 kΩ / 20 kΩ, mit einem 100-nF-Kondensator gegen Masse. |
| 1 | IR-Fototransistor | Pull-up-Widerstand 10 kΩ nach 3,3 V. Das Signal geht auf High, wenn eine BB den Strahl unterbricht. |
| 3 | Servosignal (PWM) | Nur die Steuerleitung: Das Servo wird direkt aus dem Akku versorgt. |
| 4 | GO-Taster | Ein einfacher Kontakt zwischen GPIO 4 und GND, sonst nichts. Vollständig vom alten 12-V-Stromkreis getrennt. |
| 5 | Drehgeber KY-040, CLK | Das + des Moduls kommt an 3,3 V, nie an 5 V. |
| 6 | Drehgeber KY-040, DT | |
| 7 | Drehgeber KY-040, SW (Klick) | Geht beim Drücken auf Low. |
| 10 | OLED, SDA (I2C) | Display SSD1306 128×64, Adresse 0x3C (manchmal 0x3D). |
| 20 | OLED, SCL (I2C) | Nutzbar, weil die serielle Schnittstelle über das native USB des Chips läuft. |
Diese Pins bleiben frei:
- GPIO 2, 8 und 9 sind Strapping-Pins: Ihr Pegel beim Einschalten legt fest, wie der Chip bootet. An Pin 8 hängt außerdem die LED des Boards.
- GPIO 4 bis 7 dienen auch dem JTAG-Debugging. Das stört nicht, solange du über USB gehst (das eingebaute USB-Debugging nutzt sie nicht), aber ein externer JTAG-Adapter käme dem Taster und dem Drehgeber in die Quere.
Schaltplan
Abschnitt betitelt „Schaltplan“Das ist ein Prinzipschaltbild: Wo ein Pin in der Zeichnung sitzt, hat nichts damit zu tun, wo er auf dem Board liegt. Die roten Leitungen führen die Akkuspannung (7,4 V, voll geladen bis 8,4 V), die orange Leitung die 5 V des Wandlers, die grünen Fähnchen die 3,3 V vom 3V3-Pin des ESP32. Alle Massesymbole sind miteinander verbunden.
Bauteil für Bauteil
Abschnitt betitelt „Bauteil für Bauteil“| Bauteil | Anschluss |
|---|---|
| 2S-LiPo-Akku | + an den Hauptschalter, − an die gemeinsame Masse. |
| Servo | + an den Akku hinter dem Schalter (nicht an die 5 V), − an Masse, Signal an GPIO 3. Ein Kondensator 470 µF 16 V zwischen + und Masse, so nah wie möglich am Servo, mit dem +-Bein auf der Akkuseite. |
| 5-V-Wandler (MP1584) | Eingang am Akku hinter dem Schalter, Ausgang 5,0 V (mit dem Multimeter geprüft), an den 5V-Pin des ESP32, gemeinsame Masse. |
| Akku-Spannungsteiler | Akku → 100 kΩ → GPIO 0 → 20 kΩ → Masse. Ein 100-nF-Kondensator zwischen GPIO 0 und Masse. Bei 8,4 V sieht der Pin 8,4 × 20 / 120 = 1,40 V. Keinen 47 kΩ stattdessen nehmen: Der Pin sähe dann etwa 2,7 V, zu viel, als dass der ADC des C3 noch gut misst. |
| IR-LED 940 nm | 3,3 V → 220 Ω → Anode der LED, Kathode an Masse. Sie leuchtet ständig (etwa 10 mA). |
| Fototransistor 940 nm | Kollektor an GPIO 1, mit einem 10-kΩ-Widerstand von GPIO 1 nach 3,3 V. Emitter an Masse. Gegenüber der LED, auf der anderen Seite des Rohrs. |
| Drehgeber KY-040 | CLK → GPIO 5, DT → GPIO 6, SW → GPIO 7, + → 3,3 V, GND → Masse. |
| OLED-Display SSD1306 | SDA → GPIO 10, SCL → GPIO 20, VCC → 3,3 V, GND → Masse. |
| GO-Taster | Ein Draht an GPIO 4, der andere an Masse. Kein weiterer Draht: vom alten 12-V-Stromkreis getrennt. |
Erste Inbetriebnahme
Abschnitt betitelt „Erste Inbetriebnahme“In dieser Reihenfolge, bevor du irgendetwas anderes anschließt. Trag jeden gemessenen Wert unten in die Tabelle der Messwerte ein.
- Den Ausgang des Wandlers mit dem Multimeter auf 5,0 V prüfen (und, wenn er einstellbar ist, einstellen), ESP32 abgeklemmt. Eine Version mit festen 5 V muss nicht eingestellt werden, wird aber trotzdem gemessen. Eine einstellbare kommt ab Werk oft mit irgendeiner Spannung, manchmal nahe an der des Akkus, und die würde den ESP32 zerstören.
- Die Maximalspannung des Servos mit den 8,4 V des vollen Akkus vergleichen. Es hängt direkt am Akku, und viele „35-kg“-Servos sind nur bis 6,8 V ausgelegt und gehen darüber kaputt. Ist es für weniger als 8,4 V spezifiziert, braucht es einen eigenen Regler (ein BEC oder einen zweiten Wandler), der seinen Blockierstrom liefern kann, also den Strom, den es zieht, wenn es blockiert wird und dagegen ankämpft.
- Prüfen, ob zwischen USB-5-V und dem 5V-Pin des SuperMini eine Diode sitzt. Ohne Diode arbeiten der Wandler und der USB-Port deines Computers gegeneinander, wenn du USB ansteckst, während der Akku das Board versorgt. Solange das nicht geprüft ist: nie USB bei eingeschaltetem Akku (zum Flashen Schalter aus oder Akku abgesteckt).
- Das
+des KY-040 an 3,3 V anschließen, nie an 5 V. Das Modul hat eigene Pull-up-Widerstände zu seinem+: An 5 V würde es 5 V auf Pins des ESP32 geben, die nur 3,3 V vertragen. - Den GO-Taster vollständig vom alten 12-V-Stromkreis trennen. Er darf nur noch GPIO 4 und Masse berühren: Der kleinste Rest von 12 V auf dieser Leitung zerstört den Pin.
- Den 470-µF-Kondensator so nah wie möglich am Servo setzen. Beim Anlaufen zieht das Servo schlagartig viel Strom: Der Kondensator verhindert, dass die Spannung so weit einbricht, dass der ESP32 neu startet.
- Den 100-nF-Kondensator zwischen GPIO 0 und Masse setzen. Er glättet die Akkumessung, die durch die 100-kΩ-Widerstände empfindlich für Störungen vom Servo ist.
- Alle Massen miteinander verbinden. Ohne gemeinsame Masse haben die Signale von Servo, Taster und Sensoren keinen Bezug, und das Board liest Unsinn.
- Zuerst die
sim-Firmware flashen und das serielle Log lesen, Servo abgesteckt. Diese Firmware simuliert die BBs: Du prüfst, dass das Board startet und dass Display, Drehgeber, Taster und Akkumessung reagieren, bevor du die Mechanik riskierst.
Wie man flasht und das serielle Log liest, steht im
README der Firmware
(pio run -e sim -t upload, dann pio device monitor).
Messwerte
Abschnitt betitelt „Messwerte“| Messung | Wert | Entscheidung oder Anmerkung |
|---|---|---|
| Ausgang des Wandlers, ohne Last | zu messen | |
| Servo: Modell | zu notieren | |
| Servo: Maximalspannung (Datenblatt) | zu notieren | Direkt am Akku, oder BEC / zweiter Wandler? |
| Diode zwischen USB-5-V und dem 5V-Pin des SuperMini | ja / nein | Die USB-Warnung im README entsprechend anpassen. |
| Akku: Spannung am Multimeter | zu messen | |
Akku: vom Board gelesene Spannung (? seriell) |
zu messen | BATT_CALIBRATION = Multimeter ÷ Wert des Boards. |
Siehe auch
Abschnitt betitelt „Siehe auch“- BLE-Protokoll: was das Board mit der App austauscht.
firmware/src/config.h: die Referenz für Pins und Standardeinstellungen.