Commit Graph
8231 Commits
Author SHA1 Message Date
Benjamin Temple 552547ec9e Pebble: Add support for pull to refresh for pebble health data
Only signalActivityDataFinish on error as datalog will invoke once health sync data finishes syncing
2026-05-13 23:24:41 -07:00
Vitaliy TominandJosé Rebelo 57154dff91 igpsport: Hide watchface tab 2026-05-13 23:33:24 +02:00
Vitaliy TominandJosé Rebelo 179e04beb1 igpsport: Fix endless loop when there is no route files 2026-05-13 23:33:24 +02:00
Vitaliy TominandJosé Rebelo 40401492fa igpsport: Handle null values in MusicSpec 2026-05-13 23:33:24 +02:00
Vitaliy TominandJosé Rebelo 519b17647b igpsport: Add BSC300 2026-05-13 23:33:24 +02:00
Thomas KuehneandJosé Rebelo 85543cb4c6 igpsport: Rebase to current master 2026-05-13 23:33:24 +02:00
Michael PlattnerandJosé Rebelo b52e2312b2 feat: add activity fetching
- activate supportsDataFetching and recorded activities, to download fit files from device
- sync fit files, but do it only from the last sync time that we do not always sync all the fit files
2026-05-13 23:33:24 +02:00
Michael PlattnerandJosé Rebelo bad96e4f75 feat: add binavi air 2026-05-13 23:33:24 +02:00
Vitaliy TominandJosé Rebelo 26e162ec68 igpsport: Rebase to current master
* Updated for new units preference logic
2026-05-13 23:33:24 +02:00
Vitaliy TominandJosé Rebelo ad1ff7250d igpsport: Split iGS630S to its own coordinator
* minor log fix
2026-05-13 23:33:24 +02:00
Vitaliy TominandJosé Rebelo 6255057772 igpsport: Removed all RuntimeException from igpsport and minor fixes 2026-05-13 23:33:24 +02:00
Thomas KuehneandJosé Rebelo 2d36bda559 igpsport: Update for current master rebase 2026-05-13 23:33:24 +02:00
Vitaliy TominandJosé Rebelo 5216752665 igpsport: Use GarminWorkoutParser 2026-05-13 23:33:24 +02:00
Vitaliy TominandJosé Rebelo d3103400fc igpsport: Add missing return after download data 2026-05-13 23:33:24 +02:00
Vitaliy TominandJosé Rebelo 9a2b5a38ac igpsport: Use Garmin FitImporter and FitAsyncProcessor 2026-05-13 23:33:24 +02:00
Vitaliy TominandJosé Rebelo 77f4a99ed5 igpsport: Remove unused loggers and commented code 2026-05-13 23:33:24 +02:00
Vitaliy TominandJosé Rebelo 0046666f19 igpsport: update strings s/IGPSPORT/iGPSPORT/ 2026-05-13 23:33:24 +02:00
Vitaliy TominandJosé Rebelo bab5311d7f igpsport: Copy FitAsyncProcessor from Garmin 2026-05-13 23:33:24 +02:00
Vitaliy TominandJosé Rebelo 4f56b6569b igpsport: Copy Fitimporter from Garmin
* remove garmin specific samples like stress, hrv and sleep, use only standard fit records
2026-05-13 23:33:24 +02:00
Richard NauberandJosé Rebelo 78494a6877 igpsport: add BCS200S support 2026-05-13 23:33:24 +02:00
Richard NauberandJosé Rebelo 6461a226fc igpsport: explicitly set MTU before communicating
This is necessary for the BCS200S to work.
2026-05-13 23:33:24 +02:00
Vitaliy TominandJosé Rebelo dacf0471ef igpsport: Swithc to GarminTimeUtils time converting method, set device busy
* use garmin time epoch as it is used by all fit files
* use Locale.ROOT for filename generation
* set/unset device busy while downloading fit files
2026-05-13 23:33:24 +02:00
Vitaliy TominandJosé Rebelo d4c2068aa4 igpsport: Implement Music info for igs800 2026-05-13 23:33:24 +02:00
Vitaliy TominandJosé Rebelo 0222175fb5 igpsport: Support media buttons (tested on iGS800) 2026-05-13 23:33:24 +02:00
Vitaliy TominandJosé Rebelo faf0725951 igpsport: Fixes after rebase 2026-05-13 23:33:24 +02:00
Vitaliy TominandJosé Rebelo f1004a663a igpsport: Fix file payload calculation and offsets for file data 2026-05-13 23:33:24 +02:00
Vitaliy TominandJosé Rebelo 3e2ca93f49 igpsport: Fix iGS630s typo 2026-05-13 23:33:24 +02:00
Vitaliy TominandJosé Rebelo c0bcee6ba7 igpsport: Add iGS800 2026-05-13 23:33:24 +02:00
Thomas KuehneandJosé Rebelo 014b180a30 igsport: rebase device code to master ad34fec706 2026-05-13 23:33:24 +02:00
Vitaliy TominandJosé Rebelo 39cf720fdd igpsport: Use custom time epoch for fit files times
* turns out cycling_data_msg has timestamps with custom epoch,
adding this epoch to get standard timestamp.
2026-05-13 23:33:24 +02:00
Vitaliy TominandJosé Rebelo 34581b8041 igpsport: Handle all routes files, update list on deletion 2026-05-13 23:33:24 +02:00
Vitaliy TominandJosé Rebelo 046c019bb5 igpsport: Fix double parsing of protobuf packets,fix typo in 02 packets parsing 2026-05-13 23:33:24 +02:00
Vitaliy TominandJosé Rebelo a404586ef5 igpsport: Partial routes list fix
* now handles only single request with  up to fileListSupportNumMax
files, need to iterate it to handle remaining files
2026-05-13 23:33:24 +02:00
Vitaliy TominandJosé Rebelo 93c1f78371 igpsport: Weather refactoring. Fixed hourly times and icons. 2026-05-13 23:33:24 +02:00
Vitaliy TominandJosé Rebelo 56e67e0761 igpsport: add hourly and daily forecast 2026-05-13 23:33:24 +02:00
Vitaliy TominandJosé Rebelo e339ad876a iigpsport: Add igpsport IGS630s to supported devices 2026-05-13 23:33:24 +02:00
Vitaliy TominandJosé Rebelo 586f12e67f igpsport: Refactor incoming packets parsing
* support splited packets for protobuf packets
2026-05-13 23:33:24 +02:00
Vitaliy TominandJosé Rebelo 63d87b57bf igpsport: Fix User and Units config 2026-05-13 23:33:24 +02:00
Vitaliy TominandJosé Rebelo a8b160c654 igpsport: Hadnle device request for weather
* add DATA_HEADER_SIZE=20
2026-05-13 23:33:24 +02:00
Vitaliy TominandJosé Rebelo b193da7349 igpsport: download workouts
* now able to save all fit files from computed to phone
/sdcard/Android//data/nodomain.freeyourgadget.gadgetbridge/files/
* TODO parse fit files to workouts
2026-05-13 23:33:24 +02:00
Vitaliy TominandJosé Rebelo f6aa398316 igpsport: Get SN from device
* need to find way to use it as idintifier in DB since it is constant for each device,
but MAC changes on unpair
2026-05-13 23:33:24 +02:00
Vitaliy TominandJosé Rebelo b0308d01b7 igpsport: Refactor routes handling
* move routes related code to IGPSportRoutesManager
* implement activate/delete for routes
2026-05-13 23:33:24 +02:00
Vitaliy TominandJosé Rebelo 2d3d142ebe igpsport: Use only positive integers as file id 2026-05-13 23:33:24 +02:00
Vitaliy TominandJosé Rebelo ea5777f657 igpsport: Get route list as app list 2026-05-13 23:33:24 +02:00
Vitaliy TominandJosé Rebelo ee47234b3b igpsport: Initial weather code and routes list 2026-05-13 23:33:24 +02:00
Vitaliy TominandJosé Rebelo 9c27ccbd87 igpsport: Handle route upload complete state 2026-05-13 23:33:24 +02:00
Vitaliy TominandJosé Rebelo d487666624 igpsport: Split IGPSport coordinator add iGS630 2026-05-13 23:33:24 +02:00
Vitaliy TominandJosé Rebelo 601eca82ef igpsport: Install route files as apps
* works with cnx, gpx, fit, tcx and xml roue files
* only extension checked, no real checks for valid file
2026-05-13 23:33:24 +02:00
Vitaliy TominandJosé Rebelo 1d5a59974f igpsport: Fix typo in craftFileData() 2026-05-13 23:33:24 +02:00
Vitaliy TominandJosé Rebelo 0e55221684 igpsport: craft file data method
* used to send route plan, firmware, agps, language pack
2026-05-13 23:33:24 +02:00