←  Übersicht

Wasserrakete · Elektronik · Fehlersuche

Als das Funkgerät die Uhr kaputtmachte

Der Flugrechner stürzte zuverlässig nach ein bis zwei Sekunden ab. Die Ursache war kein Programmierfehler, sondern ein einzelnes Kabel — und der Weg dorthin führte über eine Uhr, die behauptete, es seien neun Tage vergangen.

ESP32-S3 4 Sensoren ein gemeinsames Massekabel
Kapitel 1

Was auf dem Brett sitzt

BauteilAufgabeAnschluss
ESP32-S3der Rechner selbst: zwei Prozessorkerne, 4 MB Speicher
BMP280Luftdruck → HöheI²C
LSM6DSOXBeschleunigung und DrehrateI²C
GPS-ModulPosition und Geschwindigkeitserielle Leitung
LoRa-FunkmodulTelemetrie zum Bodenserielle Leitung

Warum zwei Prozessorkerne?

Der eine Kern liest die Sensoren und trifft Entscheidungen — hundertmal pro Sekunde, gleichmäßig, ohne Unterbrechung. Der andere kümmert sich um GPS und Funk.

Der Grund ist Verlässlichkeit: Ein Funkpaket zu senden dauert unvorhersehbar lange. Läge beides auf einem Kern, würde die Sensorschleife gelegentlich stocken — und ausgerechnet in dem Moment, in dem der Funk besonders beschäftigt ist, wäre die Rakete am blindesten.

Kapitel 2

Der Absturz, der immer kam

Mit dem Funkmodul auf voller Sendeleistung (22 dBm) stürzte der Flugrechner ab. Nicht manchmal — jedes Mal, innerhalb von null bis zwei Sekunden, in sechs unabhängigen Aufzeichnungen.

Die Messung, die alles eingrenzte

Funkmodul angeschlossen, mit Strom versorgt und initialisiert — aber senden ausgeschaltet: 208 Sekunden ohne einen einzigen Absturz und ohne einen einzigen Datenfehler.

Damit war es keine Vermutung mehr. Nicht das Modul war das Problem, nicht der Programmcode, der es ansteuert — sondern das Senden selbst. Ein einziges umgelegtes Häkchen trennte „stürzt immer ab“ von „läuft problemlos“.

Zwei Symptome, die zusammen die Antwort gaben

1
Die Sensoren meldeten Leitungsfehler
Die Datenleitung zu Barometer und Beschleunigungssensor lieferte Fehler statt Werte. Für sich genommen hätte man auf ein Wackelkontakt getippt.
2
Die Uhr meldete neun Tage
Der Rechner hat zwei unabhängige Wege, die Zeit seit dem Einschalten zu lesen. Der eine sagte 793 126 222 Millisekunden — gut neun Tage. Der andere, im selben Moment, sagte etwa 20 Sekunden.

Warum das zweite Symptom den Fall löste

Ein Leitungsfehler ist mehrdeutig — Kabel, Stecker, Software, alles denkbar. Aber eine Uhr, die sich verzählt? Uhren sind einfach. Sie zählen. Wenn eine Uhr im Prozessor falsche Werte liefert, ist etwas sehr Grundlegendes gestört.

Entscheidend war, dass es zwei unabhängige Uhren gab. Eine falsche Zahl allein hätte man für plausibel halten können. Zwei Uhren, die sich um neun Tage widersprechen, können nicht beide recht haben — und genau dieser Widerspruch machte aus einer merkwürdigen Zahl einen Beweis.

Kapitel 3

Die Ursache: ein Kabel, das zu viel leisten musste

Sensoren und Funkmodul hängen an einem eigenen Netzteil. Mit dem Rechner teilen sie sich nur eine einzige Leitung: die Masse, den gemeinsamen Nullpunkt, auf den sich alle Spannungen beziehen.

Sendestöß100–160 mA
fließt zurückdurch das Massekabel
Kabel hat WiderstandSteckbrücke, dünn
Nullpunkt verschiebt sichalles verrutscht mit
„Null Volt“ ist keine Naturkonstante, sondern das, was am Ende dieses Kabels anliegt. Verschiebt es sich, verschiebt sich alles.

Die Vorstellung dahinter

Stell dir vor, alle Höhenangaben in einer Stadt beziehen sich auf einen Messpunkt am Hafen — und dieser Punkt wackelt im Sekundentakt um einen Meter auf und ab. Nichts an den Gebäuden ändert sich, aber jede gemessene Höhe wird falsch, und zwar alle gleichzeitig.

Genau das macht der Sendestoß. Er zieht kurz viel Strom, der Strom fließt durch das Massekabel zurück, und weil jedes Kabel einen Widerstand hat, entsteht dort kurzzeitig eine Spannung. Der gemeinsame Nullpunkt verschiebt sich — und mit ihm jedes Signal im gesamten Aufbau.

Deshalb versagten Sensorleitung und Prozessoruhr gleichzeitig. Es war nie ein Fehler in einem der beiden. Es war der Boden unter ihren Füßen.

Warum daraus ein kompletter Stillstand wurde

Der letzte Schritt ist besonders unangenehm. Beim Lesen der Uhr wartet der Prozessor in einer Schleife darauf, dass der Wert als „gültig“ gemeldet wird. Kommt diese Meldung durch die Störung nie, dreht sich diese Schleife endlos.

Und sie hält dabei eine Sperre, die beide Prozessorkerne brauchen. Der eine Kern dreht also ewig im Kreis, der andere wartet auf die Sperre, die nie freigegeben wird. Beide stehen. Ein Überwachungszähler bemerkt schließlich, dass nichts mehr passiert, und startet den Rechner neu.

Aus einem Spannungswackler von vielleicht einer Millisekunde wird so ein vollständiger Neustart des Flugrechners — im Flug wäre das der Verlust aller Zustandsinformation mitten in der Aufstiegsphase.

Kapitel 4

Die Notlösung — und warum sie eine bleibt

Sendeleistung von 22 auf 10 dBm gesenkt

Weniger Sendeleistung bedeutet weniger Stromstoß, bedeutet weniger Verschiebung des Nullpunkts. Der Absturz verschwand sofort und ist seither nicht wieder aufgetreten — unter anderem in einem 2,5-Stunden-Dauerlauf mit über 20 000 Funkpaketen ohne einen einzigen Neustart.

Das ist trotzdem keine Lösung. Das Verdrahtungsproblem existiert unverändert; es wird nur nicht mehr stark genug angeregt, um sichtbar zu werden.

Und es kostet: 12 dB weniger Sendeleistung sind grob drei Viertel der Reichweite. Bei einer Rakete, die man wiederfinden möchte, ist Reichweite keine Nebensache.

Was tatsächlich zu tun ist

1
Kurzes, dickes Massekabel
Dieses eine Kabel trägt den gesamten Rückstrom. Je kürzer und dicker, desto weniger Spannung fällt darauf ab.
2
Sternförmige Masse
Jede Masseleitung einzeln zu einem gemeinsamen Punkt, statt Rechner → Sensoren → Funk hintereinander. Bei der Reihenschaltung fließt der Funkstrom durch die Masse der Sensoren — das ist exakt der gemessene Störweg.
3
Kondensatoren direkt am Funkmodul
Ein großer Kondensator ist ein kleiner Örtlicher Energiespeicher. Er liefert den Sendestoß vor Ort, statt ihn durch das lange Kabel zu ziehen.
4
Datenleitungen löten statt stecken
Lose Steckkontakte haben in diesem Projekt seit August 2026 wiederholt echte Ausfälle verursacht.
Kapitel 5

Wenn das Bauteil selbst kaputt ist

Nicht jeder Fehler ist einer im eigenen Aufbau. Der erste Beschleunigungssensor des Projekts — ein LSM9DS1 — lieferte durchgehend Unsinn. Nach längerer Suche stellte sich heraus: Der Chip war schlicht defekt.

Der als Ersatz bestellte LSM6DSO32 kam dann als falsches Bauteil an. Verbaut ist heute ein LSM6DSOX — verwandt, aber nicht dasselbe.

Was das für die Fehlersuche bedeutet

Bei Software ist die Annahme meist richtig, dass der Fehler beim einem selbst liegt. Bei Hardware stimmt das nicht zuverlässig: Bauteile kommen defekt an, Bauteile kommen falsch geliefert, Kabel haben Bruchstellen, die man nicht sieht.

Deshalb gilt hier eine andere Reihenfolge: Bevor man tagelang Code durchsucht, tauscht man das Bauteil oder das Kabel einmal aus. Das kostet fünf Minuten und beantwortet eine Frage, die man sonst nur erraten kann.

Genau so wurde auch der Absturz gefunden — nicht durch Nachdenken über den Code, sondern durch das Abschalten einer Sache (des Sendens) bei sonst unverändertem Aufbau.

Kapitel 6

Was noch fehlt

TeilZustandFolge
Masseführungnicht gelötet Sendeleistung bleibt auf 10 dBm gedrosselt, Reichweite entsprechend gering
Arm-Schalternicht verbaut Der Rechner schaltet sich 15 s nach dem Einschalten selbst scharf — ein Behelf, der vor einem echten Flug weg muss
Zündelektronikexistiert nicht Die gesamte Fallschirmlogik ist bisher reine Rechnung, es wird kein Ausgang geschaltet
DurchgangsprüfungAnschluss unbestätigt vor dem Anschließen von Zündhardware nachzumessen
Magnetometervorbereitet, nicht verbaut Ohne ihn bleibt die Gierrichtung im Stillstand unbestimmbar
Batteriespannungwird nicht gemessen Man erfährt nicht, ob der Akku im Flug einbricht

Die erste Zeile ist die wichtigste, weil sie alle anderen blockiert: Solange die Masse nicht ordentlich verlötet ist, kann die Sendeleistung nicht wieder hochgesetzt werden — und ohne Reichweite ist ein Flug über freiem Feld ein Risiko, das man nicht eingehen sollte.

Anhang

Begriffe

Masse (GND)
Der gemeinsame Nullpunkt, auf den sich alle Spannungen beziehen. Kein absoluter Wert, sondern schlicht das, was am Ende der Masseleitung anliegt — und genau deshalb verschiebbar.
Sternmasse
Jede Masseleitung einzeln zu einem gemeinsamen Punkt, statt Verbraucher hintereinander aufzureihen. Verhindert, dass der Strom des einen durch die Masse des anderen fließt.
Kondensator zur Entkopplung
Ein kleiner örtlicher Energiespeicher direkt am Verbraucher. Er deckt kurze Stromstöße ab, sodass sie nicht durch die lange Zuleitung gezogen werden.
dBm
Maß für Sendeleistung, logarithmisch. Ein Unterschied von 12 dB entspricht etwa dem Sechzehnfachen an Leistung — und grob dem Vierfachen an Reichweite.
I²C
Eine Datenleitung mit nur zwei Drähten, an der mehrere Sensoren gleichzeitig hängen können. Bequem, aber empfindlich gegenüber Störungen und schlechten Kontakten.
Sperre (Spinlock)
Ein Mechanismus, mit dem zwei Prozessorkerne sich abwechseln. Bleibt ein Kern hängen, während er die Sperre hält, steht auch der andere — genau das passierte hier.
Vollständige Anleitung mit Messwerten und Prüfschritten in docs/Hardware_Rework_Guide.md. Was die Elektronik danach an Daten liefert, ist in docs/Filter_Erklaert.html und docs/Funkstrecke_Erklaert.html erklärt.

Schreiben Sie einen Kommentar