gallegonovato
8387fd31db
Translated using Weblate (Spanish)
...
Currently translated at 100.0% (2798 of 2798 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/es/
2024-06-20 22:03:46 +00:00
gfbdrgng
9e7a9fa234
Translated using Weblate (Russian)
...
Currently translated at 96.4% (2700 of 2798 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ru/
2024-06-20 22:03:45 +00:00
陈少举
d91cc1423a
Translated using Weblate (Chinese (Simplified))
...
Currently translated at 100.0% (2798 of 2798 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/zh_Hans/
2024-06-20 22:03:44 +00:00
Oğuz Ersen
ea50b1da31
Translated using Weblate (Turkish)
...
Currently translated at 100.0% (2798 of 2798 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/tr/
2024-06-20 22:03:43 +00:00
gfbdrgng
5ccae9a209
Translated using Weblate (Russian)
...
Currently translated at 95.9% (2686 of 2798 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ru/
2024-06-20 22:03:42 +00:00
skdubg
a9b0bf02b4
Translated using Weblate (German)
...
Currently translated at 100.0% (2798 of 2798 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/de/
2024-06-20 22:03:41 +00:00
gfbdrgng
638f00bba3
Translated using Weblate (Russian)
...
Currently translated at 95.0% (2633 of 2770 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ru/
2024-06-20 22:03:40 +00:00
Nyatsuki
9e0d237072
Translated using Weblate (Japanese)
...
Currently translated at 80.3% (2225 of 2770 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ja/
2024-06-20 22:03:39 +00:00
Nyatsuki
9efe5c7d9a
Translated using Weblate (Japanese)
...
Currently translated at 80.0% (2218 of 2770 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ja/
2024-06-20 22:03:38 +00:00
Nyatsuki
97a22e500d
Translated using Weblate (Japanese)
...
Currently translated at 77.9% (2160 of 2770 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ja/
2024-06-20 22:03:37 +00:00
Arthur Gayot
1114b79924
Translated using Weblate (French)
...
Currently translated at 100.0% (2770 of 2770 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/fr/
2024-06-20 22:03:36 +00:00
Vincèn PUJOL
e963cc1f4b
Translated using Weblate (French)
...
Currently translated at 100.0% (2770 of 2770 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/fr/
2024-06-20 22:03:35 +00:00
Rex_sa
e7a2aecffb
Translated using Weblate (Arabic)
...
Currently translated at 100.0% (2770 of 2770 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ar/
2024-06-20 22:03:34 +00:00
陈少举
9bd1791cc7
Translated using Weblate (Chinese (Simplified))
...
Currently translated at 100.0% (2770 of 2770 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/zh_Hans/
2024-06-20 22:03:33 +00:00
Oğuz Ersen
1e988f10af
Translated using Weblate (Turkish)
...
Currently translated at 100.0% (2770 of 2770 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/tr/
2024-06-20 22:03:32 +00:00
0que
7c47d9aa94
Translated using Weblate (Russian)
...
Currently translated at 95.0% (2633 of 2770 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ru/
2024-06-20 22:03:31 +00:00
gallegonovato
de50edd0aa
Translated using Weblate (Spanish)
...
Currently translated at 100.0% (2770 of 2770 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/es/
2024-06-20 22:03:30 +00:00
skdubg
73a05fad80
Translated using Weblate (German)
...
Currently translated at 100.0% (2770 of 2770 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/de/
2024-06-20 22:03:29 +00:00
Nyatsuki
7d816c8db5
Translated using Weblate (Japanese)
...
Currently translated at 77.5% (2148 of 2769 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ja/
2024-06-20 22:03:28 +00:00
gallegonovato
2d3b29f88a
Translated using Weblate (Spanish)
...
Currently translated at 100.0% (2769 of 2769 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/es/
2024-06-20 22:03:28 +00:00
Manuel-Senpai
54d5dedab4
Translated using Weblate (Spanish)
...
Currently translated at 100.0% (2769 of 2769 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/es/
2024-06-20 22:03:27 +00:00
Rex_sa
2905294e97
Translated using Weblate (Arabic)
...
Currently translated at 100.0% (2769 of 2769 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ar/
2024-06-20 22:03:26 +00:00
Nyatsuki
96666114c2
Translated using Weblate (Japanese)
...
Currently translated at 76.9% (2131 of 2769 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ja/
2024-06-20 22:03:25 +00:00
Vincèn PUJOL
56120f4cda
Translated using Weblate (French)
...
Currently translated at 96.4% (2670 of 2769 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/fr/
2024-06-20 22:03:24 +00:00
陈少举
55b00f7564
Translated using Weblate (Chinese (Simplified))
...
Currently translated at 100.0% (2769 of 2769 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/zh_Hans/
2024-06-20 22:03:23 +00:00
Oğuz Ersen
192fc42655
Translated using Weblate (Turkish)
...
Currently translated at 100.0% (2769 of 2769 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/tr/
2024-06-20 22:03:22 +00:00
Vincèn PUJOL
384cbaab14
Translated using Weblate (French)
...
Currently translated at 94.4% (2615 of 2769 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/fr/
2024-06-20 22:03:21 +00:00
David D
6879c8d1d1
Translated using Weblate (French)
...
Currently translated at 94.4% (2615 of 2769 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/fr/
2024-06-20 22:03:20 +00:00
skdubg
e66f8609d5
Translated using Weblate (German)
...
Currently translated at 100.0% (2769 of 2769 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/de/
2024-06-20 22:03:20 +00:00
bowornsin
15520b33b1
Translated using Weblate (Thai)
...
Currently translated at 4.0% (112 of 2761 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/th/
2024-06-20 22:03:19 +00:00
Nyatsuki
4bc682fb74
Translated using Weblate (Japanese)
...
Currently translated at 76.2% (2106 of 2761 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ja/
2024-06-20 22:03:18 +00:00
gallegonovato
539e700046
Translated using Weblate (Spanish)
...
Currently translated at 100.0% (2761 of 2761 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/es/
2024-06-20 22:03:16 +00:00
Nyatsuki
9b4023f1d2
Translated using Weblate (Japanese)
...
Currently translated at 71.4% (1973 of 2761 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ja/
2024-06-20 22:03:15 +00:00
Rex_sa
3b14436326
Translated using Weblate (Arabic)
...
Currently translated at 100.0% (2761 of 2761 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ar/
2024-06-20 22:03:14 +00:00
陈少举
c82f1e6a50
Translated using Weblate (Chinese (Simplified))
...
Currently translated at 100.0% (2761 of 2761 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/zh_Hans/
2024-06-20 22:03:13 +00:00
Oğuz Ersen
f7cba08d1e
Translated using Weblate (Turkish)
...
Currently translated at 100.0% (2761 of 2761 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/tr/
2024-06-20 22:03:12 +00:00
0que
b4300c0964
Translated using Weblate (Russian)
...
Currently translated at 95.0% (2624 of 2761 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ru/
2024-06-20 22:03:11 +00:00
skdubg
16afa39cc0
Translated using Weblate (German)
...
Currently translated at 100.0% (2761 of 2761 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/de/
2024-06-20 22:03:11 +00:00
Nyatsuki
bd68096333
Translated using Weblate (Japanese)
...
Currently translated at 70.6% (1944 of 2751 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ja/
2024-06-20 22:03:10 +00:00
陈少举
5fcf1bc7e2
Translated using Weblate (Chinese (Simplified))
...
Currently translated at 100.0% (2751 of 2751 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/zh_Hans/
2024-06-20 22:03:09 +00:00
Oğuz Ersen
b07ba81ab6
Translated using Weblate (Turkish)
...
Currently translated at 100.0% (2751 of 2751 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/tr/
2024-06-20 22:03:08 +00:00
0que
8dc2d5cfdf
Translated using Weblate (Russian)
...
Currently translated at 95.2% (2620 of 2751 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ru/
2024-06-20 22:03:07 +00:00
Nyatsuki
c391a953a8
Translated using Weblate (Japanese)
...
Currently translated at 68.0% (1871 of 2751 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ja/
2024-06-20 22:03:06 +00:00
glemco
2fb6d382db
Translated using Weblate (Italian)
...
Currently translated at 90.7% (2496 of 2751 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/it/
2024-06-20 22:03:05 +00:00
gallegonovato
2f51fd4881
Translated using Weblate (Spanish)
...
Currently translated at 100.0% (2751 of 2751 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/es/
2024-06-20 22:03:04 +00:00
skdubg
ec5e0d8d64
Translated using Weblate (German)
...
Currently translated at 100.0% (2751 of 2751 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/de/
2024-06-20 22:03:03 +00:00
Oğuz Ersen
cb2df3b01a
Translated using Weblate (Turkish)
...
Currently translated at 100.0% (2747 of 2747 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/tr/
2024-06-20 22:03:02 +00:00
Nyatsuki
f2dc8cb78b
Translated using Weblate (Japanese)
...
Currently translated at 64.4% (1770 of 2747 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ja/
2024-06-20 22:03:01 +00:00
skdubg
1ae7a20736
Translated using Weblate (German)
...
Currently translated at 100.0% (2747 of 2747 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/de/
2024-06-20 22:03:00 +00:00
陈少举
ec0288cebb
Translated using Weblate (Chinese (Simplified))
...
Currently translated at 100.0% (2747 of 2747 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/zh_Hans/
2024-06-20 22:03:00 +00:00
Nyatsuki
9bbd83bec2
Translated using Weblate (Japanese)
...
Currently translated at 63.3% (1741 of 2747 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ja/
2024-06-20 22:02:59 +00:00
gallegonovato
68013c7acc
Translated using Weblate (Spanish)
...
Currently translated at 100.0% (2747 of 2747 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/es/
2024-06-20 22:02:58 +00:00
Nyatsuki
b6939f6a1d
Translated using Weblate (Japanese)
...
Currently translated at 62.4% (1710 of 2740 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ja/
2024-06-20 22:02:57 +00:00
Nyatsuki
d2a3dc3d28
Translated using Weblate (Japanese)
...
Currently translated at 60.8% (1668 of 2740 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ja/
2024-06-20 22:02:57 +00:00
Nyatsuki
e23367445e
Translated using Weblate (Japanese)
...
Currently translated at 57.0% (1564 of 2740 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ja/
2024-06-20 22:02:56 +00:00
Nyatsuki
e5b34b538d
Translated using Weblate (Japanese)
...
Currently translated at 55.7% (1527 of 2740 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ja/
2024-06-20 22:02:56 +00:00
Rex_sa
d7ec6c202a
Translated using Weblate (Arabic)
...
Currently translated at 100.0% (2740 of 2740 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ar/
2024-06-20 22:02:55 +00:00
Linerly
f4bbb9af6c
Translated using Weblate (Indonesian)
...
Currently translated at 100.0% (2740 of 2740 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/id/
2024-06-20 22:02:54 +00:00
陈少举
5fbdbaa2d9
Translated using Weblate (Chinese (Simplified))
...
Currently translated at 100.0% (2740 of 2740 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/zh_Hans/
2024-06-20 22:02:54 +00:00
Oğuz Ersen
cd0465118f
Translated using Weblate (Turkish)
...
Currently translated at 100.0% (2740 of 2740 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/tr/
2024-06-20 22:02:53 +00:00
0que
3b86261ca5
Translated using Weblate (Russian)
...
Currently translated at 95.1% (2608 of 2740 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ru/
2024-06-20 22:02:52 +00:00
Yaron Shahrabani
d2d4d00aa9
Translated using Weblate (Hebrew)
...
Currently translated at 98.7% (2706 of 2740 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/he/
2024-06-20 22:02:52 +00:00
Jonatan Dimotta
d07bd2e17d
Translated using Weblate (Spanish)
...
Currently translated at 100.0% (2740 of 2740 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/es/
2024-06-20 22:02:51 +00:00
skdubg
1700be1327
Translated using Weblate (German)
...
Currently translated at 100.0% (2740 of 2740 strings)
Translation: Freeyourgadget/Gadgetbridge
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/de/
2024-06-20 22:02:50 +00:00
Rex_sa
65c3e6e085
Translated using Weblate (Arabic)
...
Currently translated at 100.0% (2739 of 2739 strings)
Co-authored-by: Rex_sa <rex.sa@pm.me>
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ar/
Translation: Freeyourgadget/Gadgetbridge
2024-06-20 22:02:50 +00:00
Linerly
b1080a7581
Translated using Weblate (Indonesian)
...
Currently translated at 100.0% (2739 of 2739 strings)
Co-authored-by: Linerly <linerly@proton.me>
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/id/
Translation: Freeyourgadget/Gadgetbridge
2024-06-20 22:02:49 +00:00
0que
a244a6d091
Translated using Weblate (Russian)
...
Currently translated at 95.1% (2607 of 2739 strings)
Co-authored-by: 0que <0que@users.noreply.hosted.weblate.org>
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ru/
Translation: Freeyourgadget/Gadgetbridge
2024-06-20 22:02:48 +00:00
Nyatsuki
0abdb520c3
Translated using Weblate (Japanese)
...
Currently translated at 54.8% (1502 of 2739 strings)
Co-authored-by: Nyatsuki <Odamaki@yandex.ru>
Translate-URL: https://hosted.weblate.org/projects/freeyourgadget/gadgetbridge/ja/
Translation: Freeyourgadget/Gadgetbridge
2024-06-20 22:02:48 +00:00
Martin.JM
1f1fc33e43
Huawei: Fix BR partial packets
...
Would crash before. See added test for example.
2024-06-20 22:02:36 +00:00
José Rebelo
5ad6d07983
Garmin Forerunner 255S: Initial support
2024-06-20 20:39:52 +01:00
José Rebelo
5824a25ebb
Garmin: Do not suggest unbind before pair
...
Watches will connect just fine even if already paired in bluetooth
settings.
2024-06-19 21:20:33 +01:00
Arjan Schrijver
698469ae75
Test Device: Make activity data more realistic
2024-06-19 21:53:43 +02:00
Martin.JM
72dcb3250e
Hauwei: Extend debug request to allow setting the sliced flag
2024-06-18 20:45:38 +00:00
José Rebelo
d946053bcb
Garmin: Allow fetching unknown files
2024-06-16 22:21:46 +00:00
Arjan Schrijver
bad29bbeb8
Dashboard: Add monthly goals indicator and legend to calendar view
2024-06-16 23:36:19 +02:00
José Rebelo
afff822ab1
Garmin Instinct 2X Solar: Fix recognition of some watches
2024-06-16 17:38:42 +01:00
José Rebelo
5be0c612c6
Garmin Venu 2: Initial support
2024-06-16 17:35:00 +01:00
José Rebelo
e2d5a9e4d7
Garmin: Fix weather wind direction
2024-06-16 16:55:48 +01:00
José Rebelo
134983010a
Garmin: Map more fit file types
...
From the device.fit of a Fenix 7S
2024-06-16 13:19:39 +01:00
enoint
c847079cd2
fix device name regex
2024-06-16 12:03:34 +00:00
enoint
2ec568bec7
add support for Hama Fit6900 watch
2024-06-16 12:03:34 +00:00
José Rebelo
7cafbc2002
Prevent some bluetooth events from starting Gadgetbridge
2024-06-15 23:26:58 +01:00
José Rebelo
69fae56a8c
Fix battery icon when device connected
2024-06-15 21:31:07 +01:00
José Rebelo
d4dc686148
Fix crash when opening battery status activity
2024-06-14 20:38:07 +01:00
José Rebelo
527773d3d8
Garmin Forerunner 265: Initial support
2024-06-14 19:47:34 +01:00
Daniele Gobbetti
74fbadf553
Pebble: fix webview crash (on android 14)
...
Older android version also possibly impacted
2024-06-13 16:26:39 +02:00
José Rebelo
12b3ff34e2
Garmin: Send all notification types as foreground
...
Sending notifications for some apps is unexpected for most users, which
was generating some bug reports. For now, send all notifications as
foreground, at least until we can make what is happening more clear or
configurable.
2024-06-11 20:50:06 +01:00
José Rebelo
a574475951
Garmin Forerunner 255: Initial support
2024-06-11 19:57:56 +01:00
hrdl
14d5c79d02
Add Element, ElementX, and Molly to the recognized applications and as generic chat
2024-06-11 20:48:58 +02:00
hrdl
629f487c70
Add KDE Itinerary and KTrip as transit notifications
2024-06-11 20:44:00 +02:00
José Rebelo
010186b2a9
Add note on "Keep activity data on device" preference
2024-06-10 17:10:26 +01:00
José Rebelo
8f98ea02ec
Garmin Fenix 7S: Initial support
2024-06-10 16:48:06 +01:00
José Rebelo
4926f449ec
Display toast on authentication failures
2024-06-10 16:29:53 +01:00
José Rebelo
76d633cde6
Make battery thresholds configurable
2024-06-10 12:55:27 +00:00
Peter Kannewitz
243c1ba039
Xiaomi: swim workout parser lane length fix ( #3823 )
...
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/3823
Co-authored-by: Peter Kannewitz <peter.kannewitz@posteo.net>
Co-committed-by: Peter Kannewitz <peter.kannewitz@posteo.net>
2024-06-10 11:15:18 +00:00
José Rebelo
f85c387edf
Garmin Fenix 6 Sapphire: Fix typo in coordinator name
2024-06-09 14:40:38 +01:00
José Rebelo
241ec26170
Garmin Fenix 7 Pro: Initial support
2024-06-09 14:39:10 +01:00
José Rebelo
13cbec2a63
Garmin Venu 3S: Initial support
2024-06-09 09:13:12 +01:00
José Rebelo
0f80554a30
Garmin: Split coordinator packages by series
2024-06-09 09:12:44 +01:00
Daniele Gobbetti
fc8b959fea
Garmin: only add the cache-control header when updating the AGPS file
...
Prevents it being stale for too long if the user forgets to fetch an updated file.
If the file has to be updated on the watch the response (http status 200) is sent and cached for 14400 seconds, for this period the watch will not request the file again.
Subsequent requests (http status 304) are very small and should not impact battery life negatively, hence they are sent without adding caching directives.
2024-06-08 16:29:52 +02:00
André Büsgen
a80054157a
Bangle.js: Add Sleep as Android support ( #3785 )
...
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/3785
Co-authored-by: André Büsgen <andre.buesgen@posteo.de>
Co-committed-by: André Büsgen <andre.buesgen@posteo.de>
2024-06-08 12:46:09 +00:00
José Rebelo
b7aec071ff
Garmin: Realtime settings
2024-06-07 23:39:12 +01:00
José Rebelo
0f8889498e
Garmin: Send phone volume to watch
2024-06-07 22:53:17 +01:00
José Rebelo
47e3cbcb33
Garmin Fenix 6 Sapphire: Initial support
2024-06-07 21:27:37 +01:00
Ilya Nikitenkov
1007feef60
Sony LinkBuds S: Added additional capabilities
2024-06-07 00:05:47 +03:00
Martin.JM
a90e1be0ee
Huawei: Generalize HR and SpO2 support
2024-06-04 11:23:49 +00:00
Martin.JM
b43d87f6bc
Huawei: Weather no longer depends on weather start response
2024-06-04 11:20:10 +00:00
Gordon Williams
0c19010ca2
Bangle.js: when converting text to bitmaps, try and split up emoji so we can render just those in color.
...
Rendering text as well uses more memory but means text is rendered white, which doesn't work on some backgrounds
2024-06-03 15:58:05 +01:00
José Rebelo
4459b30ee6
Intent API: Add broadcast on activity sync finish
2024-06-02 22:03:12 +01:00
Martin.JM
15ba9e6c85
Improve GPS support for Huawei gadgets
2024-06-02 20:51:02 +00:00
José Rebelo
0e9c709a59
Xiaomi: Ignore activity files without timestamp and version
...
Some watches will send a sequence of zeroes, which would make activity
fetch become stuck, as the file does not exist.
2024-06-02 21:48:41 +01:00
José Rebelo
09bcb782da
Garmin Epix Pro: Fix typo in device name
2024-06-02 21:00:25 +01:00
José Rebelo
42d28cc988
Garmin Epix Pro: Initial support
2024-06-02 20:43:05 +01:00
José Rebelo
64258248b6
Garmin: Allow install agps for sony cpe url
2024-05-31 20:15:15 +01:00
José Rebelo
5e9f5068ad
Garmin: Match exacted supported device names
2024-05-30 18:51:33 +01:00
José Rebelo
15f922276b
Garmin Instinct 2X Solar: Initial support
2024-05-30 18:47:28 +01:00
François Chavant
b647c7ca48
Add Garmin Instinct 2S Solar
2024-05-30 19:43:52 +02:00
Peter Kannewitz
9acdd87029
Xiaomi: add swimming workout type ( #3798 )
...
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/3798
Co-authored-by: Peter Kannewitz <peter.kannewitz@posteo.net>
Co-committed-by: Peter Kannewitz <peter.kannewitz@posteo.net>
2024-05-29 20:52:26 +00:00
José Rebelo
72162469a1
Xiaomi: Fix notification for apps in work profile
2024-05-28 22:45:57 +01:00
José Rebelo
cdf21ecdb4
Garmin: Make characteristics hex representation explicit
...
Avoid mixing decimal and hex representations.
2024-05-28 20:30:00 +01:00
Daniele Gobbetti
537b0580b5
Garmin: fix for watch staying in synchronizing state on first connection
...
Reported in issue 3269, https://codeberg.org/Freeyourgadget/Gadgetbridge/issues/3269#issuecomment-1845355
Also run refactor code on the whole file
2024-05-28 12:35:55 +02:00
José Rebelo
e5d41e75ad
Garmin Vivosmart 5: Initial support
2024-05-27 20:08:00 +01:00
José Rebelo
2fa22224bd
Garmin: Determine ML characteristic dynamically
2024-05-27 20:08:00 +01:00
José Rebelo
ef11dd0f16
Flush logs before sharing
2024-05-26 15:38:11 +01:00
José Rebelo
7b21f85613
Garmin Venu 2 Plus: Initial support
2024-05-26 09:04:57 +01:00
José Rebelo
db33bc3ee9
Xiaomi Spp: Log plaintext payload
...
It's very hard to troubleshoot issues with Xiaomi Spp devices from logs
without having access to the plain-text payload, so we now log it.
2024-05-25 09:35:25 +01:00
José Rebelo
b704276e49
Garmin: Fix 304 response when agps matches cache
2024-05-24 22:24:09 +02:00
Daniele Gobbetti
ba9e5c8a77
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-24 22:24:09 +02:00
Daniele Gobbetti
9c4da444cf
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-24 22:24:09 +02:00
José Rebelo
5224244f74
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-24 22:24:09 +02:00
José Rebelo
8e1511bd6e
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-24 22:24:09 +02:00
José Rebelo
39bbd2e579
Garmin: Improve transaction logging
2024-05-24 22:24:09 +02:00
José Rebelo
d741b6ff66
Garmin: Ignore agps request if etag matches
...
Some watches reboot on http 304
2024-05-24 22:24:09 +02:00
José Rebelo
ca8d595493
Garmin: Configure contacts
2024-05-24 22:24:09 +02:00
José Rebelo
f3cc07af27
Garmin: Fix COBS encoding of long non-zero sections
2024-05-24 22:24:09 +02:00
José Rebelo
88f687496c
Garmin: Improve logging during file downloading
2024-05-24 22:24:09 +02:00
José Rebelo
88a9c81dcc
Garmin: Implement etag for agps requests
2024-05-24 22:24:09 +02:00
Daniele Gobbetti
ea1c1c808c
Change java package of garmin protobuf files
2024-05-24 22:24:09 +02:00
Daniele Gobbetti
0cf73a2120
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-24 22:24:09 +02:00
José Rebelo
2f729dbe29
Garmin: Allow agps updates for multiple URLs
2024-05-24 22:24:09 +02:00
lorddavidiii
a0943649bd
Initial support for Garmin Vivoactive 4
2024-05-24 22:24:09 +02:00
José Rebelo
6f9f49aa4a
Garmin Venu 3: Fix device name
2024-05-24 22:24:09 +02:00
José Rebelo
2ac83fbc31
Garmin: Set default icon to a round watch
2024-05-24 22:24:09 +02:00
José Rebelo
f210b3b732
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-24 22:24:09 +02:00
Daniele Gobbetti
709afc5df7
Garmin: fix spurious protobuf messages
2024-05-24 22:24:09 +02:00
Daniele Gobbetti
2a9a01e40b
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-24 22:24:09 +02:00
Daniele Gobbetti
ebe371de3c
Garmin: Remove handling of legacy cache directory
2024-05-24 22:24:09 +02:00
Daniele Gobbetti
c3a6db3309
Garmin: adjust test after adding distance field
2024-05-24 22:24:09 +02:00
José Rebelo
553f6171e6
Garmin: Map all supported workout types
2024-05-24 22:24:09 +02:00
José Rebelo
8be679d1fd
Garmin: Overwrite files if local size is 0, omit date if equal to garmin epoch
2024-05-24 22:24:09 +02:00
José Rebelo
aee42ec1be
Garmin: Fallback to session for workout type
2024-05-24 22:24:08 +02:00
José Rebelo
4d78fdd883
Garmin: Fix overcounting of steps
2024-05-24 22:24:08 +02:00
José Rebelo
904c995a3e
Garmin: Throttle notification updates on fit parsing
2024-05-24 22:24:08 +02:00
José Rebelo
6f5f944235
Garmin: Fetch fit files HRV status
2024-05-24 22:24:08 +02:00
José Rebelo
f7bfd56d46
Garmin: Process downloaded fit files asynchronously
...
Fixes occasional ANR while syncing activity data.
2024-05-24 22:24:08 +02:00
José Rebelo
a25d8eae30
Activity Summary: Draw fit file if available
2024-05-24 22:24:08 +02:00
José Rebelo
0b07f36817
Garmin: Persist and display activity
...
- Steps, hr, intensity
- Sleep stages
- Stress
- SpO2
- Workouts
2024-05-24 22:24:08 +02:00
José Rebelo
89046d0815
Garmin: Improve computed timestamp parsing
...
timestamp16 must be applied against garmin epoch.
2024-05-24 22:24:08 +02:00
José Rebelo
bdd698b7d3
Garmin: Map more global fit messages
...
* Events
* Goals
* Gps Metadata
* Laps
* Record
* Respiration rate
* Sessions
* SpO2
* Time in Zone
2024-05-24 22:24:08 +02:00
José Rebelo
92b838f90c
Garmin: Fix logging during tests
2024-05-24 22:24:08 +02:00
Lolek
1ecb1feb4d
Initial support for Garmin Swim 2
2024-05-24 22:24:08 +02:00
hrdl
165f41a08f
Add AGPS for Garmin Forerunner 245
2024-05-24 22:24:08 +02:00
Daniele Gobbetti
906ad0c68f
Garmin: enable AGPS update for all Instinct 2 devices
2024-05-24 22:24:08 +02:00
kuhy
880e18fffc
Garmin protocol: show AGPS data status in settings
2024-05-24 22:24:08 +02:00
kuhy
91c2408170
Garmin protocol: add AGPS data checks
2024-05-24 22:24:08 +02:00
kuhy
22fafebd91
Garmin protocol: install AGPS data as firmware
2024-05-24 22:24:08 +02:00
kuhy
9f9441ba01
Garmin protocol: improve detection of successfully sent files (DataTransferHandler)
2024-05-24 22:24:08 +02:00
kuhy
4152ec1570
Garmin protocol: add support for AGPS data retrieval
2024-05-24 22:24:08 +02:00
Daniele Gobbetti
457ff8b88f
Fixup: Introduce device specific writable directory (MAC address)
...
Add logic to not fetch again files which had the previously defined name
2024-05-24 22:24:08 +02:00
Daniele Gobbetti
8c88cc992a
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-24 22:24:08 +02:00
José Rebelo
72f1d0c82c
Garmin: Make fit header crc optional
2024-05-24 22:24:08 +02:00
Daniele Gobbetti
3abf78d8c2
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-24 22:24:08 +02:00
Daniele Gobbetti
f1f77abe18
Garmin: harmonize device names
...
All device name strings start with manufacturer name.
Normalized the usage of accented i.
2024-05-24 22:24:08 +02:00
Andreas Schneider
b6468db13c
Garmin: add coordinator for Instinct Crossover
2024-05-24 22:24:08 +02:00
Daniele Gobbetti
a5dbb7fea7
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-24 22:24:08 +02:00
Daniele Gobbetti
179f8a3a9e
Garmin: encode unknown weather codes as invalid
2024-05-24 22:24:08 +02:00
meskio
77f119c211
Initial support for Garmin Instinct Solar
2024-05-24 22:24:08 +02:00
José Rebelo
1b45d71cc7
Garmin: Improve fit parsing
...
* Remove the dependency on PredefinedLocalMessage from generic fit parsing code
* Standardize toString methods, omit types for known fields
* Return null on unknown field number or names, instead of crashing
* Map more Global FIT messages (device info, monitoring, sleep stages, sleep stats, stress level)
* Prioritize "timestamp" over "253_timestamp" if specified explicitly in the global message definition
* Introduce RecordData wrappers for each global message, allowing us to have proper types when getting data. If missing or unknown, the getter returns null. All classes are auto-generated by the FitCodeGen.
* Persist a list of RecordData, instead of a Map from RecordDefinition
* Fix parsing of compressed timestamps - keep them in computedTimestamp on each data record
* Use timestamp16 if available in Monitoring records
2024-05-24 22:24:08 +02:00
Daniele Gobbetti
9e1bf07cd2
Garmin: add coordinator for Instinct 2 Solar Tactical
...
confirmed working in https://codeberg.org/Freeyourgadget/Gadgetbridge/issues/3063#issuecomment-1787762
2024-05-24 22:24:08 +02:00
José Rebelo
3c5eada403
Garmin: Send location to watch
2024-05-24 22:24:08 +02:00
Daniele Gobbetti
e46ea03693
Garmin: calendar integration improvements
...
use the protobuf fields described in the documentation[0]
build the message according to the requested fields
[0] https://gadgetbridge.org/internals/specifics/garmin-protocol/#calendarevent
2024-05-24 22:24:08 +02:00
a0z
ed0d41aa3a
Garmin: Initial support of Instinct 2 Solar
2024-05-24 22:24:08 +02:00
Daniele Gobbetti
416b7b075c
Garmin: fix notification crashes and handle SMS correctly
...
It looks like (some) watches really don't like having an empty list of actions, hence enable the legacy "refuse" action in every case, leaving it empty and inactive.
Further display the SMS sender in the notification and enable the correct code path for the reply action to work.
2024-05-24 22:24:08 +02:00
José Rebelo
cbd2c040bb
Garmin: Auto-detect canned messages support
2024-05-24 22:24:08 +02:00
José Rebelo
9f1420e496
Garmin: Fix reply to sms
2024-05-24 22:24:08 +02:00
José Rebelo
cf02a02a48
Garmin: Add setting to disable notifications
2024-05-24 22:24:08 +02:00
José Rebelo
33eb748b64
Garmin Venu 3: Enable canned replies
2024-05-24 22:24:08 +02:00
Daniele Gobbetti
dbc270ad9f
Garmin: use developer device setting for keeping data on device
...
Make use of the previously added preference to toggle file archival (deletion) on the watch.
Default is true (keep data on device) until we are sure of the consequences.
2024-05-24 22:24:08 +02:00
José Rebelo
d73eb849e6
Garmin: Map all known files types
2024-05-24 22:24:08 +02:00
José Rebelo
d8dcc57813
Garmin: Add support for http weather requests
2024-05-24 22:24:08 +02:00
Daniele Gobbetti
01d48cde91
Garmin: Rename LocalMessage to PredefinedLocalMessage and clarify its usage
...
PredefinedLocalMessage are only useful for FIT messages and should not interfere with FIT files. The only impact of using the local message in fit files was in the textual output, but it was confusing.
Add an explicit constructor to RecordHeader if PredefinedLocalMessage should be taken into account, and use this only in fit messages leaving the default constructor for fit files.
Also adjusts the test case as textual output comparison needs to be fixed.
2024-05-24 22:24:08 +02:00
kuhy
de019fc00a
Initial support for Garmin Vivoactive 4S
2024-05-24 22:24:08 +02:00
Daniele Gobbetti
698908a589
Garmin: Add support for custom replies (notifications and calls)
...
To enable custom replies an override must be defined in the devices coordinator that actually support custom replies.
The custom preferences allow to:
- enable / disable the default message suffix (Instinct 2 appends "sent from my $vendor device" to each reply by default)
- define custom messages to reply to calls and incoming messages (leaving those lists empty will enable the default messages to be used)
Also adds a new protobuf definition file of mostly unknown values that enable toggling the message suffix on Instinct 2.
2024-05-24 22:24:08 +02:00
myxor
15916635e1
Initial support for Garmin Vivoactive 5
2024-05-24 22:24:08 +02:00
Daniele Gobbetti
45c13675e0
Garmin: Add support for replying to notifications
...
This uses the (assumed) new method of passing multiple actions, instead of the (assumed) legacy accept/decline approach.
At the moment the preset messages stored on the watch firmware are used for replying, the code supports using custom messages already but those have to be updated to the watch somehow (probably by protobuf) and this is not supported yet. Using custom messages if they are not set will just do nothing.
The NotificationActionIconPosition values have been determined on a vívomove Style and might not work properly on other watches.
The evaluation of GBDeviceEvent have been moved in GarminSupport since the notification actions handling uses device events.
Also adds a method to read null terminated strings to GarminByteBufferReader.
Also adds a warning in NotificationListener if the wrong handle is used for replying to a notification.
2024-05-24 22:24:08 +02:00
Daniele Gobbetti
54070b2652
Garmin: Add FileDownloadedDeviceEvent and (disabled) file deletion
...
Also adds (disabled) file deletion in case of already downloaded files
2024-05-24 22:24:08 +02:00
Daniele Gobbetti
2c70f1a616
Garmin: Add DST/Timezone support
2024-05-24 22:24:08 +02:00
hrdl
69934b2d7c
Add Garmin Forerunner 245
2024-05-24 22:24:07 +02:00
Daniele Gobbetti
42e44de1ac
Garmin: Support file archival (deletion) on watch
...
Also add original timestamp to local cache filename as the file identifier are reused
Also fix imports of Test class
2024-05-24 22:24:07 +02:00
José Rebelo
5c57392b85
Garmin: Fetch activity on demand
2024-05-24 22:24:07 +02:00
José Rebelo
0d230ce0a5
Garmin: Fix proguard rules for release builds
2024-05-24 22:24:07 +02:00
José Rebelo
2eb342860a
Garmin: Allow high MTU
2024-05-24 22:24:07 +02:00
José Rebelo
aaa3e086d0
Garmin protocol: Simplify FILE_TYPE
2024-05-24 22:24:07 +02:00
José Rebelo
fb06a48756
Garmin protocol: Fix linter warnings
2024-05-24 22:24:07 +02:00
José Rebelo
72de9bafe9
Garmin protocol: Introduce GarminCoordinator
2024-05-24 22:24:07 +02:00
José Rebelo
4c734e4717
Garmin protocol: fix crash when stopping find phone
2024-05-24 22:24:07 +02:00
Daniele Gobbetti
e6365638d4
Garmin protocol: basic file transfer and notification handling
...
adds synchronization of supported files from watch to external directory
adds support for Activity and Monitoring files (workouts and activity samples), but those are not integrated yet
adds upload functionality (not used ATM and not tested)
adds notification support without actions
introduces centralized processing of "messageHandlers" (protobuf, file transfer, notifications)
also properly dispose of the music timer when disconnecting
2024-05-24 22:24:07 +02:00
Daniele Gobbetti
9dee71df6f
Garmin protocol: enable media volume control from watch
2024-05-24 22:24:07 +02:00
Daniele Gobbetti
14c6ce1a3a
Garmin protocol: store max packet size from DeviceInformationMessage
...
also adds messageType to the warnifleftover log message
2024-05-24 22:24:07 +02:00
Daniele Gobbetti
6cb5184e2b
Garmin protocol: various changes
...
- add FitFile class that deals with parsing and generating outgoing files
- consider all field definitions with number 253 as Timestamps [0]
- add support for "compressed timestamps" in fit file parsing. Those are not returned among the other normal fields but are available through a method of RecordData
- adjust the test cases
[0]48b6554d8a/fitdecode/reader.py (L719)
2024-05-24 22:24:07 +02:00
Daniele Gobbetti
e814a63590
Garmin protocol: change naming and logic of several FIT classes
...
- refactor the logic of Global and Local messages
- add some Global messages with naming taken from [1]
- Global messages are not enum because there are too many
- introduce the concept of FieldDefinitionPrimitive
- add new Field Definitions
- add support for developer fields and array fields
- add test case for FIT files taken from [0]
[0] https://github.com/polyvertex/fitdecode/
[1] https://www.fitfileviewer.com/
2024-05-24 22:24:07 +02:00
Daniele Gobbetti
b2f995b736
Garmin protocol: create helper class GarminByteBufferReader
...
separate the logic specific for GFDI messages from the generally useful logic.
Also centralize the logging in case of leftover bytes while parsing GFDI messages.
2024-05-24 22:24:07 +02:00
Daniele Gobbetti
8524426b70
Garmin protocol: create custom GBDeviceEvent for weather request
2024-05-24 22:24:07 +02:00
Daniele Gobbetti
4054326535
Garmin protocol: use message enum instead of id in GFDI Messages
2024-05-24 22:24:07 +02:00
Daniele Gobbetti
c8c51064c3
Garmin protocol: refactoring and fixes of BaseTypes
...
The boundaries are enforced on the stored value when decoding, before applying the adjustments for scale and offset.
Also add some tests for the BaseTypes
Introduce new FieldDefinition for Temperature and WeatherCondition (removing the static class)
Add accessors for field data in the containing RecordData, thus keeping the FieldData private
2024-05-24 22:24:07 +02:00
Daniele Gobbetti
71f497ecbb
Garmin protocol: create specific field definition for day of week
2024-05-24 22:24:07 +02:00
Daniele Gobbetti
e323e7fbde
Garmin protocol: move field encode/decode interface to the FieldDefinition
...
This allows for semantic subclassing the FieldDefinition.
A FieldDefinitionTimestamp subclass is introduced as example
2024-05-24 22:24:07 +02:00
Daniele Gobbetti
4313fc833a
Garmin protocol: fix invalid signed int base type value
2024-05-24 22:24:07 +02:00
Daniele Gobbetti
e691042265
Garmin protocol: add initial support for FIT messages
...
note: only weather message definition and data tested so far
also enable weather support for Instinct 2S and vivomove style
also cleanup some unused constants that have been migrated to new enums in GFDIMessage
additionally switch to new local implementation of GarminTimeUtils with needed methods
2024-05-24 22:24:07 +02:00
Daniele Gobbetti
afe41ee563
Garmin protocol: fixes
...
- fix DEVICE_SETTINGS message ID
- put all status messages in own package
- allow protobuf handler to change the returned status message to signal unsupported requests
- fix various bugs
2024-05-24 22:24:07 +02:00
Daniele Gobbetti
559a73cc5e
Garmin protocol: initial refactoring and basic functionalities
...
This commit takes aims to bring many new garmin devices up to a working status, with basic functionalities such as:
- garmin protocol initialization
- basic message exchange
- support for some messages in Garmin own format
- support for some messages in protobuf format
2024-05-24 22:24:07 +02:00
Gordon Williams
7ea2261ba3
Bangle.js: honour the enable_calendar_sync setting
...
Allow handleCalendarSync to send a single `calendar-` command with all IDs before it starts adding new items (faster)
2024-05-24 09:26:37 +01:00
Gordon Williams
4da5a73cd6
Bangle.js - remove large lines of _____ from calendar (generated by google teams)
2024-05-23 09:48:37 +01:00
MrYoranimo
4edea1ed96
Huami: fix reminder message encoding
...
Potentially fixes #3548
2024-05-19 15:13:23 +00:00
José Rebelo
78c10c3da9
Amazfit Bip 5 Unity: Experimental support (untested)
2024-05-18 13:12:51 +01:00
Vitaliy Tomin
8946eff8fa
Huawei: Set user info to device
...
* height
* weight
* age
* year of birth
* gender
2024-05-16 17:52:51 +00:00
Daniele Gobbetti
9c68acce2e
Add support for exclusive audio focus
...
This pauses temporarily other apps that are playing sound while our notifications get spoken.
2024-05-14 16:06:03 +02:00
Martin.JM
9ba96231c3
[Huawei] Implement remote camera shutter
2024-05-13 21:28:43 +00:00
Martin.JM
4c4ba623c4
Add camera implementation
...
This is to support watches with remote shutter applets that do not
act as remote triggers for other apps automatically.
2024-05-13 21:28:43 +00:00
Arjan Schrijver
d9863786de
Dashboard: Use more intuitive time markings in today widget
...
Fixes #3717
2024-05-13 21:07:43 +02:00
Daniel Dakhno
3b01422a45
device-cycling-sensor ( #3705 )
...
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/3705
Co-authored-by: Daniel Dakhno <dakhnod@gmail.com>
Co-committed-by: Daniel Dakhno <dakhnod@gmail.com>
2024-05-10 20:43:45 +00:00
Martin.JM
25b1f8f3fa
[Huawei] Change to use MediaManager
2024-05-09 20:03:36 +02:00
José Rebelo
b909e123a4
Huawei Band 9: Fix device name
2024-05-08 22:49:57 +01:00
Damien 'Psolyca' Gaignon
39ea1774a4
[Huawei] Add Huawei Band 9 gadget
2024-05-08 21:49:12 +00:00
Damien 'Psolyca' Gaignon
f2c360ae8a
[Huawei] Add Huawei Watch Fit 3 gadget
2024-05-08 21:49:12 +00:00
José Rebelo
41aab5135f
Fossil Q Hybrid: Migrate global preferences to device-specific
2024-05-08 21:42:29 +00:00
Damien 'Psolyca' Gaignon
690d01dcac
[Huawei] Remove unneeded data
2024-05-08 22:48:47 +02:00
Damien 'Psolyca' Gaignon
02b052fcaf
[Huawei] Add Huawei Watch 4 Pro gadget
...
fix
2024-05-08 22:48:46 +02:00
ahormann
ac8d1ed6a0
New Device Soundcore Liberty 3 Pro ( #3753 )
...
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/3753
Co-authored-by: ahormann <ahormann@gmx.net>
Co-committed-by: ahormann <ahormann@gmx.net>
2024-05-07 22:39:13 +00:00
MrYoranimo
508a86b8ed
Xiaomi: fix determining fall asleep time
...
Because the previous implementation of determining the time the user
falls asleep in a given time range would take the 24 hours in advance
into account, graphs displaying sleep data would erroneously indicate
that the user has been asleep since the start of the timeframe if
the user was asleep during the rollover of the time frame 24 hours
before.
This commit change the algorithm to only fetch the last sleep stage
sample and sleep range sample from the database that occurred before
the given time range. This saves having to process 24 hours worth of
samples before the time range in both cases, and prevents taking into
account irrelevant sleep ranges.
2024-05-07 13:33:52 +02:00
MrYoranimo
f581d57c01
Xiaomi: fix sleep stages not getting parsed from sleep details files
...
Not all packets use the payload length byte/short for the payload
length. Instead, some packets do not carry a payload, in which case
the payload length bytes are assumed to represent some state or flag.
Therefore, for packets with a type known not to carry a payload, the
payload extraction is skipped, allowing other packets to get
successfully parsed again.
2024-05-07 13:17:10 +02:00
José Rebelo
bed67ef1fb
Xiaomi: Allow transliteration
2024-05-05 12:36:23 +01:00
José Rebelo
04237b7727
Prevent query for devices that have activity card disabled
...
Even if the activity card was disabled, all devices would be queried for
data. This slows down the UI when there are a lot of devices, especially
if multiple of them have data and only a few have the card enabled.
2024-05-04 23:51:19 +01:00
Alik Aslanyan
dc1ffdafcd
Rework Armenian transliteration to handle more edge cases around mixed letters
2024-05-04 20:45:35 +04:00
José Rebelo
eaf7c03f61
Galaxy Buds 2: Fix recognition of some versions
2024-05-04 11:06:07 +01:00
José Rebelo
7892afa304
Xiaomi: Fix barometer
...
Thanks to MrYoranimo for the fix.
2024-05-03 22:27:57 +01:00
Martin.JM
4c93647aaf
[Huawei] Add TruSleep warning
2024-05-02 20:59:08 +02:00
José Rebelo
0ff8774fce
DebugActivity: Omit manufacturer for test devices if name contains it
2024-05-01 23:34:14 +01:00
rymut
7a50df61b8
[Huawei] refactor: removed isExperimental override
2024-05-01 22:35:12 +02:00
rymut
8860b4b678
[Huawei] fix: use correct coordinator for watch fit 2
2024-05-01 22:24:36 +02:00