package icon

PAIesque

Fitness tracker and analyzer based on published scientific papers
New in version 82
# Release Notes – v82

**Sharing & Device Names**
- Shared recordings now include the original device display name directly in the file, ensuring correct names (e.g. "HRM 600" instead of "HRM_600") appear in group member lists and the device spinner.
- The server correctly reads device names from the new CSV column, and accepts arbitrary BLE advertising names via URL encoding.
- Status updates now only upload for actively recording devices, preventing stale data from idle sensors.

**Map & Remot
PAIesque helps athletes and fitness enthusiasts monitor their training through a simple three-step logic:



1. Measure training impulse (TRIMP) — The faster and longer your heart beats, the higher your daily score.

2. Analyze patterns over time — Track how your TRIMP accumulates and distributes

3. Monitor your body's response — Compare how your body reacts to training load


PAIesque is different from commercial fitness apps (e.g. Garmin,
Whoop, Polar). Every metric comes from published, peer-reviewed research with transparent methods that can be calculated from heart rate data alone. The app only includes metrics we can verify and reproduce from first principles — no proprietary black boxes, no undisclosed algorithms. And, all your data stays on your device.



1. TRIMP:


Banister TRIMP — The original exponential model with sex-specific coefficients (a=0.64/0.86, b=1.92/1.67) [Banister, 1991; Morton et al., 1990]

iTRIMP — Individualized TRIMP with customizable b coefficient (1.5-4.0) [Stagno et al., 2007; Akubat et al., 2012]

LT-TRIMP — Lactate Threshold-based model with β coefficient (0.04-0.11) and smooth transition at LT [Cheng et al., 1992; Mader et al., 1976; Gaesser and Poole, 1986]

PAI-esque — PAI-inspired metric using EWMA (not the official commercial algorithm) [Nes et al., 2017; Kieffer et al., 2021]



2. Patterns over time:



Intensity zones — Time and TRIMP spent in low/moderate/high zones (polarized training model) [Seiler and Tønnessen, 2009; Stöggl and Sperlich, 2014]

EWMA — Exponentially Weighted Moving Average for rolling loads (more sensitive than simple averages)

ACWR — Acute:Chronic Workload Ratio for injury risk monitoring (0.8-1.3 = sweet spot) [Murray et al., 2017; Griffin et al., 2021; Gabbett, 2016]

Polarized Training Score — 0-100 measure of how closely your distribution matches your targets



3. Body's response:



Resting Heart Rate (RHR) — Calculated from your defined sleep window (adaptive percentile: 5th-15th)

Heart Rate Variability (HRV) — Daily RMSSD averages during sleep [Task Force, 1996; Plews et al., 2013; Buchheit, 2014]

EWMA trends — Exponentially weighted moving averages for both RHR and HRV (acute and chronic windows)

Combined interpretation — RHR ↓ + HRV ↑ = positive adaptation; RHR ↑ + HRV ↓ = possible fatigue



Data Management:



• CSV export/import

• Complete backup/restore (db)

• All data stays on your device — no accounts, no cloud uploads, no tracking



Creative Use Cases:



Coach analyzing athletes — Import athlete exports, analyze charts, provide feedback

Research analysis — Export CSV files for custom analysis in R, Python, or spreadsheets

Switch between athletes — Use "Delete All Data" + CSV import to analyze multiple individuals



Requirements:



• Google Health Connect installed on your device

• Heart rate (and HRV) data in Health Connect from your wearable device (Gadgetbridge, Garmin, Polar, Samsung, etc.)

• Android 8.0 (API 26) or higher



Note on PAI:



Our PAI-esque implementation is NOT the official commercial PAI® algorithm (which is proprietary). It uses EWMA and scaled TRIMP values to provide a similar intensity-weighted weekly score. The 100 PAI target remains the evidence-based health outcome from the HUNT Study research.

Versions

Although APK downloads are available below to give you the choice, you should be aware that by installing that way you will not receive update notifications and it's a less secure way to download. We recommend that you install the F-Droid client and use that.

Download F-Droid
  • Version 82 (82) suggested Added on Jun 14, 2026

    arm64-v8a armeabi-v7a x86 x86_64

    This version requires Android 14 or newer.

    It is built and signed by the original developer, and guaranteed to correspond to this source tarball.

    Permissions
    • access approximate location only in the foreground
      This app can get your approximate location from location services while the app is in use. Location services for your device must be turned on for the app to get location.
    • access precise location only in the foreground
      This app can get your precise location from location services while the app is in use. Location services for your device must be turned on for the app to get location. This may increase battery usage.
    • view network connections
      Allows the app to view information about network connections such as which networks exist and are connected.
    • view Wi-Fi connections
      Allows the app to view information about Wi-Fi networking, such as whether Wi-Fi is enabled and name of connected Wi-Fi devices.
    • pair with Bluetooth devices
      Allows the app to view the configuration of the Bluetooth on the phone, and to make and accept connections with paired devices.
    • access Bluetooth settings
      Allows the app to configure the local Bluetooth phone, and to discover and pair with remote devices.
    • connect to paired Bluetooth devices
      Allows the app to connect to paired Bluetooth devices
    • discover and pair nearby Bluetooth devices
      Allows the app to discover and pair nearby Bluetooth devices
    • run foreground service
      Allows the app to make use of foreground services.
    • run foreground service with the type "connectedDevice"
      Allows the app to make use of foreground services with the type "connectedDevice"
    • run foreground service with the type "location"
      Allows the app to make use of foreground services with the type "location"
    • have full network access
      Allows the app to create network sockets and use custom network protocols. The browser and other applications provide means to send data to the internet, so this permission is not required to send data to the internet.
    • prevent phone from sleeping
      Allows the app to prevent the phone from going to sleep.
    • android.permission.health.READ_HEALTH_DATA_HISTORY
    • android.permission.health.READ_HEART_RATE
    • android.permission.health.READ_HEART_RATE_VARIABILITY
    • android.permission.health.WRITE_HEART_RATE
    • android.permission.health.WRITE_HEART_RATE_VARIABILITY
    • org.ojrandom.paiesque.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION

    Download APK 46 MiB PGP Signature | Build Log

  • New in version 81
    # Release Notes – v81

    ## Critical Bug Fix

    **Empty device spinner after first recording**
    Previously, after recording a session (with or without a BLE sensor), the device spinner in the analysis screen remained empty, preventing users from viewing their training data. This release completely decouples the recording feature from `paiesque.db` and ensures that all recorded devices appear immediately in the analysis view.

    ## New Features & Improvements

    - **Removed misleading toast** – The “No sa
  • Version 81 (81) - Added on Jun 13, 2026

    arm64-v8a armeabi-v7a x86 x86_64

    This version requires Android 14 or newer.

    It is built and signed by the original developer, and guaranteed to correspond to this source tarball.

    Permissions
    • access approximate location only in the foreground
      This app can get your approximate location from location services while the app is in use. Location services for your device must be turned on for the app to get location.
    • access precise location only in the foreground
      This app can get your precise location from location services while the app is in use. Location services for your device must be turned on for the app to get location. This may increase battery usage.
    • view network connections
      Allows the app to view information about network connections such as which networks exist and are connected.
    • view Wi-Fi connections
      Allows the app to view information about Wi-Fi networking, such as whether Wi-Fi is enabled and name of connected Wi-Fi devices.
    • pair with Bluetooth devices
      Allows the app to view the configuration of the Bluetooth on the phone, and to make and accept connections with paired devices.
    • access Bluetooth settings
      Allows the app to configure the local Bluetooth phone, and to discover and pair with remote devices.
    • connect to paired Bluetooth devices
      Allows the app to connect to paired Bluetooth devices
    • discover and pair nearby Bluetooth devices
      Allows the app to discover and pair nearby Bluetooth devices
    • run foreground service
      Allows the app to make use of foreground services.
    • run foreground service with the type "connectedDevice"
      Allows the app to make use of foreground services with the type "connectedDevice"
    • run foreground service with the type "location"
      Allows the app to make use of foreground services with the type "location"
    • have full network access
      Allows the app to create network sockets and use custom network protocols. The browser and other applications provide means to send data to the internet, so this permission is not required to send data to the internet.
    • prevent phone from sleeping
      Allows the app to prevent the phone from going to sleep.
    • android.permission.health.READ_HEALTH_DATA_HISTORY
    • android.permission.health.READ_HEART_RATE
    • android.permission.health.READ_HEART_RATE_VARIABILITY
    • android.permission.health.WRITE_HEART_RATE
    • android.permission.health.WRITE_HEART_RATE_VARIABILITY
    • org.ojrandom.paiesque.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION

    Download APK 46 MiB PGP Signature | Build Log

  • New in version 80
    # Release Notes – v80

    ## New Features

    ### Unified Navigation Bar
    The toolbar now contains a **three‑button toggle** (Trends / Record / Analysis) that highlights the current activity. The Record button **turns red** while a recording is in progress.

    ### Distance Calculation Settings
    - Configurable **distance step size** (raw … 100 m) and **minimum time interval** (none … 30 s).
    - Access via recording screen menu → *Distance Calculation*.
    - Applies to live recording and historical analysis.

    ##
  • Version 80 (80) - Added on Jun 11, 2026

    arm64-v8a armeabi-v7a x86 x86_64

    This version requires Android 14 or newer.

    It is built and signed by the original developer, and guaranteed to correspond to this source tarball.

    Permissions
    • access approximate location only in the foreground
      This app can get your approximate location from location services while the app is in use. Location services for your device must be turned on for the app to get location.
    • access precise location only in the foreground
      This app can get your precise location from location services while the app is in use. Location services for your device must be turned on for the app to get location. This may increase battery usage.
    • view network connections
      Allows the app to view information about network connections such as which networks exist and are connected.
    • view Wi-Fi connections
      Allows the app to view information about Wi-Fi networking, such as whether Wi-Fi is enabled and name of connected Wi-Fi devices.
    • pair with Bluetooth devices
      Allows the app to view the configuration of the Bluetooth on the phone, and to make and accept connections with paired devices.
    • access Bluetooth settings
      Allows the app to configure the local Bluetooth phone, and to discover and pair with remote devices.
    • connect to paired Bluetooth devices
      Allows the app to connect to paired Bluetooth devices
    • discover and pair nearby Bluetooth devices
      Allows the app to discover and pair nearby Bluetooth devices
    • run foreground service
      Allows the app to make use of foreground services.
    • run foreground service with the type "connectedDevice"
      Allows the app to make use of foreground services with the type "connectedDevice"
    • run foreground service with the type "location"
      Allows the app to make use of foreground services with the type "location"
    • have full network access
      Allows the app to create network sockets and use custom network protocols. The browser and other applications provide means to send data to the internet, so this permission is not required to send data to the internet.
    • prevent phone from sleeping
      Allows the app to prevent the phone from going to sleep.
    • android.permission.health.READ_HEALTH_DATA_HISTORY
    • android.permission.health.READ_HEART_RATE
    • android.permission.health.READ_HEART_RATE_VARIABILITY
    • android.permission.health.WRITE_HEART_RATE
    • android.permission.health.WRITE_HEART_RATE_VARIABILITY
    • org.ojrandom.paiesque.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION

    Download APK 46 MiB PGP Signature | Build Log