← PWR.MRGR
DE EN
Dokumentation

So funktioniert PWR.MRGR

Stand: 10.08.2026 · Bezogen auf die aktuelle App-Store-Version

Eine praktische Anleitung zu jedem Teil der App — Trainer verbinden, Workout bauen oder diktieren, FTP-Test fahren, und was mit deinen Daten passiert. Fehlt etwas? Schreib uns.

Documentation

How PWR.MRGR works

As of: Aug 10, 2026 · App version referenced: current App Store build

A practical guide to every part of the app — connecting a trainer, building or dictating a workout, running an FTP test, and what happens to your data. If something's missing, write us.

Erste Schritte

PWR.MRGR läuft auf iPhone und iPad, iOS/iPadOS 17 oder neuer. Kein Account, keine Anmeldung — die App funktioniert von Anfang an vollständig offline.

Öffne den Tab RIDE und tippe auf den Trainer-Picker, um per Bluetooth nach Geräten zu suchen. Die App sucht gleichzeitig nach vier unabhängigen Gerätearten: einem Smart-Trainer, einem Herzfrequenz-Gurt, einem Trittfrequenz- und einem Geschwindigkeitssensor — jede kann von einem anderen Gerät kommen.

Ist ein Gerät einmal verbunden, merkt sich die App es und verbindet beim nächsten App-Start automatisch neu — außer du hast es zuletzt bewusst manuell getrennt, dann bleibt es nur in der Liste stehen, bis du es wieder antippst. Praktisch, wenn du zwischen mehreren Rädern oder Sensor-Sets wechselst.

Kein Trainer zur Hand? Auch draußen fahren geht — starte einen Free Ride und wähle "Outdoor", wenn du gefragt wirst. GPS zeichnet Route und Geschwindigkeit auf, kein Trainer oder Power-Meter nötig.

Workouts

Der Tab WORKOUTS enthält eine Bibliothek mit 100 vorgefertigten Workouts (Zwift-artige Steady-State-, Intervall- und Rampenstrukturen) sowie alles, was du selbst baust — organisiert in umbenennbaren Ordnern und farbcodierten Kategorien (Recovery bis Anaerobic).

Von Hand bauen

Jedes Workout ist ein Stapel aus Blöcken; jeder Block ist entweder ein Steady-Segment oder eine Rampe, als Ziel entweder feste Watt oder %FTP. %FTP-Ziele skalieren automatisch mit, wenn du deine FTP im Profil später änderst.

Per Sprache bauen

Mikrofon antippen, diktieren, Aufnahme wieder stoppen — die App baut das Workout und schließt den Dialog. Funktioniert auf Deutsch oder Englisch, umschaltbar im Sprachdialog, läuft komplett auf dem Gerät.

Steady-Block „Block 10 Minuten aufwärmen" · „Block 5 Minuten bei 205 Watt" · „Block 10 Minuten bei 80% FTP"
Intervalle „Intervall 5x 3 Minuten Schwelle Pausen 2 Minuten" · „Intervall 10x 1 Minute bei 200% FTP Pausen 1 Minute"
Rampe „Rampe 150 auf 300 Watt über 10 Minuten" · „Rampe 70% FTP auf 150% FTP über 10 Minuten"
Treppe „Treppe 2 Minuten von 150 auf 300 Watt in 50 Watt Schritten"

„Zurück" sagen löscht das zuletzt gesprochene Wort. Zonen-Wörter wie „aufwärmen", „Schwelle" oder „VO2" werden automatisch auf passende %FTP-Ziele abgebildet. Jeder Abschnitt braucht eine Dauer — ohne Dauer wird er verworfen statt den Parser abstürzen zu lassen. Die Kategorie des fertigen Workouts wird automatisch anhand der Normalized Power gesetzt, nicht auf einem Standardwert belassen.

Trittfrequenz-Ziel

Steady- und Intervall-Blöcke können zusätzlich zum Watt-Ziel ein optionales Trittfrequenz-Ziel bekommen (40–140 rpm, per Toggle zuschaltbar). Beim Intervall hat jeder Step sein eigenes Ziel — Work und Rest getrennt, genau wie bei Dauer und Wattzahl. Rein beratend: kein Trainer kann Trittfrequenz erzwingen, das Ziel speist nur den Live-Hinweis im Ride-Screen.

Zeit pro Zone

Der Workout-Editor zeigt eine Auswertung, wie sich die Gesamtdauer auf die Leistungszonen verteilt — als beschriftete Balken. Rampen werden dabei sekundenweise ausgewertet statt über einen Mittelwert, eine Aufwärmrampe verteilt sich also korrekt über mehrere Zonen statt in einer einzigen zu landen.

Trainingspläne

Der Tab PLANS ist getrennt von deiner Workout-Bibliothek, damit die einzeln datierten Tage eines mehrwöchigen Plans sie nicht zumüllen. Enthalten sind 21 vorgefertigte mehrwöchige Pläne (FTP Builder, Fast Track Fitness, Your First Century, VO2 Max Booster und weitere), oder du baust deinen eigenen von Grund auf: Name, Wochenzahl und Tage pro Woche festlegen, dann jeden Tag füllen — mit einem Workout aus der Bibliothek, einem selbst gebauten, einem diktierten, oder einem FTP-Test.

Einen Plan kannst du wochenweise in den Kalender übernehmen oder auf einmal mit nur einem Startdatum — Ruhetage werden dabei nie eingeplant. „Scheduled"- und „Done"-Badges zeigen auf einen Blick, was schon im Kalender liegt bzw. schon gefahren wurde; das Entfernen eines Plans aus dem Kalender löscht dessen Termine (inkl. Erinnerungen), ohne den Plan selbst anzurühren.

Fahren

Der ERG-Modus sendet die Ziel-Watt deines Workouts Segment für Segment direkt an den Trainer, mit einem manuellen Power-Offset zum Nachjustieren nach oben oder unten. Rampen aktualisieren sich mittlerweile kontinuierlich statt in sichtbaren Sprüngen. Kann dein verbundener Trainer gar keine Ziel-Watt-Steuerung, blendet sich der ERG-Schalter komplett aus, statt nur ausgegraut dazustehen.

Das Live-HUD — Segment-Karte, Timeline, Graphen, Werte-Kacheln — lässt sich per Drag in beliebiger Reihenfolge anordnen, einzelne Werte-Kacheln (Watt, Trittfrequenz, Herzfrequenz, W/kg, Distanz, Kalorien) sind ein-/ausblendbar. Eine Kachel, die für die aktuelle Fahrt gar nicht zutreffen kann (z. B. Trittfrequenz ohne Trittfrequenzsensor), taucht erst gar nicht auf; eine, die zutreffen könnte, aber noch keinen Wert geliefert hat (z. B. GPS-Fix steht noch aus), zeigt „N/A" statt zu verschwinden.

Trittfrequenz-Ziel live

Trägt das laufende Segment ein Trittfrequenz-Ziel, wechselt die RPM-Kachel von der festen Skala auf eine symmetrische Abstandsskala zum Ziel — zu schnell zählt genauso als daneben wie zu langsam. Die Beschriftung selbst wird zum Hinweis („RPM ↑ 90"), das PiP-Fenster färbt identisch. Die Verlaufsgraphen bleiben bewusst auf der festen Skala.

Picture in Picture

Manuell gestartet über den Ride-Screen, dann in eine andere App wechseln — ein kleines schwebendes Fenster zeigt weiterhin live Watt, Trittfrequenz, Herzfrequenz und verstrichene Zeit, plus eine Mini-Workout-Timeline bei einem strukturierten Workout. Startet nie von selbst beim Verlassen der App.

Auto-Pause

Erkennt Trittfrequenz 0 für eine von dir einstellbare Schwelle (Default 10 Sekunden, einstellbar 3–60 s) und pausiert automatisch mit Overlay, setzt beim Wiederantreten selbstständig fort. In den Ride-Einstellungen komplett abschaltbar.

Tick-Rate & Bildschirm

Live-Werte und Graph-Updates laufen wahlweise im 0,25-, 0,5-, 1-, 2- oder 3-Sekunden-Takt (Default 0,5 s). Aufgezeichnet wird davon unabhängig höchstens mit 1 Hz. Der Bildschirm bleibt während der gesamten Fahrt an.

FTP-Test

Ein eigener „FTP Test"-Button sitzt unterhalb der Workout-Auswahl im Ride-Screen, mit Wahl zwischen zwei Protokollen. Kann dein Trainer keine Ziel-Watt halten, verschwindet die Ramp-Test-Option (ohne ERG bedeutungslos) und das Sheet startet direkt mit dem 20-Minuten-Test.

ProtokollAufbauFTP-Formel
Ramp TestKlettert 20 W pro Intervall nach festem Schema, läuft im ERG-Modus75 % × bester rollierender 1-Minuten-Schnitt
20-Minuten-Test10 Min. Einfahren (50 % FTP) · 20 Min. Belastung · 5 Min. Cooldown (40 % FTP)95 % × Durchschnittsleistung der 20 Minuten

ERG ist beim gesamten 20-Minuten-Test bewusst deaktiviert — eine erzwungene feste Wattzahl würde dem Sinn widersprechen, die eigene Grenze zu finden. Stattdessen wählst du einen von drei Pacing-Modi: Manual (prozentualer Auf-/Abschlag relativ zu einer editierbaren FTP-Baseline, als echtes ERG-Ziel gesendet), Auto by Cadence (experimentell — Widerstand passt sich an, um eine Ziel-Trittfrequenz zu halten), oder No Resistance/ERG (Trainer bleibt im eigenen Grundzustand).

Ein Countdown-Overlay („BE READY" → 9…1 → „GO!") führt in die Hauptbelastung. Nach dem Test zeigt ein Ergebnis-Sheet deine neue FTP mit farbigem Pfeil im Vergleich zum aktuellen Profilwert — übernehmen oder den alten Wert behalten. Picture-in-Picture steht während eines Tests nicht zur Verfügung, das Pacing-Overlay ist für den direkten Blick gedacht.

Kalender & Verlauf

Abgeschlossene Rides erscheinen als farbige Balken je Session; mehrere Sessions am selben Tag stehen als eigene, nebeneinanderstehende Balken statt zu einem zusammengefasst. Tippe auf einen Tag, um ihn inline aufzuklappen und jede Session sowie geplante Workouts mit Erinnerungszeit zu sehen. Ein Tap auf einen leeren zukünftigen Tag öffnet direkt den Planungs-Dialog — Workout wählen und optional eine lokale Erinnerung festlegen, ohne Kalenderzugriff und ohne Server.

Öffnest du eine Session, siehst du live-interaktive Charts, neu aus der .fit-Datei entschlüsselt: eine Watt-Timeline (Tap/Drag für Watt-/Zeit-Marker), deine persönliche Power-Duration-Kurve dieser Fahrt, eine Routenkarte bei vorhandenen GPS-Daten, sowie alle weiteren Felder, die die Datei tatsächlich enthält (Distanz, Höhenmeter, Temperatur, L/R-Pedal-Balance).

Rides importieren

Kalender-Toolbar → Import-Menü → eine einzelne .fit-Datei oder ein ganzer Ordner (auch aus Google-Drive- oder Dropbox-App-Ordnern). Einzeldatei-Importe zeigen vor dem Speichern ein Review-Sheet mit berechneten Werten; Ordner-Importe speichern direkt. Dateien, die einer bestehenden Session ähneln (Startzeit innerhalb von 60 Sekunden), fragen vor dem Speichern nach — beim Ordner-Import einmal für den ganzen Batch.

Gesamt-Power-Kurve

Erreichbar über den Graph-Button in der Kalender-Toolbar — deine beste Durchschnittsleistung für jede getestete Effort-Länge (1 Sekunde bis zur längsten Fahrt) über einen wählbaren Zeitraum (Woche/Monat/Jahr/Gesamt), eine klassische Mean-Maximal-Power-Kurve statt eines reinen Zeitverlaufs.

Daten & Sicherheit

Jede Fahrt wird als .fit-Datei aufgezeichnet und auf dem Gerät mit AES-256-GCM verschlüsselt, mit einem zufälligen 256-Bit-Schlüssel in der iOS-Keychain — nie aus deiner PIN abgeleitet. Ohne deine ausdrückliche Aktion verlässt nichts dein Telefon.

PIN Eine 6-stellige PIN sperrt Export und jeden ausgehenden Versand — sie ist eine Bestätigungssperre, nicht der Verschlüsselungsschlüssel. Gespeichert wird nur ein gesalzener SHA-256-Hash. Fünf Fehlversuche lösen eine eskalierende Sperrzeit aus (nie Datenverlust, nur eine Verzögerung).
Export Profil → „Export Ride Data" → PIN → Rides auswählen oder alle exportieren. Dateien werden nur im Arbeitsspeicher entschlüsselt und direkt per nativem Datei-Exporter in die Dateien-App geschrieben — nie unverschlüsselt zwischengespeichert.
Send to Strava PIN-geschützt, eine Fahrt nach der anderen aus dem Kalender-Kontextmenü. Erfordert vorher einmalig „Connect Strava" im Profil; ein schlankes Backend übernimmt ausschließlich den OAuth-Token-Austausch (nötig, da Strava kein PKCE für native Apps unterstützt) und bekommt deine Trainingsdaten nie zu Gesicht.
Send to Apple Health Gleicher PIN-geschützter Ablauf, aber komplett lokal — keine Netzwerkverbindung. Schreibt Watt, Trittfrequenz, Herzfrequenz, Distanz, Energie und GPS-Route (bei Outdoor-Rides) als nativen HealthKit-Workout.
intervals.icu Push einer fertigen Fahrt, sobald du deinen Account selbst verbunden hast — nur die von dir gewählte Session, nur auf deine Aktion hin, nie automatisch im Hintergrund.

Alle Details stehen in der Datenschutzerklärung.

Profil & Sprache

FTP, Gewicht, Alter und Maximalpuls stellst du per Stepper oder per Tap-to-open Wheel-Picker ein. Das Theme ist standardmäßig Dark (System und Light stehen ebenfalls zur Wahl). Die App-Oberfläche gibt es in 21 Sprachen — Englisch, Deutsch, Niederländisch, Französisch, Spanisch, Portugiesisch, Italienisch, Chinesisch, Arabisch, Farsi, Urdu, Japanisch, Hindi, Koreanisch, Russisch, Polnisch, Türkisch, Indonesisch, Tschechisch, Slowakisch und Slowenisch — für Buttons, Labels und Beschreibungen. Workout-Inhalte und Zonennamen bleiben bei lateinschriftlichen Sprachen bewusst auf Englisch (international gebräuchliche Fachbegriffe), werden aber für nicht-lateinische Schriftsysteme übersetzt.

Hinweis: Der Sprach-Workout-Builder selbst versteht unabhängig von deiner Oberflächensprache nur Deutsch und Englisch — siehe Workouts oben.

Im Profil findest du außerdem Change PIN, Export Ride Data, und ein Diagnose-Log (nur Bluetooth-Verbindungsdetails, keine persönlichen Daten), das du bei Verbindungsproblemen mit einem bestimmten Trainer teilen kannst — mit „Clear Log" auf einen Tap.

Trainer- & Sensor-Kompatibilität

Die App erkennt beim Verbinden automatisch, welches Protokoll ein Gerät anbietet:

ProtokollVerwendet vonStatus
FTMS (Bluetooth-Standard)die meisten neueren Smart-Trainer, u. a. Wahoo, EliteVorgebaut, noch nicht auf echter Hardware verifiziert
ANT+ FE-C über BLETacx Neo und andere Tacx-Modelle ohne FTMSGetestet, im täglichen Einsatz
Cycling Power Service (read-only)einfache Power-Meter ohne Steuerung — getestet mit SRAM Quarq, 4iiii und StagesGetestet, funktioniert

Herzfrequenz-Gurte und Trittfrequenz-/Geschwindigkeitssensoren verbinden sich über ihre Standard-Bluetooth-Services, unabhängig davon, welches Trainer-Protokoll gerade genutzt wird — Wahoo-Geschwindigkeitssensoren und Wahoo-Herzfrequenzgurte sind ebenfalls getestet und funktionieren.

Fehler melden

Geht etwas schief — vor allem bei der Trainer-Verbindung — hilft uns ein Diagnose-Log am schnellsten weiter, um das Problem nachzuvollziehen.

Wo du es findest

Profil → Diagnostics. Das Log enthält ausschließlich technische Bluetooth-Verbindungsdetails (Gerätenamen, Service-Handshakes, Fehlercodes) — keine persönlichen Daten und keine Trainingsdaten.

An uns senden

Tippe im Diagnostics-Screen auf das Export-/Teilen-Symbol, um das System-Sheet zum Teilen zu öffnen, und schick uns das Log per E-Mail an hello@pwrmrgr.de, über die Kontaktseite oder auf unserem Discord-Server. Nenn dabei am besten Marke und Modell des Trainers oder Sensors sowie kurz, was passiert ist — damit wir das Problem schneller nachstellen können.

Einmal gesendet, kannst du das Protokoll über „Clear Log" direkt im Diagnostics-Screen für das nächste Mal zurücksetzen.

Bekannte Einschränkungen

Lieber hier auflisten, als dass du sie überraschend selbst entdeckst:

  • Wahoo/Elite und andere reine FTMS-Trainer sind ungetestet. Der komplette FTMS-Pfad ist nach Spezifikation vorgebaut, aber noch nie gegen echte Hardware dieser Hersteller verifiziert.
  • Auto by Cadence ist experimentell — bisher nur kurz auf einem Tacx Neo 2T im Feld getestet.
  • Rohe Widerstandslevel-Kommandos sind nicht mit echten Watt kalibrierbar. Verifiziert auf einem Tacx Neo 2T: ein bestimmter Widerstands-Prozentsatz ergibt keine verlässliche Wattzahl — genau deshalb nutzt der FTP-Test-Manual-Modus stattdessen ein echtes ERG-Ziel.
  • Power-Meter-only-Setups (ohne steuerbaren Trainer) sind zurückgestellt — die Erkennung existiert, aber ohne ERG-Modus auf einem rein lesenden Gerät.
  • Kein Cloud-Sync, kein automatischer Export — bewusst so. Alles bleibt auf dem Gerät, bis du aktiv exportierst, zu Strava sendest, zu Apple Health sendest oder zu intervals.icu pushst.
  • Outdoor-GPS ist nur auf einem Gerät getestet (iPhone XR), insbesondere Hintergrund-Tracking bei gesperrtem Bildschirm, wofür „Always"-Standortzugriff nötig ist.
  • PIN-Verlust blockiert nur den Export, nicht den Zugriff in der App — es gibt keinen PIN-Reset außer „aktuelle PIN eingeben, dann neue setzen"; deine Ride-Historie bleibt uneingeschränkt nutzbar.
  • Normalized Power ist bei live aufgenommenen Rides aktuell eine Näherung (Durchschnittsleistung statt echter 30-Sekunden-Rolling-4th-Power-Berechnung). Importierte .fit-Dateien bekommen die echte Berechnung, da alle Samples vorher vollständig vorliegen.
  • Der Sprach-Workout-Parser versteht nur Deutsch und Englisch, mit einem festen Muster — keine freie Formulierung in anderen Sprachen.
  • Vor allem auf iPhone XR getestet (LCD-Display). iPad-Layouts sind mittlerweile auch auf echter Hardware verifiziert (iPad 11), nicht nur im Simulator.

Noch offene Fragen? Schau in die FAQ oder schreib uns direkt.

Getting started

PWR.MRGR runs on iPhone and iPad, iOS/iPadOS 17 or later. No account, no sign-up — the app works fully offline from first launch.

Open the RIDE tab and tap the trainer picker to scan for devices over Bluetooth. The app looks for four independent device roles at once: a smart trainer, a heart-rate strap, a cadence sensor and a speed sensor — each can come from a different piece of hardware.

Once a device connects, it's remembered and reconnects automatically on the next app launch — unless you manually disconnected it last time, in which case it stays listed but won't auto-connect again until you tap it. Useful if you switch between bikes or sensor sets.

No trainer? Riding outdoors works too — set up a Free Ride and choose "Outdoor" when prompted. GPS records your route and speed, no trainer or power meter required.

Workouts

The WORKOUTS tab holds a 100-workout built-in library (Zwift-style steady-state, interval and ramp structures) plus whatever you build yourself, organized into renameable folders and colour-coded categories (Recovery through Anaerobic).

Building by hand

Each workout is a stack of blocks; each block is a segment of steady power or a ramp, targeted either as fixed watts or as %FTP. %FTP targets automatically rescale if you update your FTP in your profile later.

Building by voice

Tap the mic, start dictating, stop recording — the app builds the workout and closes the dialog. Works in English or German, switchable in the voice dialog, and runs entirely on-device.

Steady block "Block 10 minutes warm up" · "Block 5 minutes at 205 watts" · "Block 10 minutes at 80% FTP"
Intervals "Interval 5x 3 minutes threshold pause 2 minutes" · "Interval 10x 1 minute at 200% FTP pause 1 minute"
Ramp "Ramp 150 to 300 watts over 10 minutes" · "Ramp 70% FTP to 150% FTP over 10 minutes"
Staircase "Staircase 2 minutes from 150 to 300 watts in 50 watt steps"

Say "back" to delete the last word you spoke. Zone words like "warm-up", "threshold" or "VO2" map to preset %FTP targets automatically. Every section needs a duration — anything without one is dropped rather than crashing the parser. The finished workout's category is set automatically from its normalized power, not left at a default.

Cadence target

Steady and interval blocks can carry an optional cadence target alongside their power target (40–140 rpm, toggle to enable). On an interval, work and rest steps each get their own — separate, just like their duration and wattage already are. Purely advisory: no trainer can force cadence, the target only drives the live hint on the ride screen.

Time in zone

The workout editor shows a breakdown of how the total duration splits across power zones, as labelled bars. Ramps are evaluated second by second rather than averaged, so a warm-up ramp correctly spreads across several zones instead of landing in just one.

Training plans

The PLANS tab is separate from your workout library, so a multi-week plan's individual dated days don't clutter it. It ships with 21 pre-built multi-week plans (FTP Builder, Fast Track Fitness, Your First Century, VO2 Max Booster and others), or you can build your own from scratch: set a name, a number of weeks and days per week, then fill each day with a library workout, a hand-built one, a dictated one, or an FTP test.

Push a plan to your calendar week by week, or all at once with a single start date — rest days are never scheduled. "Scheduled" and "Done" badges show at a glance what's already on the calendar or already ridden, and unscheduling a plan removes its calendar entries (and reminders) without touching the plan itself.

Riding

ERG mode sends your workout's target watts straight to the trainer segment by segment, with a manual power offset if you want to nudge it up or down. Ramps now update continuously rather than in visible steps. If your connected trainer can't accept a target-power command at all, the ERG switch simply disappears rather than sitting there greyed out.

The live HUD — segment card, timeline, graphs, value tiles — can be dragged into whatever order you prefer, and individual metric tiles (power, cadence, heart rate, W/kg, distance, calories) can be toggled on or off. A tile that can't apply to the current ride (say, cadence with no cadence sensor) simply doesn't show up; one that could apply but hasn't reported a value yet (e.g. GPS still acquiring a fix) shows "N/A" instead of vanishing.

Live cadence target

When the current segment carries a cadence target, the RPM tile switches from its fixed scale to a symmetric distance-to-target scale — too fast counts as off-target exactly like too slow. The tile's own label becomes the hint ("RPM ↑ 90"), and the PiP window colours the same way. History graphs deliberately stay on the fixed scale.

Picture in picture

Start it manually from the ride screen and switch to another app — a small floating window keeps showing live watts, cadence, heart rate and elapsed time, plus a mini workout timeline if you're running a structured session. It never starts on its own when you background the app.

Auto-pause

Detects zero cadence for a threshold you set (default 10 seconds, adjustable 3–60s) and pauses automatically with an on-screen overlay, resuming the moment you start pedalling again. Can be switched off entirely in ride settings.

Tick rate & screen

Live values and graph updates run at 0.25, 0.5, 1, 2 or 3 second intervals (default 0.5s) — your choice. Recording is capped at 1Hz regardless of tick rate. The screen stays awake for the whole ride.

FTP test

A dedicated "FTP Test" button sits below the workout picker on the ride screen, with a choice of two protocols. If your trainer can't hold a target power, the Ramp Test option disappears (it's meaningless without ERG) and the sheet opens straight into the 20-minute test instead.

ProtocolStructureFTP formula
Ramp TestClimbs 20W per interval on a fixed schedule, runs in ERG mode75% × best rolling 1-minute average
20-Minute Test10 min warm-up (50% FTP) · 20 min effort · 5 min cooldown (40% FTP)95% × 20-minute average power

ERG is deliberately disabled for the whole 20-minute test — a forced fixed wattage would defeat the point of finding your real limit. Instead you choose one of three pacing modes: Manual (set a % adjustment against an editable FTP baseline, sent as a real ERG target), Auto by Cadence (experimental — resistance adjusts to hold a target cadence), or No Resistance/ERG (trainer stays in its own base state).

A countdown overlay ("BE READY" → 9…1 → "GO!") leads into the main effort. After the test, a result sheet shows your new FTP with a coloured arrow against your current profile value — apply it or keep the old one. Picture-in-picture isn't available during a test; the pacing overlay is meant to be looked at directly.

Calendar & ride history

Completed rides show as colour-coded bars per session; multiple sessions on the same day sit as separate bars rather than one merged block. Tap any day to expand it inline and see every session and any planned workout with its reminder time. Tapping an empty future day opens the planning dialog directly — pick a workout and an optional local reminder notification, no calendar permission or server involved.

Opening a session shows live, interactive charts re-decoded from its .fit file: a power timeline (tap/drag for a value+time marker), your personal power-duration curve for that ride, a route map when GPS data exists, and any extra fields the file actually contains (distance, elevation gain, temperature, L/R power balance).

Importing rides

Calendar toolbar → Import menu → a single .fit file or a whole folder (including from Google Drive or Dropbox app folders). Single-file imports get a review sheet with computed stats before saving; folder imports save directly. Files that look like duplicates of an existing session (start time within 60 seconds) prompt for overwrite vs. keep, once per batch for folder imports.

Overall power curve

Reachable from the calendar toolbar's graph button — your best average power for every tested effort length (1 second up to your longest ride) across a selectable period (week/month/year/all-time), a classic mean-maximal-power curve rather than a simple time series.

Data & security

Every ride is recorded as a .fit file and encrypted on-device with AES-256-GCM, using a random 256-bit key held in the iOS Keychain — never derived from your PIN. Nothing leaves your phone without an explicit action on your part.

PIN A 6-digit PIN gates export and every outbound send — it's a confirmation lock, not the encryption key. Only a salted SHA-256 hash of it is stored. Five wrong attempts trigger an escalating lockout (never data loss, only a delay).
Export Profile → "Export Ride Data" → PIN → pick rides or export all. Files are decrypted only in memory and written straight to the Files app via the native file exporter — never cached unencrypted on disk.
Send to Strava PIN-gated, one ride at a time from the calendar context menu. Requires connecting Strava once in your profile first; a lightweight broker backend handles only the OAuth token exchange (required since Strava doesn't support PKCE for native apps) and never touches your training data.
Send to Apple Health Same PIN-gated flow, entirely local — no network call at all. Writes power, cadence, heart rate, distance, energy and GPS route (for outdoor rides) as a native HealthKit workout.
intervals.icu Push a finished workout once you've connected your account yourself — only the session you explicitly choose, only on your action, never automatically in the background.

Full details live in the privacy policy.

Profile & language

FTP, weight, age and max heart rate are set via stepper or a tap-to-open wheel picker. Theme defaults to Dark (System and Light are also available). The app interface supports 21 languages — English, German, Dutch, French, Spanish, Portuguese, Italian, Chinese, Arabic, Farsi, Urdu, Japanese, Hindi, Korean, Russian, Polish, Turkish, Indonesian, Czech, Slovak and Slovenian — covering buttons, labels and descriptions. Workout content and zone names stay in English for Latin-script languages (they're internationally understood training terms) but are translated for non-Latin scripts.

Note: the voice workout builder itself understands only English and German regardless of your interface language — see Workouts above.

Profile also holds Change PIN, Export Ride Data, and a Diagnostics log (Bluetooth connection details only, no personal data) you can share if you hit a connection issue with a specific trainer — with a one-tap "Clear Log".

Trainer & sensor compatibility

The app auto-detects whichever protocol a device advertises when it connects:

ProtocolUsed byStatus
FTMS (Bluetooth standard)most newer smart trainers, incl. Wahoo, EliteBuilt, not yet verified on real hardware
ANT+ FE-C over BLETacx Neo and other Tacx models without FTMSTested, in daily use
Cycling Power Service (read-only)plain power meters, no control — tested with SRAM Quarq, 4iiii and StagesTested, working

Heart-rate straps and cadence/speed sensors connect over their standard Bluetooth services independently of which trainer protocol is in use — Wahoo speed sensors and Wahoo heart-rate straps are tested and confirmed working.

Reporting a problem

If something goes wrong — especially a trainer connection issue — the fastest way to help us track it down is to send a diagnostic log.

Where to find it

Profile → Diagnostics. This log contains only technical Bluetooth connection details (device names, service handshakes, error codes) — no personal data and no ride data.

Sending it to us

Tap the export/share icon on the Diagnostics screen to open the system share sheet, then send it to us by email at hello@pwrmrgr.de, via the contact page, or on our Discord server. Mention which trainer or sensor brand and model you were using and briefly what happened — it helps us reproduce the issue faster.

Once sent, you can tap "Clear Log" right there on the Diagnostics screen to reset it for next time.

Known limitations

We'd rather list these than have you discover them by surprise:

  • Wahoo/Elite and other pure-FTMS trainers are untested. The full FTMS path is built to spec but not yet verified against real hardware from these brands.
  • Auto by Cadence pacing is experimental — only lightly field-tested so far, on a Tacx Neo 2T.
  • Raw resistance-level commands aren't watt-calibratable. Verified on a Tacx Neo 2T: a given resistance percentage doesn't reliably map to a specific wattage — which is exactly why FTP-test Manual mode uses a real ERG target instead.
  • Power-meter-only setups (no controllable trainer) are deprioritized — detection exists, but no ERG mode is possible on a read-only device.
  • No cloud sync, no automatic export — by design. Everything stays on-device until you explicitly export, send to Strava, send to Apple Health, or push to intervals.icu.
  • Outdoor GPS is tested on one device only (iPhone XR), particularly background tracking with a locked screen, which needs "Always" location access.
  • Losing your PIN blocks export only, not in-app access — there's no PIN-reset flow beyond entering the current PIN to set a new one; your ride history itself stays fully usable.
  • Normalized Power for live-recorded rides is currently an approximation (average power, not a true 30s-rolling 4th-power calculation). Imported .fit files get the real calculation, since every sample is already available upfront.
  • The voice workout parser understands only English and German, with a fixed pattern grammar — no free-form phrasing in other languages.
  • Tested primarily on iPhone XR (LCD display). iPad layouts are now also verified on real hardware (iPad 11), not just in the simulator.

Still stuck? Check the FAQ or write us directly.