1 - Bedienungsanleitung

Dieser Abschnitt hilft dir bei der Benutzung deines OpenBikeSensors (OBS). Betrachte es wie ein Handbuch, das einem Gerät beiliegt, nur dass wir es nicht ausdrucken müssen. Egal ob du deinen Sensor selbst zusammengebaut oder einen vorgefertigten Sensor von jemand anderem bekommen hast, diese Anleitung beschreibt, wie du wichtige Daten mit deinem neuen Gerät sammeln kannst.

Falls du noch keinen OBS besitzt, schau in den Abschnitt “Hardware”. Dort findest du Anleitungen zum Selberbau.

1.1 - Schnellstart-Anleitung

Diese Anleitung geht davon aus, dass du einen funktionierenden OpenBikeSensor hast. Wenn nicht, starte hier.

Sobald du einen OpenBikeSensor hast, solltest du ein paar Dinge damit tun:

  1. Befestige die Halterung für den OpenBikeSensor und die Lenkerhalterung für das Display. Dies funktioniert je nach Modell unterschiedlich. Siehe auch Montageanleitung.
  2. Miss den Abstand vom Rand der Lenkstange zur Mitte des Fahrrads, auf beiden Seiten. Zieh jeweils die Hälfte der Breite des OpenBikeSensors ab, und gib dies in den Einstellungen entsprechend als Abstands-Offset an. Wie du in den Konfigurationsmodus kommst, siehst du in der Minimal-Konfiguration.
  3. Richte deine Privatsphäre-Zonen ein. Mit einer Karten-App auf einem Smartphone lässt sich dein aktueller Standort bestimmen, den du dann eintippen kannst.
  4. Prüfe, ob deine SD-Karte funktioniert und am besten auch leer ist.
  5. Lade den Akku des Gerätes mit einem USB-C Kabel und einem normalen USB-Ladegerät auf. Die LED am Lademodul leuchtet rot während des Ladens und wird blau, wenn der Akku voll ist.
  6. Schalte das Gerät ein. Warte bis GPS-Koordinaten vorhanden sind. Dies kann eine Weile dauern. Am schnellsten geht es, wenn das Geräte in Ruhe im Freien liegt und nicht bewegt wird.
  7. Montiere den Sensor am Fahrrad und fahre los. Bitte achte auf den Verkehr um dich herum und lass dich nicht durch das Gerät ablenken.
  8. Wenn dich ein Fahrzeug überholt (egal ob LKW, PKW, Bus, …) drück kurz auf den Knopf. Es ist wichtig, dass auch Überholvorgänge mit ausreichend Seitenabstand so markiert werden, um keine verzerrte Statistik zu erzeugen. Versuche also, wirklich alle Überholvorgänge zu markieren.
  9. Nach deiner Fahrt schalte das Gerät aus. Dafür halte den Knopf am Display gedrückt, während du den Strom abstellst. Nur so wird sichergestellt, dass keine Daten verloren gehen.
  10. Du kannst deine Daten ins Portal hochladen, indem du einen Account erstellst, den API-Key von den Profileinstellungen in die Konfiguration des OpenBikeSensors kopierst, und im Konfigurationsmodus auf “Upload tracks” drückst, oder den Knopf am Display gedrückt hältst. Für letzteres muss das Gerät in einem WLAN mit Internetzugang sein.

1.2 - Montage des Sensors am Fahrrad

Überblick

Diese Montageanleitung beschreibt die Möglichkeiten, wie ein OpenBikeSensor am Fahrrad befestigt werden kann. Zur Auswahl stehen einige verschiedene Modelle, um an möglichst vielen Fahrrädern eine einfache und sichere Montage zu ermöglichen.

  • Sattelstützen-Halterung (Seat post mount), für die Montage unter dem Sattel, an der Sattelstütze.
  • Oberrohr-Halterung (Top tube mount) sitzt auf dem Oberrohr des Rahmens.
  • Gepäckträger-Halterung (Bike rack mount) ist am Gepäckträger befestigt.

Für die Befestigung des Displays am Lenker wird die Displayhalterung verwendet, die universell ist.

Die meisten Halterungen werden mit Kabelbindern befestigt. Sie bleiben dauerhaft am Rad, das Gerät lässt sich davon jedoch abnehmen, um nicht im Regen zu stehen oder gestohlen zu werden.

Kompatibilität

  • Bei der Sattelstützenhalterung zeigt die Schiene zum Aufschieben des Hauptgehäuses nach hinten. Hierfür passt ein OpenBikeSensor Hauptgehäuse der Variante “Back Rider” (das ist das Standardmodell) am besten, mit dem “Top Rider” an dieser Halterung stünde das Gehäuse senkrecht und so wäre das Logo verdreht.
  • Die Halterungen für Oberrohr und Gepäckträger haben die Schiene oben, hierfür ist ein “Top rider” Hauptgehäuse nötig, oder ein Adapter der einen “Back rider” zu einem “Top rider” macht. Alternativ fährt der OpenBikeSensor senkrecht, was für die Messergebnisse keinen Unterschied macht, aber nicht so ästhetisch ist und zu einem um 90° gedrehten Logo führt.
  • Die Varianten “Back rider” und “Top Rider” werden in der Gehäusedokumentation erläutert.
  • Alle Halterungen haben die gleiche Schiene, die mit dem StandardMountAdapter kompatibel ist. Dieser wird an der passenden Stelle am Hauptgehäuse fest angeschraubt.
  • Für das Displaygehäuse gibt es nur eine Halterung.

Halterungen für das Hauptgehäuse

Sattelstützen-Halterung

Diese Halterung wird mittels zweier Kabelbindern (max 8mm breit) an der Sattelstütze befestigt. Zur Verdrehsicherung kann ein Stück Isolierband oder Fahrradschlauch zwischen Sattelstütze und Halterung befestigt werden.

Sattelstützenhalterung mit Kabelbindern an der Sattelstütze

Gepäckträger-Halterung

Die Gepäckträger-Halterung besteht aus mehreren Teilen:

  • 2 Seitenteile
  • 1 Mittelteil, das es in längs- und Quervariante gibt
  • 2 Stück Rundholz oder Aluminium-Rohr mit Durchmesser 10 mm, je nach Größe des Gepäckträgers ca. 12-16 cm lang.

Die Rundstäbe verbinden die drei 3D-gedruckten Teile und lassen sich auf die benötigte Breite des Gepäckträgers anpassen. Seiten- und Mittelteile können mithilfe von Einschmelzmuttern und M3x8 Schrauben auf die Stäbe geklemmt oder für dauerhafte Montage mit den Stäben verklebt werden.

Die Seitenteile werden mit Kabelbindern befestigt. Es gibt viele Möglichkeiten, diese Konstruktion am Fahrrad anzubringen:

Option 1, unterhalb der Gepäckauflagefläche, hängendOption 2, vorn auf dem Gepäckträger, vor dem BügelOption 3, unterhalb der Gepäckauflagefläche, auf den zweiten Längsrohren aufliegendOption 4, unterhalb des Rücklichts

Die gewählte Option hängt stark vom Gepäckträger, dem Fahrrad, und der gewünschten Nutzung ab. Nicht jede Montageart erlaubt die volle Nutzung des Gepäckträgers und schränkt z. B. die Nutzbarkeit der Gepäckauflagefläche oder die Anbringung von Satteltaschen ein. Ob die Nutzbarkeit eingeschränkt wird hängt je nach Montageoption außerdem davon ab, ob ein Sensor angebracht ist oder nicht. Insgesamt ist die Wahl der Montageart also sehr individuell.

Ein alternatives Mittelteil ermöglicht auch eine Montage in Längsrichtung (nicht gezeigt), bei der die “Seitenteile” auf zwei parallelen, quer zur Fahrtrichtung verlaufenden Stangen aufliegen.

Oberrohr-Halterung

Die Oberrohrhalterung ist eine modifizierte Sattelstützenhalterung, die einen breiteren Radius zum Rohr hat und nicht angewinkelt ist. Bei horizontaler Montage zeigt die Schiene nach oben, also ist ein Top Rider Hauptgehäuse nötig.

Die Oberrohrhalterung sollte nur verwendet werden, wenn durch die Haltung des/der Fahrer:in keine Beeinträchtigung der Messergebnisse vorliegt, z. B. indem Arme oder Beine in den Bereich der Sensoren gelangen.

Displayhalterung

Das Display wird am Lenker in der Nähe des linken oder rechten Handgriffes befestigt. Die ehemals verfügbaren Halterungen zum Anschrauben haben sich nicht bewährt, weil sie häufig gebrochen sind. Stattdessen wird nur noch eine Displayhalterung angeboten, diese wird mit zwei Kabelbindern oder alternativ mit einer Schlauchschelle befestigt. Auch hier hilft ein Stück Klebeband oder alter Fahrradschlauch gegen Verdrehen oder Verrutschen.

Eine Halterung sollte reichen! Die mittlere, weiße Halterung zeigt das aktuelle Modell mit Kabelbinder.

Optimal ist es, wenn der Druckknopf in direkter Reichweite des Daumens liegt, um beim Drücken die Hand nicht vom Lenker nehmen zu müssen (Verkehrssicherheit).

Befestigung des Geräts

Zunächst muss der Sicherungsstift vorbereitet werden. Dafür wird in das 3D-gedruckte Bauteil ein Schraube (M3x16 bis M3x20) eingeschraubt. Diese sollte fest darin sitzen, wenn sie nicht gut greift hilft ein wenig Sekundenkleber.

Dann wird das Gerät seitlich auf die Halterungsschiene geschoben und mit den Sicherungsstift gesichert. Der Stift wird dafür um 180° im Loch gedreht.

Gerät von der Seite einschieben

Sicherungsstift einstecken und drehen

Es gibt Geräte mit sehr unterschiedlichen Kabellängen. Für große Tiefeinsteiger werden bis zu 1,8m Kabel benötigt. Das Kabel muss auf jeden Fall so verlegt werden, dass es während der Fahrt die Sicherheit nicht beeinträchtigt. Es kann durch Umwickeln, wiederverwendbare Kabelbinder, Klebeband oder geeignete Kabelclips gesichert werden.

Kabel um Rahmen gewickelt

Das Display wird von links auf die Halterung geschoben und hält sich selbst mit den darin enthaltenen Magneten fest.

Display auf die Halterung schieben

1.3 - Konfiguration

1.3.1 - Minimal-Konfiguration

Zum direkten Nutzen eines neuen (oder sobald implementiert zurückgesetzen) OpenBikeSensors sind mindestens 3 Einstellungen vorzunehmen.

  • Offset links und rechts als größte Breite des Rades mit Fahrer (Lenkerbreite, Ellbogen, etc.)
  • API-Key
  • WLAN-Einstellungen zum Hochladen der Daten

Konfigurationsmodus einschalten

Zum Aktivieren des Konfigurationsmodus bei gedrückter Taste das Gerät eingeschalten.

Es gibt zwei unterschiedliche Betriebsmodi.

Access Point Modus

Ohne konfiguriertes WLAN in Reichweite öffnet der OpenBikeSensor einen eigenen WLAN-Access-Point.

  • SSID ist die MAC-Adresse des Gerätes OpenBikeSensor-xxxxxxxxxxxx.
  • das Standardpasswort lautet 12345678
  • die Konfigurationsseite kann über http://172.20.0.1 im Webbrowser aufgerufen werden

WiFi Modus

Wenn ein konfiguriertes WLAN in Reichweite ist, verbindet sich der OpenBikeSensor mit diesem und zeigt auf dem Display die IP-Adresse, über die im Browser eines Gerätes im gleichen WLAN die Konfigurationsseite erreicht wird.

Nur in einem WLAN mit Internet funktioniert der Upload der Daten, der auch direkt vom OpenBikeSensor ausgelöst werden kann durch Drücken und Festhalten des Knopfes

Login in das Konfiguraitionsmenü OBS

Seit der Version 0.6.x wird eine HTTPS Verbindung angeboten und der Zugang zum Webinterface durch eine PIN gesichert.

  • Um das Konfigurationsmenü zu öffnen auf go to https klicken.

    • (Seit Version 0.6.x) Bei der Verwendung von HTTPS ist eine Zertifikatswarnung zu erwarten, die abgenickt werden kann oder die man durch Import des Zertifikats in den Browser zum Schweigen gebracht bringen kann. Das Zertifikat wird im Dialog zum Download angeboten.
    • (Seit Version 0.7.x) Statt go to https kann die Warnung durch enable unencrypted access umgangen werden. Dies sollte nur in sicheren Drahtlosnetzen verwendet werden (Beispiel: eigenes Heimnetz).
  • Nach Auswahl des Konfigurationsmodus wird im Browser ein Nutzername und ein Passwort verlangt.

    • Benutzer:: obs (Anmerkung: der Benutzername wird nicht überprüft und die einzige Bedingung ist, dass die Zeichenfolge nicht leer gelassen wird)
    • Passwort: wird im Display des OBS angezeigt.

Wichtige Einstellungen im Konfigurationsmenü

General

Hauptmenü des OBS

Die Offsets zur größten Breite werden ab Sensor gemessen. Bei einem symmetrischen Rad mit 75cm Lenkerbreite ergibt sich ein Offset von (75-5)/2=35.

General menu: Einstellen der Offsets

Der API-Key aus dem Settings-Menü des eigenen Accounts im Portal openbikesensor.hlrs.de muss hier eingegeben werden. Wichtig: Speichern nicht vergessen.

General menu: Eingabe des API-Keys

Wifi

Hauptmenü

Im Wifi-Menü die Verbindungsdaten eines WLANs mit Internet eingeben und speichern.

SSID und Passwort einstellen

Damit ist die Minimal-Konfiguration mit der Tracks aufgezeichnet und hochgeladen werden können, abgeschlossen.

1.3.2 - Erweitert

Eine sinnvolle Konfiguration ist voreingestellt und sollte nur bei Bedarf verändert werden.

EinstellungWert
Breite des Lenkers70 cm
Anzeigemoduslinker und rechter Abstand, Batteriestatus, Überholvorgänge
Privatzonenicht gespeichert
URL zum OBS-Portalhttps://openbikesensor.hlrs.de
WLAN LoginNetzwerkname, Netzwerkschlüssel

Anpassung der Konfiguration

Die Konfiguration kann bei bestehender WLAN-Verbindung im Webbrowser vorgenommen werden. Dazu muss am Gerät der Konfigurationsmodus aktiviert werden.

Konfigurationsmodus einschalten

Zum Aktivieren des Konfigurationsmodus bei gedrückter grüner Taste das Gerät eingeschalten.

Es gibt zwei unterschiedliche Betriebsmodi.

  • Access Point Modus

    Beim ersten Start des Konfigurationsmodus oder wenn Sie sich außerhalb der Reichweite ihres WLANs befinden, öffnet der OpenBikeSensor einen eigenen WLAN-Access-Point:

    • Der WLAN-Name beinhaltet die MAC-Adresse des Gerätes OpenBikeSensor-xxxxxxxxxxxx.
    • Das Standardpasswort lautet 12345678.
    • Die Konfigurationsseite kann über http://172.20.0.1 aufgerufen werden.
  • WiFi Modus

    Um auf diese Seite zugreifen zu können, müssen Sie möglicherweise den mobilen Datenzugang auf ihrem Mobiltelefon deaktivieren. Der OBS kann sich auch mit einem vorhandenen WLAN verbinden, wenn die Zugangsdaten in einer früheren Konfiguration eingegeben wurden (siehe WLAN-Einstellungen). Bei Verbindung mit einem bestehenden WLAN wird die IP-Adresse der Konfigurationsseite auf dem Display des Geräts angezeigt.

Struktur des Konfigurationsmenüs

General

  • Sensor

    Bestimmt die Differenz zwischen dem Ende des Lenkers und der Außenkante des OpenBikeSensors. Diese Werte werden automatisch von der aktuellen Messung subtrahiert. Zusätzlich können Sie linke und rechte Messung „vertauschen“, falls Sie das Gerät an ihrem Fahrrad umdrehen.

  • GPS

    Sie können festlegen, auf welche Weise ihr Gerät einen gültigen GPS-Fix bestätigt und die Messungen beginnt. Typischerweise wird es den regulären Betrieb aufnehmen, sobald es Kontakt zu 4 GPS-Satelliten hat.

  • Generic Display

    • drehen des Displays, falls Sie es gedreht montieren müssen
    • invertieren der hellen / dunklen Bereiche des Displays, was bei hellem Sonnenlicht helfen kann
  • Measurement Display

    Hier gibt es mehrere Optionen, welche Werte Sie auf ihrem Display angezeigt bekommen möchten.

    • „simple Mode“ – nur die Anzeige der Abstandsmessung nach links
    • Anzeige von linker / rechter Abstandsmessung
    • show satellite – Anzeige der Anzahl der vom Gerät erkannten GPS-Satelliten (mehr Satelliten – genauere Positionsbestimmung)
    • show velocity – Anzeige der aktuellen Geschwindigkeit (recht ungenau aufgrund der langsamen Messintervalle)
    • show confirmation stats – zählt Tastendruck und bestätigte Erkennung von Überholvorgängen
    • show nerd details for distance sensors – Anzeige der Sensor-Rohdaten und Anzahl der Messereignisse innerhalb einer Sekunde (hilfreich bei der Fehlersuche)
  • Privacy Options

    Um ihre Privatsphäre zu wahren, können Sie dem Gerät mitteilen, dass es die Aufzeichnung in der Nähe ihrer Wohnung oder einer anderen Privatsphäre-Zone beenden soll. Dies kann sein, generell keine Aufzeichnung oder nur GPS-Tracking, aber immer noch Speicherung aller bestätigten Überholvorgänge.

    Legen Sie ihren Heimatort und den Durchmesser der Privatzone im entsprechenden Menü fest.

  • Upload User Data

    Einrichtung eines Upload-Servers zum Sammeln von aufgezeichneten Streckendaten.

    • Voreinstellung für das HLRS-Projekt: openbikesensor.hlrs.de
    • um Streckendaten hochzuladen, benötigen Sie ein Benutzerkonto auf der Website openbikesensor.hlrs.de (oder einem anderen kompatiblen Online-Dienst)
    • API-Schlüssel: tragen Sie den individuellen API-Schlüssel aus ihrem Benutzerkonto bei openbikesensor.hlrs.de in das Feld unterhalb des Upload-Sensors ein
  • Operation

    • Enable Bluetooth – aktivieren, wenn Sie den OpenBikeSensor mit einer kompatiblen Smartphone App, wie z.B. SimRa, verbinden wollen
    • SimRa Mode – aktivieren, wenn die den OpenBikeSensor mit der SimRa App verbinden

Privacy Zones

Sie können beliebig viele Privatzonen mit jeweils eigenem Radius festlegen. In den Privatsphäre-Optionen legen Sie fest, wie sich ihr OpenBikeSensor innerhalb einer Privatsphäre-Zone verhalten soll.

WiFi Settings

Der OpenBikeSensor kann sich mit einem verfügbaren WLAN verbinden, wenn Sie dessen Zugangsdaten angeben. Dies ist praktisch, wenn Sie bei der Konfiguration des Sensors mit ihrem lokalen WLAN verbunden bleiben möchten. Die IP-Adresse für die Verbindung wird Ihnen auf dem Display angezeigt.

Um die Streckenaufzeichnung direkt vom OpenBikeSensor hochzuladen, ist eine WLAN-Verbindung mit Internetzugang erforderlich.

Backup & Restore

Hier können Sie die Konfiguration ihres OpenBikeSensors auf einem PC oder mobilen Gerät sichern. Zum Wiederherstellen aus einer gespeicherten Konfiguration wählen Sie im Menü-Dialog die entsprechende Datei aus. Verwenden Sie diese Option vor einem Firmware-Update, um sicherzustellen, dass Sie ihre Einstellungen wiederherstellen können, sollten sie dabei verloren gehen.

Update Firmware

Nachdem Sie die neueste Version heruntergeladen haben (oder eine andere Version, falls Sie ein spezielles Setup benötigen), klicken Sie in den Optionen auf „Aktualisieren“. Wählen Sie die heruntergeladene Datei aus und klicken Sie auf „Update“. Der OpenBikeSensor wird nach einem erfolgreichen Update automatisch neu gestartet.

Sie können direkt eine vorkompilierte Binärdatei hochladen; die neueste Version finden Sie immer hier.

Reboot

Mit dieser Option startet das Gerät wieder in den regulären Messmodus und verlässt die Einstellungen.

1.4 - Aufzeichnung einer Messfahrt

Vorbereitung

Grundsätzlich muss vor Beginn einer Messfahrt der Ladezustand des Akkus geprüft werden. Dazu das Gerät einschalten und die Spannungsanzeige im Display oben rechts ablesen. Sie muss größer als 3,6 V sein. Bei Bedarf vor der Messfahrt mittels USB-C Ladekabel nachladen.

Das Gerät im Freien platzieren, einschalten und auf den korrekten GPS-Empfang warten. Dies kann eine Weile dauern, auch mal bis zu 10 Minuten. Wir arbeiten daran, dass dies in Zukunft eventuell schneller klappt.

Bei empfangenen GPS Signal erscheint die reguläre Distanzanzeige für den linken Überholabstand. Die korrekte Funktion kann gegen eine Wand überprüft werden:

  • Linken Sensor ins Freie ohne Hindernisse richten. Die Anzeige sollte --- cm zeigen.
  • Linken Sensor gegen eine Wand gerichtet (max. 2,50 m Abstand). Die Anzeige sollte den Abstand, minus der halben Lenkerbreite (also bei Standardeinstellung minus 35cm) anzeigen.

Gerät am Fahrrad befestigen, wie unter „Montage“ beschrieben, und Messfahrt beginnen. Die gefahrene Strecke (Track) wird aufgezeichnet.

Datenschutz für Privatzonen

Um in den veröffentlichten Aufzeichnungen den eigenen Wohnort unkenntlich zu halten, wird empfohlen, die Messfahrt entfernt vom Wohnort zu starten und zu beenden.

Überholvorgänge markieren

Prinzipiell werden kontinuierlich die Abstände links und rechts gemessen und auf einer SD-Karte gespeichert. Darin sind alle Hindernisse innerhalb des maximalen Messbereiches (285 cm) enthalten, auch Häuser, Masten, Radfahrer, Fußgänger usw., die nicht dem Messzweck dienen. Nähert sich ein KFZ von hinten, muss der Knopf am Display gedrückt werden, um den Überholvorgang zu erfassen. Bitte achte dabei auf deine eigene Sicherheit: Es ist nicht notwendig, während des Überholvorgangs selbst auf den Button zu drücken. Es ist ausreichend, dies innerhalb von ca. 5 Sekunden nach der ersten Erfassung des Seitenabstands zu tun.

Das Display bestätigt den Überholvorgang:

  • durch kurzes Invertieren der Anzeige
  • durch Hochzählen der Anzeige „press“
  • durch Hochzählen der Anzeige „conf“, falls dabei ein Objekt auf der linken Seite erkannt wurde

Beenden der Messfahrt

Bei gedrücktem Knopf das Gerät ausschalten. Nur so werden alle Messungen zuverlässig gespeichert.

Die Aufzeichnung erfolgt in einer CSV-Datei mit einem Dateinamen, der von Datum, Uhrzeit und der Geräte-ID abhängt, also zum Beispiel 2021-01-20T13.32.52-4495.obsdata.csv.

1.5 - Privatsphäre-Zonen

Diese Seite gibt es noch nicht auf Deutsch, aber vielleicht sprichst Du ja...

Privatsphäre-Zonen sind ein wichtiges Konzept im OpenBikeSensor-Ökosystem. Sie werden im OpenBikeSensor selbst, als auch im Datenportal verwendet, um Deinen Standort in bestimmten Bereichen zu verbergen.

Dies ist eine Funktion zum Schutz der Privatsphäre. Da hochgeladene Daten im Datenportal (Open Data Repository) veröffentlicht werden können, ist es für den Benutzer möglich Privatsphäre-Zonen konfigurieren, um die eigene Privatsphäre zu verbergen. Im schlimmsten Fall könnte ein böswilliger Akteur anhand der Daten herausfinden, wo Du wohnst, arbeitest oder Dich häufig aufhälst. Hinweis

So funktionieren Privatsphäre-Zonen

Eine Privatsphäre-Zone kann entweder im Sensorgerät selbst konfiguriert werden - wodurch sich die Aufzeichnungsaktivität ändert - oder später im Datenportal, wo die Privatsphäre-Zone dann zum Filtern von Daten vor der Veröffentlichung verwendet wird. Je nachdem, wie man den Sensor verwendet und wie groß die Bedenken sind, kann man eine oder auch beide Optionen wählen.

Eine Privatsphäre-Zone ist ein kreisförmiger Bereich, der durch einen Mittelpunkt und einen Radius definiert ist. Damit können Daten maskiert werden. Du kannst mehrere dieser Zonen an relevanten Orten einrichten, damit böswillige Akteure nicht erkennen können, wo Deine Spuren beginnen und enden:

Das Zuhause
Der Arbeitsplatz, Schule, Uni
Wohnungen von Freunden
Jeder Ort, an dem Du Dich mit dem Fahrrad regelmäßig aufhältst

Aufzeichnungsalternativen

Es gibt 4 Alternativen für den OpenBikeSensor um persöhnliche Daten zu schützen:

1. Privatsphäre-Zonen im OBS einrichten
2. Privatsphäre-Zonen im Datenportal einrichten
3. die Track daten auf eigenem PC privatisieren bevor sie ins Portal hochgeldaen werden
4. Keine Daten hochladen

Welchen Modus kannst Du auswählen

  1. Wenn Du Privatsphäre-Zonen Einstellungen im OBS vornimmst und aktivierst, werden in diesen Bereichen keine Daten aufgezeichnet, sind also für niemanden zugänglich. Auch nicht für Dich, wenn Du z.B. die SD-Karte aus dem Sensor nimmst und die Dateien auf einen Computer überträgst.

  2. Wenn Du Deine eigenen Daten haben möchtest, diese aber nicht veröffentlicht werden sollen, kannst Du die Privatsphäre-Zonen stattdessen im Datenportal einrichten. Das bedeutet zwar, dass man darauf vertrauen muß, dass die Software des Datenportals ihre Aufgabe ordnungsgemäß erfüllt (und niemand kann garantieren, dass dies der Fall ist, aber wir versprechen, dass wir unser Bestes geben), aber Du kannst dann die unmaskierten Daten selbst vom Portal herunterladen.

  3. Eine dritte Möglichkeit besteht darin, die Daten nicht direkt vom OBS in das Datenportal hochzuladen, sondern die Track-Dateien erst einmal auf Deinen Computer zu verschieben. Dann kannst Du mit einem eigenen Skript die Daten privatisieren, bevor sie von Deinem Computer aus in das Datenportal hochladen werden.

  4. Die sicherste Option ist natürlich, die Daten überhaupt nicht hochzuladen. Aber wozu bauen wir dann einen OpenBikeSensor und ein Auswerte Software?

Ein weiterer Unterschied zwischen der Konfiguration der Privatsphäre-Zonen im OpenBikeSensor und im Datenportal ist, dass der OpenBikeSensor die Datenschutzeinstellungen nicht rückwirkend anwendet. Wenn Du also einen Ort vergessen oder nicht den richtigen Aufzeichnungsmodus gewählt hast, bevor Du losgefahren bist, sind die Daten bereits im Track gespeichert.

Das Datenportal hingegen wendet die Privatsphäre-Zonen bei jeder Änderung auf alle vergangenen (und zukünftigen) Tracks an.

Allerdings ist zu bedenken, dass, sobald die Daten im Open-Data-Repository veröffentlicht sind, jeder bereits eine Kopie heruntergeladen haben könnte, und man diese nicht mehr zurücknehmen kann. Also die Einstellungen immer überprüfen, bevor man sie veröffentlicht!

Privacy in the OBS ecosystem

Warum Privatsphäre-Zonen verschoben werden können

Wenn Du mehrere Tracks mit anonymisierten Daten veröffentlichst, könnte jeder die private Sphäre aus den veröffentlichten Daten rekonstruieren. Die Tracks, die von und zu einem privaten Ort innerhalb der Privatsphäre führen, werden zwar an der Grenze der Zone abgeschnitten, aber wenn Du mit dem Fahrrad in verschiedene Richtungen fährst, weg von Deinem privaten Punkt, ist es möglich, den Kreis, der zum Abschneiden der Spuren definiert wurde, mathematisch zu finden.

Daher ist es nicht ratsam, den Mittelpunkt der Privatsphäre genau auf die Stelle zu legen, von der Du nicht willst, dass andere sie kennen. Im OpenBikeSensor hast Du die Möglichkeit, Deine Privatsphäre manuell in eine beliebige Richtung zu verschieben. Du solltest dies nur einmal für jede Zone tun. Man kann auch ein beliebiges externes Kartentool verwenden und manuell Zentralkoordinaten für eine Privatsphäre finden, die sinnvoll erscheint, aber nicht genau der privater Standort ist.

Im Datenportal kannst Du den Kreis manuell so auf der Karte platzieren, dass er Deine privaten Standorte enthält. Oder Du gibst den tatsächlichen privaten Standort an und lässt die App einen zufälligen Offset wählen. Auf beiden Wegen kannst Du die verschobene Zone vor dem Speichern visuell überprüfen.

Übrigens: Aus demselben Grund wie oben solltest Du den Versatz Deiner Privatsphäre-Zonen nicht zu oft ändern. Andernfalls ist es möglich, viele Kreise aus den Daten zu rekonstruieren, die alle den privaten Standort enthalten. Dies würde den Zweck der Verschiebung der Privatsphäre zunichte machen, da es die Größe des Bereichs, der wahrscheinlich den privaten Standort enthält, verringert. Das wäre kontraproduktiv, es verringert die Sicherheit, anstatt sie zu erhöhen!

1.6 - Tracks hochladen

Voraussetzungen

Damit Tracks hochgeladen werden können, müssen mindestens die Einstellungen der Minimal-Konfiguration gemacht werden (Wifi+API-Key).

Mit WLAN verbinden

Zum Verbinden mit dem WLAN den OpenBikeSensor bei gedrücktem Knopf einschalten. Ist ein bekanntes WLAN verfügbar, so zeigt der OpenBikeSensor den Namen des WLANs und bei erfolgreicher Verbindung die IP-Adresse (z.B. 192.168.178.5) an.

Kommt keine Verbindung zustande, macht der OpenBikeSensor nach 10s einen eigenen AccessPoint auf. Ein Hochladen der Tracks ist im AccessPoint-Modus nicht möglich, da der OBS dann keine Verbindung zum Internet hat.

Upload durch Knopfdruck starten

Wenn der OpenBikeSensor mit einem WLAN verbunden ist, kann der Upload gestartet werden, indem der Knopf gedrückt und gehalten wird, bis der Upload startet. Alternativ kann der Upload auch aus dem Konfigurationsmenü gestartet werden.

1.7 - OpenBikeSensor mit der SimRa-App betreiben

Es ist möglich, den OpenBikeSensor per Bluetooth mit der SimRa App zu verbinden. SimRa steht für “Sicherheit im Radverkehr” und ist eine App, die beim Radfahren aktiviert ist und über die Sensoren des Smartphones herauszufinden versucht, wann es gefährliche Situationen gab, die man anschließend beschreiben und bewerten kann. Durch die Kopplung mit dem OpenBikeSensor bekommt die SimRa App zusätzlich die Überholabstände.

SimRa App installieren

OpenBikeSensor konfigurieren

In der Konfigurationsoberfläche des OpenBikeSensor aktiviert man im Untermenü “General” ganz unten Bluetooth im Bereich “Operation”:

Bluetooth-Einstellungen im OpenBikeSensor

SimRa Mode: Normalerweise wählt sich der OpenBikeSensor in ein WLAN ein bzw. stellt einen WLAN-Hotspot zur Verfügung, wenn er ohne angeschlossenes Display eingeschaltet wird. Aktiviert man den “SimRa Mode”, dann passiert das nicht.

Wenn “SimRa Mode” aktiviert wird, dann startet der OpenBikeSensor nicht im Server Modus, wenn das Display nicht angeschlossen ist.

Nach dem Speichern kann man das Gerät neustarten.

SimRa App einrichten

Bluetooth muss natürlich auf dem Smartphone aktiviert sein.

Android

  1. App starten.

  2. In die Einstellungen gehen und unten OpenBikeSensor aktivieren:

  3. OpenBikeSensor Einstellungen öffnen. Verfügbare Geräte werden gesucht.

  4. Auf den Eintrag mit “OpenBikeSensor xxx” drücken und anschließend auf “Verbinden” drücken.

  5. Der jeweils gemessene Wert sollte jetzt angezeigt werden.

  6. Jetzt muss man noch einstellen, wie breit der Lenker des Fahrrad (von der Mitte) ist.

  7. Optional kann aktiviert werden, dass ein Foto mit dem Smartphone gemacht werden soll, wenn der Überholabstand unterschritten wird. Dazu muss das Smartphone natürlich entsprechend am Fahrrad befestigt und ausgerichtet sein.

In der SimRa App wird nun links unten ein blaues Bluetooth Symbol angezeigt, wenn Bluetooth aktiviert ist und ein grünes Symbol, wenn der OpenBikeSensor verbunden werden konnte.

2 - Hardware

Dieser Bereich der Dokumentation beschreibt die möglichen Konfigurationen, anhand dener ein OpenBikeSensor Abstandsmessgerät gebaut werden kannst. Wir haben hier Bestelllisten für die Komponenten, und Anleitungen wie diese zusammenzufügen sind.

Am Anfang solltest du dir klar werden, welche Variante du bauen möchtest. Hiervon hängt ab, welche Teile du benötigst. Die “Standard-Variante” ist immer in der Anleitung zur aktuellsten Version beschrieben.

Die Bauteileliste enthält viele elektronische Komponenten, aber auch mechanische Bauteile und natürlich ein Gehäuse, sowie Kleinkram, z.B. Kabel und Befestigungen.

Das Gehäuse wird im 3D-Druck-Verfahren hergestellt. Anweisungen und Anleitungen gibt es im entsprechenden Abschnitt. Außerdem musst du eine Platine erwerben, was in der Regeln durch Bestellung bei einem Hersteller anhand der Designdateien passiert.

Hinweis: Diese Website ist noch (und auf absehbare Zeit) in Arbeit, einige Teile könnten unvollständig sein oder komplett fehlen. Auch Fehler sind nie auszuschließen. Wenn du Schwierigkeiten hast, frag auf jeden Fall nach Hilfe. Erwarte nicht, dass alles auf Anhieb klappt, aber es gibt genug Leute die dir gern weiterhelfen, und ihr Wissen teilen. Aber du brauchst auch keine Angst zu haben, loszulegen – selbst wenn nicht immer offensichtlich ist, wie alles funktioniert, so ist es trotzdem auch für Anfänger:innen möglich, erfolgreich einen Sensor anhand dieser Anleitungen zu bauen.

Bausätze

Weil ein Gerät aus so vielen Einzelteilen aus verschiedenen Quellen besteht, sind Sammelbestellungen eine gute Möglichkeit die Komplexität aufzuteilen und für jede:n Einzelne:n zu verringern. Dabei sparen wir alle Geld, denn in Menge bestellt sind viele Teile günstiger. Wenn du dich mit einer Lokalgruppe oder überregional vernetzen möchtest, um so einn Sammelbestellung durchzuführen oder daran teilzunehmen, komm in unsere Community!

OpenBikeSensor 00.03.10 Bausatz

2.1 - Allgemeines

2.1.1 - Modellauswahl

Wenn du einen OpenBikeSensor Abstandsmesser bauen möchtest, musst du zunächst ein Modell, eine Version und eine Gehäusevariante auswählen.

Aufgrund der Vielfalt in dem Projekt und der unterschiedlichen Anforderungen der Beteiligten gibt es auch eine Vielzahl Varianten für jedes Teil. Der Einfachheit halber pflegen wir jedoch hier auf der Website, in den Anleitungen und Bestelllisten, eine “Standard-Variante”. Diese ist zur Zeit:

  • PCB Version 00.03.12
  • Hauptgehäuse (ehem. “Vertical Case”)
  • Displaygehäuse (ehem. “SlideOnDisplay”)
  • eine Halterung nach jeweiligen Anforderungen

Weitere mögliche Kombinationen werden wir irgendwann hier beschreiben, und die jeweiligen Bestandteile auch verlinken. Jetzt wollen wir uns zunächst darauf konzentrieren, diese “Standard-Variante” ausführlich zu dokumentieren.

2.1.2 - Hinweise für Sammelbestellungen

Diese Seite soll einige Informationen bereitstellen, die wir bei früheren Sammelbestellungen gesammelt haben.

Überprüfe alles noch einmal

Bitte beachte, dass sich das Projekt noch in der Entwicklung befindet, d.h. Änderungen in Hardware oder Design sind zu jeder Zeit möglich. Bevor du Teile bestellst, speziell bei größeren Mengen, überprüfe bitte dass das zugrundeliegende Design und die Teileliste zusammenpassen. Und nicht das Eine neuer ist als das Andere.

Ultraschallsensor-Boards

Die sensibelsten Teile des OBS sind die beiden Ultraschallsensoren. Es gibt verschiedene Modelle auf dem Markt, aber viele werden unter der gleichen Bezeichnung verkauft, JSN-SR04T.

AJ-SR04M

  • Eigenschaften:
    • Betriebsmodus wird über Widerstand R19 gesteuert
    • 8 MHz Schwingquarz
    • Betriebsspannung: 3V bis 5,5V
  • Datenblatt

AJ-SR04M: generelles Aussehen

AJ-SR04M: das Modell von der Sammelbestellung im February 2021

JSN-SR04T

  • Eigenschaften:
    • vermutlich kein Widerstand um den Betriebsmodus zu ändern
    • quer liegender IC an der Anschlussseite
    • 11.0592 MHz Schwingquarz
    • Betriebsspannung: 5V
  • Das Datenblatt, das oft auf Chinesischen Seiten erwähnt wird ist JSN-SR04T一体化超声波测距说明书.pdf (Englische Übersetzung).

JSN-SR04T: Vorderseite (1)

JSN-SR04T: Vorderseite (2)

JSN-SR04T: Rückseite (1)

JSN-SR04T: Rückseite (2)

JSN-SR04T-2.0

  • Eigenschaften:
    • Betriebsmodus wird über Widerstand R27 gesteuert
    • 8 MHz Schwingquarz
    • Betriebsspannung: 3,3V bis 5,5V
  • Datenblatt

JSN-SR04T-2.0

JSN-SR04T-V3.0

  • Eigenschaften:
    • der Widerstand “mode” und die Überbrückungen “M1” und “M2” steuern den Betriebsmodus
    • 8 MHz Schwingquarz
    • Betriebsspannung: 3,3V bis 5,5V
  • Dokumentation

JSN-SR04T-v3.0

SR04M-2

Nach ersten Tests scheint, dass dieses Modell nicht im OpenBikeSensor Abstandsmesser funktioniert.

  • Eigenschaften:
    • unbekannt

SR04M-2

2.1.3 - Platine

Ein sehr wichtiger Bestandteil des Gerätes ist die Platine, auch „PCB” (englisch printed circuit board) genannt. Der schwierige Teil hieran ist das „printed” – ein PCB ist ein professionell hergestelltes Bauteil das schwierig selbst zu erstellen ist. Hier sind deine Optionen:

  • Das PCB anhand der Designdateien von einem Platinenhersteller anfertigen lassen. Je nachdem wo, in welcher Qualität und wie viele Platinen du bestellst wird dies erstaunlich wenig bis sehr viel kosten.
  • Finde heraus, ob jemensch anders schon Platinen anhand der gleichen Dateien hat herstellen lassen. Eventuell hat er:sie noch Exemplare übrig, frag am besten in der Community nach.
  • Bastel dir selbst eine Platine, ganz im DIY-Stil. Da unseren Platinen jedoch Durchkontaktierungen und beidseitige Leiterbahnen benötigen, ist das besonders schwierig. Je nach Ausrüstung und Erfahrung ist es aber machbar. Besonders viel günstiger als bestellen ist es allerdings vermutlich nicht.
  • Benutze keine Platine. Du kannst einen kompatiblen Sensor ganz ohne Platine zusammenbauen, indem du die Komponenten mit Kabeln aneinander lötests. Allerdings haben wir hierfür keine Anleitung und das Gehäuse wird auch nicht passen. Orientiere dich am Schaltplan, den Rest musst du selbst herausfinden.

PCB Layout-Parameter

Wenn du dich für einen Hersteller entscheidest, solltest du sicherstellen, dass folgende Layoutparameter unterstützt sind. In der Regel listet jeder Hersteller auf der Website diese Informationen auf, und die Minimal- und Maximalgrößen dürfen nicht unter- bzw. überschritten werden, sonst könnte die Herstellung fehlschlagen.

Wir verwenden in unseren Designs:

  • TODO: Via size, minimum trace width, milling path restrictions

Gerber-Dateien

TODO: Wo sind die Dateien zu finden?

2.1.4 - Gehäuse

OpenBikeSensor Gehäusebausatz (alte Version)

Es gibt viele Möglichkeiten, ein Gehäuse für deinen OpenBikeSensor zu bekommen. Unter Umständen findest du in der Community hilfreiche Bastler:innen, die dir ein Gehäuse herstellen – hierzu fragst du am besten im Forum nach.

Eine andere Möglichkeit ist, einen lokalen Maker- oder Hackspace zu finden, in dem 3D-Drucker und Know-How zur Verfügung stehen. Hierfür haben wir eine Anleitung mit allen Details für den Druck von OpenBikeSensor-Gehäuseteilen geschrieben.

Natürlich kannst du die Elektronik auch in eine alte Plastikdose stecken und Löcher hineinbohren für Sensoren und Kabel. Das mag wesentlich einfacher sein und zum Ziel führen, ist aber im Betrieb eher unpraktisch. Du musst dir eine Möglichkeit ausdenken, das ganze an dein Rad anzubringen und evtl. auch wieder abnehmbar zu machen, um das Gerät zu laden oder zu warten. Es ist also natürlich möglich, aber am Ende schöner und praktiabler ist der 3D-Druck – es lohnt sich!

Falls das Selbstdrucken dir zu aufwendig erscheint, oder du einfach keinen Zugang zu einem 3D-Drucker in deiner Nähe hast, sind vielleicht auch 3D-Druck-Dienstleister eine Option für dich. Diese drucken Teile nach deinen Dateien Anweisungen als Auftragsarbeit. Preisgünstige Anbieter nehmen für ein komplettes OpenBikeSensor-Gehäuse ca. 20-30 €. Wenn du dich mit anderen zu Erfahrungen hiermit austauschen möchtest, ist das Forum der richtige Ort!

2.1.4.1 - Gehäusedruck

In dieser Anleitung geht es darum, ein komplettes Gehäuse mit Halterungen selbst zu drucken und herzustellen. Der Druck eines kompletten OpenBikeSensor-Gehäusesatzes, oder auch nur von Teilen davon, ist problemlos möglich, vorausgesetzt du hast einen 3D-Drucker zur Verfügung.

Der 3D-Druck kostet ca. 5 € Material (Filamentkosten können variieren), Verschleiß, Stromkosten und vor allem Zeit, ca. 10-20h Druckzeit muss man schon einplanen.

Drucker und Slicer

Der Ultimaker 3 hat ein Displaygehäuse mit Zugentlastung fertig gedruckt.

Für den Beispieldruck in dieser Anleitung verwenden wir einen Ultimaker 3. Dieser hat zwei Extruder, sodass mit zwei Filamenten gleichzeitig gedruckt werden kann. Das vereinfacht den Druck des Sensorgehäuses und des Deckels, da für die Logos eine zusätzliche Farbe verwendet werden kann. Bei einem Drucker mit nur einem Extruder muss während des Drucks das Filament gewechselt werden. Hierfür gibt es verschiedene Strategien, die je nach Drucker, Firmware und Slicer variieren. Alternativ können alle Teile auch einfach ohne Logo mit nur einem Filament gedruckt werden.

Wichtig ist die Slicer-Software, die den Druck für den jeweiligen Drucker aufbereitet. Für den Ultimaker (und viele andere Drucker) kann Cura von der offiziellen Website heruntergeladen und kostenlos verwendet werden (für Linux, Windows und macOS). Eine starke Alternative ist der Prusa Slicer. Die Wahl des Slicers hängt von persönlicher Präferenz und den unterstützten Druckern ab, sowie in Spezialfällen den unterstützten Features. Beide Slicer eignen sich für den Druck von OpenBikeSensor-Gehäuseteilen.

Material und Farben

Das empfohlene Material für den Druck der Gehäuseteile ist PETG, das Material mit den meisten Vorteile für unser Projekt:

  • hohe Schlagfestigkeit und dennoch flexibel – wichtig für den Einsatz am Fahrrad
  • hydrophob, wasserabweisend, witterungsbeständig – wichtig für Außeneinsatz
  • geruchsneutrales Drucken – erleichtert das Drucken auch zu Hause
  • niedrige Viskosität (Zähigkeit)
  • verfügbar in vielen verschiedenen Farben, sogar transparent

Nachteilig ist allerdings die UV Beständigkeit, die nicht so hoch ist wie bei ABS oder ASA. Doch die Vorteile überwiegen diese Einschränkung.

Beispiel eines gedruckten Gehäuses mit Logos

Druckvorbereitung

Alle Dateien für das OpenBikeSensor Projekt wie Software, Firmware, Dokumentation und auch die 3D-Druckdateien liegen auf GitHub. Das Repository für die Gehäusedaten ist:

Die Gehäuselemente werden unterschieden in die Bestandteile

  • Hauptgehäuse (MainCase)
  • Displaygehäuse (DisplayCase)
  • Halterungen (Mounting)

Ein ZIP-Archiv mit allen aktuellen Dateien, sowohl dem Quelltext als auch den exportierten STL-Dateien für den 3D-Druck können von GitHub direkt heruntergeladen werden:

Im Archiv befindet sich ein Ordner export/ mit den obigen Kategorien, und darin sind jeweils die STL-Dateien für den Slicer zu finden.

Allgemeines Vorgehen

Der Import einer STL-Datei in eine Slicer Software (wie z.B. Cura) ist der erste Schritt um ein 3D Objekt zu drucken. Im Slicer wird das 3D-Objekt so auf die Druckplatte gelegt, sodass es möglichst wenig Überhänge gibt:

1. So sollte es aussehen, kann aber in dieser Lage so nicht gedruckt werden2. Drucken mit dem Gesicht nach unten

Die STL-Dateien werden in der Regel so generiert, dass sie nach dem importieren bereits in der empfohlenen Lage auf dem Druckbett liegen. Auf Support kannst du dann in der Regel verzichten, denn bei der Modellierung wird bereits die supportfreie Druckbarkeit beachtet. Du kannst dich natürlich auch anders entscheiden und die Objekte drehen, sollte dein Drucker oder Slicer sonst keine guten Ergebnisse liefern.

Als nächstes werden der richtige Drucker, das Filament und die Druckeinstellungen (Infull, Support, Geschwindigkeit, Schichtdicke, …) gewählt. Hier gilt, dass du dich am besten an den Vorgaben der Hersteller (von Drucker und Filament) orientierst, aber auch immer ein bisschen experimentierst und die für dich und deinen Anwendungsfall richtigen Einstellungen findest. Informationsmaterial, Anleitungen und Tutorials gibt es massenweise im Netz.

1. Cura view auf main case im Vorbereitungsmode2. Einstellung auf PETG und 2 Extruder3. Settings für Druckdichte (Infill), Support, Düsendurchmesser4. starte Slicing

Beim eigentlichen “Slicen” erstellt Cura nun eine GCODE-Datei, die alle Befehle für den speziellen Drucker und das Material enthält (z.B. Bewegungen, Temperaturen, etc.).

1. Nachdem alle Einstellungen erfolgt sind, wird das Slicing gestartet 2. Slicing information gibt es im Preview, mit den beiden Schiebern unten und rechts kann man jede einzelne Bahn des Extruders verfolgen

Die GCODE-Datei wird nun auf den 3D-Drucker übertragen. Je nach Druckermodell geschieht dies über WLAN, mithilfe einer SD-Karte oder eines USB-Sticks, oder der Drucker ist direkt (per USB) am PC angeschlossen. Das genaue Verfahren ist im Handbuch des Druckers vermutlich beschrieben.

Im Menü des Druckers wird die erstellte GCODE-Datei für den Druck ausgewählt und der Druck gestartet. Ab hier übernimmt der Roboter die Arbeit für uns, und wenn wir alles richtig eingestellt haben, ist in einigen Minuten bis Stunden ein neues Gehäuseteil fertig.

Hauptgehäuse

Das Hauptgehäuse enthält den Großteil der Elektronik (PCB, Sensorboards, SD-Karte, GPS, Hauptschalter, Ladeelektronik) sowie die zwei Abstandssensoren, die GPS-Antenne und die Batterie.

Sowohl das Hauptteil als auch der Deckel können mit einem Logo gedruckt werden. Dies ist ein wenig mehr Aufwand, lohnt sich aber optisch sehr, und es hilft erfahrungsgemäß auch dabei, auf der Straße auf das Gerät angesprochen zu werden und dem Projekt mehr Aufmerksamkeit zu generieren. Details zum Druck des Logos findest du hier: Logo-Druck (mehrfarbig).

Die Teile zum Drucken:

Die ersten zwei Teile gibt es jeweils auch mit OpenBikeSensor-Logo. Für jedes Bauteil sind hierfür vier Dateien verfügbar. Das Logo kann invertiert oder normal gedruckt werden, und für den Zweifarben-Druck sind pro Bauteil zwei Dateien nötig (main und highlight), die die in der jeweiligen Farbe zu druckenden Bestandteile repräsentieren. Hier sind demnach alle acht Dateien für das OBS-Logo.

Das Bauteil StandardMountAdapter gehört zwar eigentlich zu den Halterungen, wird aber fest am Hauptgehäuse angebracht und bildet eine Hälfte des Befestigungsmechanismus. Es gehört also auch irgendwie zum Hauptgehäuse.

Die Bauteile des Hauptgehäuses auf dem Druckbett

Fahrradhalterung

Zwei Halterungen, das SeatPostMount und eine alte Variante des TopTubeMount.

Es gibt verschiedene Möglichkeiten, den OBS Sensor am Fahrrad zu montieren. Wie die Halterungen angebracht werden und aussehen, ist in der Montageanleitung zu sehen.

  1. Standard: Sattelhalterung, an der Sattelstange hinter dem/der Fahrer:in montiert.
  2. Oberrohr-Halterung: Wenn die Sattelhalterungen nicht verwendbar sind, kann die Montage weiter vorne an der Querstange erfolgen.
  3. Gepäckträgerhalterung: Dreiteilig, wird mit etwas Rundstab oder Alu-Rundprofil verbunden. Kann auf, unter oder hinter dem Gepäckträger montiert werden.

Außerdem nötig ist ein Sicherungsstift (LockingPin). Das Display wird mit der dazugehörigen Schiene (Mounting/HandlebarRail) am Lenker befestigt.

Lage dreier Halterungen und des Sicherungspin auf dem Druckbett (die verlängerte Variante kann parametrisch mit OpenSCAD erstellt werden). Der LockingPin sollte jedoch lieber stehend gedruckt werden.

Displaygehäuse (Anzeige und Knopf)

Im Displaygehäuse sind nur das Display und der Knopf verbaut. Die nötigen Bauteile sind:

In die Vertiefung der zwei Gehäusehälften werden zwei Magnete eingelegt, die das Display während der Fahrt an der Schiene (HandlebarRail, siehe “Fahrradhalterung” oben) halten.

Fertiges Displaygehäuse (alte Version)

Materialverbrauch und Zeitbedarf

Nach dem Slicen wird angezeigt, wie lange der Druckvorgang dauern wird und wie viel Material für den Druck benötigt wird. Abhängig von den Einstellungen kann die Druckdauer sehr unterschiedlich sein. Oft geht mit mehr Druckgeschwindigkeit ein Qualitätsverlust einher, sodass die beiden gegeneinander abgewogen werden müssen.

Üblich für den Druck eines ganzen Gehäuses ist daher je nach Drucker etwa 10 Stunden in Summe. Die Kosten des Filaments belaufen sich auf ca. 3 €, wer Verschleiß und Stromkosten einrechnet kommt auf etwa 5 € Gesamtkosten.

Troubleshooting

Lage der Druckteile und Überhänge

Beim Druck der Gehäuseteile ist die Lage des Teiles wichtig, denn Überhänge sollten vermieden werden, sodass der Drucker nicht in der luft drucken muss. Das Design der Modelle ist bereits darauf ausgelegt, möglichst gut druckbar zu sein, die Positionierung auf dem Druckbett ist daher auch besonders wichtig.

Nach dem Laden der STL-Dateien in Cura werden in der Vorschau die Überhänge in rot angezeigt. Am Beispiel des Deckels (Bilder 1 und 2) ist es sehr offensichtlich das die Lage eine wesentliche Rolle spielt, wie herum das Teil auf die Druckerplatte gelegt werden soll.

Aber selbst bei einer optimalen Lage wie im Beispiel des Sensorgehäuses zeigt Cura wo sich trotzdem noch Überhänge bilden. Manche Überhänge wie Schraubenlöcher sind unkritisch da der Drucker das selbst überbrücken kann (bridging). Doch wenn der Übergang zu groß wird können sich viele Fäden ziehen. Um das zu vermeiden kann die Supportfunktion eingeschalten werden, der Drucker erstellt dann leichte Stützstrukturen, die nach dem Druck wieder entfernt werden.

1. Schlechte Positionierung erzeugt Überhänge (rot)2. Richtiges Positionieren ist wichtig3. In der Vorschau werden bereits in rot Überhänge angezeigt4. Support einschalten5. Die zusätzliche Supportstruktur ist nach dem Slicing in der Vorschau sichtbar

Fehlerhafte Drucke

Einige Fehler traten während der Drucke auf:

Support fehlt, Düse vom 2. Extruder verstopft

Brüchige Verbindung, vermutlich Druckdichte (Infill) zu gering

Weitere Anleitungen

  • Detaillierte Anleitung für den Zusammenbau des gesamten OpenBikeSensors beschreibt den Einbau der elektronischen Komponenten in die beiden Gehäuse.
  • Die Montage des Sensors am Fahrrad wird mit verschiedenen Halterungen und für das Displaygehäuse gezeigt.

2.1.4.2 - Gehäusebauteile

Hier möchten wir eine Übersicht über alle verfügbaren Gehäusebauteile geben. Die Links führen jeweils zur Quelldatei (OpenSCAD) und zum STL-Export für den 3D-Druck. Alle Dateien lassen sich auch auf einmal herunterladen, direkt von Github in der neuesten Version als ZIP-Archiv. Darin finden sich im Ordner export alle Dateien für den 3D-Druck:

Eine detaillierte Anleitung zum Gehäusedruck gibt es hier.

Hauptgehäuse

BildBauteilname & BeschreibungLinks
MainCase/MainCase
Das Hauptgehäuse, in dem die Elektronik untergebracht ist.
OpenSCAD, STL
MainCase/MainCaseLid
Der Deckel für das Hauptgehäuse, mit Batteriehalterung.
OpenSCAD, STL
MainCase/UsbCover
Ein kleiner Deckel für die Öffnung des USB-C Ladesteckers im Hauptgehäuse.
OpenSCAD, STL
MainCase/GpsAntennaLid
Ein kleiner Deckel für die GPS-Antenne im Hauptgehäuse.
OpenSCAD, STL

Displaygehäuse

BildBauteilname & BeschreibungLinks
DisplayCase/DisplayCableStrainRelief
Zugsicherung für das Displaykabel im Displaygehäuse (2x drucken).
OpenSCAD, STL
DisplayCase/DisplayCaseBottom
Die untere Hälfte des Displaygehäuses.
OpenSCAD, STL
DisplayCase/DisplayCaseTop
Die obere Hälfte des Displaygehäuses.
OpenSCAD, STL

Halterungen

Die verschiedenen Halterungen und ihre Montage werden in der Montageanleitung beschrieben.

BildBauteilname & BeschreibungLinks
Mounting/AttachmentCover
Eine Abdeckung für ungenutzte Montagepunkte am Hauptgehäuse (z. B. für kombinierte Back Rider und Top Rider Gehäuse).
OpenSCAD, STL
Mounting/BikeRackMountCenter
Das Mittelstück für die Gepäckträgerhalterung in Quermontage.
OpenSCAD, STL
Mounting/BikeRackMountCenterLongitudinal
Das Mittelstück für die Gepäckträgerhalterung in Längsmontage (ungewöhnlich).
OpenSCAD, STL
Mounting/BikeRackMountSide
Ein Seitenstück der Gepäckträgerhalterung (2x drucken).
OpenSCAD, STL
Mounting/HandlebarRail
Die Schiene für die Befestigung des Displays am Lenker.
OpenSCAD, STL
Mounting/LockingPin
Der Befestigungsstift für das Hauptgehäuse.
OpenSCAD, STL
Mounting/SeatPostMount
Die Sattelstützenhalterung.
OpenSCAD, STL
Mounting/StandardMountAdapter
Wird am Hauptgehäuse montiert und ermöglicht das Aufschieben auf die Schienen der Halterungen. Wirkt ebenfalls als Zugsicherung für das Displaykabel am Hauptgehäuse.
OpenSCAD, STL
Mounting/TopTubeMount
Die Halterung für das Oberrohr.
OpenSCAD, STL

2.1.4.3 - Gehäusevarianten

Top Rider / Back Rider

Das Hauptgehäuse kann als “Top Rider” oder “Back Rider” konfiguriert werden, oder beides gleichzeitig. Dies definiert, welche Montagepunkte verfügbar sind.

Ein “Top Rider” Hauptgehäuse hat den Montagepunkt unten (wenn am Rad montiert), wohingegen ein “Back Rider” ihn vorn hat. Alte Modelle des OpenBikeSensors waren somit alle “Back Rider”, denn sie wurden immer an der Sattelstütze montiert, horizontal dahinter hängend.

Da viele Radfahrende ihre Räder so einstellen, dass hier nicht genug Platz für einen OpenBikeSensor bleibt, wurde die Variante “Top Rider” mit entsprechenden Halterungen eingeführt. Top Rider OBS sitzen auf dem Oberrohr, dem Gepäckträger, oder überall wo unter ihnen Platz für eine Halterung ist. Der nach unten zeigende Montagepunkt macht das wesentlich stabiler als eine Halterung, die “um die Ecke” gehen muss, um eine Schiene anzubieten, die nach hinten zeigt.

Die Montagepunkte am Hauptgehäuse.

Ein Gehäuse kann sowohl Top Rider als auch Back Rider gleichzeitig sein. Auf jeden der Montagepunkte passt der StandardMountAdapter (siehe Gehäusebauteile). Ein ungenutzter Montagepunkt sollte mit dem AttachmentCover abgedeckt werden, um die Löcher zu schließen.

Die Parametrierung erfolgt über die OpenSCAD-Variablen

MainCase_back_rider
MainCase_top_rider
MainCase_back_rider_cable
MainCase_top_rider_cable

Ein Adapter (Mounting/BackRiderTopRiderAdapter) ist verfügbar für (ältere) Geräte, die nur Back Rider sind, aber auf einer Top Rider Halterung angebracht werden sollen. Das Gegenteil davon haben wir (noch) nicht entworfen.

OpenSCAD Schnellstart

OpenSCAD ermöglicht die parametrische Erstellung von 3D-Modellen mit Code. Den Code haben wir geschrieben, die Parameter kannst du ändern. Damit gibt es jede Menge Anpassungsmöglichkeiten für jeden Anwendungsfall.

Die STL-Dateien werden anhand der SCAD-Dateien erzeugt, die alle im GitHub-Repository liegen. Am besten benutzt du git, um dir eine Kopie herunterzuladen (clone), und dann kannst du die Parameter ändern:

git clone --recurse-submodules https://github.com/openbikesensor/OpenBikeSensor3dPrintableCase
cd OpenBikeSensor3dPrintableCase

Jetzt kannst du die Datei variables.scad anpassen und deine gewünschten Werte setzen (z. B. MainCase_back_rider, siehe oben).

Die einzelnen Bauteile aus dem Ordner src/ kannst du dann mit dem Programm OpenSCAD (das du direkt von seiner Website herunterladen oder mit deinem Paketmanager installieren kannst) anschauen. Einzelne Bauteile kannst du darin auch rendern (F6) und danach als STL exportieren (F7).

Wenn du alle Teile neu generieren möchtest, kannst du auch in deinem Terminal make eingeben. Dies erzeugt alle geänderten Bauteile neu, möchtest du alle neu erstellen, hilft vorher ein make clean. Diese Bauteile werden dann nach export/... exportiert und überschreiben die dort vorhandenen STL-Dateien. Es dauert jedoch eine Weile die ganzen Geometrien zu berechnen, erwarte etwa 2-20 Minuten, je nachdem wie schnell dein Rechner ist.

2.1.4.4 - Logo-Druck (mehrfarbig)

Ein Hauptgehäuse mit eingedrucktem Logo.

Logo-Dateien

Statt der Bauteile MainCase und MainCaseLid werden entsprechende Bauteile gedruckt, die geometrisch identisch sind, aber das Logo enthalten.

Je nach Logo und Filamentwahl kann es sinnvoll sein, das Logo zu invertieren.

  • Normal: Das Logo hat eine andere Farbe als der Rest des Bauteils.
  • Invertiert: Die Grundfläche, auf der das Logo gedruckt wird, hat eine andere Farbe als der Rest des Bauteils. Das Logo hat die gleiche Farbe wie die Wände und das Innere des Bauteils.

Je nach Drucktechnik sind pro Bauteil eine oder zwei Dateien notwendig, nämlich das Logo an sich, und das Bauteil, aus dem das Logo herausgeschnitten wurde.

  • Main: Der Hauptteil des Bauteils ohne Logo, bzw. bei invertierten Logo der Hauptteil mit Logo, aber ohne Grundfläche.
  • Highlight: Das Logo, das herausgeschnitten wurde, bzw. bei invertierten Logo die Grundfläche ohne Logo.

Bezeichnungen der vier Dateien für den Logo-Druck des Hauptgehäuses (nur das Gehäuse, nicht der Deckel).

Jede dieser vier Dateien gibt es für das Hauptgehäuses und seinen Deckel, insgesamt pro Logo also acht Dateien. Die vorgenerierten STL-Dateien für das OpenBikeSensor-Logo werden ebenfalls auf GitHub veröffentlicht und liegen dort im Verzeichnis export/logo/OpenBikeSensor/.

OpenSCAD Logo Generator

Die Anleitung hierfür folgt demnächst. Möchtest du jetzt schon dein eigenes Logo auf einen OpenBikeSensor drucken? Bestimmt wird dir im Forum geholfen!

Mehrfarbendruck

Zu diesem Thema haben wir noch keine ausführliche Dokumentation, aber es gibt einen Diskussionsfaden im Forum. Vielleicht hilft dir das schon weiter, ansonsten kannst du gern dort deine Fragen und Ideen einbringen:

https://forum.openbikesensor.org/t/mehrfarbiger-gehaeusedruck/111

2.2 - Einen OpenBikeSensor der Version 00.03.12 bauen

2.2.1 - Bauteile für v00.03.12

Diese Seite beschreibt die Bauteile, die bestellt oder anderweitig organisiert werden müssen, um ein Gerät zusammenzubauen. Bitte lies sie sorgfältig durch, und auch den Abschnitt “Notizen”, denn bei einige Teilen musst du aufpassen, das richtige zu erwischen.

Einige Links könnten in der Zukunft kaputt gehen, wir werden dann versuchen neue zu finden und Verkäufer:innen zu verlinken, mit denen wir gute Erfahrungen gemacht haben.

Diese Liste kann natürlich fehlerhaft oder veraltet sein. Bitte vergleiche die Designdateien (Platine, Schaltplan, Gehäusedesign, …) mit deiner Bestellung, um eventuelle Unterschiede festzustellen. Insbesondere wenn du größere Mengen einkaufen möchtest (z.B. für Sammelbestellungen), oder die Bauteile aus China geliefert werden und einige Wochen Lieferzeit haben, solltest du alles doppelt überprüfen.

Notizen

  • ESP32 Development Board: Von diesem Modul existieren einige verschiedene Versionen. Du brauchst die Variante mit 30 Pins. Diese wird oft unter der Bezeichnung “ESP32 DEVKIT v1” verkauft.

  • SD-Karte: Billige SD-Karten haben schon öfters Probleme verursacht, wähle lieber ein Markenprodukt.

  • GPS-Modul: Bevorzuge die Variante mit großer Antenne (Link1, Link2). Die Antennen haben unterschiedliche Qualität und Kabellänge, bei Ersatzbedarf gibt es auch günstige Weiterverkäufer:innen der Antennen in Deutschland.

  • Displaykabel: Hier solltest du auf keinen Fall sparen. Kaufe ein LifY11Y-Kabel in hoher Qualität, oder die Verbindung zum Display könnte darunter leiden und nur unzuverlässig funktionieren. Zwei Meter Länge sind genug für große Fahrräder und ein paar extra Versuche bis das Crimpen klappt. Cat5 oder Cat6 Netzwerkkabel könnten zwar elektronisch auch funktionieren, sind aber in der Regeln nicht so flexibel und fühlen sich nicht so gut an.

  • JSN-SR04T: Hier musst du auf die richtige Version achten. Es gibt eine ganze Menge Varianten, von denen viele nicht funktionieren. Wir haben auf dieser Seite dokumentiert, welche wir gefunden haben und wie gut die jeweils funktionieren.

  • Einige Bauteile können in größeren Mengen zu wesentlich günstigeren Preisen gekauft werden. Bildet Sammelbestellungen um viel Geld zu sparen!

  • Von besonders günstigen Teile kannst du gern etwas mehr bestellen, als Ersatz, falls etwas verloren oder kaputt geht (Widerstände, Schrauben und Muttern, Crimp-Kontakte, Kabel und Litze, …)

  • Gehäuse müssen in PETG 3D-gedruckt werden. Es gibt viele Versionen für verschiedene Zwecke und von verschiedenen Leuten. Die Community pflegt aktiv ein bestimmtes Gehäuse für jede PCB-Version. Schau' dich im Gehäuse-Repository auf Github um. Du kannst dein Gehäuse selbst drucken, andere Mitglieder der Community darum bitten, oder fertige Drucke anhand der Designdateien von einem 3D-Druck-Service bestellen (das ist aber in der Regel relativ teuer).

  • PCB: Du benötigst ein PCB der passenden Version, speziell anhand der Designdateien hergestellt. Dies sollte am besten ebenfalls in großen Mengen bestellt werden, da der Stückpreis dann stark sinkt. Frag' auf jeden Fall im Slack nach, ob irgendwer noch welche auf Lager hat, bevor du neue anfertigen lässt!

Bauteile

MengeBauteilLinks
Module
1ESP32-WROOM Development Board (Hinweis beachten)Link
10.96-Zoll OLED DisplayLink
1USB-C LademodulLink1 Link2
1SD-Karten-ModulLink
1Buck-Boost Modul for LiPo, 3.3VLink
118650 LiIon-Akku (mit Lötfahnen)Link1 Link2
1SD-Karte (Hinweis beachten)Link1 Link2
1GPS-NEO-6M Modul (Hinweis beachten)Link1 Link2 Link3 Link4
2JSN-SR04T Sensormodule (Hinweis beachten)JSN-SR04T-v3.0 AJ-SR04M-Link1 AJ-SR04M-Link2
Kleinteile
112mm DrucktasterLink
1Miniatur-KippschalterLink1 Link2
ca. 2mDisplaykabel (Hinweis beachten)Link
Steckverbinder
15JST-XH Crimp-Kontakte (BXH-001T-P0.6)Link1 Link2
3JST-XH Gehäuse 2-polig (XHP-2)Link
2JST-XH Platinenstecker 2-polig 90°Link
1JST-XH Gehäuse 4-polig (XHP-4)Link
1JST-XH Gehäuse 5-polig (XHP-5)Link
1JST-XH Platinenstecker 2-polig (B2B-XH-A)Link
1JST-XH Platinenstecker 5-polig (B5B-XH-A)Link
1Batteriekabel und Platinenstecker (gerade, 2-polig, mit rot-schwarzen Kabeln, 2.54mm RM)Link1 Link2a/Link2b
1Winkelstiftleiste (mind. 10-polig, 2.54mm RM)Link
1Stiftleiste gerade (mind. 11-polig, 2.54mm RM)Link
2SMD-Buchsenleisten (15-polige, 2.54mm SMD, wechselseitig, BL LP 5 SMD)
(15-polige Variante ist selten; 16-polige kann gekürzt werden)
Link
Elektronische Bauelemente
1Widerstand (THT) 10 kΩ, 250 mW, 5 %Link
1Widerstand (THT) 150 kΩ, 250 mW, 5 %Link
1Widerstand (THT) 300 kΩ, 250 mW, 5 %Link
2Widerstand (THT) 1.1 kΩ, 250 mW, 5 %Link
1Keramikkondensator 100 nF, 10 %Link
2Elektrolytkondensator, radial, 22 µF, 10 V, niedrige ESRLink
1Schottky-Diode, 60 V, 5 A, DO-201ADLink
1Rückstellende Sicherung, max. 40 A - 30 V, 6.6 sec
Typ PFRA, radiale Bauform
Link
Mechanische Bauteile
4Neodym-Magnete, 20x10x2mmLink
4Neodym-Magnete, 3x3x3mmLink
19M3x8mm Zylinderschraube mit Innensechskant (DIN912)
1M3x30mm Zylinderschraube mit Innensechskant (DIN912)
6M3 Mutter (DIN934)
13Gewindeeinsatz / Einpressmutter M3x5.7Link1 Link2
Spezialanfertigungen
1PCB v00.03.12Link
1Hauptgehäuse, Displaygehäuse, Halterung(en)Link

Werkzeuge

Diese Werkzeuge werden benötigt, um den Sensor zusammenzubauen. Das spezialisierteste Werkzeug ist die Crimpzange, welche dein lokaler Hackspace / Maker Space / Fab Lab sicherlich rumliegen hat. Eventuell musst du also nicht jedes dieser Werkzeuge kaufen, wenn du eines ausleihen kannst.

  • Crimpzange für JST-XH Steckverbinder (andere Marken oder Zangentypen, die mit diesen Verbindern kompatibel sind, funktionieren auch, z.B. Engineer PA-09).
  • Ein guter, regelbarer Lötkolben oder eine Lötstation, mit entsprechender Lösung zur Entlüftung
  • Pinzetten, Seitenschneider, Abisolierzange, M3 Sechskantschraubendreher (“Inbussschlüssel”)
  • Persönliche Schutzausrüstung: Schutzbrille, eventuell Handschuhe, …
  • ESD-Schutzausrüstung (nicht zwingend notwendig, aber nutze sie, wenn du sie hast)

Verbrauchsgüter

Die meisten dieser Artikel gibt’s in jedem Elektroniklabor, wenn du also in einem Maker Space oder ähnlichem arbeitest, kannst du sicher kleine Mengen hiervon bekommen ohne die große Packung kaufen zu müssen.

  • Gutes Lötzinn, bleifrei
  • Enlötlitze
  • Isolierklebeband, bevorzugt Kapton-Band
  • Schrumpfschlauch (optional)
  • Etwa 25cm dünne (0.25 mm2 / 23 AWG) Litze

2.2.2 - Bauanleitung für v00.03.12

Dies ist die Anleitung zum Aufbau des vertikalen OpenBikeSensors v00.03.12. Andere Versionen können über das Dokumentationsmenü aufgerufen werden.

Die beschriebene Vorgehensweise ist nur eine Möglichkeit, zu einem funktionierenden Modell zu kommen. Wenn du alternative Wege gehen möchtest, kannst du das natürlich tun. Solltest du einen massentauglichen besseren oder einfacheren Weg für einen der Schritte finden, freuen wir uns über Änderungsvorschläge, oder eine kurze Nachricht.

Ein fertig gebauter OpenBikeSensor der Version v00.03.12

Voraussetzungen

Diese Anleitung setzt voraus, dass die Grundtechniken wie Löten, das Abisolieren von Kabeln und das Crimpen von JST-Verbindern bereits bekannt sind. Für letzteres empfehlen wir das JST-Crimp-Tutorial. Warnhinweise und Tipps zu Werkzeugbenutzung finden sich am Anfang der ausführlichen Bauanleitung für das Modell v00.02. Wenn du unsicher bist, wo du ein Bauteil auf dem Board unterbringen sollst, kannst du die interaktive Stückliste (BOM) verwenden, um dir anzeigen zu lassen, wo ein Bauteil eingesetzt werden kann.

Schritt 1: Buchsenleisten

  • Falls nur Buchsenleisten mit 16 Pins vorhanden sind, müssen diese auf 15 Pins gekürzt werden:
    • Mit dem Seitenschneider kürzen.
    • Mit dem Cuttermesser oder Schleifpapier nacharbeiten, um keine scharfe Kante zu hinterlassen.
  • Buchsenleisten auf ESP32 stecken
    • Auf Ausrichtung achten! Die Pads sind nicht symmetrisch, auf je einer Seite ist nur jeder zweite Pin mit Pad versehen. Vor dem Verlöten mit Footprint vergleichen, ob jeder Pin auch ein Pad bekommt.
  • Buchsenleisten mit gestecktem ESP32 positionieren.
  • Jede Leiste an 2 äußeren Pins festlöten.
  • Danach alle äußeren Verbindungen verlöten.
  • ESP32 abziehen und die inneren Kontakte anlöten.
Bauteile bereitlegenBuchsenleite wenn nötig auf 15 Pins zuschneidenBuchsenleisten auf ESP32 aufsteckenGemeinsam auf dem PCB platzieren. Ausrichtung der abwechselnden Pins (innen) prüfen.Zunächst an einem Eckpunkt fixierenAusrichten und auf der gegenüberliegenden Seite ebenfalls fixierenAlle äußeren Pins festlöten (beidseitig)Alle äußeren Pins festgelötetDann den ESP32 entfernen und die Innenseite verlöten

Schritt 2: Spannungsregler (rot)

  • Für den roten Spannungsregler 1x1 und 1x2 Stifte vorbereiten.
  • Spannungsregler mit Stiften in zwei gegenüber liegenden Lötstellen fixieren
  • Stifte nicht verlöten!
  • Mit Stiften ausgerichtetes Modul an den anderen beiden SMD-Pads verlöten.
  • Stifte abziehen und die restlichen Kontakte in SMD-Bauweise verlöten.
Stiftleisten ablängenBauteile bereitlegenBoard platzieren und mit Stiften ausrichten, anderes Pad wie SMD verlötenFreie Kontakte lötenStifte entfernen und restliche Kontakte löten

Schritt 3: Lademodul (blau)

  • Für das blaue Lademodul 2x2 Stifte und 2x1 Stift vorbereiten.
  • Modul mit Stiften fixieren und darauf achten, dass es flach am PCB anliegt.
  • Von unten 2 Stifte verlöten. Stifte auf der anderen Seite fixieren
  • Umdrehen und restliche Kontakte löten.
  • Die schwarzen Plastikteile entfernen und diese Seite auch verlöten.
  • Alle Stifte mit dem Seitenschneider kürzen.
Bauteile bereitlegenLademodul und Stifte platziertAuf Oberseite verlötenAlle Stifte auf Oberseite verlötetSchwarze Plastikteile von Stiftleiste entfernenSchwarze Plastikteile von Stiftleiste entferntOberseite verlötenStifte kürzen

Schritt 4: Widerstände

  • Widerstände richtig zuordnen (Farbcodes z.B. via kiloohm.info decodieren):
    • R1: 10 kΩ (braun - schwarz - orange - gold)
    • R2: 150 kΩ (braun - grün - gelb - gold)
    • R3: 300 kΩ (orange - schwarz - gelb - gold)
    • R6, R7: 1,1 kΩ (braun - braun - rot - gold) oder 1 kΩ (braun - schwarz - rot - gold)
  • Achtung! R7 wird anders verlötet!
    • Leider enthält die Platine einen Fehler, und R7 kann nicht wie vorgesehen platziert werden, sonst ist der Widerstand dem einen Sensorboard im Weg.
    • Statt auf der Oberseite verlöten wir den Widerstand auf der Unterseite.
    • Die Beinchen werden dabei nicht durch die Löcher gesteckt. Wir behandeln den Widerstand wie ein SMD-Bauteil.
    • Pads identifizieren. Eines der Pads auf der Platinenunterseite mit etwas Lötzinn benetzen. Sehr wenig Zinn verwenden, sonst sickert es durch das Loch durch und bildet auf der Rückseite eine Perle, die dann im Weg ist.
    • Zinn wieder verflüssigen, Widerstand mit einem Bein darin fixieren. Der Widerstand liegt flach auf der Unterseite der Platine auf, mit nicht gebogenen Beinen.
    • Anderes Bein mit Lötzinn auf anderes Pad löten.
    • Beine kürzen.
    • Falls doch Lötzinn zur Oberseite der Platine durchgesickert ist, mit Entlötlitze reduzieren.
  • Falls ein SMD-Widerstand für R6 verwendet werden soll:
    • Einen Lötpunkt auf ein Pad setzen.
    • Widerstand flach auf das PCB legen, Lötpunkt erneut schmelzen und das Bauteil mit der Pinzette darauf schieben.
    • Andere Seite normal festlöten.
    • R7 nicht so verbauen (s.o.)
  • Normale THT-Widerstände (R1, R2, R3, R6) stecken, verlöten, Beine kürzen.
R7: Eines der Pads verzinnenR7: Den Widerstand wie ein SMD-Bauteil einseitig anlötenR7: Die zweite Seite verlötenR7: Fertig montiertEin Widerstand (R6) platziertAuf der Rückseite verlötenBeine kürzen. Widerstände R1-R3 ebenso montieren.

Schritt 5: Kondensatoren

  • Bei C2 und C3: Polung auf Platine und Kondensator beachten! (Langer Pin: „Plus“, mit Streifen markierte Seite: „Minus“)
  • Kondensatoren C1 bis C3 stecken
  • Zum Fixieren umbiegen
  • Verlöten und Draht abkneifen
Die KondensatorenKondensatoren platzieren, auf Polung achten!Auf der Rückseite umbiegen und verlötenDrähte kürzenWiderstände und Kondensatoren fertig platziert

Schritt 6: Lötpunkt / Brücke

  • JP1 mit einem Lötpunkt versehen und damit überbrücken
  • Erstes Bild im nächsten Schritt zeigt das Ergebnis

Schritt 7: Stromversorgung

  • Sicherung
    • Position F1
    • Richtung egal
    • Die kleinen Biegungen in den Beinchen sorgen für den richtigen Abstand
    • Einstecken, senkrecht verlöten, Beine abkneifen
  • Batteriestecker
    • Stecker und Kabel zusammenstecken
    • Beschriftung auf der Platine beachten (Rot: „Plus“, Schwarz: „Minus“)
      (ACHTUNG: wenn ihr ein schwarzes und braunes Kabel habt, dann ist der Stecker auf der Platine um 180 ° gedreht, auf dem Bild ist der Stecker für das schwarze und rote Kabel zu sehen)
    • Auf der Rückseite anlöten
    • Kabel wieder abziehen
  • Diode
    • Polung beachten: Die Diode “steht” auf dem Kreis auf dem PCB, aber der weiße Ring auf der Diode dabei zeigt nach oben.
    • Diode umbiegen und aufstecken
    • Enden vor dem Löten etwas kürzen, um beim Löten weniger Metall aufheizen zu müssen
    • Verlöten: Eigentlich sollen Halbleiter nur kurz gelötet werden, aber dieses ist ein sehr großes Bauteil, und auch erstaunlich robust. Arbeite zügig, aber erwarte dass es eine Weile dauert, bis das Bauteil und die Pads auf Temperatur gebracht sind und das Lötzinn schmilzt.
    • Achtung, die Diode nimmt viel Hitze auf und ist noch lange nach dem Löten sehr heiß.
    • Enden nachkürzen
Die fertig platzierten Bauteile (oben links)

Schritt 8: Verbinder für Taster und Display

  • J5: 5-Pin-Konnektor gemäß Markierung auf Platine aufsetzen (Aussparungen zeigen Richtung Platine).

    • 2 Punkte von unten verlöten
    • Platine umdrehen, restliche Pins verlöten.
  • J6 (Taster-Stecker) hat keine Polung

    • 2-Pin-Connector so aufsetzen, dass er möglichst wenig über den Rand der Platine übersteht und verlöten
5-poligen Stecker richtigherum aufsteckenAuf der Rückseite verlöten, auf guten Sitz achten2-poligen Stecker ebenso montieren

Schritt 9: Sensorboards

  • Falls gewinkelte, 2-polige JST-Steckerverbinder vorhanden sind:
    • Die JST-Stecker aus dem Sensorboard auslöten.
    • Gewinkelte JST-Stecker stattdessen einlöten.
    • Das Kabel, wenn eingesteckt, sollte weg von den 4 Pins des Boards zeigen (nach oben, wenn montiert).
  • Andernfalls:
    • Die JST-Stecker aus dem Sensorboard auslöten.
    • Durch eine 2-polige Winkelstiftleiste ersetzen.
    • Dabei das kurze Ende nur so weit ins Sensorboard einführen, dass die Spitze der Stifte gerade so auf der anderen Seite herausschaut und dann verlöten.
  • Beide Sensorboards stecken, dabei Beschriftung (+3V3, TRIG, ECHO, GND) beachten
  • Boards senkrecht und direkt auf der Grundplatine aufliegend verlöten
  • Überstehende Stifte kürzen
Ein einzelnes SensorboardDas weiße Kunststoffteil entfernenKontakte des alten Steckers auslöten, neuen Stecker einlötenSensorboards platzieren (neue JST-Stecker bereits montiert)Auf der Rückseite verlöten, Beine kürzen

Schritt 10: SD-Modul

  • Gewinkelte Stiftleiste mit 6 Pins vorbereiten.
  • Gewinkelte Stiftleiste genau wie in der Abbildung gezeigt in SD-Modul stecken.
  • Die Ausrichtung ist wichtig: Es gibt 8 Arten die Stiftleiste zu stecken, 7 funktionieren nicht.
  • Stiftleiste mit Modul verlöten und überstehende Pins abkneifen
  • Modul auf OBS-PCB stecken (Ausrichtung und Beschriftung beachten)
  • Verlöten und Stifte kürzen
SD-Karten Modul und StiftleisteStiftleiste in Modul einstecken (Richtung beachten)Stiftleiste in Modul verlötenModul platzierenAuf der Rückseite anlöten und kürzen

Schritt 11: GPS-Modul

  • Gewinkelte Stiftleiste mit 4 Pins vorbereiten

  • Stiftleiste in OBS-PCB verlöten (Unterseite, langes Ende der Pins seitlich herausschauend)

  • Eng anliegend verlöten

  • GPS-Modul aufstecken

  • Verlöten und Stifte kürzen

  • Achtung! Achte darauf, dass das kurze Ende der Stiftleiste in das Board und das lange Ende in das GPS-Modul eingelötet wird. Ansonsten ragt das GPS-Modul aus dem Gehäuse heraus.

4-polige Winkelstiftleiste abkürzen und stecken (Richtung beachten)Auf der Oberseite verlötenGPS-Modul senkrecht aufstecken und verlöten

Damit ist das PCB fertig bestückt!!!

Schritt 12: Ein/Aus-Schalter

  • 2x10cm Kabel crimpen und in 2-fach Stecker einführen
  • Andere Kabelenden seitlich an den Schalter löten.
  • Achtung:
    • Orientierung der Kabelenden und Auswahl der beiden Kontakte am Schalter beachten und eventuell mit Multimeter nachmessen, damit Schalterzustand später mit der Beschriftung am OBS-Gehäuse übereinstimmt (0 unten, I oben).
    • Nur seitlich angelötet passen die Kabel später in das Gehäuse.
    • Zu viel Hitze lässt den Schalter innen schmelzen, was zu Wackelkontakten führen kann.
Schalter mit Kabel und Stecker

Schritt 13: Ultraschallsensor-Kabel kürzen und crimpen

  • Tipp: Zunächst mit überschüssigen Kabelteilen und Crimpkontakten üben!
  • Die langen schwarzen Kabel der Sensoren auf etwa 10cm kürzen, da die langen Kabel nicht in das Gehäuse passen und auch die Plastikeinfassung der bestehenden Stecker zu starr und zu dick für das Gehäuse ist
  • Empfehlung: Schrumpfschlauch (sofern vorhanden, optional) direkt nach dem Kürzen auf das schwarze Sensorkabel aufziehen, noch bevor es abisoliert und gecrimpt wird.
  • Vorsichtig! Koax-Kabel – der innere Leiter ist sehr dünn und kann leicht durchtrennt werden.
  • Crimpkontakt muss für optimale Verbindung Leiter und Isolierung greifen
  • Beim Belegen der Steckkontakte des Steckers auf die Polung achten. Bei einigen Modulen ist ein Beachten der Polung nicht erforderlich, andere funktionieren nicht oder schlechter bei falscher Polung. Beim Einsatz der 90° gewinkelten Lötbuchsen wird die Polung der Buchsen verdreht. Der Schirm der Leitung liegt auf Minus.
Sensor mit gekürztem Kabel und SteckerDetailaufnahme Stecker und Schirmung

Schritt 14: Batteriekabel anlöten

  • Die Akkus sind mit Lötfahnen ausgestattet.
  • Auf 12cm gekürztes Batteriekabel an die Enden der Fahnen angelöten
  • Polung beachten: Pluspol an Akku auf der Seite mit Einkerbung im Akku-Gehäuse
  • Polung Im Zweifel nachmessen
  • Die Batterie und Kabel werden mit einem kleinen Kabelbinder im Deckel fixiert
  • Batteriekontakte mit Isolierband o.Ä. isolieren

Batterie noch nicht einstecken.

Akku mit Kabel und Stecker (Polung beachten!)Kontakte isolieren

Schritt 15: Gehäuse vorbereiten

  • Einpressmuttern (“heat-set inserts”) einbauen:
    • Den Lötkolben auf ca. 180-220°C einstellen, gut reinigen (kein Lot an der Spitze). Nach Möglichkeit eigene Spitze für diese Aufgabe verwenden, und danach wieder wechseln.
    • Einpressmutter so weit wie möglich von Hand in das vorgesehene Loch drücken.
    • Lötkolben auflegen, nur sehr leichten Druck ausüben.
    • Mutter so senkrecht wie möglich behutsam versinken lassen.
    • Die Mutter sollte lieber etwas zu tief sitzen, als über den Rand überstehen, um die Gehäuseteile bündig miteinander verbinden zu können.
    • Die Muttern mit denen das PCB befestigt wird nicht zu tief versenken, sonst bildet sich eine Ausbuchtung auf der Außenseite, wo das Logo ist.
  • Einpressmuttern hier platzieren:
    • 3 Muttern in Hauptgehäuse für das PCB (mit Montagelöchern der Platine vergleichen)
    • 2 Muttern in Hauptgehäuse beim GPS-Deckel
    • 5 Muttern in Hauptgehäuse für Hauptdeckel
    • 3 Muttern in Displaygehäuse
  • Kleine Würfelmagnete in USB-Abdeckung einsetzen
    • Wenn Kompatibilität mit anderen OBS gewünscht ist, muss auf gleiche Polung geachtet werden, da sonst die Abdeckungen nicht austauschbar sind.
    • Erst Magnete in Abdeckung einsetzen.
    • Dann einen Magnet auf einen der eingesetzten platzieren und die Abdeckung ins Hauptgehäuse stecken, dabei den einzelnen Magneten ins Hauptgehäuse eindrücken. Mit der anderen Seite wiederholen.
Einpressmuttern in Displaygehäuse einschmelzenHauptgehäuse mit EinpressmutternUSB-Abdeckung mit Magneten

Schritt 16: Display-Kabel

  • Zugentlastung in Displaygehäuse-Unterteil einsetzen:
    • Erste Hälfte der Zugentlastung einsetzen
    • Zweite Hälfte von außen angewinkelt eindrücken, bei Bedarf die unteren Ecken mit dem Seitenschneider leicht abrunden, damit sie sich leichter in die vorgesehene Position stecken lässt.
  • Kabel durch Displaygehäuse-Unterteil und Zugentlastung führen.
  • Button in Gehäuseoberteil einschrauben.
  • Stecker OBS-Seite
    • Richtiges Kabelende identifizieren anhand Durchziehrichtung durch Displaygehäuse-Unterteil.
    • Die Außenisolierung kann gut auf ca. 5cm abisoliert werden.
    • Die einzelnen Litzen nur 1-2mm abisolieren und alle 5 Litzen crimpen. Für stabilen Halt müssen die äußeren Flügel des Crimpkontakts die Isolierung der jeweiligen Litze greifen.
    • Gecrimpte Kabelenden ins 5er-Gehäuse einführen. OBS-PCB und Display sind beschriftet. Zuordnung der Farben zu Beschriftung notieren. Unten gibt es eine Verkabelungstabelle mit Farbvorschlag.
  • Stecker Display-Seite
    • Nur 3 Kabel crimpen: GND, SDA, SCL
    • BUT an eine Seite des Buttons löten. Achtung: Der Taster ist hitzeempfindlich, bei zu langem/heißem Löten schmilzt der Kunststoff.
    • Kleines Kabelstück (ca. 3cm):
      • vorbereiten, einseitig crimpen
      • mit +3V3 zusammen an andere Buttonseite löten
      • Crimpkontakt entspricht jetzt +3V3 bzw. VDD (am Display)
  • Am OLED-Displayboard Plastikteile an Steckkontakten entfernen und Pins um knapp 1/3 kürzen
  • Vom JST-Gehäuse (4-polig) die Arretierung (auf der einen Seite leicht hervorstehende Plastikflügel) entfernen, also eben abschneiden (Cuttermesser oder Seitenschneider)
  • Modifizerten JST-Stecker auf die gekürzten Pins aufstecken (Polung beachten). Gegebenenfalls die Pins weiter kürzen, bis der Stecker ganz auf dem Board aufliegt, damit er ins Displaygehäuse passt.
OBS-SeiteDisplayseiteButtonVorschlag Farbe
SDASDAblau
GNDGNDschwarz
BUT-Pin 1grau
SCLSCK-weiß
+3V3-Pin 2braun
-VDDPin 2(kurzes Stück Kabel)
Das untere Teil des Displaygehäuses mit ZugentlastungKabel durch Unterteil geführtButton in Displayoberteil eingeschraubtOBS-Seite: Alle 5 Adern crimpenOBS-Seite in Stecker einführenZwei Kabel an Button löten (Pin 2)Display-Seite: Button und Stecker fertig

Schritt 17: Display Zusammenbau

  • 0,96-Zoll OLED-Boards haben teils etwas unterschiedliche Größen
    • Platine des Displays nach Bedarf etwas zurechtschneiden, insbesondere an den Ecken (Seitenschneider)
    • Je nach Genauigkeit des 3D-Drucks das Gehäuse etwas weiter ausfräsen
  • Schutzfolie von Display abziehen
  • Display in Gehäuseoberteil (das mit dem Button) einsetzen
  • Magnete in die Seitentasche einsetzen.
    • Wenn Kompatibilität mit anderen OBS gewünscht ist, muss auf gleiche Polung geachtet werden, da sonst die Halterungen nicht austauschbar sind.
  • Gehäuseunterteil aufsetzen und mit Schrauben fixieren.
  • Zugentlastung mit M3x8 Schrauben und Muttern fixieren, dabei auf sechseckige Fixierung für Sechskant-Muttern auf jeweils einer Seite der Zugentlastung achten.
Verschiedene Displays vom gleichen LieferantenWenn nötig, Display mit Seitenschneider stutzenDisplay in Gehäuse einpassen, ohne GewaltMagnete passend einlegenDas Display mit verschraubtem GehäuseZugsicherung fixieren

Schritt 18: Elektronik testen

Zunächst muss die OpenBikeSensor Firmware auf den ESP32 geflashed werden.

Vor dem Einbau ins Gehäuse testen wir die Elektronik in dieser Reihenfolge:

  1. Ausschalten
  2. Batteriekabel polungsrichtig einstecken.
  3. Laden: Normales USB-C Ladegerät (5 V) anschließen
    • Einige Geräte funktionieren nur nach Anschluss an ein Ladegerät
    • Bei vollem Akku leuchtet das Modul blau, sonst rot. USB-C Kabel abstecken.
  4. Einschalten per Kippschalter (ohne dabei den Knopf am Display zu drücken)
    • Boot-Screen sollte auf dem Display erscheinen. Wenn nicht, nochmal aus und, sofern nichts stinkt oder gar raucht, wieder einschalten.
    • Druck auf Taster wechselt von Boot-Screen zu einfacher Distanz-Anzeige (– cm)
  5. Bei angeschlossener GPS-Antenne GPS-Funktion im Freien testen
    • Nach einigen Minuten: GPS-Board blinkt, Boot-Screen wechselt zu Sensor-Anzeige. Werden 0 Satelliten angezeigt, wird trotzdem weitergesucht, was zu Beginn wegen des Downloads des Almanachs sehr lange dauern kann. 15 Minuten sind beim ersten Einschalten nicht ungewöhnlich.
  6. Sensoren-Funktion testen: Sensoren mit Sensor-Boards verbinden
    • Polung beachten. Siehe hierzu auch Schritt 13.
    • Der Abstand wird abzüglich der Breite des Lenkers gemessen. In der Software kann man im Konfigurationsmodus dessen Breite einstellen.
Die Elektronik funktioniert

Schritt 19: Zusammenbau

Vor dem Zusammenbau empfieht es sich, die Firmware auf den ESP32 aufzuspielen, dann braucht dieser später nicht mehr für diesen Schritt ausgebaut werden. Folge dafür der Anleitung für dein Betriebssystem.

  • Kabel und Halterung

    • Displaykabel durch rechteckiges Loch einführen (der 5-polige JST-Stecker passt diagonal hindurch).
    • Etwa 5-10cm des Kabels im Gehäuse lassen.
    • Die 4 Sechskant-Muttern einsetzen, Halterung mit Zugentlastung anbringen und damit das Kabel fixieren. Noch nicht festziehen, nur sicherstellen dass die Muttern nicht mehr herausfallen.
    • Später werden wir das Kabel auf die richtige Länge ziehen und die Schrauben dann fest anziehen.
  • Einen Ultraschallsensor in den Deckel einbauen.

  • PCB in Hauptgehäuse platzieren

    • SD-Karte einlegen.
    • ESP32 aufstecken.
    • Gesamtes Board in leichtem Winkel herabsenken, am Displaykabel vorbei navigieren, und auf Ausrichtung der USB-C Ladebuchse achten.
    • Bei Bedarf Unreinheiten des Gehäuses (vom 3D-Druck) entfernen, wenn das PCB daran hängen bleibt.
    • Mit 3 Stück M3x6 oder M3x8 in Unterseite verschrauben.
  • Displaykabel in Gehäuse einstecken.

    • Das Kabel sollte außen um die Elektronik herumgeführt werden, nicht zwischen dem GPS- und SD-Karten-Modul hindurch. Im neuen Gehäuse sollte dort genug Platz sein.
    • Jetzt zeigt sich auch, warum ca. 5cm Abisolierung hier sinnvoll ist, denn ohne Isolierung ist das Kabel flexibler.
    • Stecker eindrücken (z.B. mit Pinzette)
    • Kabel so weit aus der Zugsicherung herausziehen, bis kein überschüssiges Kabel im Innenraum des Gehäuses ist, aber das Kabel nicht straff liegt.
    • Schrauben der Zugsicherung/Halterung anziehen
  • GPS-Antenne einsetzen

    • Kabel mit kleinem Stecker durch das kleine Loch fädeln.
    • GPS-Antenne mit Schirmung nach unten, Keramik nach oben, in Aussparung einsetzen.
    • Stecker in GPS-Board aufstecken (sehr filigran, aber auch schwer zu stecken, z.B. mit Pinzette zusammendrücken, dabei auf richtigen Sitz achten um den Stecker nicht zu beschädigen).
    • GPS-Deckel auf Antenne aufschieben und mit 2 Stück M3x6 oder M3x8 fixieren.
    • Falls das Antennenkabel nicht reicht, kann die GPS-Antenne mithilfe eines hinreichend langen Antennenkabels mit IPEX/U.FL Stecker verlängert werden. Hierzu:
      • Wird der Metallschild des GPS moduls abgelötet
      • Das neue Kabel wird vorsichtig durch Rollen unter Cuttermesser auf etwa 5-7mm abisoliert
      • Die Schirmung wird zurückgeschoben
      • Noch vorsichtiger wird die innere Isolierung durch ganz sanftes rollen mit dem Cuttermesser abisoliert.
      • Das kurze Kabel wird ab- und das neue, längere angelötet.
      • Der Metallschild des Moduls wird wieder in ursprünglicher Ausrichtung aufgelötet.
  • Schalter in Gehäuse einsetzen

    • Einschaltrichtung mit “I/O” Aufdruck des Gehäuses vergleichen.
    • Wenn möglich mit der mitgelieferten Unterlegscheibe und Mutter fixieren.
    • Andernfalls hält der Deckel den Schalter auch an Ort und Stelle, aber er könnte etwas wackeln.
    • Schalterkabel entlang der Gehäusewand zur Buchse führen. Möglichst beide Adern verdrillen oder falls vorhanden zweiadriges Kabel verwenden.
    • Schalter einstecken.
  • Sensoren einbauen

    • Auf der Rückseite des Sensors gibt es einen Pfeil, der mit “UP” die Richtung markiert, wo später oben sein soll.
    • Einen Sensor ins Hauptgehäuse einbauen, den anderen in den Deckel.
    • Sensoren einstecken. Wenn möglich, den Sensor im Gehäuse an das nächste Sensorboard anschließen, den Sensor vom Deckel in das entferntere.
    • Bei Phantommessungen auf den Sensoren hat es in einigen Fällen geholfen, die Kabel der Sensoren möglichst weit voneinander entfernt zu führen:
      • Deckelsensorkabel läuft an der Oberkante des ESP-seitigen Sensorboards entlang.
      • Gehäusesensorkabel möglichst weit vom Deckelsensor entfernt und von unten zum Steckkontakt des hinteren Sensorboards führen. So sind beide Sensorkabel möglichst weit vom jeweils entegengesetzten Board entfernt.
  • Akku einbauen

    • Akku im Deckel mit Kabelbinder fixieren.
    • Einstecken. Polung beachten!
    • Möglicherweise überstehendes Kabel möglichst auf der Seite des GPS verstauen. Beide Adern verdrillen und parallel legen oder falls vorhanden zweiadriges Kabel verwenden.
Akku und Ultraschallsensor an Deckel montieren ('Up'-Pfeil beachten)Ultraschallsensoren einsteckenLadebuchse (USB-C) ohne Gewalt in die Aussparung einfädelnPCB festschraubenHalterung und Zugentlastung (mit Kabelauslass Richtung Gehäusedeckel) festschraubenAbschirmung vorbereiten (8-10 Lagen Alufolie mit Klebeband isoliert oder eingeschweißt, alternativ der zugeschnittene Boden eines Teelichts, umwickelt mit einem Teil eines Gefrierbeutels)Abschirmung zwischen den Sensorboards platzieren und vor Einbau des Ein/Ausschalters innenliegenden Federring entfernen, um Einbauhöhe nicht zu überschreitenGPS-Deckel festschraubenDeckel festschraubenFertig!

Viel Spaß bei der Nutzung!

2.3 - Einen OpenBikeSensor der Version 00.03.10 bauen

2.3.1 - Bauteile für v00.03.10

Diese Version des PCB ist veraltet. Neue Bestellungen sollten mit der aktuellsten Version durchgeführt werden.

Diese Seite beschreibt die Bauteile, die bestellt oder anderweitig organisiert werden müssen, um ein Gerät zusammenzubauen. Bitte lies sie sorgfältig durch, und auch den Abschnitt “Notizen”, denn bei einige Teilen musst du aufpassen, das richtige zu erwischen.

Einige Links könnten in der Zukunft kaputt gehen, wir werden dann versuchen neue zu finden und Verkäufer:innen zu verlinken, mit denen wir gute Erfahrungen gemacht haben.

Diese Liste kann natürlich fehlerhaft oder veraltet sein. Bitte vergleiche die Designdateien (Platine, Schaltplan, Gehäusedesign, …) mit deiner Bestellung, um eventuelle Unterschiede festzustellen. Insbesondere wenn du größere Mengen einkaufen möchtest (z.B. für Sammelbestellungen), oder die Bauteile aus China geliefert werden und einige Wochen Lieferzeit haben, solltest du alles doppelt überprüfen.

Notizen

  • ESP32 Development Board: Von diesem Modul existieren einige verschiedene Versionen. Du brauchst die Variante mit 30 Pins. Diese wird oft unter der Bezeichnung “ESP32 DEVKIT v1” verkauft.

  • SD-Karte: Billige SD-Karten haben schon öfters Probleme verursacht, wähle lieber ein Markenprodukt.

  • GPS-Modul: Bevorzuge die Variante mit großer Antenne (Link1, Link2). Die Antennen haben unterschiedliche Qualität und Kabellänge, bei Ersatzbedarf gibt es auch günstige Weiterverkäufer:innen der Antennen in Deutschland.

  • Displaykabel: Hier solltest du auf keinen Fall sparen. Kaufe ein LifY11Y-Kabel in hoher Qualität, oder die Verbindung zum Display könnte darunter leiden und nur unzuverlässig funktionieren. Zwei Meter Länge sind genug für große Fahrräder und ein paar extra Versuche bis das Crimpen klappt. Cat5 oder Cat6 Netzwerkkabel könnten zwar elektronisch auch funktionieren, sind aber in der Regeln nicht so flexibel und fühlen sich nicht so gut an.

  • JSN-SR04T: Hier musst du auf die richtige Version achten. Es gibt eine ganze Menge Varianten, von denen viele nicht funktionieren. Wir haben auf dieser Seite dokumentiert, welche wir gefunden haben und wie gut die jeweils funktionieren.

  • Einige Bauteile können in größeren Mengen zu wesentlich günstigeren Preisen gekauft werden. Bildet Sammelbestellungen um viel Geld zu sparen!

  • Von besonders günstigen Teile kannst du gern etwas mehr bestellen, als Ersatz, falls etwas verloren oder kaputt geht (Widerstände, Schrauben und Muttern, Crimp-Kontakte, Kabel und Litze, …)

  • Gehäuse müssen in PETG 3D-gedruckt werden. Es gibt viele Versionen für verschiedene Zwecke und von verschiedenen Leuten. Die Community pflegt aktiv ein bestimmtes Gehäuse für jede PCB-Version. Schau' dich im Gehäuse-Repository auf Github um. Du kannst dein Gehäuse selbst drucken, andere Mitglieder der Community darum bitten, oder fertige Drucke anhand der Designdateien von einem 3D-Druck-Service bestellen (das ist aber in der Regel relativ teuer).

  • PCB: Du benötigst ein PCB der passenden Version, speziell anhand der Designdateien hergestellt. Dies sollte am besten ebenfalls in großen Mengen bestellt werden, da der Stückpreis dann stark sinkt. Frag' auf jeden Fall im Slack nach, ob irgendwer noch welche auf Lager hat, bevor du neue anfertigen lässt!

Bauteile

MengeBauteilLinks
Module
1ESP32-WROOM Development Board (Hinweis beachten)Link
10.96-Zoll OLED DisplayLink
1USB-C LademodulLink
1SD-Karten-ModulLink
1Buck-Boost Modul for LiPo, 3.3VLink
118650 LiIon-Akku (mit Lötfahnen)Link
1SD-Karte (Hinweis beachten)Link
1GPS-NEO-6M Modul (Hinweis beachten)Link
2JSN-SR04T Sensormodule (Hinweis beachten)Link
Kleinteile
112mm DrucktasterLink
1Miniatur-KippschalterLink
ca. 2mDisplaykabel (Hinweis beachten)Link
Steckverbinder
15JST-XH Crimp-Kontakte (BXH-001T-P0.6)Link
3JST-XH Gehäuse 2-polig (XHP-2)Link
1JST-XH Gehäuse 4-polig (XHP-4)Link
1JST-XH Gehäuse 5-polig (XHP-5)Link
1JST-XH Platinenstecker 2-polig (B2B-XH-A)Link
1JST-XH Platinenstecker 5-polig (B5B-XH-A)Link
1Batteriekabel und Platinenstecker (gerade, 2-polig, mit rot-schwarzen Kabeln, 2.54mm RM)Link
1Winkelstiftleiste (mind. 10-polig, 2.54mm RM)Link
1Stiftleiste gerade (mind. 11-polig, 2.54mm RM)Link
2SMD-Buchsenleisten (15-polige, 2.54mm SMD, wechselseitig, BL LP 5 SMD)
(15-polige Variante ist selten; 16-polige kann gekürzt werden)
Link
Elektronische Bauelemente
1Widerstand (THT) 10 kΩ, 250 mW, 5 %Link
1Widerstand (THT) 150 kΩ, 250 mW, 5 %Link
1Widerstand (THT) 300 kΩ, 250 mW, 5 %Link
2Widerstand (SMD 1206) 1.1 kΩ, 250 mW, 1 %Link
1Keramikkondensator 100 nF, 10 %Link
2Elektrolytkondensator, radial, 22 µF, 10 V, niedrige ESRLink
1Schottky-Diode, 60 V, 5 A, DO-201ADLink
1Rückstellende Sicherung, max. 40 A - 30 V, 6.6 sec
Typ PFRA, radiale Bauform
Link
Mechanische Bauteile
4Neodym-Magnete, 20x10x2mmLink
4Neodym-Magnete, 3x3x3mmLink
15M3x8mm Zylinderschraube mit Innensechskant (DIN912)
3M3x16mm Zylinderschraube mit Innensechskant (DIN912)
5M3x30mm Zylinderschraube mit Innensechskant (DIN912)
5M3x45mm Zylinderschraube mit Innensechskant (DIN912)
27M3 Mutter (DIN934)
Spezialanfertigungen
1PCB v00.03.10Link
1Hauptgehäuse "Vertical Case"Link
1Display-Gehäuse "SlideOnDisplay"Link

Werkzeuge

Diese Werkzeuge werden benötigt, um den Sensor zusammenzubauen. Das spezialisierteste Werkzeug ist die Crimpzange, welche dein lokaler Hackspace / Maker Space / Fab Lab sicherlich rumliegen hat. Eventuell musst du also nicht jedes dieser Werkzeuge kaufen, wenn du eines ausleihen kannst.

  • Crimpzange für JST-XH Steckverbinder (andere Marken oder Zangentypen, die mit diesen Verbindern kompatibel sind, funktionieren auch, z.B. Engineer PA-09).
  • Ein guter, regelbarer Lötkolben oder eine Lötstation, mit entsprechender Lösung zur Entlüftung
  • Pinzetten, Seitenschneider, Abisolierzange, M3 Sechskantschraubendreher (“Inbussschlüssel”)
  • Persönliche Schutzausrüstung: Schutzbrille, eventuell Handschuhe, …
  • ESD-Schutzausrüstung (nicht zwingend notwendig, aber nutze sie, wenn du sie hast)

Verbrauchsgüter

Die meisten dieser Artikel gibt’s in jedem Elektroniklabor, wenn du also in einem Maker Space oder ähnlichem arbeitest, kannst du sicher kleine Mengen hiervon bekommen ohne die große Packung kaufen zu müssen.

  • Gutes Lötzinn, bleifrei
  • Enlötlitze
  • Isolierklebeband, bevorzugt Kapton-Band
  • Schrumpfschlauch (optional)
  • Etwa 25cm dünne (0.25 mm2 / 23 AWG) Litze

2.3.2 - Bauanleitung für v00.03.10

Dies ist die Anleitung zum Aufbau des vertikalen OpenBikeSensors v00.03.10. Sie funktioniert ebenfalls für das PCB v00.03.11. Für neuere Versionen solltest du auch neuere Anleitungen verwenden. Bauanleitungen für andere Versionen können über das Dokumentationsmenü aufgerufen werden.

Das fertig bestückte PCB eines OBS v00.03.

Voraussetzungen

Diese Anleitung setzt voraus, dass die Grundtechniken wie Löten, das Abisolieren von Kabeln und das Crimpen von JST-Verbindern bereits bekannt sind. Für letzteres empfehlen wir das JST-Crimp-Tutorial. Warnhinweise und Tipps zu Werkzeugbenutzung finden sich am Anfang der Bauanleitung für das Vorgängermodell v00.02.

Schritt 1: SMD-Widerstände

  • Widerstände R6 und R7 anbringen:
    • Einen Lötpunkt auf ein Pad setzen.
    • Widerstand flach auf das PCB legen, Lötpunkt erneut schmelzen und das Bauteil mit der Pinzette darauf schieben.
    • Andere Seite normal festlöten.
Einen Lötpunkt auf eines der Pads von R7 setzenDer Lötpunkt ist auf ein Pad von R7 gesetztDen Widerstand flach von der Seite darauf schiebenWiderstand R6 ebenfalls so anbringen

Schritt 2: Buchsenleisten

  • Eine der beiden Buchsenleisten muss auf 15 Pins gekürzt werden.
  • Mit dem Seitenschneider kürzen und mit dem Cuttermesser nacharbeiten.
  • Buchsenleisten so an ESP32 stecken, dass die gekürzte Seite den Platz für C3 frei lässt
  • Beachten: Erster Kontakt der gekürzten Buchsenleiste an C3 (ESP32 Board Richtung USB-Buchse) zeigt nach innen
  • Kontakte auf der gegenüberliegenden Seite zeigen versetzt nach innen
  • Längere Buchsenleiste steht gegenüber der Position von C3 über
  • Buchsenleisten mit gestecktem ESP32 positionieren
  • Beim Positionieren darauf achten, dass die inneren Kontakte auf den längeren Lötfahnen auf der Platine sitzen: Auf Seite von J7 zeigt erster Pin nach außen, auf der anderen Seite erster Pin nach innen
  • Jede Leiste an 2 Ecken festlöten
  • Danach alle äußeren Verbindungen löten
  • ESP32 abziehen und dann die inneren Kontakte löten.
Buchsenleite zuschneidenBuchsenleisten auf ESP32 aufsteckenBuchsenleisten auf ESP32 aufsteckenGemeinsam auf dem PCB platzierenZunächst an einem Eckpunkt fixierenAusrichten und auf der gegenüberliegenden Seite ebenfalls fixierenEbenso die andere SeiteAlle äußeren Pins festlötenAlle äußeren Pins festlötenDann den ESP32 entfernen und die Innenseite verlöten

Schritt 3: Stromversorgung

  • Für den roten Spannungsregler 1x1 und 1x2 Stifte vorbereiten.
  • Spannungsregler mit Stiften in zwei gegenüber liegenden Lötstellen fixieren
  • Stifte nicht verlöten!
  • Mit Stiften ausgerichtetes Modul an den anderen beiden SMD-Pads verlöten
  • Stifte abziehen und die restlichen Kontakte verlöten
Stiftleisten ablängenVorbereitete StiftleistenBoard platzieren und mit Stiften ausrichtenFreie Kontakte lötenStifte entfernenRestliche Kontakte löten
  • Für das blaue Lademodul 2x2 Stifte und 2x1 Stift vorbereiten.
  • Modul mit Stiften fixieren und darauf achten, dass es am PCB anliegt
  • Von unten 2 Stifte verlöten. Stifte auf der anderen Seite fixieren
  • Umdrehen und restliche Kontakte löten
  • Die schwarzen Plastikteile entfernen und diese Seite auch verlöten
  • Alle Stifte mit dem Seitenschneider kürzen
Lademodul mit StiftenLademodul platziertOberseite mit 2 LötstellenVon unten anlötenSchwarze Plastikteile von Stiftleiste entfernenOberseite fertig verlötetUnterseiteAuf beiden Seiten Stifte kürzenUnterseite verlöten

Schritt 4: Kondensatoren

  • Bei C2 und C3: Polung auf Platine und Kondensator beachten! (Langer Pin: „Plus“, mit Streifen markierte Seite: „Minus“)
  • Kondensatoren C1 bis C3 stecken
  • Zum Fixieren umbiegen
  • Verlöten und Draht abkneifen
Die KondensatorenKondensatoren platzieren, auf Polung achten!Draht auf der Rückseite umbiegenVerlöten und Drähte kürzen

Schritt 5: Den Transistor überbrücken

  • Den Transistor NICHT verwenden. Einige mit Transistor gebaute Module funktionieren nicht.
  • Statt des Transistors eine Drahtbrücke aus den vorher abgekniffenen Kondensatorpins einlöten
  • Drahtbrücke verbindet die beiden äußeren Kontakte der Transistor-Position.
Aus einem Stück Draht eine Brücke biegenDie Brücke bei Q1 von der Oberseite einsetzenAuf der Rückseite verlöten und kürzen

Schritt 6: THT-Widerstände

  • Widerstände richtig zuordnen:
    • R1=10kOhm (braun - schwarz - orange - gold)
    • R2=150kOhm (braun - grün - gelb - gold)
    • R3=300kOhm (orange - schwarz - gelb - gold)
  • Widerstände stecken, verlöten, abkneifen.
Die Widerstände bereitlegenAuf dem Board platzierenAuf der Rückseite verlöten und kürzen

Schritt 7: Sicherung

  • Sicherung an Position F1 stecken, verlöten, abkneifen
Die Sicherung (oben rechts) anbringen

Schritt 8: Batteriekabel /-stecker

  • Stecker zusammenstecken
  • Beschriftung auf der Platine beachten (Rot: „Plus“, Schwarz: „Minus“)
  • Auf der Rückseite anlöten
  • Kabel wieder abziehen
Der Batterieverbinder mit Kabel, um die Polung zu prüfenAuf der Rückseite verlöten

Schritt 9: Diode

  • Polung beachten!
  • Diode umbiegen und stehend auf dem weiter vom Batteriestecker entfernten Kontakt aufsetzen
  • Der markierte Ring muss oben stehen
  • Löten, Enden abkneifen
Die verlötete Diode

Schritt 10: Verbinder für Taster und Display

  • J5: 5-Pin-Konnektor gemäß Markierung auf Platine aufsetzen (Aussparungen zeigen Richtung Platine).

    • 2 Punkte von unten verlöten
    • Platine umdrehen, restliche Pins verlöten.
  • J6 (Taster-Stecker) hat keine Polung

    • 2-Pin-Connector so aufsetzen, dass er möglichst wenig über den Rand der Platine übersteht und verlöten
Verbinder für Schalter und Display auf der Oberseite anbringen

Schritt 11: Sensorboards

  • Beim Sensorboard mit Kontakten Richtung ESP32:
    • Plastikteil der Buchse zum Sensor vorsichtig entfernen
    • Kontakte nach oben umbiegen – von den Steckkontakten weg
  • Beide Sensorboards stecken, dabei Beschriftung (+3V3, TRIG, ECHO, GND) beachten
  • Boards gerade und dicht am OBS-PCB ausrichten und verlöten
  • Überstehende Stifte kürzen
Boards grob platzierenAusrichten, sodass sie senkrecht stehen und sich nicht berührenKontakte auf der Rückseite verlötenBeine kürzen

Schritt 12: SD-Modul

  • Gewinkelte Stiftleiste mit 6 Pins vorbereiten.
  • Gewinkelte Stiftleiste genau wie in der Abbildung gezeigt in SD-Modul stecken.
  • Die Ausrichtung ist wichtig: Es gibt 8 Arten die Stiftleiste zu stecken, 7 funktionieren nicht.
  • Stiftleiste mit Modul verlöten und überstehende Pins abkneifen
  • Modul auf OBS-PCB stecken (Ausrichtung und Beschriftung beachten)
  • Verlöten und Stifte kürzen
SD-Karten Modul und StiftleisteStiftleiste in Modul einstecken und verlöten (Richtung beachten)Modul platzierenAuf der Rückseite anlöten und kürzen

Schritt 13: GPS-Modul

  • Gewinkelte Stiftleiste mit 4 Pins vorbereiten

  • Stiftleiste in OBS-PCB verlöten (Unterseite, langes Ende der Pins seitlich herausschauend)

  • Eng anliegend verlöten

  • GPS-Modul aufstecken

  • Verlöten und Stifte kürzen

  • Achtung! Achte darauf, dass das kurze Ende der Stiftleiste in das Board und das lange Ende in das GPS-Modul eingelötet wird. Ansonsten ragt das GPS-Modul aus dem Gehäuse heraus.

Das GPS-Modul mit Antenne (große Variante). Überstehenden Teil der Platine abknicken und entfernen.Das GPS-Modul mit StiftleisteStiftleiste ohne Modul von unten ins PCB steckenStiftleiste auf Vorderseite anlötenStiftleiste gelötetGPS-Modul aufstecken und ausrichtenGPS-Modul anlöten, Kontakte kürzen

Damit ist das PCB fertig bestückt!!!

Schritt 14: Ein/Aus-Schalter

  • 2x10cm Kabel crimpen und in 2-fach Stecker einführen
  • Andere Kabelenden seitlich an den Schalter löten.
  • Achtung:
    • Orientierung der Kabelenden und Auswahl der beiden Kontakte am Schalter beachten und eventuell mit Multimeter nachmessen, damit Schalterzustand später mit der Beschriftung am OBS-Gehäuse übereinstimmt (0 unten, I oben).
    • Nur seitlich angelötet passen die Kabel später in das Gehäuse.
    • Zu viel Hitze lässt den Schalter innen schmelzen, was zu Wackelkontakten führen kann.
Schalter mit Kabel und stecker

Schritt 15: Ultraschallsensor-Kabel kürzen und crimpen

  • Tipp: Zunächst mit überschüssigen Kabelteilen und Crimpkontakten üben!
  • Die langen schwarzen Kabel der Sensoren auf etwa 10cm kürzen, da die langen Kabel nicht in das Gehäuse passen und auch die Plastikeinfassung der bestehenden Stecker zu starr und zu dick für das Gehäuse ist
  • Vorsichtig! Koax-Kabel – der innere Leiter ist sehr dünn und kann leicht durchtrennt werden.
  • Crimpkontakt muss für optimale Verbindung Leiter und Isolierung greifen
Sensor mit gekürztem Kabel und SteckerDetailaufnahme Stecker und Schirmung

Schritt 16: Batteriekabel anlöten

  • Die Akkus sind mit Lötfahnen ausgestattet.
  • Auf 12cm gekürztes Batteriekabel an die Enden der Fahnen angelöten
  • Polung beachten: Pluspol an Akku auf der Seite mit Einkerbung im Akku-Gehäuse
  • Polung Im Zweifel nachmessen
  • Die Batterie und Kabel werden mit einem kleinen Kabelbinder im Deckel fixiert
  • Batteriekontakte mit Isolierband o.Ä. isolieren

Batterie noch nicht einstecken.

Akku mit Kabel und Stecker (Polung beachten!)Kontakte isolieren

Schritt 17: Display-Kabel

Hinweis: Beim Display ist die Reihenfolge sehr wichtig! Ein Kabel mit Steckern auf beiden Seiten oder gelötetem Kabel/Knopf passt nicht mehr durch das Gehäuse.

  • Kabel abisolieren und auf einer Seite 5x crimpen. Dabei nur 1-2mm abisolieren und für stabilen Halt mit Isolierung crimpen.
  • Gecrimpte Kabelenden in den 5er Stecker einführen. OBS-PCB und Display sind beschriftet. Zuordnung der Farben zu Beschriftung notieren.
  • Vor Anschluss des Displays Kabel durch Displaygehäuse-Unterteil führen
  • Zwei Optionen für Anschluss an das OLED-Displayboard
    1. Display-Seite crimpen
    • Nur 4x Crimpen!
    • Das Kabel, das im OBS mit „BUT“ verbunden wird, zunächst frei lassen
    • Kabel für VDD zusammen mit zweitem 2-3 cm Kabel crimpen
    • Am OLED-Displayboard Plastikteile an Steckkontakten entfernen und Pins um knapp 1/3 kürzen
    • Prüfen, ob Crimpstecker bündig auf Platine steckt
    • Ggf. Pins weiter kürzen, damit Board und Pins ins Displaygehäuse passen
    1. Display-Seite löten
    • VDD muss auch hier an Display UND Taster verbunden werden
    • Die andere Seite des Tasters mit dem am OBS mit „BUT“ beschrifteten Kabel verbinden
    • Die übrigen 4 Kabel entsprechend Farbe und Beschriftung am PCB zuordnen.
Kabel abisoliert, Crimp in ZangeAlle 5 Adern crimpenOBS-Seite in Stecker einführenKabel durch Gehäuseunterteil ziehen
  • 0,96 Zoll OLED-Boards haben teils etwas unterschiedliche Größen
  • OLED Displayboard ggf. wie abgebildet etwas kürzen, insbesondere an den Ecken
  • Je nach Genauigkeit des 3D-Drucks das Gehäuse etwas weiter ausfräsen
  • Board und Taster in Displayoberseite einsetzen
Verschiedene Displays vom gleichen LieferantenDisplay in Gehäuse einpassen, ohne GewaltWenn nötig, Display mit Seitenschneider stutzen
  • Kabel von BUT an ein Ende des Tasters anlöten
  • Kurze Kabel von VDD an zweiten Pin des Tasters löten. Achtung: Der Taster ist hitzeempfindlich, bei zu langem/heißem Löten schmilzt der Kunststoff.
Kurzes Stück Kabel (2-3cm) für ButtonAuf Display-Seite 4 Adern crimpen, Zusatzkabel zu VDD dazuFünftes Kabel und VDD Verbindungsstück an Stecker anlöten

Display zusammensetzen

  • Magnete in Displaygehäuse und Lenkerhalterung passend zur Fixierung einlegen
  • Muttern mit längeren Schrauben in Aussparungen in Gehäuse-Unterseite einziehen. Man kann bei Bedarf alle im Folgenden genutzten Muttern am äußeren Rand mit Sekundenkleber fixieren, dabei aber den Kleber unbedingt von den Gewinden fernhalten!
  • Längere Schrauben durch M3x18 ersetzen
Magnete passend einlegenMuttern in Gehäuse ziehen mithilfe langer SchraubenLange Schrauben durch die richtigen, kürzeren ersetzen

Zugentlastung einsetzen

  • Erstes Teil der Zugentlastung einsetzen
  • Zweites Teil der Zugentlastung von außen angewinkelt eindrücken, bei Bedarf die Seiten des einzusteckenden Endes zum Kabel hin schräg anschleifen
  • Für optimale Zugentlastung Kabel auf ganzer Länge der Zugentlastung mit Isolierung fixieren (Muttern und Schrauben M3xXX anziehen)
  • Fixierung für Sechskant-Muttern auf einem Teil der Zugentlastung beachten
Die Teile der ZugentlastungErstes Teil einsetzenZweites Teil einsetzenZugentlastung verschrauben

Schritt 18: Elektronik testen

Zunächst muss die OpenBikeSensor Firmware auf den ESP32 geflashed werden.

Vor dem Einbau ins Gehäuse testen wir die Elektronik in dieser Reihenfolge:

  1. Ausschalten
  2. Batteriekabel polungsrichtig einstecken.
  3. Laden: Normales USB-C Ladegerät (5 V) anschließen
    • Einige Geräte funktionieren nur nach Anschluss an ein Ladegerät
    • Bei vollem Akku leuchtet das Modul blau, sonst rot. USB-C Kabel abstecken.
  4. Einschalten per Kippschalter (ohne dabei den Knopf am Display zu drücken)
    • Boot-Screen sollte auf dem Display erscheinen. Wenn nicht, nochmal aus und, sofern nichts stinkt oder gar raucht, wieder einschalten.
    • Druck auf Taster wechselt von Boot-Screen zu einfacher Distanz-Anzeige (– cm)
  5. Bei angeschlossener GPS-Antenne GPS-Funktion im Freien testen
    • Nach einigen Minuten: GPS-Board blinkt, Boot-Screen wechselt zu Sensor-Anzeige. Werden 0 Satelliten angezeigt, wird trotzdem weitergesucht, was zu Beginn wegen des Downloads des Almanachs sehr lange dauern kann. 15 Minuten sind beim ersten Einschalten nicht ungewöhnlich.
  6. Sensoren-Funktion testen: Sensoren mit Sensor-Boards verbinden
    • Polung beachten
    • Der Abstand wird abzüglich der Breite des Lenkers gemessen. In der Software kann man im Konfigurationsmodus dessen Breite einstellen.
Schalter und Batterie anschließen zum Testen

Schritt 19: Gehäuse vorbereiten

Alle Muttern vor den elektronischen Bauteilen in das Gehäuse stecken. Manche können herausfallen, andere sitzen sehr fest. Auch hier kann Sekundenkleber verwendet werden.

GPS-Antenne einsetzen (keine Gewalt)Akku und Ultraschallsensor an Deckel montieren ('Up'-Pfeil beachten)GPS-Antenne anschließenUltraschallsensoren einsteckenLadebuchse (USB-C) ohne Gewalt in die Aussparung einfädeln

Schritt 20: Zusammenbau

Vor dem Zusammenbau empfieht es sich, die Firmware auf den ESP32 aufzuspielen, dann braucht dieser später nicht mehr für diesen Schritt ausgebaut werden. Folge dafür der Anleitung für dein Betriebssystem.

Displaykabel zwischen SD-Kartenleser und GPS-Modul führenPCB festschraubenHalterung und Zugentlastung (mit Kabelauslass Richtung Gehäusedeckel) festschraubenAbschirmung vorbereiten (8-10 Lagen Alufolie mit Klebeband isoliert oder eingeschweißt, alternativ der zugeschnittene Boden eines Teelichts, umwickelt mit einem Teil eines Gefrierbeutels)Abschirmung zwischen den Sensorboards platzieren und vor Einbau des Ein/Ausschalters innenliegenden Federring entfernen, um Einbauhöhe nicht zu überschreitenGPS-Deckel festschraubenDeckel festschraubenMagnete in die Abdeckung der Ladebuchse eindrücken (eventuell mit etwas Sekundenkleber)Weitere Magnete daraufsetzen (für korrekte Polung)Zusammen die Magnete in das Gehäuse drückenFertig

Viel Spaß bei der Nutzung!

2.4 - Einen OBS der Version v00.02 bauen

2.4.1 - Bauanleitung v00.02

Ein fertiger PCB in der Version v00.02

Warnhinweise

Achtung bitte lies die folgenden Hinweise bevor du mit dem Aufbau anfängst. Wir wissen genau wie du, dass keiner gerne Warnhinweise liest, aber gerade wenn du Anfänger bist könnte dies wichtig sein.

  • Du baust den Sensor vollkommen selbstständig und ohne unsere Aufsicht auf. Du bist daher auch selbst für Fehler oder Verletzungen verantwortlich sollten welche auftreten.

  • Gehe bewusst und gewissenhaft mit deinen Werkzeugen um. An scharfen Werkzeugen wie einem Cuttermesser oder einem Seitenschneider kannst du dich schneiden. Das vordere Ende des Lötkolbens kann bis zu 450°C heiß werden. Berühre daher immer nur das dafür vorgesehen Griffstück. Sollte er dir wegrutschen oder herunterfallen weiche daher lieber aus anstatt ihn aufzufangen.

  • Es handelt sich hierbei um einen Bausatz und kein fertiges Gerät. Alles was wir dir mit den Bauteillisten, Schaltungsentwürfen und Anleitungen zeigen sind Vorschläge und können Fehler enthalten. Bist du dir an einer Stelle nicht sicher oder du glaubst hier könnte ein Fehler vorhanden sein, dann melde dich in der Community. Außerdem sind wir nicht für Fehler verantwortlich die du während des Aufbaus machst. Sollte etwas schief gehen und du brauchst Hilfe kannst du dich natürlich auch bei uns melden.

  • Die Dämpfe die beim Löten durch das Verbrennen des Flussmittels (Flux) entstehen können gesundheitsschädlich sein. Atme sie daher nicht direkt ein. Du hast bei dir daheim oder in deinem Makerspace eine Lötdampfabsaugung? Dann nutze sie! Gerade bleifreies Lötzinn enthält mehr Flussmittel und ist daher während des Lötens auch deutlich gesundheitsschädlicher. Solltest du keine Absaugung haben ist daher bleihaltiges Zinn empfehlenswerter. Dieses solltest du allerdings wiederum nicht in den Mund nehmen und dir nach dem Löten die Hände waschen.

  • Bei einem der Bauteile handelt es sich um eine LiPo1-Batterie. Diese Batterien sind zwar heute weit verbreitet, können allerdings bei falscher Handhabung in Brand geraten. Solltest du nicht vertraut mit LiPos oder dir noch unsicher sein, lies bitte den entsprechenden Abschnitt in der Anleitung die die Vorbereitung und den Umgang mit dem Akku erklärt! Außerdem empfehlen wir die Zelle aus einer vertrauenswürdigen Quelle zu beschaffen und nicht die billigste Zelle aus China zu bestellen.

Vorwort

Alles was du hier siehst und liest ist zum größten Teil anhand der Version 00.02.00 erstellt worden. Leiterbahnführung und Beschriftung können sich daher an manchen Stellen leicht unterscheiden. In der Regel ist im dazugehörigen Text darauf aber hingewiesen und sollte kein Problem darstellen.

Die Bauteile R4 und R5 sollten sich nicht mehr auf deinem Board befinden. Anstelle von D1 sollte sich auf deinem Board mittig Q1 befinden.

Außerdem gibt es zu einigen Komponenten mehrere Möglichkeiten der Bestückung oder diese zu befestigen. Lies daher erst einmal das komplette Unterkapitel, bis du auf die nächste Komponente stößt. Dann hast du einen Überblick welche Varianten es gibt und kannst anhand der Optionen die für dich passendste auswählen. Du bist von der Bauteilliste (BOM2) hier her gekommen da du dir nicht sicher bist, wofür du bestimmte oder überhaupt welche Komponenten du brauchst? Auch dann kann es sich anbieten das entsprechende Kapitel zu überfliegen und dir so über die möglichen Optionen klar zu werden. Bilder erklären manchmal einfach besser als eine Tabelle es kann.

Du findest Fehler oder hast Fragen? Dann melde dich entweder in unserer Community oder hinterlasse einen Issue auf Github.

Vorbereitung

Bevor du anfängst mit Bestücken solltest du dir als Erstes das benötigte Werkzeug zurechtlegen. Was du währenddessen brauchen wirst:

  • Lötkolben / Lötstation
  • Lötzinn
  • Seitenschneider
  • Flachzange oder Spitzzange zum Biegen und Halten
  • SMD-Pinzette (siehe Abbildung (TODO))
  • Cuttermesser
  • Abisolierzange
  • Entlötpumpe und Entlötlitze
  • Multimeter

Überblick über das benötigte Werkzeug

Du hast dir die in der Abbildung abgebildeten Werkzeuge genauer angesehen und die Lötstation und das Multimeter kosten mehrere 100 Euro? Keine Sorge, du brauchst nicht so teures Equipment. Ich habe dieses Werkzeug nur verwendet, da ich es zur Verfügung habe! Du kannst natürlich auch günstigere Werkzeuge, z.B. ein einfacheres Multimeter verwenden. Auch die Lötstation muss keine so teure sein. Eine klare Empfehlung ist nur eine Lötstation oder ein Lötkolben mit einer einstellbaren Temperaturregelung. Du solltest mit bleihaltigem Lötzinn in einem Temperaturbereich von 300-330°C und mit bleifreiem Lötzinn von 350-370°C arbeiten. Lötkolben mit fester Temperaturregelung regeln meist auf 450°C und verbrennen zu schnell das im Lötzinn enthaltene Flussmittel.

Hilfreich kann es daher auch sein Flussmittel entweder in Form von Paste oder als Dosierstift zu haben. Hast du dies nicht zur Hand, kannst du auch mit der Entlötpumpe oder der Entlötlitze das alte Lötzinn entfernen und dann frisches Lötzinn mit frischem Flussmittel auf die Lötstelle geben. Manchmal reicht es auch schon nur ein wenig neues Lötzinn dazu zu geben um die Stelle “aufzufrischen”. Beachte aber, dass nicht zu viel Zinn auf deiner Lötstelle ist!

Ebenfalls hilfreich können Halterungen für die Platine sein. Das können zum einen solch günstige Spannrahmen in schwarz-blau wie in der Abbildung unten sein oder auch ein solcher Kugelkopfschraubstock. Diese Schraubstöcke sind meist etwas teurer, sind aber extrem hilfreich, wenn du öfter lötest. Die Platine oder auch andere Werkstücke wie Stecker lassen sich dort schnell und flexibel einspannen und in beliebigen Winkeln ausrichten.

Tipp: richte dich nicht nach dem Werkstück aus, sondern versuche immer das Werkstück nach deiner besten Arbeitsposition auszurichten! Nur wenn du bequem sitzt und deine Werkzeuge (in diesem Fall Lötkolben, Zange/Pinzette und Lötzinn) ideal bedienen kannst erreichst du ein optimales Ergebnis! Nimm dir also die Zeit. Mit der Zeit passiert das dann ganz automatisch.

Schraubstöcke

Verschiedene Entlötpumpen

Außerdem gibt es eine Bestückungs-BOM die du in deinem Browser öffnen kannst. Dort kannst du dir die Position der Bauteile hervorheben lassen und findest so schneller die Stelle, um die es gerade geht.

Bestücken der Platine

Pull-Up Widerstände für I₂C des Displays

Beginnen wir nun mit dem wahrscheinlich schwierigsten Bauteil für Anfänger, den SMD-Widerständen R6 und R7. Aber keine Sorge, das schaffst du und klingt schwieriger als es ist. Wir fangen gerade deshalb damit an, da das Board noch komplett leer ist und dir somit keinerlei Hindernisse im Weg sind. Du hast also allen Platz und Ruhe die du brauchst.

Diese Widerstände waren zuerst nur als Backup gedacht und sind daher in SMD ausgeführt. Im Betrieb der Prototypen hat sich allerdings herausgestellt, dass sie doch benötigt werden.

Um den Widerstand nun anzulöten verzinne zuerst eines der Pads mit etwas Lötzinn. Es empfiehlt sich das Pad zu nehmen, an dem an wenigsten Kupfer ist und das möglichst nicht an eine große Fläche führt. Warum? Die Fläche wirkt wie ein Kühlkörper. Der Lötkolben muss dann nicht nur das Pad vorwärmen, sondern auch einen Teil der großen Fläche. Dein Lötkolben hat dann wohlmöglich mehr zu kämpfen und braucht mehr Zeit bis das Pad auf Temperatur ist.

Ein Pad von R6 vorverzinnen

Nimm nun mit der SMD-Pinzette den Widerstand auf und lege ihn auf das Pad. Jetzt kannst du mit dem Lötkolben das zuvor aufgebrachte Lötzinn heiß machen und den Widerstand mit der Pinzette vorsichtig herunterdrücken. Die Lötstelle muss dafür erst einmal nicht schön aussehen, der Widerstand soll nur in seiner gewollten Position halten.

Widerstand mit Pinzette aufsetzenWiderstand an einer Seite anlöten

Nun kannst du die zweite Seite anlöten. Wenn du damit zufrieden bist kannst du die erste Lötstelle nacharbeiten. Dies kannst du entweder tun indem du nochmal etwas Lötzinn oder etwas Flussmittel aus anderer Quelle (Flussmittelpaste oder Flussmittelstift) hinzugibst. Hast du nun zu viel Lötzinn auf der Stelle kannst du entweder versuchen mit zügigem Streichen des Lötkolbens über die Lötstelle etwas Lötzinn zu entfernen oder Entlötlitze zur Hilfe nehmen. Achte dabei darauf, dass du die Entlötlitze erst auch etwas heiß machst, und dass du eher auf die Lötstelle tumpfst anstatt zu reiben. Wenn du mit der Entlötlitze “rubbelst” kannst du auch Kupfer ablösen, wenn du zu grob bist.

Hab keine Angst Entlötlitze oder die Entlötpumpe zu nutzen. Alle machen mal Fehler. In der Abbildung siehst du meine verbrauchte Menge, die ich während der gesamten Bestückung verwendet habe. Dies hat überhaupt nichts damit zu tun das man schlecht ist! Es ist ein Werkzeug, nutze es.

Verwendete Menge Entlötlitze

In den bisherigen Bildern wurde ein Widerstand in der Gehäusegröße 0805 verwendet. Dieser Widerstand ist dort auch vorgesehen, allerdings hast du vielleicht bereits gemerkt, dass die Pads relativ großzügig gestaltet sind. Es ist daher auch möglich Widerstände in der etwas größeren Gehäusegröße 1206 zu verwenden. Einen Vergleich dieser beiden Größen siehst du in den folgenden Abbildungen. Wenn du dich fragst, was diese Nummern für die Gehäusegrößen zu bedeuten haben, dann findest du hier weitere Informationen.

Widerstand im Package 0805

Spannungsversorgung

Nachdem wir nun die relativ kleinen Bauteile hinter uns haben kommen nun die größeren und handlicheren Bauteile. Wir beginnen mit der Vorbereitung um die beiden Module U4 und M1 aufzulöten. Dafür müssen wir zuerst einige Pins von der dafür vorgesehenen Stiftleiste vorbereiten. In diesem Schritt gibt es für den Spannungsregler 2 Varianten um ihn aufzulöten. Unten findest du eine Variante ihn ohne Stifte aufzulöten. Schau dir beide Varianten an und entscheide dich, welche du versuchen willst.

Die Pins der Stiftleiste lassen sich am einfachsten mit einem Seitenschneider auseinandertrennen. Setze dafür, wie in Abbildung zu sehen, vorsichtig den Seitenschneider an der Engstelle zwischen den beiden Pins an. Übe nun vorsichtig Druck auf die Stelle aus. Sei nicht zu grob, das Plastik kann sonst auch manchmal direkt am Pin statt zwischen den Pins brechen.

Seitenschneider vorsichtig ansetzenZerteilte Stiftleiste

Für den Spannungsregler U4 benötigst du insgesamt 5 Pins, für das Lademodul M1 6 Pins.

Insgesamt 11 Pins vorbereiten

Stecke als nächstes die Pins von der Oberseite durch die Platine. Das Plastik und das kurze Ende des Pins sollte also auf der Oberseite bleiben, die lange Seite auf der Unterseite herausstehen. Löte den Pin nun von der Unterseite an. Nimm dir zum Halten des Pins entweder eine Zange oder Pinzette zur Hilfe oder drücke den Pin gegen eine hitzebeständige Unterlage. Das kann wie hier eine spezielle Matte, daheim aber auch eine Glasplatte, ein altes Spiegelstück oder eine Fliese sein. Versuche die Pins nun möglichst gerade auszurichten. Das muss nicht perfekt sein, Ziel ist es die Module wie abgebildet über die Pins stecken zu können. Sollte das nicht direkt gelingen, finde heraus welcher Pin noch schief steht und bessere ihn nach.

Pins von oben einsteckenModule auflegen

Hast du die Module aufgelegt, löte sie an. Fange am besten erst nur mit einem Pin an und prüfe, ob das Modul noch flach auf dem Board aufliegt. Sollte dies nicht der Fall sein, hast du jetzt noch am einfachsten die Chance, nachzubessern. Außerdem empfiehlt es sich beim Lademodul M1 das Modul beim Anlöten Richtung Boardmitte zu drücken. Übe dafür mit deiner freien Hand etwas Druck nach unten und in Richtung Boardmitte auf die USB-Buchse aus. Dadurch kannst du das Modul in Position drücken, bevor du die erste Stelle festlötest.

Wenn du nach dem Anlöten aller Pins feststellst, dass die Module nicht ganz so plan aufliegen, wie du das wolltest gibt es auch dann Wege das noch zu ändern. Du kannst dafür, neben dem Pin der zu hoch steht, vorsichtig mit der Spitzzange etwas Druck auf das Modul ausüben (siehe Abbildung) und mit dem Lötkolben die betreffende Lötstelle erneut heiß machen. Habe etwas Geduld und übe nicht zu viel Gewalt auf das Board aus. Der Lötkolben muss hier gerade relativ viel Metall durchwärmen, das kann also ein paar Sekunden länger dauern. Am Ende sollten die Module wie gezeigt aufliegen.

Module vorsichtig mit Zange herunterdrückenModule in Endposition

Auflöten des Spannungsreglers ohne Pins

Alternativ kann der Spannungsregler auch ohne Pins in SMD-Lötweise aufgelötet werden. Sollte dieser Weg gewählt werden müssen natürlich 5 Pins weniger von der Stiftleiste abgetrennt werden.

Dazu als Erstes eines der Pads vorverzinnen und das Modul mit dessen Hilfe an einer Ecke ausrichten und fixieren. Diese Lötstelle muss erstmal nicht hübsch aussehen, sie soll erstmal nur mechanisch das Modul festhalten. Sitzt das Modul gerade können die verbleibenden 4 Pads angelötet und das erste Pad nachgelötet werden.

vorverzinntes Pad r.o.fertig angelötetes Modul

Von der Gegenseite sollte die Platine nun wie abgebildet aussehen. Die Pins die hier nun nach oben herausstehen können so bleiben, du kannst sie aber auch flach zum Plastik kürzen. Dies ist in den folgenden Abschnitten ebenfalls zu sehen.

Platine von der Oberseite

Einlöten Transistor (Q1) für das GPS-Modul

Als nächstes wird der Transistor für das GPS-Modul eingelötet. Störe dich nicht daran, wenn der Transistor im Bild mit D1 beschriftet ist. Hier hat sich seit dem fotografierten Prototypen etwas geändert, der Transistor wird aber in exakt der gleichen Ausrichtung an genau derselben Stelle eingelötet.

Zuerst wird der Transistor dafür von oben eingesteckt, die abgeflachte Seite zeigt dabei, analog zur Beschriftung, in Richtung des Lademoduls und des Spannungsreglers. Danach dreht ihr das Board um und haltet den Transistor mit einem Finger von unten fest, so dass er plan auf dem Board aufsitzt.

Q1 von oben durchsteckenAnsicht auf Q1 von oben

Kürze nun die Beinchen auf etwa 1,5-2,0 mm über der Boardoberfläche. Das Lademodul daneben ist mit seiner Dicke dabei eine gute Orientierung. Eine Standarddicke für Platinenmaterial ist 1,6mm. Nun legst du das Board einfach auf deine Arbeitsunterlage und lötest zuerst ein Beinchen an. Kontrolliere nun von der Oberseite ob der Transistor gerade sitzt. Sollte er das nicht tun, nimm das Board in die Hand und übe leichten Druck auf den Transistor aus. Mit der anderen Hand nimmst du nun den Lötkolben und machst die Lötstelle erneut heiß bis der Transistor an die gewünschte Position gerutscht ist. Wenn du Lötstelle erkaltet ist wird der Transistor nun an seiner Stelle bleiben. Löte die restlichen Lötstellen an und löte bei Bedarf die erste Lötstelle mit Hilfe von etwas frischem Lötzinn nach.

Beinchen von Q1 kürzenQ1 angelötet

Diode und Connectoren für Schalter und Akku

Diode D2 vorbereiten

Stiftleiste für J6

D2, J1 und J6 einstecken'Jumperkabel' als Hilfe aufstecken

JST XH Steckverbinder für J6

J1 einsetzenJ6 einsetzenD2 leicht angehoben und abgewinkelt einsetzenModule auflegen

ESP-Modul U1 auflöten

Buchsenleiste mit wechselseitigen Kontakten

Leiste auf Länge kürzenBuchsenleiste aufsteckenBeide Leisten an je 2 Stellen anlötenModule vorsichtig abziehen

Buchsenleiste mit gleichseitig gebogenen Kontakten

Stifte entsprechend kürzendirekter Längenvergleich vorher/nachherLeiste auf jeder Seite an 2 äußeren Pins anlöten

Sicherung F1

Sicherung F1 einsetzen und anlöten

Bedrahtete Widerstände R1, R2 und R3 und Kondensator C1

Widerstände ausmessenWiderstände einsetzen und verdrillenVerdrillung kürzenVerdrillung verlötenKodensator C1 einsetzenWiderstand R1 einsetzen

Optional: Steckverbinder J10 und J11 auflöten

Module auflegenModule auflegenModule auflegenEin Pad vorverzinnenJ10 Hilfe von Jumperkabel aufsetzenFertig anlötenJ11 mit Hilfe von Jumperkabel auflöten

Kondensatoren C2 und C3

Bei Elkos auf Polung achten!

Displaysteckverbinder J5

Variante mit Stiftleiste


  1. Lithium-Polymer ↩︎

  2. bill of material; zu Deutsch Teileliste ↩︎

3 - Firmware

Firmware ist die Bezeichung für Software, die auf eingebetteten Systemen wie dem ESP32 und anderen Mikroprozessoren läuft, und dort für die Funktionalität der Hardware verantwortlich ist. Beim OpenBikeSensor ist dies also ein Programm das wir selbst schreiben, mit dem der ESP32 bespielt wird, und das sich um die Aufzeichnung der zu messenden Daten, die Anzeige im Display und die ganze Konfigurationsoberfläche kümmert.

Die Firmware wird, wie alle Softwareteile, unter Open Source Lizenz auf GitHub entwickelt: https://github.com/openbikesensor/OpenBikeSensorFirmware. Für die Weiterentwicklung sind alle eingeladen, die sich für Mikroprozessorprogrammierung interessieren.

Featurewünsche oder Fehlerberichte sammeln wir im Issue Tracker auf GitHub.

Installation / Flashen

Ein etwas komplizierter Schritt beim Aufbau des Sensors, den alle Bastler:innen mindestens einmal mit ihrem neuen Gerät durchlaufen müssen, ist die initiale Installation der Firmware auf dem ESP32. Dies wird auch als “Flashen” (engl. to flash) bezeichnet.

Hierfür muss das Mikroprozessor-Board aus dem OpenBikeSensor ausgebaut und mit einem USB-Kabel an einen Computer angeschlossen werden. Die Anleitungen für das Übertragen der Firmware auf den Mikroprozessor unterscheidet sich stark nach Betriebssystem des Computers, daher haben wir sie hier getrennt aufgeführt:

Versionsupgrade

Eine neue Version der Firmware kann direkt über die Bedienoberfläche eingespielt werden. Hierfür gibt es entsprechende Menüpunkte im Hauptmenü. Ein Auseinanderbauen des Geräts und der Anschluss an einen Computer sind dafür nicht mehr nötig.

3.1 - Flashen unter Linux

Vorbereitung

Lade das neueste Release-Archiv der OBS-Firmware von GitHub herunter.

Du benötigst die ZIP-Datei mit dem Namen obs-v9.9.9.9999-initial-flash.zip (v9.9.9.9999 steht für die Versionsnummer). Entpacke die Dateien in einem temporären Verzeichnis, sie heißen 0x??????.bin. Die Zahlen sind die Basisadresse, an die die Daten geflasht werden sollen.

Installation

Installiere das Programm esptool, falls es noch nicht installiert ist. Es ist in den meisten Linux-Distributionen verfügbar.

Debian GNU/Linux, Ubuntu

und davon abgeleitete Distributionen, wie z. B. Linux Mint

sudo apt install esptool

Fedora

sudo dnf install esptool

Alternative Installation

Sollte Deine Linux Distribution dieses Paket nicht enthalten, dann kannst du versuchen es so zu installieren.

  • lege ein Verzeichnis an, in dem das Tool installiert werden soll, und wechsle in dieses Verzeichnis
mkdir ~/esptool
cd ~/esptool
  • für die Installation gib nacheinander folgende Befehle ein
python3 -m venv venv
. venv/bin/activate
pip install esptool
  • nun lass dir die Version anzeigen
esptool.py version
  • war die Installation erfolgreich, dann wird die Versionsnummer angezeigt (diese kann bei dir abweichend sein)
esptool.py v3.2
3.2

Gerätenamen herausfinden

Stelle sicher, dass du den Gerätenamen für das USB-Gerät kennst. Sehr wahrscheinlich wird es /dev/ttyUSB0 sein – dieser Name wird auch im weiteren Beispiel verwendet.

Herausfinden kannst du den Namen mit folgenden Schritten:

  • den OpenBikeSensor noch nicht mit dem Computer verbinden
  • in einem Terminal eingeben und ausführen
ls -1d /dev/ttyUSB*
  • wenn kein solches USB-Gerät an deinem Computer angeschlossen ist, wird ein Fehler angezeigt, anderenfalls eine Liste der vorhandenen /dev/ttyUSB Geräte, z. B.
/dev/ttyUSB0
/dev/ttyUSB1
  • nun den OpenBikeSensor anschließen, einige Sekunden warten und nochmal im Terminal eingeben und ausführen
ls -1d /dev/ttyUSB*
  • nun sollte in der Liste der Geräte ein Eintrag dazugekommen sein, dies ist der Gerätename für deinen OpenBikeSensor
/dev/ttyUSB0
/dev/ttyUSB1
/dev/ttyUSB2  <-- neu hinzugekommen

Flashen

Führe im selben Verzeichnis, in das du die ZIP-Datei entpackt hast, folgenden Befehl aus:

Achtung: Ersetze /dev/ttyUSB0 mit dem Gerätenamen den du im vorherigen Schritt ermittelt hast.

esptool \
    --chip esp32 \
    --port /dev/ttyUSB0 \
    --baud 921600 \
    --before default_reset \
    --after hard_reset \
    write_flash -z \
    --flash_mode dio \
    --flash_freq 40m \
    --flash_size detect \
    0x1000 0x01000.bin \
    0x8000 0x08000.bin \
    0xe000 0x0e000.bin \
    0x10000 0x10000.bin

Achtung: Hast du die alternative Installationsanleitung verwendet, dann musst du eventuell zuvor noch folgende Schritte ausführen.

cd ~/esptool
. venv/bin/activate

Und das Kommando esptool durch esptool.py ersetzen.

Achtung: Erscheint eine Fehlermldung (sinngemäß) bash: esptool: command not found, dann ersetze im obigen Kommando esptool durch esptool.py. Hilft das nicht, dann versuche einen der folgenden Aufrufe.

  • python3 esptool.py ...
  • python esptool.py ...
  • python3 /absoluter/pfad/zu/esptool.py ... (Pfad beim Paketmanager recherchieren)
  • python /absoluter/pfad/zu/esptool.py ... (s. o.)
  • python3 -m esptool ...
  • python -m esptool ...

Führt auch keiner dieser Aufrufe zum Erfolg, melde dich im Forum (https://forum.openbikesensor.org), wir finden gemeinsam eine Lösung.

Versionsupdates

Versionsupdates können in weiterer Folge über die Weboberfläche des OpenBikeSensors erfolgen und nicht mehr durch den oben angeführten, doch recht komplizierten Vorgang.

Jetzt ist dein OpenBikeSensor einsatzbereit und du kannst mit der Basiskonfiguration fortfahren!

Bei Problemen

Wenn du keine Schreibberechtigung hast, kannst du den Dateimodus des Geräts ändern (oder das Kommando als root ausführen):

sudo chmod 0x666 /dev/ttyUSB0

Wenn du öfter mit dem ESP32 arbeitest, installiere dir entsprechende udev-Regeln.

Sollte alles fehlschlagen, und du noch Fragen haben oder weitere Infos suchen, findest du in der Community immer Hilfe.

3.2 - Flashen unter Windows

So flasht du eine neue Firmware auf deinen ESP32, wenn du einen Windows-Computer benutzt.

Firmware herunterladen

Lade das neueste Release-Archiv der OBS-Firmware von GitHub herunter.

Du benötigst die größere ZIP-Datei mit dem Namen obs-v9.9.9.9999-initial-flash.zip. Entpacke die Dateien in einen temporären Ordner, sie heißen 0x??????.bin. Die Zahlen sind die Basisadresse, an die die Daten geflasht werden sollen. Mach dir keine Gedanken darüber, was das bedeutet, dies wird in den nächsten Schritten Sinn ergeben.

Flash Tools herunterladen

Lade die “Flash Download Tools” für ESP32 (und einige verwandte Chips) vom Hersteller ESPRESSIF herunter und extrahieren das Archiv in einen speziellen temporären Ordner.

Es erfolgt keine Installation, vielmehr wird das Tool direkt aus dem Ordner heraus gestartet.

Treiber installieren

Du musst wahrscheinlich einen sogenannten USB-to-UART (seriellen) Treiber installieren, damit Windows mit dem Chip auf dem ESP-Entwicklungsboard kommunizieren kann. Da es sich um einen generischen Treiber handelt, hast du diesen möglicherweise bereits schon bei anderen Projekten installiert? Im Zweifelsfall lade und installiere sicherheitshalber den Treiber von der Herstellerseite, Silicon Labs. Eventuell kann es sich auch lohnen, auf die neueste Version zu aktualisieren. Der Treiber ist im Paket für die CP210x-Chips enthalten. Du findest ihn auf dieser Seite, er heißt “CP210x Universal Windows Driver”. Folge den dort gegebenen Anweisungen.

Sollte der Link nicht mehr funktionieren, verwende Google, um eine aktualisierte Version zu erhalten, aber achte wie gewohnt darauf, dass du auf einer vertrauenswürdigen Seite landest.

Flash Tool Bedienung

Trenne alle USB-Geräte vom Computer, die du gerade nicht benötigst. Der Anschluss könnte ansonsten bei der Auswahl des richtigen (zu flashenden) Gerätes verwechselt werden.

Verbinde nun das ESP32 Board über USB-Kabel. Du kannst das Entwicklungsboard hierfür aus dem OpenBikeSensor ausbauen, oder nur die Stromzufuhr der Batterie mit dem Schalter trennen (normal ausschalten) und das USB-Kabel durch die Öffnung hinter der GPS-Antenne führen und in das eingebauten Board einstecken.

Windows sollte bestätigen, dass ein neues Gerät erkannt wurde. Manche Kabel funktionieren nicht, wenn dein Gerät nicht erkannt wird, probiere es mit einem anderen.

Starte die ausführbare Datei flash_download_tool_3.X.X.exe im Ordner des Flash Download Tools. Das dauert ein wenig – nur Geduld. Es öffnet zuerst ein Konsolenfenster und schließlich eine einfache Benutzeroberfläche.

Wähle Entwicklermodus - ESP32 DownloadTool in der Benutzeroberfläche (der Factory-Modus kann verwendet werden, wenn mehrere ESPs gleichzeitig geflasht werden sollen – in diesem Fall kann man auch mehrere ESPs gleichzeitig verbinden).

Eine korrekte Konfiguration der ESP32 Flash Download Tools (klicken zum Vergrößern)

Jetzt musst du dem Tool mitteilen, was geflasht werden soll. Oben im Dialog gibt es mehrere Zeilen, beginnend mit Kontrollkästchen, einem Textbereich, einen Knopf mit drei Punkten, einem @-Zeichen und einem weiteren Textbereich.

Wähle für jede der 4 Dateien, die wir flashen müssen, die drei Punkte aus, die eine Dateiauswahl ermöglichen, in der du jeweils eine der 4 *.bin-Dateien der Firmware auswählst. Die Reihenfolge ist nicht wichtig, aber du musst die Adresse der Datei in das rechteste Textfeld eingeben. Die Adresse steht jeweils im Dateinamen, z. B. 0x01000. Die Kästchen wechselt auf grünen Hintergrund, was eine positive Plausibilitätsprüfung des Flash-Tools bedeutet.

Aktivieren nun die Kontrollkästchen, die sich vor den soeben vorgenommenen Eingaben befinden. Alle anderen Werte bleiben auf ihren Standardeinstellungen:

  • SPI SPEED: 40MHz
  • SPI MODE: DIO (ändert sich gleich automatisch)
  • FLASH SIZE: 32Mbit
  • SpiAutoSet: nicht ausgewählt
  • DoNotChgBin: ausgewählt

Unten siehst du eine Dropdown-Box mit der Beschriftung COM. Hier musst du den richtigen COM-Port für den Flash-Vorgang auswählen. Wenn du dir nicht sicher bist, belasse den Standardwert und versuchen einen anderen Wert, wenn der Vorgang fehlschlägt. Stelle sicher, dass keine anderen Geräte angeschlossen sind!

Drücke nun Start. Danach solltest du etwa Folgendes sehen: „Flashing in Progress“

Wenn alles richtig läuft, erhältst du einen Fortschrittsbalken mit einer abschließenden Erfolgsmeldung. Ziehe danach das USB-Kabel ab. Das ESP32 kann dann in das OpenBikeSensor-Gehäuse eingebaut werden (falls noch nicht geschehen).

Versionsupdates können in weiterer Folge über die Weboberfläche des OpenBikeSensors erfolgen und nicht mehr durch den oben angeführten, doch recht komplizierten Vorgang.

Jetzt ist dein OpenBikeSensor einsatzbereit und du kannst mit der Basiskonfiguration fortfahren!

Bei Problemen

Wenn du eine rote Fehlermeldung erhältst, überprüfe ob die USB-Verbindung korrekt ist und der richtige COM-Port ausgewählt wurde. Wenn alles fehlschlägt, und du hast Fragen oder weitere Infos suchst, findest du in der Community immer Hilfe.

3.3 - Flashen unter macOS

Vorbereitung

Lade das neueste Release-Archiv der OBS-Firmware von GitHub herunter.

Du benötigst die größere ZIP-Datei mit dem Namen obs-v9.9.9.9999-initial-flash.zip. Entpacke die Dateien in einen temporären Ordner, sie heißen 0x??????.bin. Die Zahlen sind die Basisadresse, an die die Daten geflasht werden sollen.

Installiere das Programm esptool, falls es noch nicht installiert ist. Über Homebrew kannst du es so bekommen:

brew install esptool

Stelle sicher, dass du den Gerätenamen für das USB-Gerät kennst. Dies ist normalerweise /dev/tty.usbserial-0001 – dies wird auch im Beispiel unten angenommen. Auf macOS kannst du deine aktuellen USB-Geräte mit ioreg -p IOUSB -w0 -l auflisten. Suche im Zweifelsfall nach einem USB-zu-UART-USB-Gerät.

Flashen

Führe im selben Verzeichnis, in das du die ZIP-Datei entpackt hast, folgenden Befehl aus:

esptool.py \
    --chip esp32 \
    --port /dev/ttyUSB0 \
    --baud 921600 \
    --before default_reset \
    --after hard_reset \
    write_flash -z \
    --flash_mode dio \
    --flash_freq 40m \
    --flash_size detect \
    0x1000 0x01000.bin \
    0x8000 0x08000.bin \
    0xe000 0x0e000.bin \
    0x10000 0x10000.bin

Bei Problemen

Wenn du keine Schreibberechtigung hast, kannst du den Dateimodus des Geräts ändern (oder das Kommando als root ausführen):

sudo chmod 0x777 /dev/ttyUSB0

Sollte alles fehlschlagen, und du noch Fragen haben oder weitere Infos suchen, findest du in der Community immer Hilfe.

4 - Software

4.1 - Offline-Visualisierung

Dieser Artikel beschreibt das Vorgehen, um offline, also ohne ein voll funktionsfähiges Portal, eine Visualisierung bestehender Trackdateien vorzunehmen.

Dieses Vorgehen ist veraltet. Es funktioniert noch, aber in nächster Zeit wird mehr Energie in die Weiterentwicklung des Portals gesteckt, da hier durch die leistungsstärkere Architektur viel mehr Möglichkeiten zur Datenverarbeitung und Visualisierung bestehen. Dennoch lässt sich mit diesem Vorgehen einiges erreichen, wenn gerade kein Portal zur Hand ist, oder ein tieferer Einblick erwünscht ist, als es das stark verarbeitende Portal erlaubt.

Diese Anleitung sollte mit höchstens kleinen Anpassungen auf allen Linux-Distributionen und unter macOS funktionieren, sofern Python 3.8 oder höher verfügbar ist. Hat deine Distribution nur ältere Versionen, schau' doch mal ob Anaconda/Conda dir hier aushelfen kann, lokal eine andere Version zu installieren. Prüfe deine Python-Version vorab mit dem Kommando python3 -V.

Dieser Artikel beschreibt nur die Grundlagen, damit auch Anfänger:innen sich ihre Daten anzeigen können. Weitere Features und Details sind direkt im Repository dokumentiert.

Code holen und installieren

Im Terminal am gewünschten Zielort das Git-Repository OpenBikeSensor-Scripts clonen:

git clone https://github.com/openbikesensor/OpenBikeSensor-Scripts obs-scripts

Zum Wechseln in das neue Verzeichnis:

cd obs-scripts

Ab sofort müssen alle Kommandos von diesem Verzeichnis aus ausgeführt werden.

Erstellen einer virtuellen Python-Umgebung zur Installation der Abhängigkeiten und der Kommandozeilentools:

python3 -m venv env
source env/bin/activate

Bitte achte darauf, bei Änderungen am Code das Verzeichnis env zu ignorieren und nicht mit zu committen. Du kannst es auch woanders erstellen (z. B. in deinem Home-Verzeichnis). Den zweiten Befehl von oben (source ...) musst du jedes Mal ausführen, nachdem du mit einem neuen Terminal in dieses Verzeichnis wechselst, bevor du die OBS-Skripte nutzen kannst.

Installation des obs-face Pakets und dessen Abhängigkeiten:

pip install -e .

Es dauert eine Weile, bis alles installiert ist. Bei Erfolg erscheint Successfully installed … in einer der letzten Zeilen (evtl. gefolgt von einer Warnung, die du aber ignorieren kannst), bei Misserfolg eine Fehlermeldung. Wenn du hier Hilfe brauchst, poste die Fehlermeldung im Forum, dort gibt es immer Unterstützung.

Vorbereiten der Dateien

Du brauchst nun geschachtelte Ordner innerhalb des Ordners obs-scripts. Diese erstellst du mit mkdir oder mkdir -p, oder einfach mit der graphischen Bedienoberfläche deines Betriebssystems.

Wir benötigen folgende Struktur:

data
└── input
    ├── user1
    │   ├── track1.csv
    │   └── track2.csv
    └── user2
        ├── track1.csv
        └── track2.csv

Also ein Verzeichnis data in obs-scripts, darin wiederum ein Verzeichnis input, in welchem für jede:n Benutzer:in ein eigener Ordner liegt, der alle Tracks enthält. Es ist okay, wenn das nur ein Ordner ist, aber wenn du von mehreren Personen die Tracks einsammelst, kannst du sie hiermit unterscheiden.

Datenverarbeitung

Auf der Kommandozeile, mit aktivierter Python-Umgebung, kannst du nun folgendes ausführen:

obs-face -ACV

Dies dauert eine Weile, denn es werden OpenStreetMap-Daten heruntergeladen, und dann alle Tracks aus data/input eingelesen und verarbeitet. Du kannst die Ausgabe dieses Kommandos auf Plausibilität prüfen, um zu sehen ob alle deine Tracks erkannt und eingelesen wurden.

Visualisierung

Für die folgenden Kommands wechseln wir zunächst ins Unterverzeichnis visualization:

cd visualization

Nun erstellen wir einen symbolischen Link zwischen der Ausgabe der Verarbeitung und dem Visualisierungscode:

ln -s ../data/visualization json

Mit Python starten wir einen kleinen Webserver, der es uns erlaubt, das Ergebnis im Browser zu sehen:

python -m http.server

Nun kannst du in deinem Browser eine dieser Seiten besuchen: