1
0
mirror of https://codeberg.org/Freeyourgadget/Gadgetbridge synced 2024-11-16 06:59:29 +01:00
Commit Graph

45 Commits

Author SHA1 Message Date
Martin.JM
89b6ae9f24 Add more granular smart wakeup support
Specifically:
- Add position to smart wakeup support coordinator function
- Add interface to stop smart alarm checkbox from being changed
2024-02-18 17:24:29 +01:00
José Rebelo
34fd18885a Zepp OS: Refactor firmware uploads
Zepp OS 3 firmware upgrades are big (200MB+). Gadgetbridge was crashing,
since the entire firmware file would be pulled into memory.

This commit unifies all the logic for Zepp OS firmware handling.

However, since the needed refactor was big, this commit duplicates some
of the code from Huami classes, namely:
- ZeppOsFirmwareUpdateOperation clones UpdateFirmwareOperation2020
- ZeppOsFwInstallHandler clones AbstractMiBandFWInstallHandler

This avoids changes to older device logic and introducing regressions.

Lost functionality:
- Repackaging firmwares as UIHH (does not seem to be needed, and was not
  used anyway). Code can be recovered from this commit if needed in the
  future
- Whitelisted firmwares by checksum (we do not have a lot of them at
  this point anyway)

Other misc changes:
- Rename ZipFile to GBZipFile not to clash with the java class

Tested by updating the Amazfit GTR 4 to Zepp OS 3.
2024-02-01 18:47:28 +00:00
FYG_license_bot_ignore_me
4c7476845b Update license headers and CONTRIBUTORS file 2024-01-10 19:01:48 +01:00
FintasticMan
655d202512 Add simple weather condition
Co-authored-by: Victor Kareh <vkareh@redhat.com>
2024-01-04 20:34:21 +00:00
FintasticMan
127867441a Add support for InfiniTime's new simple weather
Co-authored-by: Jean-François Milants <jf@codingfield.com>
2024-01-04 20:34:21 +00:00
Davis Mosenkovs
2ef44e766e PineTime: Improve notification handling
* If setting enabled, add source application (or SMS)
* Fallback to using notification subject if body is unavailable
* Trim/cut sender or title at 25+ chars if necessary
* Better support for notifications without body or subject
2023-11-23 21:30:42 +00:00
Daniel Dakhno
ef1d38d9d3 Device Manager: replaced getSupportedType with supports method
Huami: introduced getSupportedDeviceName

Huami: implemented getSupportedDeviceName

Huami: fixed typo

Device manager: added error on empty getSupportedDeviceName and empty supports()

Device manager: migrated more devices to getSupportedDeviceName

Device manager: simplified default supports implementation

Device manager: added caching for getSupportedDeviceName pattern

Device manager: added caching DeviceType resolution

Device manager: changed pattern matching find()->matches()

Device manager: use Candidate as caching key

Device manager: more verbose variable initialization

Device manager: fixed typo

Device manager: removed device caching from DeviceHelper

Gradle: removed protoc binary

Device manager: moved more devices to getSupportedDeviceName

Device manager: reduced usages of String.format

Device Vesc: removed multiple device types

Device management: regex improvements

Makibes HR3: fixed device recognition regex
2023-10-05 20:34:53 +00:00
Daniel Dakhno
b97b26ce3a Device manager: moved device icons and name to Coordinator 2023-09-28 00:11:02 +03:00
José Rebelo
a85246c279 Use GBDeviceCandidate#getName on all coordinators 2023-09-19 20:45:13 +01:00
Patric Gruber
b7e6a39ec1 use proper Optional 2023-08-26 19:39:05 +00:00
Patric Gruber
d0c602d243 overwrite supportsManualHeartRateMeasurement 2023-08-26 19:39:05 +00:00
Patric Gruber
67eac90f69 merge new activity samples with samples from database on overlap 2023-08-26 19:39:05 +00:00
Patric Gruber
70a8ca5067 add heart rate measurment support for infinitime 2023-08-26 19:39:05 +00:00
Daniel Dakhno
e36bd2eae7 Core: replaced device initialization logic with class based decision
Core: cleaned up imports

Device management: try single-argument-constructor first

Device management: fixed wrong device support class

Device management: added missing initial flags for Mi band 2 HRX

Device management: removed unused import

Device management: removed unused import

Device management: improved exception handling

Device management: prevent constructors from being optimized out

Device management: added UnknownDeviceSupport
2023-08-26 08:14:06 +00:00
Damien 'Psolyca' Gaignon
a3c0e10330
Add GBDevice argument to getAlarmSlotCount 2023-06-13 23:10:55 +02:00
José Rebelo
8ff3ce0477 Zepp OS: Add experimental app management 2023-06-10 23:31:38 +01:00
Andreas Shimokawa
55e7f6595b fix build after rebase 2023-05-21 22:50:52 +02:00
Andreas Shimokawa
9ccd898d42 add supportNavigation() to cooridinator 2023-05-21 22:50:52 +02:00
Andreas Shimokawa
4cad3b3837 InfiniTime: support navigation app 2023-05-21 22:50:52 +02:00
uli
3986d8c4bc PineTime: Added World Clocks 2022-12-12 15:05:53 +00:00
MPeter
a0782d318b fix bug where reading files of ZIP archive out of order would not make them available 2022-11-04 19:17:54 +01:00
MPeter
ffcb67636e remove unused variable
forgot to include in previous commit
2022-11-04 19:17:53 +01:00
MPeter
db37222171 temporarily fix version identification 2022-11-04 19:17:52 +01:00
MPeter
96f87cf913 persist metadata in class, move validity check to isValid() function 2022-11-04 19:17:52 +01:00
MPeter
c7841b4947 use ZipFile utility for reading the ZIP file instead of custom logic
merge conflict fix
2022-11-04 19:17:32 +01:00
Andreas Shimokawa
259a422de6 Revert "Revert "PineTime Weather support""
This reverts commit 50ff6a8a6f.
2022-09-19 21:45:01 +02:00
Andreas Shimokawa
50ff6a8a6f Revert "PineTime Weather support"
This reverts commit 230cbe964b.
2022-09-08 18:42:47 +02:00
TaaviE
230cbe964b PineTime Weather support 2022-09-08 18:02:29 +02:00
TaaviE
2928a0e13b Fixed a bug where less than the requested length was read before EOF in PineTime DFU 2022-09-08 18:01:46 +02:00
vanous
c77521f975 Add device menu item to get to the FW/App Installer via an explanation activity 2022-07-12 10:50:41 +02:00
vanous
d051a6ed50 Adjust device coordinators to provide correct per device reconnection settings 2022-07-11 18:46:43 +02:00
ITCactus
4cadb0412b [PineTime][2481] Steps/Activity sync support #2481 (#2486)
added sync "steps" from PineTime/InfiniTime to Gadgetbridge.

notes:
* Steps sync works only since InfiniTime 1.7
* InfiniTime advertise "steps" info when the PineTime screen is ON (and a bit after that). hence:
	* you should unlock the PineTime screen before end of the day to not loose your latest progress (since the last unlock) at the end of the day;
	* when the PineTime screen is ON and you are moving, PineTime will send "steps" count every about 2-10 seconds, and Gadgetbridge may start to treat this data as an Activity (and also displaying it in Activity charts). that data and charts will not be accurate: you should wait for ["Health/Fitness data storage and expose to companion app](https://github.com/InfiniTimeOrg/InfiniTime/projects/4)" project to be implemented on the PineTime side. and meanwhile, in Gadgetbridge open "Device specific settings" and change/uncheck option in "Charts tabs" and "Activity info on device card" to leave only Steps data.

Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/2486
Co-authored-by: ITCactus <itcactus@noreply.codeberg.org>
Co-committed-by: ITCactus <itcactus@noreply.codeberg.org>
2021-12-11 21:19:05 +01:00
vanous
809cd30f0e add transliteration to PineTime, solves #2334 2021-07-02 09:51:43 +02:00
TaaviE
6403e13c9b SerializedName should be a bit more explicit and theoretically allows reflectionless deserialization 2021-05-29 15:26:05 +03:00
TaaviE
0b021d72ab Made the firmware version extraction a bit more robust and added annotations to keep data classes after optimizations 2021-05-29 15:01:35 +03:00
TaaviE
e4d70ade2a Improved PineTime/InfiniTime firmware DFU metadata parsing and checks 2021-05-03 00:12:51 +03:00
Andreas Shimokawa
00e5f1caf2 InfiniTime: Implement call control and notification 2021-02-22 23:35:34 +01:00
Stephan Lachnit
0118469c9f
InfiniTime: fix music UUIDs for real
Fixup for b9647e26c3
Closes #2199
2021-02-21 14:32:13 +01:00
Stephan Lachnit
b9647e26c3 InfiniTime: update music UUIDs (#2200)
Merge branch 'master' into p/infinitime-music-uuids

InfiniTime: update music UUIDs (Closes #2199)

Updated UUIDs from ccbe2e8e1b

Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/2200
Co-Authored-By: Stephan Lachnit <stephanlachnit@protonmail.com>
Co-Committed-By: Stephan Lachnit <stephanlachnit@protonmail.com>
2021-02-14 00:47:44 +01:00
License Bot
1b5402dcb4 update license headers 2021-01-10 23:38:13 +01:00
TaaviE
3b5f35f34a Added PineTime (InfiniTime) Nordic DFU support 2020-10-11 19:16:31 +03:00
TaaviE
d892e8d963 Separated InfiniTime characteristic UUIDs into a separate file 2020-10-11 14:26:03 +03:00
Andreas Shimokawa
49e7cc4c9b InfiniTime: implement music control and info 2020-09-23 12:12:45 +02:00
Andreas Shimokawa
1c2218079b Pinetime-JF: Recognize device if it annouces itself as InfiniTime 2020-09-09 23:40:36 +02:00
Andreas Shimokawa
9b8f4d329e Experiment with Pinetime-JF 2020-08-04 22:38:11 +02:00