1
0
mirror of https://codeberg.org/Freeyourgadget/Gadgetbridge synced 2024-07-16 18:34:03 +02:00
Commit Graph

2115 Commits

Author SHA1 Message Date
Andreas Shimokawa
998f8775d9 Fix bug in non-DST time where still being in DST was assumed
This affects InfiniTime and Huami
For InfiniTime it probably resulted in the wrong time being displayed
For Huami is resulted to request the wrong data from the band/watch

We used timezone.getDSTOffset() which always returns the DST offset (also in non
DST time)

We need to pass the time being observed to calendar.getOffset() to get the real
offset including DST at that specfic time which then either includes DST offset or not.
2021-11-02 11:34:55 +01:00
Daniele Gobbetti
f8cc520ede BtClassic: generalize device initialization
Also override the new generic initialization for Nothing Ear (1)
2021-10-31 15:54:36 +01:00
vanous
da0c43f77d Galaxy Buds: adding initial support for Galaxy Buds 2019 2021-10-31 07:27:16 +01:00
Andreas Shimokawa
3a642251fe Amazfit Bip U Pro: Support flashing AGPS updates
Use Huafetcher for fetching the data.
2021-10-22 15:46:54 +02:00
Andreas Shimokawa
1341501ac4 Amazfit Bip U Pro: Allow setting more languages, whitelist FW 1.0.2.92 2021-10-22 14:08:39 +02:00
Andreas Böhler
8a3fc19285 Add support for Casio STB-1000. Limitations of GB-5600B/GB-6900B apply. 2021-10-18 18:23:35 +02:00
Daniele Gobbetti
9ad7e210b7 Nothing Ear (1): Read audio status from device and various fixes:
- add support for ANC-light mode
- handle multiple GBDeviceEvents
- add fake fw and hw versions to make DBHelper happy
- fix battery charge detection logic
- extract some strings to resources
2021-10-07 20:25:26 +02:00
Andreas Shimokawa
bef015b0c2 Add new getSupportedLanguageSettings() to coordinator to get rid of all those arrays
There is one big generic one now, unssupported languages will be removed at runtime.
Tested with Amazfit Bip U.
2021-10-07 14:32:09 +02:00
Andreas Shimokawa
2219eb489e Amazfit Bip U: Fix setting the language 2021-10-07 12:50:44 +02:00
Daniel Dakhno
1a892aa159 UM25: added some fields to UI 2021-10-03 02:43:42 +02:00
Andreas Shimokawa
48e5f44b81 Amazfit Bip U Pro: Fix flashing firmware, res, font, watchfaces 2021-10-01 17:49:43 +02:00
Andreas Shimokawa
d9a77540ce Amazfit Bip U: fix watchface installation 2021-10-01 17:42:36 +02:00
Andreas Shimokawa
d673d8a487 Amazfit Bip U: Whitelist fw 1.0.2.95 2021-10-01 14:12:31 +02:00
Andreas Shimokawa
e3a4468bac Amazfit Bip U: Fix flashing firmware, res and fonts 2021-10-01 14:00:38 +02:00
daniele
a7f42f0c4f Add initial support for Nothing Ear(1) TWS (#2403)
Nothing Ear (1) are wireless earbuds that support active noise
suppression, transparency mode and several gestures.

This initial commit adds support for:
- reading battery level
- setting audio mode
- setting in-ear auto detection

Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/2403
Co-authored-by: daniele <daniele@noreply.codeberg.org>
Co-committed-by: daniele <daniele@noreply.codeberg.org>
2021-09-30 22:40:18 +02:00
Arjan Schrijver
2d96328d1b Fossil Hybrid HR: Lower battery level warning threshold to 10% 2021-09-22 11:10:29 +02:00
vanous
e00ee75ad2 adding FitPro bands support 2021-09-21 16:37:19 +02:00
Andreas Shimokawa
92ce748202 Amazfit Bip S: Whitelist 2.1.1.72 and 2.1.1.76 firmware 2021-09-15 10:06:48 +02:00
Andreas Shimokawa
b99da8b596 Mi Band 6: really fix weather on new firmware 2021-09-03 15:50:42 +02:00
Andreas Shimokawa
eb8284f079 Mi Band 6: Fix watchface installation 2021-09-02 13:26:35 +02:00
Andreas Shimokawa
a24900bbcf Mi Band 6: Whitelist FW 1.0.4.38 2021-09-02 11:39:25 +02:00
Andreas Shimokawa
c965114c21 Mi Band 6: Add flashlight to menu items 2021-09-02 11:21:05 +02:00
Andreas Shimokawa
4242f5ccd4 Mi Band 6: Write to chunked2021 for old chunked types on new firmware (fixes music, weather and setting menu items) 2021-09-02 11:21:05 +02:00
Andreas Shimokawa
4a27825931 Mi Band 6: Send all old settings to new characteristics
This adds a compatibility wrapper to make it easier
2021-09-02 11:21:05 +02:00
Andreas Shimokawa
117cd57463 Mi Band 6: Support sending encrypted packets on new firmware 2021-09-02 11:21:05 +02:00
chklump
3b6f3b11bb Fix body_length overflow for long notifications.
The body_length field in the header is only one byte (byte 8). If it it is set to 256 it overflows to 0 wich results in a corrupt notification. So the maximum body length is 255.
2021-08-27 14:04:06 +02:00
Andreas Shimokawa
1bfec5b65f InifiniTime: Fix null being displayed on empty notifications 2021-08-26 10:59:53 +02:00
Andreas Shimokawa
44fcd454a0 Mi Band 6: Make new auth protocol a setting for now 2021-08-26 10:59:53 +02:00
Andreas Shimokawa
2c06e5d39c Mi Band 6 auth: add test, fix crypto 2021-08-26 10:59:53 +02:00
Andreas Shimokawa
d352624629 Mi Band 6 auth: first full but nonworking version 2021-08-26 10:59:53 +02:00
Andreas Shimokawa
1c6f055bef Mi Band 6 auth: Working jni call to generate keys 2021-08-26 10:59:53 +02:00
Andreas Shimokawa
9bd8424f83 Mi Band 6 auth: first experiments 2021-08-26 10:59:53 +02:00
Andreas Shimokawa
5fb674f9ae Fossil Hybrid HR: Support setting metric/imperial mode
Fixes #2355
2021-08-09 16:32:42 +02:00
Andreas Shimokawa
e5caf78fb0 Assume timezone UTC for BLE time protocol
BLE protocol only sends a UTC offset which combines the TZ with DST, if we take
a local timezone as a base and add a raw offset with DST included, DST might
be added again.

This is to fix problems with recorded data on Huami devices where we cannot know
in which timezone data was recorded - only the offset, where we do not know if a
part of it is DST.
2021-08-06 01:05:51 +02:00
Gordon Williams
9222c6700e Add functions for pushing bitmaps to Bangle.js, also add configurable MTU. If we receive a bigger data packet then we know we can send a bigger one too 2021-08-04 16:41:06 +01:00
Andreas Shimokawa
a302b5509f Huami: re-enable setting the timezone correctly with included DST
This will trigger bugs, but also fix some.
We "just" need to fix the new bugs :/
2021-07-30 16:33:44 +02:00
Andreas Shimokawa
c4f12f548c Fix missing breaks in switch, should fix UM25 support 2021-07-20 12:11:44 +02:00
x29a
5b2ca65321 Added support for SMA Q2 (#2215)
Hi,

i applied the changes from [Emeryths fork](https://github.com/Emeryth/Gadgetbridge) to master in order to get the [SMA Q2 smartwatch](https://hackaday.io/project/85463-color-open-source-smartwatch) support upstream.

It uses [his firmware](https://github.com/Emeryth/sma-q2-oss) (pretty/most popular for this device).

Greatly appreciate any feedback as this is my first attempt to add a device to GB :)

I read through the [tutorial](https://codeberg.org/Freeyourgadget/Gadgetbridge/wiki/New-Device-Tutorial), are there other sources for adding new device support?

thanks!

Co-authored-by: x29a <0.x29a.0@gmail.com>
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/2215
Co-authored-by: x29a <x29a@noreply.codeberg.org>
Co-committed-by: x29a <x29a@noreply.codeberg.org>
2021-07-20 12:08:12 +02:00
Arjan Schrijver
fa89df562a Fossil Hybrid HR: Edit existing watchfaces from app manager cache 2021-07-19 13:43:05 +02:00
Arjan Schrijver
de403cf92e Fossil Hybrid HR: Add watchface designer 2021-07-19 13:43:05 +02:00
Andreas Shimokawa
603050b7cc InfiniTime: support notification for battery level 2021-07-08 23:46:18 +02:00
Andreas Shimokawa
7e7b0a0f28 Amazfit T-Rex Pro: Add barometer to menu items 2021-06-19 10:20:41 +02:00
Andreas Shimokawa
3c5c61ddea Amazit T-Rex Pro: minor cleanups, support flashig AGPS UIHH (assumed working for such a new device) 2021-06-13 23:07:58 +02:00
GeekosaurusR3x
685fc8b585 Amazfit T-Rex Pro: Fix for watch face upload and device settings (#2321)
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/2321
Co-authored-by: GeekosaurusR3x <geekosaurusr3x@noreply.codeberg.org>
Co-committed-by: GeekosaurusR3x <geekosaurusr3x@noreply.codeberg.org>
2021-06-13 22:58:00 +02:00
GeekosaurusR3x
00fe84d8cf Initial support for Amazfit T-Rex Pro 2021-06-12 21:19:16 +02:00
Andreas Shimokawa
f32c4d6a43 Support timezones with half an our offset (like UTC+5:30)
Should help #2283
2021-06-04 13:07:42 +02:00
Arjan Schrijver
ecb23f7a22 Fossil Hybrid HR: Block dangerous intents by default and move some settings to developer settings submenu 2021-06-01 09:38:59 +02:00
Dmitriy Bogdanov
e28beaae48 Refactoring: localize notification handling in GB
* Handle all notifications via GB.
* Create all notification channels in one place.
* Lazily init notification channels.
* Re-create notification channels to update their localized names.
2021-05-29 23:17:39 +02:00
Arjan Schrijver
25324c61b9 Fossil Hybrid HR: Use GB app manager (#2302)
This PR replaces (just for the Fossil Hybrid HR) the current watchface configuration screen with the native Gadgetbridge app manager. Bonus feature: when multiple watchfaces are installed on the watch, they can be switched by tapping on them.

Co-authored-by: Arjan Schrijver <a_gadgetbridge@anymore.nl>
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/2302
Co-authored-by: Arjan Schrijver <arjan5@noreply.codeberg.org>
Co-committed-by: Arjan Schrijver <arjan5@noreply.codeberg.org>
2021-05-29 16:42:32 +02:00
Andreas Shimokawa
348f459e3f Huami: Send "about you" preferences to device immediately when changing values
Closes #2297
2021-05-27 23:11:00 +02:00
Arjan Schrijver
9dac0a80c3 Fossil Hybrid HR: Add watch app and watchface support to install handler 2021-05-24 21:49:54 +02:00
Andreas Shimokawa
cbadb9c7ae Mi Band 6: allow firmware update
Also whitelist FW 1.0.1.36 which I just flashed though Gadgetbridge

Tracking Issue: #2263
2021-05-24 16:51:09 +02:00
Andreas Shimokawa
090e0c7b33 Mi Band 6: support flashing watchfaces
Tracking Issue: #2263
2021-05-24 15:47:27 +02:00
Daniel Dakhno
f68582eb46 Fossil HR: fixed last notification widget 2021-05-22 23:32:36 +02:00
Arjan Schrijver
9f459b1da9 Fossil Hybrid HR: Move commute actions to device specific settings 2021-05-22 22:28:26 +02:00
Andreas Shimokawa
268bbd341f Domyos T540C: update console when data changes 2021-05-18 19:15:04 +02:00
Andreas Shimokawa
f083e79f5d update changelogs 2021-05-17 12:17:23 +02:00
Andreas Shimokawa
8d21ae1177 Amazfit GTS2/GTR2: Fix installing watchfaces
Needs some more testing, but looks promising
2021-05-16 14:29:47 +02:00
Andreas Shimokawa
65f006d70b Amazfit GTS/GTR familiy: Allow flashing newer AGPS bundles
These are packed uuih files. POC code to generate them:

https://codeberg.org/Freeyourgadget/Gadgetbridge-tools
2021-05-15 22:47:38 +02:00
Andreas Shimokawa
083fdea225 Experimenting with the Domyos T540C treadmill 2021-05-11 14:30:25 +02:00
Andreas Shimokawa
5765407366 Amazfit Bip S: support flashing of new AGPS files with UIHH header
We do not know how to generate them yet.
But it was confirmed working with a file we reconstructed from a bluetooth hci dump
2021-05-11 12:10:40 +02:00
jhey
58d3eaaa9f WIP initial Miband 6 support (#2277)
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/2277
Co-authored-by: jhey <jhey@noreply.codeberg.org>
Co-committed-by: jhey <jhey@noreply.codeberg.org>
2021-05-09 22:52:36 +02:00
TaaviE
e4d70ade2a Improved PineTime/InfiniTime firmware DFU metadata parsing and checks 2021-05-03 00:12:51 +03:00
Andreas Shimokawa
97a8aebdb3 Fossil Hybrid HR: Fix crash and connection problem when using non-ascii in quick replies 2021-04-29 22:38:44 +02:00
Arjan Schrijver
2f37d4c839 Fossil Hybrid HR: Dismiss incoming call with a quick SMS reply (#2264)
Merge branch 'master' into fossil_hr_quick_replies

Fossil Hybrid HR: Allow between 1 and 16 quick replies to be configured

Fossil Hybrid HR: Dismiss incoming call with a quick SMS reply

Co-authored-by: Arjan Schrijver <a_gadgetbridge@anymore.nl>
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/2264
Co-Authored-By: Arjan Schrijver <arjan5@noreply.codeberg.org>
Co-Committed-By: Arjan Schrijver <arjan5@noreply.codeberg.org>
2021-04-27 12:51:14 +02:00
beardhatcode
32a6049207 huami: send windspeed in beaufort (#2247)
fixup! huamni: send windspeed in beaufort

BipS: send windspeed as km/h

huami: Always send sunrise and sunset

There is no need to look at send_sunrise_sunset, this is peble spesific
because it could be annoying on that platform (an extra line in the
timeline). On huami devices, the watchface desides what to show.

Signed-off-by: Robbert Gurdeep Singh <git@beardhatcode.be>

Mi5: set supportsSunriseSunsetWindHumidity to true

Signed-off-by: Robbert Gurdeep Singh <git@beardhatcode.be>

huamni: send windspeed in beaufort

Signed-off-by: Robbert Gurdeep Singh <git@beardhatcode.be>

Co-authored-by: Robbert Gurdeep Singh <git@beardhatcode.be>
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/2247
Co-Authored-By: beardhatcode <beardhatcode@noreply.codeberg.org>
Co-Committed-By: beardhatcode <beardhatcode@noreply.codeberg.org>
2021-04-21 17:12:20 +02:00
Robbert Gurdeep Singh
2d7bd6ae7b clean: remove unused slots in calander for huami devices
If an event is deleted, it may still remain on the device without this
change
2021-04-21 16:38:36 +02:00
Arjan Schrijver
31d2563a18 Fossil Hybrid HR: Show correct notification icons (#2251)
Co-Authored-By: Arjan Schrijver <arjan5@noreply.codeberg.org>
Co-Committed-By: Arjan Schrijver <arjan5@noreply.codeberg.org>
2021-04-20 09:55:27 +02:00
Vianney le Clément de Saint-Marcq
12baabe3c7 Amazfit GTS2/GTR2: Send windspeed and sunrise/sunset 2021-04-07 17:59:30 +02:00
Vianney le Clément de Saint-Marcq
c1b7ce2308 Amazfit GTS2/GTR2: Fix menu items (#2249)
Amazfit GTS2/GTR2: Add missing menu items

Fixes #2193
Fixes #2230
Fixes #2242

Amazfit GTS2/GTR2: Fix setting menu items

At least on the GTR2e, including the "watchface" menu item causes the
configuration request to be ignored.  Assuming the other GTS2 and GTR2
variants behave the same, this patch ensures the forceWatchface argument
is set to false when setting display items.

Additionally, we now use the correct resource ID for the default
settings.

Co-authored-by: Vianney le Clément de Saint-Marcq <code@quartic.eu>
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/2249
Co-Authored-By: Vianney le Clément de Saint-Marcq <vianney@noreply.codeberg.org>
Co-Committed-By: Vianney le Clément de Saint-Marcq <vianney@noreply.codeberg.org>
2021-04-07 17:58:24 +02:00
Andreas Shimokawa
b7e0e6e44d InfiniTime: Implement find device by simulating a phone call 2021-04-05 17:40:47 +02:00
Andreas Shimokawa
787216f1bc InfiniTime: support title for notifications on firmware 0.15
also drop support for firmware priror to 0.9
2021-04-05 13:05:24 +02:00
Andreas Shimokawa
bb1df11650 InfiniTime: Add support for battery info 2021-04-05 12:53:05 +02:00
Andreas Shimokawa
9aed3a6b25 Relax check for UIHH header, there seem to be some with 0x02 at position 4, dont know if this is a version or whatever 2021-04-03 18:59:07 +02:00
Andreas Shimokawa
db9a0c0a76 Try to fix flashing watchfaces on GTR2/GTS2 2021-04-01 16:50:08 +02:00
vanous
9fc02ff09b move transliteration to per device to DeviceCommunicationService, plus migration, fix #2237 2021-03-28 13:33:08 +02:00
Andreas Shimokawa
51c87f138d Amazfit Neo: re-enable firmware flashing support and fix ft installation 2021-03-27 09:16:32 +01:00
Andreas Shimokawa
c410f0e4a7 Amazfit Neo: Implement firmware update but keep it disabled for now
Flashing to the latest firmware breaks Gadgetbridge compatibility
2021-03-24 23:49:52 +01:00
Andreas Shimokawa
9dc4dde5e7 Amazfit Neo: Support sound settings 2021-03-24 20:02:48 +01:00
Andreas Shimokawa
6f6db01bce Fix list exception (regression from previous Neo commit) 2021-03-24 10:49:46 +01:00
Andreas Shimokawa
1c3398a319 Amazfit Neo: Fix notifications 2021-03-24 09:51:51 +01:00
Andreas Shimokawa
a234c1d527 Amazfit Neo: Fix setting menu items
- Fixes a bug with cycling through entries
- adds steps, distance, calories, battery
- removes world clock (does not seem to work)
2021-03-24 00:44:13 +01:00
cpfeiffer
e9766da89c Fossil Hybrid HR: fix initialization on older firmwares
Avoid NPE when no applications are available
2021-03-21 19:27:32 +01:00
Robbert Gurdeep Singh
7c213f5807 Huami: show event title for events as reminder
The Mi app only has a reminder field and no description field, so
I'm assuming we can only send one string.

In bffb8e8f87 it was noticed that the
title was not displaying so I'm changing this for all Huami devices.
2021-03-14 22:21:58 +01:00
Robbert Gurdeep Singh
99aa59e7da Add friendly reminder of number of bytes to javadoc 2021-03-14 22:21:58 +01:00
Andreas Shimokawa
2e67321adb Fossil Hybrid HR: do nothing in renderWidget() on firmware 1.0.2.20 or later
It seems that newer firmwares have watchfaces which are a special kind of apps
This means that a simply specifying the layout of widget does not longer work

(At least we do not know how)

This commit fixes bluetooth communication being completely stuck when
Gadgetbridge tries to render widgets (for example when switching force
white mode or when having the notification widget enabled in settings)
2021-03-12 22:22:28 +01:00
Andreas Shimokawa
ae40afb827 Revert "Fossil Hybrid HR: Do not try remove notifications from the watch in unauthenticated mode"
This reverts commit faf8ca55c1.
2021-03-12 00:16:00 +01:00
Andreas Shimokawa
faf8ca55c1 Fossil Hybrid HR: Do not try remove notifications from the watch in unauthenticated mode
This does not seem to work and breaks all further communication with the watch.
2021-03-11 23:53:19 +01:00
Arjan Schrijver
cff4b65fb8 Fossil Hybrid HR: Sync notification dismissals to watch (#2219)
Fossil Hybrid HR: Move check for autoremove_notifications pref to NotificationListener

Fossil Hybrid: Rename logger to LOG and replace printStackTrace calls

Keep and maintain list of notifications pushed to device

Fossil Hybrid HR: Make autoremove notifications toggleable in device settings

Fossil Hybrid HR: Sync notification dismissals to watch

Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/2219
Co-Authored-By: Arjan Schrijver <arjan5@noreply.codeberg.org>
Co-Committed-By: Arjan Schrijver <arjan5@noreply.codeberg.org>
2021-03-08 14:29:08 +01:00
Daniel Dakhno
b7b45e199d UM25: removed lambda expression 2021-03-08 12:29:21 +01:00
Daniel Dakhno
0fecdf0e18 UM25: added base device support for UM25C voltage meter 2021-03-08 12:29:18 +01:00
vanous
69d9695eac Use Gb DBaccess for Battery level storing 2021-03-05 11:57:00 +01:00
Arjan Schrijver
0f5f036057 Fossil Hybrid HR: Make more strings translatable 2021-03-04 13:25:32 +01:00
Andreas Shimokawa
9179b2f51e Wasp-OS: Fix crash on Android<8
Fixes #2216
2021-03-04 13:07:59 +01:00
Andreas Shimokawa
1959f1c579 Sony SWR12: Fix broken support
The wasp-os commit was missing a break :/
2021-03-03 18:27:03 +01:00
Andreas Shimokawa
00e5f1caf2 InfiniTime: Implement call control and notification 2021-02-22 23:35:34 +01:00
Andreas Shimokawa
54f96288d9 update changelog, bump version 2021-02-09 22:33:17 +01:00
Stefan Bora
5d4f70499d Added support for Amazfit X 2021-02-07 23:59:26 +01:00
Andreas Shimokawa
6d02e8c488 Amazfit GTS/GTR2 (all variants): Try to fix missing menu items
This was reported in #2189 for the GTS 2 Mini, but let's assume it is the same problem for all variants.
2021-02-07 16:23:45 +01:00
Andreas Shimokawa
85130a15d8 Inital support for Amazfit GTS 2e
Also fix missing break in Zepp E block
2021-02-06 21:56:28 +01:00