In den letzten Tagen habe ich mir mal das OpenBikeSensor-PCB vorgenommen, und es stark vereinfacht. Insbesondere habe ich Bauteile entfernt, die wir in der „Standard-Variante“ (anhand der Bauanleitung) eh nicht bestücken, und die einer alternativen Bauweise oder der ursprünglichen Entwicklung dienten. Da das höchstens ein oder zwei Personen jemals gemacht haben, und tausende dieses PCB nutzen, fand ich es okay, diese langsam mal zu entfernen.
Im Gegenzug haben wir jetzt einen wesentlich übersichtlicheren Schaltplan und ein einfacheres PCB, sodass Änderungen daran wieder viel leichter sind.
Ich einen Haufen solcher Änderungen bereits vorgenommen, hauptsächlich mit der Motivation den Bau leichter zu machen:
- Neuer Footprint für den ESP32, um einseitige Buchsenleisten verwenden zu können, und den üblichen Fehler der Falschausrichtung der wechselseitigen Buchsen zu vermeiden.
- GPS nach unten verschoben, damit kürzere Antennekabel besser passen.
- ESP32 leicht nach unten verschoben, um Platz zu machen für Displaystecker
- Displaystecker nach oben verschoben, das ist näher an den Auslässen für das Kabel (in Top Rider und Back Rider Variante)
- Alle Widerstände können als SMD oder THT bestückt werden, an der gleichen Stelle (kombinierter Footprint).
- Entfernt: Brücke/Jumper, GPS-Transistor, alternative SD-Karten-Halterungen, zwei Addonstecker (neue Addonmöglichkeiten hinzugefügt)
- GPS sitzt jetzt auf dem PCB, statt in einer Aussparung am Rand. Das ist zwar dann 6mm höher, aber wir haben im neuen Gehäuse 7mm Platz So ist es einfacher zu löten und einfacher vorzubereiten, wie beim SD-Modul kann erst die Stiftleiste ins Modul eingelötet und dann das Modul verbaut werden → bessere Parallelisierung beim Massenbau.
- Das PCB ist wieder rechteckig und somit leichter korrekt herzustellen, die Außenkante hat keinen Minimalradius mehr für die Fräse (die perfekten inneren Ecken haben bei einigen PCB-Herstellern, z. B. Aisler, Warnungen erzeugt, weil das nicht fräsbar war).
- Spannungsregler wird nur noch in SMD-Bauweise verlötet. Dieses Bauteil war schwer zu löten und die Stifte haben viele Leute verwirrt, jetzt muss es aufgelötet werden ohne Stifte. Der Vorteil ist, dass die Pads jetzt kleiner sind und bessere (=dünnere) Verbindungen zur Kupferfüllfläche haben, also hoffentlich wesentlich leichter und fehlerfreier zu löten sind. Außerdem konnte ich so den Spannungsregler auf der Unterseite etwas verschieben, um mehr Platz für die Stecker zu haben.
- Größere Pads bei einigen Footprints, damit viel leichter zu löten, insbesondere für Anfänger:innen
- Wesentlich verbesserter Silkscreen (das ist die weiße Bedruckung der Platine mit Bezeichnern):
- Diodenpolung intuitiv angezeigt
- Battierepolung besser sichtbar
- Schalterstecker-Ausrichtung aufgezeichnet
- Weiße Flächen für Beschriftung mit Permanentmarker vorgesehen
- Widerstände alle beieinander, sortiert R1 bis R5, mit Werten dazu
- Kondensatoren mit Werten
- Verständliche Beschriftungen an den Bauteilen: „GPS“, „SD“, „Diode“, „Fuse“, „Battery“, „Sensor 1“, „Sensor 2“, „Display“, „On/Off“, …
- alte Logos (HLRS/DasBoes) entfernt, nur noch OpenBikeSensor Logo (evtl können wir auch das OSHW Logo mal drauf tun – sofern wir prüfen dass wir mit der Definition kompatibel sind)
- Automatisierung des Exportprozesses mit KiBot – dieser erstellt für uns automatisch die Gerber-Dateien und auch weitere Exports (wie die interaktive BOM und der PDF-Schaltplan), ohne dass jemand von Hand wissen muss, welche Schritte dafür nötig sind.
kibot
installieren und ausführen reicht.
Ich habe mir Mühe gegeben, dass diese Änderungen das PCB nicht unkompatibel machen mit dem bisherigen Gehäuse und dem Anwendungsfall der meisten Nutzer:innen (99%). Ob das geklappt hat, weiß ich erst, wenn meine Testplatinen hier auftauchen und ich mal einen zusammengebaut habe. Bis dahin ist das ganze also eine „Alpha-Version“. Ich habe die gestern bestellt, hoffentlich sind die dann Anfang bis Mitte Dezember da.
Ich habe mich übrigens auch dazu durchgerungen, die verwirrende Versionierung mal zu beenden und das Ding einfach 1.0.0-alpha.2
zu nennen, wenn es finalisiert ist kann die neue Version dann 1.0.0
heißen und von da an machen wir einfach SemVer wie es sich gehört. Es gab in der Vergangenheit auch hier häufiger Verwirrungen, wo die Versionen plötzlich als „Version 3“ statt „00.03.xx“ benannt wurden und so weiter. Wenn es dann funktioniert (und davon ist auszugehen, der Schaltplan hat sich ja nicht wirklich inhaltlich geändert), ist das glaube ich gut das einfach mal als richtige, „fertige“ Version (ohne Null am Anfang) zu bezeichnen.
Die Bauanleitung passe ich dann natürlich auch noch an, wenn es soweit ist, die Bauteilbezeichner sind neu, und einige Schritte sind eben stark vereinfacht worden.
Hier noch ein paar Bilder:
Feedback ist immer willkommen. Ihr könnt meinen aktuellen Arbeitsstand auch auf Github verfolgen.