安装包图标

PAIesque

将心率数据转化为训练负荷和恢复指标
新版本 58
Release Notes - PAIesque v58

What's New in This Update

- Fixed crashes when syncing large amounts of heart rate data from
Health Connect. The app now processes data smoothly regardless of
how many years of history you have.

- Improved memory usage during calculations. If you wear your device
24/7 or have long training sessions with second-by-second recording,
the app will no longer run out of memory.

- Fixed an issue where "No heart rate data available" would sometimes
appear incor
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.

版本

尽管下面提供了 APK 安装包的下载选项,但你应该注意,以这种方式安装将不会收到更新通知,这是一种不太安全的下载方式。 我们建议你安装使用 F-Droid 客户端。

下载 F-Droid
  • 版本 58 (58) 推荐 更新于 2026-04-21

    该版本需要 Android 14 及以上版本。

    此包由原始开发者构建并签名,并保证对应于此源代码 tarball

    权限
    • android.permission.health.READ_HEALTH_DATA_HISTORY
    • android.permission.health.READ_HEART_RATE
    • android.permission.health.READ_HEART_RATE_VARIABILITY
    • org.ojrandom.paiesque.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION

    下载 APK 4.0 MiB PGP 签名 | 构建日志

  • 新版本 57
    Release Notes - PAIesque v57

    What's New in This Update

    Fixed: Charts Now Show Your Recovery Data Immediately

    Previously, if you only had one day of Resting Heart Rate (RHR) or Heart Rate Variability (HRV) data, the charts would appear empty even though the data was there. This is now fixed - your recovery metrics will show up right away, even with just a single day of measurements.

    Fixed #29: Historical Sync No Longer Times Out

    Some users with large amounts of historical heart rate data exp
  • 版本 57 (57) - 更新于 2026-04-20

    该版本需要 Android 14 及以上版本。

    此包由原始开发者构建并签名,并保证对应于此源代码 tarball

    权限
    • android.permission.health.READ_HEALTH_DATA_HISTORY
    • android.permission.health.READ_HEART_RATE
    • android.permission.health.READ_HEART_RATE_VARIABILITY
    • org.ojrandom.paiesque.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION

    下载 APK 4.0 MiB PGP 签名 | 构建日志

  • 新版本 56
    Release Notes - PAIesque v56

    Fixed: Stale Recovery Values After Settings Changes

    What Was Happening

    When you changed certain settings (like your sleep window or fitness level),
    the app would correctly mark your data for recalculation. However, old RHR
    and HRV values sometimes stuck around for days that no longer had enough
    valid heart rate readings.

    This meant you might see:
    - RHR values on the chart for days when you didn't wear your device
    - Resting heart rates that didn't match your curre
  • 版本 56 (56) - 更新于 2026-04-19

    该版本需要 Android 14 及以上版本。

    此包由原始开发者构建并签名,并保证对应于此源代码 tarball

    权限
    • android.permission.health.READ_HEALTH_DATA_HISTORY
    • android.permission.health.READ_HEART_RATE
    • android.permission.health.READ_HEART_RATE_VARIABILITY
    • org.ojrandom.paiesque.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION

    下载 APK 4.0 MiB PGP 签名 | 构建日志