Commit Graph
100 Commits
Author SHA1 Message Date
José RebeloandJosé Rebelo 0b124a0f06 Garmin: Fix timestamp16 rollover 2026-02-08 23:24:03 +01:00
José Rebelo 183b0e714d Garmin: Display blocked internet domains 2026-02-08 16:56:48 +00:00
José Rebelo 621d6aa23f Update changelog 2026-02-08 16:07:25 +00:00
José Rebelo 023770b4d5 Garmin Tactix 7: Initial support 2026-02-08 16:04:59 +00:00
José Rebelo d82abd1a03 Adjust Internet Helper name and URL 2026-02-08 16:03:32 +00:00
José Rebelo 8fb7231efa Debug: Hide drop table in non-debug builds 2026-02-08 15:59:01 +00:00
José Rebelo 95cc7a409c Debug: Add button to clear database table 2026-02-08 15:56:22 +00:00
José Rebelo 5c26bbbc1f Mitigate edge case in cumulative sample conversion 2026-02-07 15:38:11 +00:00
José Rebelo 081af1664d Zepp OS: Honor Catima barcode encoding if available 2026-02-07 14:17:40 +00:00
José Rebelo 6edd12ec6e Update changelog, disable some tests
Weather on Garmin watches is confirmed to be working, the tests are
currently not correct.
2026-02-07 09:40:02 +00:00
José Rebelo 81e0a06f9a Garmin Tactix 8: Initial support 2026-02-07 00:07:19 +00:00
José Rebelo 8863c4fa8e bump version, update changelog 2026-02-06 18:54:04 +00:00
José Rebelo a2bc7734f0 Remove WeatherMapperTest
Kotlin conversion was successful.
2026-02-06 18:49:01 +00:00
José Rebelo 97a102ed12 Remove translations for non-existing english strings 2026-02-06 18:42:53 +00:00
José Rebelo eb739ca9a1 Fix linter after weblate merge 2026-02-06 18:40:40 +00:00
José Rebelo 8a4dae0380 Update changelog 2026-02-06 18:05:29 +00:00
José Rebelo aefa384bbe Garmin: Fix occasional crash when support class is disposed 2026-02-03 22:48:49 +00:00
José Rebelo 2842101300 Intent API: Fix database and zip export intents 2026-02-03 20:12:45 +00:00
José Rebelo ce92774b3b Mi Band 8 Pro: Fix treadmill parsing 2026-02-03 13:14:06 +00:00
José Rebelo 08e91fba9a Add some missing biking activities for VO2 Max computation 2026-02-03 13:02:50 +00:00
José Rebelo 15d71450bb Mi Band 9 Pro: Fix elliptical parsing 2026-02-02 22:03:16 +00:00
José Rebelo 3fc1cce75a Fix VO2 Max crash on high values 2026-02-02 21:39:38 +00:00
José Rebelo 24cc4c35ba Zepp OS: Add e-bike activity 2026-02-02 21:24:03 +00:00
José Rebelo 8c575535b2 Health Connect: Prefer granular active calories if available
If the device supports active calories in activity samples prioritize
those, as they are more granular and capture activities that may not
have been explicitly recorded.
2026-02-02 21:22:41 +00:00
José Rebelo 22a4c40401 Add distinct VO2 Max ranges per age / gender 2026-01-26 21:16:16 +00:00
José Rebelo 0a81a2555e Zepp OS: Make weather v5 non-experimental 2026-01-26 20:16:29 +00:00
José Rebelo 13cdf45484 Zepp OS: Update VO2 Max support 2026-01-25 15:53:31 +00:00
José Rebelo ae9d9acf39 Garmin: Update devices with VO2 max support
As per https://support.garmin.com/en-US/?faq=lWqSVlq3w76z5WoihLy5f8

Some watches are not on this list, but they mention VO2 Max for running
or cycling specifically in the manual, so they were left enabled as we
are not fully sure.
2026-01-25 15:53:31 +00:00
José Rebelo fd22f674f7 Display device alias hints on file manager 2026-01-24 17:29:39 +00:00
José Rebelo 6d961c8f8b Garmin: Disable some features on watches that do not support them 2026-01-24 17:18:38 +00:00
José Rebelo 34b5027110 Garmin: Update devices with SpO2 support 2026-01-24 16:33:37 +00:00
José Rebelo 6cc116f89c Garmin: Update devices with training load support
Source: https://support.garmin.com/en-US/?faq=SEkNpdGyhR917js0qQL3Q6
2026-01-24 16:26:13 +00:00
José Rebelo b7ce6a67e8 Zepp OS: Adjust weather v5 responses 2026-01-24 14:09:20 +00:00
José Rebelo 9dd91c4349 Garmin: Display sleep restless moments 2026-01-23 21:14:55 +00:00
José Rebelo 8644a69d0a Amazfit Balance 2 XT: Experimental support 2026-01-23 20:30:27 +00:00
José Rebelo c19663bfd6 Update changelog 2026-01-23 00:02:30 +00:00
José Rebelo a573613037 Garmin: Map fit data for sleep restless moments 2026-01-22 21:41:42 +00:00
José RebeloandJosé Rebelo 678ef35904 Garmin: Handle http requests async 2026-01-22 19:49:48 +01:00
José Rebelo b8a0c0dbbb Do not request internet helper permissions on Bangle build 2026-01-21 23:46:23 +00:00
José Rebelo 99117f67a5 Garmin: Map some more fit function metrics 2026-01-21 21:56:05 +00:00
José Rebelo 9f97b0fc90 Garmin: Add mapping for fit hill score 2026-01-21 21:43:38 +00:00
José Rebelo d3c1df3ad6 Charts: Fix enabled charts list 2026-01-21 21:30:22 +00:00
José Rebelo f5ec50cebe Garmin: Map FTP, training readiness and endurance score fit fields 2026-01-21 13:36:01 +00:00
José Rebelo e2c375eaf3 GBDaoGenerator: Generate sample providers
Most "basic" sample providers are the same, this reduces the boilerplate
code necessary to add a new sample to the database.
2026-01-20 23:03:57 +00:00
José Rebelo 7dd319f760 Charts: Build fragment stats programatically
This would allow us to easily append further stats from device-specific
charts providers.
2026-01-20 22:27:18 +00:00
José Rebelo d47b0f99a6 Charts: Build HR fragment stats programatically
While the API is certainly not ideal, this allows us to unify the logic
between charts and the workout fragment, and pave the way for dynamic
stats provided by gadget-specific implementations.
2026-01-20 21:35:48 +00:00
José Rebelo 2087f8aceb SBM67: Split Sanitas and SilverCrest devices 2026-01-20 18:48:36 +00:00
José Rebelo 81ad487307 Make blood pressure support generic 2026-01-20 13:15:04 +00:00
José Rebelo 5cb2425643 SBM67: Extract blood pressure profile 2026-01-20 13:15:04 +00:00
José Rebelo 60abef3544 Fix call mute command in non-mainline build flavors 2026-01-20 00:06:36 +00:00
José Rebelo 629dd12bfe Health Connect: Fix HR sync for Coospo / GloryFit / Generic HR 2026-01-19 20:28:37 +00:00
José Rebelo a92ce9f1d5 Xiaomi-protobuf: Improve outdoor running parsing
Thanks to @Aolythh for the info from #5703
2026-01-19 19:47:28 +00:00
José Rebelo ea0257579b Use BufferedOutputStream for zip export
Greatly improves export speed, especially for remote filesystems.
2026-01-18 22:57:06 +00:00
José Rebelo e7ae74bf92 Zepp OS: Allow missing lon/lat in weather v5 2026-01-18 21:39:12 +00:00
José Rebelo fd8fc8a3a5 ControlCenterv2: Improve toast when no connected device supports sync 2026-01-18 18:39:51 +00:00
José Rebelo 489bff52e2 Garmin: Allow firewalled app internet access 2026-01-18 16:21:34 +00:00
José Rebelo 4c65009f9c Zepp OS: Add experimental support for weather v5 2026-01-18 15:42:21 +00:00
José Rebelo 37f466c91c Debug: Allow database table export to csv 2026-01-17 21:26:45 +00:00
José Rebelo 3118d6c4fe Polar / Coospo / Generic HR monitors: Fix HC sync on new samples 2026-01-17 17:59:34 +00:00
José Rebelo 9971edc2a5 Polar: Disable unused charts 2026-01-17 17:39:41 +00:00
José Rebelo ad7ed39a2a HeartRateProfile: Parse and persist RR intervals 2026-01-17 17:39:34 +00:00
José Rebelo f732621a26 Rename supportsActivityTracks to supportsRecordedActivities 2026-01-17 16:20:02 +00:00
José Rebelo 5bb42caa04 Make charts agnostic of activity tracking
Rename supportsActivityTabs to supportsCharts, as it should have always meant.
This decouples charts from activity tracking, and avoids the need to
needlessly override sleep measurement, step counter and speed zones
support just to display charts on devices that do not support any of
those capabilities.
2026-01-17 16:20:02 +00:00
José Rebelo a8c38953a1 Fetch all sync data types from notification 2026-01-17 16:20:02 +00:00
José Rebelo ec1065fb2f Make data fetching agnostic from activity
We support quite a few devices that can sync non-activity data.
2026-01-17 16:20:02 +00:00
José Rebelo 7b9baf1a9f Huawei: Rename HuaweiCoordinatorSupplier to HuaweiCoordinator 2026-01-17 15:59:36 +00:00
José Rebelo ec17ae383f Huawei: Rename HuaweiCoordinator to HuaweiState 2026-01-17 15:58:26 +00:00
José Rebelo 71d54cf0f9 Huawei: Clear capabilities shared preferences when deleting device 2026-01-17 15:53:29 +00:00
José Rebelo 79610a7ae3 Huawei: Unify BLE and BR coordinators 2026-01-17 15:14:24 +00:00
José Rebelo 73035e7028 Huawei: Make coordinators stateless 2026-01-17 15:14:24 +00:00
José Rebelo 5375481e53 Fix workout calories stats 2026-01-17 15:04:31 +00:00
José Rebelo b9f566c942 Colmi V73: Initial support 2026-01-17 14:56:15 +00:00
José Rebelo 86d638feca Debug: Prepare for mac address edit through UI 2026-01-17 14:48:59 +00:00
José Rebelo 5fd45d1d9a Debug: Allow setting device type 2026-01-17 14:31:45 +00:00
José Rebelo d6ee8c1767 Debug: Add devices page 2026-01-17 13:56:30 +00:00
José Rebelo 1ab92b49aa Mi Band 4C: Experimental support 2026-01-17 13:14:33 +00:00
José Rebelo e445138d1b Garmin Lily 2: Initial support 2026-01-17 13:14:33 +00:00
José Rebelo eeff5dba54 Charts: Allow devices to provide their own charts 2026-01-16 22:40:59 +00:00
José Rebelo 78bd8ca55d Garmin: Fix battery gain unit 2026-01-16 22:10:52 +00:00
José Rebelo 5ce72e011c Charts: Fix hours in x-axis 2026-01-16 22:10:19 +00:00
José Rebelo 12a3c33f5d Health Connect: Fix CALORIES_BURNT field after PR rebase 2026-01-16 21:59:50 +00:00
José Rebelo 4ee7007c61 Zepp OS: Handle weather app settings request 2026-01-16 18:42:31 +00:00
José Rebelo f4556e81cc Garmin: Fix MLR retransmission request numbers 2026-01-16 18:24:19 +00:00
José Rebelo 6aeb50d026 Dashboard: Only include activities from enabled devices 2026-01-15 23:39:32 +00:00
José Rebelo 367ce236a1 Export GenericWeatherReceiver from manifest
This is useful to cache the latest weather when no gadgets are
connected, as well as for weather app developers to be able to test
their apps without any gadget.
2026-01-15 23:11:27 +00:00
José Rebelo 1a50b85b7e Zepp OS: Add display item for Jet Lag Manager 2026-01-15 23:04:39 +00:00
José RebeloandJosé Rebelo 813be065c3 Garmin: Improve developer field decoding 2026-01-15 22:11:45 +01:00
José Rebelo 31f71edda5 Garmin: Make calories consistent with other devices 2026-01-15 19:40:36 +00:00
José Rebelo b6c125a3a6 Garmin: Make calories consistent with other devices 2026-01-15 19:36:35 +00:00
José Rebelo 617ef396a5 Garmin: Run FitCodeGen 2026-01-13 22:12:00 +00:00
José Rebelo 0bdb76c6d4 Garmin: Improve field cast safety 2026-01-13 22:08:54 +00:00
José Rebelo 8dad0e1da6 Garmin: Fix TestFitLocationEncoding
As of 1b45d71cc7, we avoid writing
consecutive record definitions if they are exactly the same. This
results in an optimized and smaller fit file, which effectively
contains the exact same information.
2026-01-13 22:00:48 +00:00
José Rebelo a4f9dd7ea6 GarminSupportTest: Fix some tests 2026-01-13 21:18:14 +00:00
José Rebelo 71cf60cff9 WeatherMapper: Fix test
Failure introduced in c19ed15df, but this test does not make sense to
maintain anymore.
2026-01-13 21:02:22 +00:00
José Rebelo 614fb05a8b OneTouch: Fix test 2026-01-13 21:00:41 +00:00
José Rebelo 05de74dbc7 Fix raw details path between Gb versions 2026-01-12 22:13:20 +00:00
José Rebelo 32210e7249 Garmin: Add average ascent velocity 2026-01-12 22:05:02 +00:00
José Rebelo 915c2a5546 Garmin: Map some missing fit fields
Taken from a fit file of a Garmin Edge 1040
2026-01-12 21:29:53 +00:00
José Rebelo eada46234b Garmin: Fix lap speed unit
Fixes #5698
2026-01-12 21:08:59 +00:00
José Rebelo 824d325ac4 Charts: Make max temperature dynamic
Fixes #5699
2026-01-12 21:08:29 +00:00