Dennis Guse
015352c989
TrackPoint is now a record.
2025-12-24 17:15:19 +01:00
frazou
afd1232940
Fix null race-condition for heart rate sensor data
...
The previous implementation was technically safe because the sensor
never had null values. Now that it can, the calls to getHeartRate
must be stored instead of repeated to avoid a race condition where the
sensor data become null between the null-check and the second call
2025-12-07 19:16:42 +01:00
frazou
a3407ccbea
Add an optional filter for invalid (0 bpm) heart rate readings
2025-12-07 19:16:42 +01:00
Dennis Guse
6e4d46a14d
Distance.ZERO as constant.
2025-11-06 21:54:30 +01:00
Dennis Guse
fffeb40200
Speed.ZERO as constant.
2025-11-06 21:54:30 +01:00
Dennis Guse
c687308d97
Move WakeLock to SensorManager (was TrackRecordingService).
2025-11-01 09:56:31 +01:00
Dennis Guse
f31e146cda
Cleanup: TrackPoint uses AltitudeGainLoss.
2025-10-30 22:33:00 +01:00
Peter Storch
ec08717d01
Before codeberg migration ( #2159 )
...
Co-authored-by: Dennis Guse <dennis.guse@alumni.tu-berlin.de >
2025-08-24 08:36:08 +02:00
Dennis Guse
ea4193a562
Bugfix: GPS-based data in UI should not drop back to zero.
...
Likely introduced b9ed5e28e0 .
2025-03-07 17:45:31 +01:00
Dennis Guse
e7aa6f20d4
Cleanup: use Position and cleanup TrackPoint.
2025-03-01 23:05:05 +01:00
Dennis Guse
e83ba04d71
Position: move checks for validity.
2025-03-01 23:05:05 +01:00
Dennis Guse
b9ed5e28e0
Sensor data: separate aggregation and TTL explicitly.
...
Part of #1995 .
2025-03-01 22:51:48 +01:00
Dennis Guse
d4e9b5d3d7
Cleanup: renames in sensor data handling.
...
Part of #1995 .
2025-03-01 22:51:48 +01:00
Dennis Guse
a6d318d970
Cleanup: move GpsManager into sensors package.
2025-03-01 22:51:48 +01:00
Dennis Guse
7df625ff0c
Revert "Bugfix: on idle detection reset movement-based sensor data."
...
This reverts commit fd9646bb1f .
2025-01-20 07:53:45 +01:00
Dennis Guse
0e0958c5e8
Announcements: add current heartrate.
...
Fixes #1635 .
2024-12-29 12:38:15 +01:00
Dennis Guse
01f4359cdf
Sensor data: use monotonic clock (for isRecent).
...
Part of #1966 .
2024-12-28 17:33:53 +01:00
Dennis Guse
333bc6f31b
Sensor data: use monotonic clock.
...
Part of #1966 .
2024-12-28 17:33:53 +01:00
Dennis Guse
fd9646bb1f
Bugfix: on idle detection reset movement-based sensor data.
...
Fixes #1995 .
2024-12-17 07:18:24 +01:00
Dennis Guse
d8eed2ccc9
Cleanup using AndroidStudio analyze.
2024-07-11 07:38:45 +02:00
Dennis Guse
e442558eed
Introduced Position.
...
Internal value object replacing android.location.Location.
Follow-up to #1898 .
2024-07-06 14:51:45 +02:00
Dennis Guse
e590e4e07e
Bugfix: overestimated distance.
...
A combination of idle trackpoint and stale GPS data, resulted in recording lat=0.0 and lng=0.0; and thus inflating distance as well as GPS-based speed.
Fixes #1898 .
Introduced in dfdbc373ff
2024-04-28 10:50:56 +02:00
Dennis Guse
dfdbc373ff
GPS: event-based using Raw.
...
Part of #1424 .
2024-04-08 17:48:29 +02:00
Dennis Guse
80d7f8d92e
Bugfix: a BLE sensor disconnect should only replace the aggregator.
...
Fixes #1799 .
2024-01-05 15:44:05 +01:00
Dennis Guse
0584f05ddc
Bugfix: Cycling Cadence and Distance sensor allow for repeated data.
...
Fixes #1790 .
2024-01-01 14:39:20 +01:00
Dennis Guse
310ac8c06e
Bugfix: process cycling power sensor data correctly.
...
Fixes #1802 .
2023-12-31 13:18:55 +01:00
Dennis Guse
03dd0c2308
Implement gain/loss via Bluetooth LE Environmental Sensing Sensor.
...
Fixes #1424 .
2023-12-30 11:23:28 +01:00
Dennis Guse
8eed8e9d8d
Bugfix: Bluetooth sensor data TLS is 5s instead of 50s.
...
Introduced in 58d79380cf
2023-12-29 13:17:06 +01:00
Dennis Guse
94540606ef
Barometer: select INTERNAL or NONE (also while recording).
...
Part of #1424 .
2023-12-29 13:17:06 +01:00
Dennis Guse
490141db2a
Barometer: added settings for sensor selection.
...
Part of #1424 .
2023-12-29 13:17:06 +01:00
Dennis Guse
8f5388edce
While recording: show BLE sensor name instead of address.
...
Fixes #1796 .
2023-12-26 11:22:05 +01:00
Dennis Guse
2fe452c77c
Revert "fix NPE at null barometer after unregister listener"
...
This reverts commit 5dbd17f3bb .
2023-12-26 08:42:38 +01:00
Dennis Guse
150cbee95b
BarometerInternal: if there is no internal barometer - don't register a listener.
2023-12-25 18:48:14 +01:00
Dennis Guse
47ceb297c9
SensorManager: crash if started twice.
...
Part of #1780 .
2023-12-24 22:10:58 +01:00
Dennis Guse
aed4af5736
Bluetooth logs: make them slightly more readable.
2023-12-24 21:49:48 +01:00
Dennis Guse
d08552a07b
Bugfix: cycling cadence data should be handled by BluetoothHandlerCyclingCadence.
...
Fixes #1787 .
Introduced in 15f3ccbcbd
2023-12-17 22:37:32 +01:00
Dennis Guse
24212a226e
Bugfix: prevent crash when ending a recording (barometer present).
...
Fixes #1766 .
2023-12-09 10:04:50 +01:00
Peter Storch
5dbd17f3bb
fix NPE at null barometer after unregister listener
2023-11-22 21:24:36 +01:00
Dennis Guse
caf8b5526d
Bugfix: BarometerInternal shouldn't send data after disconnect().
...
Part of #1424 .
2023-11-21 07:18:10 +01:00
Dennis Guse
8d5a7e7e8b
Barometer: use sensor aggregator.
...
Part of #1424 .
2023-11-20 06:39:28 +01:00
Dennis Guse
5c7731bb1f
Bugfix: removing sensor didn't remove the aggregator.
...
Introduced in 58d79380cf .
2023-11-16 06:53:48 +01:00
Dennis Guse
ce21fe3569
Cleanup: renamed SensorData* to Aggregator*.
2023-11-15 18:41:13 +01:00
Dennis Guse
d47fa27e02
Cleanup: SensorDataCyclingDistanceSpeed.Data is a record.
2023-11-15 07:26:04 +01:00
Dennis Guse
58d79380cf
Sensors: separate data generation and aggregation.
...
Part of #1424 .
2023-11-15 07:20:42 +01:00
Dennis Guse
15f3ccbcbd
Bluetooth: rename to BluetoothHandlers.
2023-11-06 18:09:19 +01:00
Dennis Guse
f2594371d3
Bluetooth: inline BluetoothUtils into Handler classes.
2023-11-06 18:09:19 +01:00
Dennis Guse
4d54472c93
Bluetooth: use composition instead of inheritance.
...
Part of #1424 .
2023-11-06 18:09:19 +01:00
Dennis Guse
3a2a62a6d7
Bluetooth: send sensor data directly to SensorManager.
...
Part of #1424 .
2023-11-06 18:09:19 +01:00
Dennis Guse
17487961ad
Bluetooth: upgrade minSDK=26 for simplification (race condition prevention).
...
Part of #1424 .
2023-11-06 18:09:19 +01:00
Dennis Guse
205c5c7528
SensorManager and GPSManager: prefer to crash rather than hide usage errors.
2023-08-13 21:11:24 +02:00