Daniele Gobbetti
9daadca3f9
Garmin: various minor changes
...
remove message placeholders referring to legacy code,
remove try-catch from the weather data message building method
lower the frequency of music control messages
2024-05-20 18:26:04 +02:00
Daniele Gobbetti
b453d8ef4c
Garmin: fix protobuf chunked fragments handling
...
remove chunk from the map once it is complete if it is incoming, fix the removal of outgoing chunks
also return a warn log message if the protobuf status is not OK.
2024-05-20 18:09:24 +02:00
José Rebelo
579f6f1cfb
Garmin: Fix edge case in sleep overlay
...
If the sleep session ends outside the queried time range, we need to
fetch the next sleep stage outside the range so that we can overlay it
properly.
2024-05-20 18:09:24 +02:00
José Rebelo
129b48893a
Garmin: Fix overcounting of steps in some cases
...
We need to take into account the previous sample that is outside the
range that was queried, so that we can correct the first sample in the
range.
2024-05-20 18:09:24 +02:00
José Rebelo
295e2b2707
Garmin: Improve transaction logging
2024-05-20 18:09:24 +02:00
José Rebelo
cfb6cc3d15
Garmin: Ignore agps request if etag matches
...
Some watches reboot on http 304
2024-05-20 18:09:24 +02:00
José Rebelo
58c30ee441
Garmin: Configure contacts
2024-05-20 18:09:24 +02:00
José Rebelo
5d34660b66
Garmin: Fix COBS encoding of long non-zero sections
2024-05-20 18:09:24 +02:00
José Rebelo
81fcde2d40
Garmin: Improve logging during file downloading
2024-05-20 18:09:24 +02:00
José Rebelo
13635b6ad7
Garmin: Implement etag for agps requests
2024-05-20 18:09:24 +02:00
Daniele Gobbetti
d719f013f8
Change java package of garmin protobuf files
2024-05-20 18:09:24 +02:00
Daniele Gobbetti
0edf454326
Remove all the legacy vivomove HR code.
...
Also replaces support for device through the new garmin code path.
The Entities are preserved to enable on-demand database migration in case some user had previously synchronized data.
2024-05-20 18:09:24 +02:00
José Rebelo
1f27a463b9
Garmin: Allow agps updates for multiple URLs
2024-05-20 18:09:24 +02:00
lorddavidiii
63398ed377
Initial support for Garmin Vivoactive 4
2024-05-20 18:09:24 +02:00
José Rebelo
8268b65764
Garmin Venu 3: Fix device name
2024-05-20 18:09:24 +02:00
José Rebelo
6c7f85102f
Garmin: Set default icon to a round watch
2024-05-20 18:09:24 +02:00
José Rebelo
b314258ab4
Garmin: Fix overcounting of steps
...
When going past midnight we were not resetting the number of steps,
resulting in a negative value, which would cause the next sample to
overcount.
2024-05-20 18:09:24 +02:00
Daniele Gobbetti
211fb06f30
Garmin: fix spurious protobuf messages
2024-05-20 18:09:24 +02:00
Daniele Gobbetti
4ebb3afdd4
Garmin: improve weather information
...
Add Aqi Field Definition and field to today weather and daily forecast, as both are available in WeatherSpec.
Add Feels like temperature to hourly forecast but populate with the forecasted temperature as the field is not available in Weatherspec for hourly.
Use temperature Field Definition for dew point and add it to today's weather.
Fields dew point and air quality could have been removed from the hourly weather definition but are kept in to test compatibility of these changes with watches.
2024-05-20 18:09:24 +02:00
Daniele Gobbetti
9e03f61de4
Garmin: Remove handling of legacy cache directory
2024-05-20 18:09:24 +02:00
Daniele Gobbetti
448df06d09
Garmin: adjust test after adding distance field
2024-05-20 18:09:24 +02:00
José Rebelo
564e7730b9
Garmin: Map all supported workout types
2024-05-20 18:09:24 +02:00
José Rebelo
2ff0000df8
Garmin: Overwrite files if local size is 0, omit date if equal to garmin epoch
2024-05-20 18:09:24 +02:00
José Rebelo
4567752d88
Garmin: Fallback to session for workout type
2024-05-20 18:09:24 +02:00
José Rebelo
1f6a8b8f64
Garmin: Fix overcounting of steps
2024-05-20 18:09:24 +02:00
José Rebelo
8b819eff30
Garmin: Throttle notification updates on fit parsing
2024-05-20 18:09:24 +02:00
José Rebelo
1567e5f276
Garmin: Fetch fit files HRV status
2024-05-20 18:09:24 +02:00
José Rebelo
9a5c692327
Garmin: Process downloaded fit files asynchronously
...
Fixes occasional ANR while syncing activity data.
2024-05-20 18:09:24 +02:00
José Rebelo
44313c8400
Activity Summary: Draw fit file if available
2024-05-20 18:09:24 +02:00
José Rebelo
69c78d61a7
Garmin: Persist and display activity
...
- Steps, hr, intensity
- Sleep stages
- Stress
- SpO2
- Workouts
2024-05-20 18:09:24 +02:00
José Rebelo
b3f0bc7cf9
Garmin: Improve computed timestamp parsing
...
timestamp16 must be applied against garmin epoch.
2024-05-20 18:09:24 +02:00
José Rebelo
c49de390e7
Garmin: Map more global fit messages
...
* Events
* Goals
* Gps Metadata
* Laps
* Record
* Respiration rate
* Sessions
* SpO2
* Time in Zone
2024-05-20 18:09:24 +02:00
José Rebelo
da44bd0c40
Garmin: Fix logging during tests
2024-05-20 18:09:24 +02:00
Lolek
e2805c3d20
Initial support for Garmin Swim 2
2024-05-20 18:09:24 +02:00
hrdl
2e39ba2dcd
Add AGPS for Garmin Forerunner 245
2024-05-20 18:09:24 +02:00
Daniele Gobbetti
8c23ff003a
Garmin: enable AGPS update for all Instinct 2 devices
2024-05-20 18:09:24 +02:00
kuhy
34ea6866ef
Garmin protocol: show AGPS data status in settings
2024-05-20 18:09:24 +02:00
kuhy
9dfe3a52a0
Garmin protocol: add AGPS data checks
2024-05-20 18:09:24 +02:00
kuhy
905fd5b5e6
Garmin protocol: install AGPS data as firmware
2024-05-20 18:09:24 +02:00
kuhy
d54569b857
Garmin protocol: improve detection of successfully sent files (DataTransferHandler)
2024-05-20 18:09:24 +02:00
kuhy
5a50ad08a6
Garmin protocol: add support for AGPS data retrieval
2024-05-20 18:09:24 +02:00
Daniele Gobbetti
596d53e618
Fixup: Introduce device specific writable directory (MAC address)
...
Add logic to not fetch again files which had the previously defined name
2024-05-20 18:09:24 +02:00
Daniele Gobbetti
903bdc639c
Introduce device specific writable directory (MAC address)
...
Also adds temporary method to move the fetched files from the legacy path to the new one which does not include the device name.
Also moves the FileIndex to the end of the cached files to allow for easier sorting.
Cherry-picked from 525b395c01ce57449ee9a8f74af663595223279e and adapted
2024-05-20 18:09:24 +02:00
José Rebelo
822f1a8584
Garmin: Make fit header crc optional
2024-05-20 18:09:24 +02:00
Daniele Gobbetti
8f500adbae
Garmin: enable unicode Emoji for all devices
...
This seems to be widely supported by garmin devices, hence enable it in the base coordinator. Specific devices not supporting Unicode Emojis can override this method and return false.
2024-05-20 18:09:24 +02:00
Daniele Gobbetti
66da70db4f
Garmin: harmonize device names
...
All device name strings start with manufacturer name.
Normalized the usage of accented i.
2024-05-20 18:09:24 +02:00
Andreas Schneider
b9460bd94b
Garmin: add coordinator for Instinct Crossover
2024-05-20 18:09:24 +02:00
Daniele Gobbetti
7feff165a4
Garmin: fix regression in call handling
...
Add a fictitious action to the notification to enable reply/hangup/reject from the watch.
Also fixes the behavior on sms reply, which should also reject the incoming call.
Change the log level in case some of the canned messages types are left as default to info, as this is a supported scenario.
2024-05-20 18:09:24 +02:00
Daniele Gobbetti
8560dd8137
Garmin: encode unknown weather codes as invalid
2024-05-20 18:09:24 +02:00
meskio
cb7608efce
Initial support for Garmin Instinct Solar
2024-05-20 18:09:24 +02:00