[ Hinweis ]
Vigor ist ein rein privates, nicht-kommerzielles Lern- und Forschungsprojekt. Es ist aus persönlichem Interesse an Bluetooth-LE-Protokollen entstanden und an der Frage, wie Fitness-Wearables ihre Werte berechnen. Vigor wird nicht vertrieben und weder als App noch als Quellcode veröffentlicht; das ist auch nicht geplant.
Das Projekt steht in keiner Verbindung zu Herstellern von Wearables oder Fitness-Apps und wird von diesen weder unterstützt noch autorisiert. Genannte Marken und Produktnamen gehören ihren jeweiligen Inhabern. Hast du als Rechteinhaber Bedenken zu Inhalten dieser Seite, genügt eine kurze Nachricht an jens.koehler@dw83.de – ich passe die Seite dann umgehend an.
Vigor ist ein privater Prototyp rund um Schlaf, Erholung und Belastung: Ein Fitness-Sensor wird per Bluetooth LE ausgelesen, die iPhone-App zeigt die Auswertung, ein eigenes Backend speichert die Daten.
Ausgangslage
Wearables liefern spannende Daten – aber die Auswertung hängt meist an einem Abo und an einer Cloud, auf die man keinen Einfluss hat. Ich wollte verstehen, was in den Zahlen steckt, und sie selbst besitzen.
Die Idee
Eine eigene Pipeline vom Sensor bis zum Dashboard: Ein Swift-Package spricht das Gerät über BLE an, die App berechnet Erholung, Belastung und Schlafbedarf, das Backend speichert Verläufe und Trends.
3
Kernwerte: Schlaf, Erholung, Belastung
BLE
Eigenes Protokoll-Toolkit
iOS 17
SwiftUI & Swift 6
Architektur
- Bluetooth-Schicht: eigenes Swift-Package für die Kommunikation per Core Bluetooth.
- iPhone-App in SwiftUI mit Live-Herzfrequenz, Journal, Trends und Gesundheits-Monitor.
- Backend: Node 22, Express, MySQL 8 und zod-validierte APIs.
- Dashboard in React/Vite – ausschließlich für den eigenen Gebrauch.
Learnings
[ Learning ]
Bluetooth-Low-Energy-Geräte sind kleine verteilte Systeme: Puffer, Wiederverbindung und Zeitstempel sind wichtiger als jede Grafik. Ein Simulator-Sensor hat die Entwicklung massiv beschleunigt.

