Kalibrieren per Knopf & präzisere Schräglage +2 Features, +3 Fixes/UX
Null-Kalibrierung (2 Sek.)
Schräglage via GPS+Gyro
Multi-Export als ZIP
- 🎯Null-Kalibrierung per Knopf: Statt des mehrstufigen Montage-Rituals genügt jetzt ein Knopf — 2 Sekunden gedrückt halten, fertig. Die Einbaulage wird automatisch erkannt (Hoch- und Querformat, auch um 180° gedreht).
- 📐Genauere Schräglage in Kurven: Der Winkel wird jetzt primär aus GPS und Gyroskop berechnet. Das ist physikalisch korrekt — der Beschleunigungssensor allein unterschätzt die Schräglage in der koordinierten Kurve.
- 📲Aufnahme-Knopf im Querformat erreichbar: Im Landscape-Modus lag der Start-/Stopp-Knopf außerhalb des sichtbaren Bereichs. Der Aufnahme-Screen ist jetzt zweispaltig — der Knopf rechts ist immer sichtbar.
- 🗂️Mehrere Aufnahmen auf einmal teilen: In der Bibliothek mehrere Sessions auswählen und als ein ZIP exportieren — wahlweise als GPX-Track oder als Kurvenfokus Full (100 Hz).
- 💾Große Aufnahmen exportierbar: Der Kurvenfokus-Full-Export funktioniert jetzt auch bei sehr langen Aufnahmen zuverlässig (vorher brach er ohne Rückmeldung ab).
GPS-Aufnahme repariert +2 Features, +1 kritischer Fix
Konstant 1 Hz GPS
GPS-Status vor dem Start
Warnung am Lockscreen
- 🛰️GPS-Tracking-Regression behoben: In v0.0.10 konnte ein bei schlechtem Empfang durchgeführter Hardware-Scan die Aufnahme dauerhaft auf eine viel zu niedrige GPS-Rate (bis ~0,17 Hz — nur alle ~6 Sekunden ein Punkt) drosseln; Kurven wurden dadurch unbrauchbar. Die Aufnahme läuft jetzt wieder fest mit zuverlässigen 1 Hz.
- 🔄Automatische Reparatur beim Update: Ein einmaliger Reset bereinigt den fehlerhaft gespeicherten Scan-Wert beim ersten Start von v0.0.11 — ganz ohne Zutun. Der Hardware-Scan bleibt als reine Diagnose erhalten, steuert die Aufnahme aber nicht mehr.
- 🚦GPS-Status & Tipps vor dem Start: Der Aufnahme-Screen zeigt jetzt eine antippbare GPS-Status-Karte. Bei schwachem Empfang erscheinen konkrete Tipps (freier Himmelsblick, Standortgenauigkeit auf „Hoch", Akku-Optimierung aus) inkl. herstellerspezifischem Direktlink. Antippen öffnet die Satelliten-Detailansicht.
- 🔔GPS-Warnung am Lockscreen: Die Aufnahme-Benachrichtigung zeigt jetzt die GPS-Punkte und warnt bei schwachem Empfang — ein Tracking-Ausfall fällt so sofort auf, statt erst nach der Fahrt im Export.
Hardware-Scan & Daten-Transparenz +4 Features, +1 UX, +1 Fix
Hardware-Tracking-Scan
Datenqualitäts-Ampel
Hardware-Stempel im Export
Valide GPX
- 🛰️Hardware-Tracking-Scan: Misst die real erreichbare GPS-Rate deines Geräts (1/2/5 Hz) und empfiehlt den passenden Aufnahmemodus — komplett modellunabhängig, direkt in den Diagnostics.
- 📡Höhere GPS-Rate: Die App fordert jetzt die schnellstmögliche Rate deines Geräts an statt fix 1 Hz — automatisch gedeckelt durch die im Scan gemessene Hardware-Grenze.
- 🚦Datenqualitäts-Ampel: Dieselbe Bewertung (Grün/Gelb/Rot) live während der Aufnahme, in der Tour-Zusammenfassung und im Export — eine einzige, konsistente Logik.
- 📋Hardware-Stempel im Export: Jede GPX- und Kurvenfokus-Datei trägt Gerät, real genutzte GPS-/Sensor-Qualität, GNSS-Signal und die Datenqualitäts-Stufe — die Aufnahme dokumentiert sich selbst.
- 🧹Aufgeräumter Export: Reduziert auf das Wesentliche — GPX & Kurvenfokus, in Viewer und Bibliothek.
- 🔧Valide GPX-Dateien: Korrekte Dezimalpunkte (statt Komma) — der Import in Komoot, Calimoto & Co. klappt jetzt zuverlässig.
Großes Funktions-Update +10 Features, +79 Tests
GPS+Gyro Fusion
Karten-Viewer
High-Contrast
Auto-Pause
- 🌀GPS+Gyro Fusion: Complementary Filter für präzisere Schräglage (100 Hz statt 1 Hz).
- 📊Tour-Summary: 3×2 Stats-Grid nach jeder Fahrt (Distanz, Dauer, Höhenmeter, Max Lean, Kurven, Max G) + Teilen-Button.
- 🗺️Karten-Viewer: Dark Map mit Lean/Speed/Höhe-Umschalter und Zonen-Legende.
- 🔆High-Contrast Modus für Outdoor-Sichtbarkeit + Fullscreen Lean Mode (per Doppeltipp).
- 🔊Lautstärke-Tasten: Doppeltipp startet/stoppt die Aufnahme; haptisches Feedback bei Start/Stop/Kurve.
- ⏸️Auto-Pause & Speicher-Monitor: Erkennt Stillstand (>5 Min), Auto-Stop bei kritisch wenig Speicher (<100 MB).
- ✅79 Unit-Tests: ChunkWriter, LiveCurveDetector, Pipeline und 7 Filter; Crashlytics vorbereitet.
Export-Offensive +4 Features
Export überall
E-Mail-Versand
Quick Share ⚡
Ziel-Dialog
- ⬆️Export überall sichtbar: Teilen-Knopf direkt auf jeder Aufnahme in der Library, im Viewer (Karte und Toolbar) und in der Tour-Zusammenfassung („Andere Formate exportieren…") — kein verstecktes Wischen mehr nötig.
- ✉️Per E-Mail senden: Aufnahme als kompaktes ZIP (85–90 % kleiner) direkt aus der App mailen — Betreff und Tour-Infos vorbefüllt, mit Warnung bei Anhängen über 20 MB.
- 🎯Ziel-Dialog: Nach jeder Format-Wahl entscheiden — Teilen (AirDrop, Dateien …) oder E-Mail. Damit ist jedes Format mailbar, von GPX bis Kurvenfokus Full.
- ⚡Quick Share: Die App merkt sich die letzte erfolgreiche Export-Kombination — ein Tap auf den Blitz-Knopf (Library-Zeile, Viewer oder oben im Export-Dialog) wiederholt sie sofort.
Design-Offensive +12 Features, +3 Fixes
APEX-R Cockpit
CIRCUIT & LAB
Design-Wizard
Glass-Navigation
- 🏁Drei Cockpit-Designs: CIRCUIT, LAB und APEX-R — mit Nadel-Gauge, Telemetrie-Kacheln und Vollbild-Hero in Portrait und Landscape.
- 🔀Live-Design-Switcher: Cockpit-Design per Wischgeste wechseln — auch mitten in der Aufnahme.
- 🧭Design-Wizard: Beim ersten Start (auch nach dem Update) den Cockpit-Stil wählen — später jederzeit änderbar unter Einstellungen → Cockpit-Design oder per Wischgeste während der Aufnahme.
- 💠APEX-R-Glass-Navigation: Neue Bottom-Bar mit zentralem REC-Knopf ersetzt die native Tab-Bar.
- 📡GPS-Qualität vor dem Start: Genauigkeit und Bewertung direkt im Aufnahme-Screen — wie auf Android.
- 🔑Wingman-Schlüssel: Eingabe in den Einstellungen, sichere Ablage im Schlüsselbund — kein fester Schlüssel mehr in der App.
- 🎯Ein-Knopf-Klarheit: Doppelter roter Aufnahme-Knopf behoben — die Navigations-Bar wird bei laufender Aufnahme ausgeblendet, der Stop-Knopf (1 s halten) ist der einzige rote Knopf.
- 💬Stop-Hinweis: Zu kurzes Tippen auf den Stop-Knopf zeigt jetzt „1 Sekunde gedrückt halten" mit sanftem Haptik-Feedback.
- 🔄Reset-Knopf: Rekalibrierung direkt aus beiden Cockpits.
- 🧤Handschuh-Modus: XL-Bedienzonen für die Fahrt — unteres Drittel stoppt die Aufnahme (1,5 s halten), oberes Band pausiert (2× tippen).
- 🔘Hardware-Knopf: Lauter/Leiser oder Action Button als Aufnahme-Trigger, mit Übungs-Wizard — Stoppen über 5-Sekunden-Countdown mit Ton, nochmal drücken bricht ab.
- 🔒Live Activity: Aufnahme-Status, Dauer und Pause auf dem Sperrbildschirm und in der Dynamic Island.
- ⏸️Smarte Auto-Pause: Motor aus (Tanken) pausiert nach ~30 Sekunden, an der Ampel läuft die Aufnahme immer weiter — automatische Fortsetzung beim Losfahren, mit Ton-Quittung.
- 🛡️Design-Sperre während der Fahrt: Cockpit-Wechsel per Wisch nur in den ersten 30 s nach Start und im Stand — nie bei Tempo.
Telemetrie-Ausbau +7 Features, +3 Fixes
Wingman OBD-II
RaceBox Mini/Micro
Sync-Beep
Sicherheit
- 🏍️Wingman OBD-II-Integration: RPM, Gang, Gas und Kühlwassertemperatur live im Dashboard und Vollbild — mit den Profilen Racing/Touring/Discovery (15 PIDs inkl. Gangerkennung).
- 📟Racing OBD-Dashboard: Vier OBD-Widgets mit 3-Farben-Indikator.
- 🔊Sync-Beep: BIP-BIP-BIP-BIIIP-Tonsequenz setzt Marker in die Aufnahme — für die Synchronisation mit Video- und 360°-Kameraaufnahmen.
- 📦RaceBox Mini/Micro: Bluetooth-Verbindung mit Live-Status (Satelliten, Fix, Genauigkeit, Speed) und 25-Hz-GPS während der Aufnahme.
- 🗺️Dual-/Triple-GPS-Viewer: Phone (cyan), RaceBox (rot) und Wingman (orange) parallel auf der Karte vergleichen.
- 📤RaceBox-Export: Kurvenfokus, CSV und GPX direkt aus RaceBox-Daten.
- 🔌Wingman-Stabilität: OBD-Profil wird nach Motorstart und Verbindungsabbruch automatisch erneut gesendet; Auto-Reconnect und korrekte RPM-Werte.
- 🖼️Schnellansicht-Fix: Nach der Aufnahme wird wieder die komplette Tour angezeigt.
- 🔒Sicherheits-Härtung: API-Zugangsdaten aus dem App-Build entfernt und in den Schlüsselbund verlagert.
Kritischer Fix +1 Fix, Stabilisierung
IMU für alle Modi
142 Dateien
25.969 Zeilen
- 🔧Standard-Modus speichert jetzt IMU: savesRawMotion=true für alle Recording-Modi. Nutzer bekommen volle 100 Hz IMU-Daten ohne Developer-Modus aktivieren zu müssen. Nur LiDAR bleibt Developer-exklusiv.
- 📊Metadata-Konsistenz: totalMotionSamples zählt nur noch tatsächlich geschriebene Samples — kein Phantom-Count mehr bei Standard-Aufnahmen.
- 📈Codebase gewachsen: 142 Swift-Dateien, 25.969 Zeilen — +20,5% seit Build 17. Stabilisierung und Bugfixes über 7 Builds.
Analyse-Features +3 Features, +2 Fixes
Fahrprofil-Vorschau
Lean-Quellenhinweis
Nur GPS behalten
Viewer-Crash-Fix
- 🏍️Fahrprofil-Vorschau: Automatische Analyse nach jeder Tour — Fahrstil-Klassifikation (Cruising/Touring/Sportlich/Aggressiv), Brems-/Beschleunigungs-Events mit Zähler und Max-G, Laufruhe-Score (Jerk-basiert, 0–100), Etappen-Erkennung (Pausen >2 min).
- 📐Lean-Quellenhinweis: Transparente Anzeige wie die Schräglage ermittelt wird: „IMU-kalibriert ✓" (Mount-Kalibrierung), „IMU unkalibriert ⚠️" (roher Roll), „GPS-Schätzung" (aus Course-Änderung), oder „Nicht verfügbar".
- 💾Nur GPS behalten: Große Aufnahmen reduzieren — löscht motion/processed/altimeter/lidar Chunks, behält GPS + Metadaten + HeartRate. Spart bei 2,8 GB-Aufnahme ~95% Speicher. Verfügbar im Context-Menü (lange drücken).
- 🐛Viewer-Crash bei 2 GB+ Aufnahmen: loadIntoViewer() war synchron auf dem Main Thread. Fix: Background-Thread via Task.detached mit Ladeindikator.
Health & Repair +2 Features, +3 Fixes
Fitness-Score
HR-Zonen
Backup-Export
Auto-Repair
HeartRate-Fix
250 MB+ Viewer
- ❤️Fitness & Belastungs-Score: HR-Zonen (Z1 Erholung – Z5 Anaerob), Avg/Max/Min BPM, TRIMP-basierter Belastungsindex 0–100. Erscheint automatisch im Viewer und HTML-Export bei Watch-Aufnahmen mit Herzfrequenz.
- 📦Backup-Export: Alle Aufnahmen als ZIP mit GPX pro Tour sichern (Library → Menü → Alle sichern). GPX-Dateien sind direkt in Kurvenfokus importierbar.
- 🔄Auto-Repair: repairBrokenMetadata() läuft beim App-Start — rekonstruiert fehlende/falsche endDate aus GPS-Timestamps automatisch.
- 🐛HeartRate-Speicher-Fix: HR-Daten von der Watch wurden korrekt gemerged, aber nie als Chunks auf Disk geschrieben. Jetzt werden HR-Chunks separat persistiert.
- ⚡Große Aufnahmen (250+ MB): Viewer dezimiert Motion/Processed-Daten auf max. 20K Samples mit autoreleasepool pro Chunk statt alles in den RAM zu laden.
Recording-Modi +5 Features
Standard/Developer
WelcomeView
SettingsView
In-App Changelog
Lean ±60°
- 🎚️Recording-Modi: RecordingMode Enum — Standard (GPS+Motion) und Entwickler (alles inkl. LiDAR). Modus-Anzeige im Recording-Screen.
- 👋WelcomeView: Dark Theme Welcome-Screen mit Cyan Akzenten und App-Vorstellung.
- ⚙️SettingsView: Entwickler-Modus Toggle, App-Info und Kontakt-Optionen.
- 📋In-App Changelog: Build-basierter Trigger zeigt automatisch Neuerungen nach Update. Vollständige History in Settings abrufbar.
- 📐Lean-Limits ±60°: Einheitliches Schräglage-Limit auf allen Plattformen.
Major Update +16 Features
Walking-View
G-Scope Radar
4 Walking-Layouts
Auto-Zero-Kalibrierung
Landscape-Modus
Zonen-Farbe
ZIP-Export
Library Multi-Select
Monats-Gruppierung
Orts-Gruppierung
Neu-Kalibrieren
Kompakter Record-Button
Export-Progress
Lean-Gauge zentriert
Achsen-Erkennung
Infoscreen 30 Cards
🏃 Walking-Dashboard (Neu)
- 🎯G-Scope Radar: Echtzeit-G-Kräfte als Radar-Scope — lateral (Links/Rechts), longitudinal (Beschleunigen/Bremsen). Vertikaler Impact als pulsierender Farbring. Peak-G Marker.
- ⏱️Trail-Delay: Einstellbare Persistenz (1s / 3s / 5s / 10s) — steuert wie lange G-Kraft-Spuren auf dem Scope sichtbar bleiben.
- 📊GPS-Qualitätsverlauf: Farbcodierte Balken alle 5 Sekunden zeigen GPS-Empfangshistorie. Grün (excellent) → Gelb (gut) → Orange (schlecht) → Rot (kein Signal).
- 📍Live GPS-Qualität: Kompakte Statuszeile mit Punkte-Anzahl, GPS-Hz, Genauigkeit (±Xm) und IMU-Hz. Farbiger Indikator.
- 🗂️4 Walking-Layouts: Übersicht (alles scrollbar), G-Scope Vollbild, Karte Vollbild, Split (Karte + G-Scope). Umschaltbar via Picker, persistent gespeichert.
🎯 Kalibrierung
- ⚡Auto-Zero-Kalibrierung: Erste ~1 Sekunde nach Aufnahmestart definiert die Null-Lage. Kein separater Kalibrierungsscreen mehr nötig. Funktioniert in jeder Geräteposition.
- 🔄Neu-Kalibrieren (Live): ◎ Button in der Toolbar während der Aufnahme. Sammelt ~1s neue Null-Referenz ohne die Aufnahme zu unterbrechen.
- 📐Achsen-Erkennung: Erkennt automatisch ob Portrait oder Landscape und wählt die richtige Achse (Roll vs. Pitch) für die Schräglagen-Anzeige.
🏍️ Motorrad-Dashboard
- 🎨Zonen-Farbe: Bildschirm-Hintergrund wechselt die Farbe passend zur aktuellen Schräglage — Grün → Gelb → Orange → Rot → Dunkelrot. Ein/Aus via 🎨 Button in der Toolbar.
- 📏Lean-Gauge zentriert: Schräglagen-Gauge ist jetzt vertikal mittig positioniert — sowohl im Portrait als auch im Landscape-Modus.
- 📱Landscape-Modus: iPhone um 90° drehbar. Gauge skaliert und zentriert sich automatisch für den Querformat-Betrieb am Lenker.
📚 Library & Export
- 📦ZIP-Export: Hardware-beschleunigte Kompression (NSFileCoordinator). 85–90% kleiner als JSON. 1h Aufnahme: 150 MB → ~20 MB. Ideal für AirDrop, iCloud, E-Mail.
- ✅Multi-Select: „Auswählen" → Checkboxen → Teilen (ZIP) oder Löschen. Bestätigungs-Dialog mit Anzahl + freizugebende MB.
- 📅Monats-Gruppierung: Aufnahmen nach Monat gruppiert mit Track-Anzahl und Gesamtgröße pro Sektion. „Alle" Button pro Gruppe.
- 📍Orts-Gruppierung: Aufnahmen nach Startort gruppiert via Reverse Geocoding (CLGeocoder). Zeigt Stadtnamen automatisch.
- 🗂️Export-Formatauswahl: Bei Multi-Export: Dialog mit „ZIP komprimiert" vs. „JSON unkomprimiert" und geschätzter Dateigröße.
- ⏳Export-Progress: Halbtransparentes Overlay mit Spinner und Label während der Kompression. Touch deaktiviert bis fertig.
✨ UI & UX
- 🔴Kompakter Record-Button: Roter Aufnahme-Kreis direkt neben dem Profil-Picker. Kein großer Button mehr nötig — sofort erreichbar.
- ⏹️Kompakter Stop-Button: Roter Kreis mit weißem Quadrat neben dem Timer im Walking-Header. Mehr Platz für Widgets.
- ℹ️Erweiterter Infoscreen: 30 Feature-Cards in 8 Sektionen — Profile, Aufnahme, Dashboards, Sensoren, Signal-Verarbeitung, Library, Export, Sicherheit.
Dashboard-Rewrite +12 Features
Lean-Gauge
7-Segment Display
5 Zonen-Farben
9 Widgets
6 Layouts
Live Curve Detection
Waveform
Quickstart
Glass-UI
Peak-Hold
Speed Pills
Vollbild-Modus
- 📊Lean-Gauge Widget: Halbkreis-Gauge mit 7-Segment-Anzeige (0–55°), Peak-Hold, farbigen Zonen und konfigurierbarer Neon-Farbe.
- 🌈5 Schräglagen-Zonen: Grün (0–10°), Gelb (10–20°), Orange (20–30°), Rot (30–40°), Dunkelrot (40–55°) — Farben individuell einstellbar.
- 📐9 Dashboard-Widgets: Lean Gauge, Waveform, Ticker, Curve Counter, Speed, Stats, Altitude, Compass, Mini-Map.
- 🗂️6 Layouts: Lean (Vollbild), Quad (2×2), Tri (1+2), Split H, Split V, Single. Konfigurierbar via Dashboard-Sheet.
- 🛣️Live Curve Detection: Echtzeit-Kurvenzähler (Links/Rechts) basierend auf GPS-Bearing-Änderungen.
- 📈Lean Waveform: Scrollender Verlauf der Schräglagen-Peaks mit konfigurierbarem Sampling-Intervall.
- ⚡Quickstart: 5-Sekunden-Countdown → Kalibrierung → Aufnahme. Überspringbar, deaktivierbar.
- 🫧Glass-UI: Ultra-Thin/Regular Material-Hintergründe für Widgets. Adaptiv für Dark/Light Mode.
Core-Engine Basis-Features
6-Achsen IMU
GPS Tracking
Barometer
LiDAR Scanner
Chunk-Storage
Crash-Recovery
6 Export-Formate
Butterworth-Filter
Jerk-Berechnung
Profile Engine
Adaptive Hz
Racing-Analyse
- 📡6-Achsen IMU (100 Hz): Accelerometer + Gyroscope via Core Motion. Gravity-bereinigt, kalibrierbar. Fusion mit DeviceMotion für Roll/Pitch/Yaw/Quaternion.
- 🛰️GPS Tracking: CLLocationManager mit Background-Support. Lat, Lon, Altitude, Speed, Course, Accuracy. ~1 Hz kontinuierlich.
- 🏔️Barometer: CMAltimeter für relative Höhenänderung und Luftdruck — GPS-unabhängig.
- 📐LiDAR Scanner: ARKit Scene Reconstruction auf Pro-Geräten. Export als OBJ-Mesh mit Vertices und Faces.
- 💾Chunk-Storage: Alle 3.000 Samples (30s) auf Disk geschrieben. RAM-schonend auch bei Stunden-Aufnahmen. Auto-Flush bei Chunk-Grenze.
- 🔄Crash-Recovery: ActiveRecordingMarker + ChunkWriter. Bei App-Crash werden alle bisher geschriebenen Chunks automatisch wiederhergestellt.
- 📤7 Export-Formate: GPX (Komoot, Strava), Kurvenfokus (GPS+IMU, GPS-only, Full 100Hz), CSV (Excel, Python), JSON (Rohdaten), ZIP (komprimiert).
- 🔬Signal-Pipeline: Butterworth (4. Ordnung), Low-Pass, High-Pass, Moving Average, Frequenzband-Trennung, Jerk-Berechnung — alles pro Profil konfigurierbar.
- 🔋Adaptive Hz: ProfileEngine überwacht Temperatur und Akku. Degradiert automatisch: 100 → 50 → 25 → 10 Hz bei Überhitzung.
- 🏁Racing-Analyse: Lap-Detection (Start/Finish Gate), Sektor-Analyse, Multi-Session-Vergleich.
- ⌚Multi-Device Sync: BLE Time-Sync zwischen iPhone und Apple Watch für synchronisierte Mehrgeräte-Aufnahmen.
- 🏠Hintergrund-Aufnahme: GPS Background Mode hält die App aktiv. Aufnahme läuft weiter bei gesperrtem Bildschirm.