1
0
mirror of https://codeberg.org/Freeyourgadget/Gadgetbridge synced 2024-11-14 14:09:28 +01:00
Commit Graph

3351 Commits

Author SHA1 Message Date
TaaviE
1b43468b9e Improved the ITag coordinator class a bit 2020-08-02 21:07:14 +03:00
Andreas Shimokawa
a619fdb168 Huami: Prevent setting an MTU of < 23, which is either a special value or a parsing error of Gadgetbridge
This fixes a problem where writeToChunked algorithm results in out of bounds writes or an endless loop.

Closes #1936
2020-08-02 13:11:41 +02:00
TaaviE
f9dc625c5c Printed a few rather fatal exceptions in case they happen for easier debugging (#1946)
Removed a few more occurrences of double logging

Removed double logging

Printed a few rather fatal exceptions in case they happen for easier debugging and a few other small cleanups

Co-authored-by: TaaviE <taavi.eomae+github@gmail.com>
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/1946
2020-08-02 10:55:06 +02:00
TaaviE
2ba6b88ff9 Made scan results a bit more detailed by displaying special cases 2020-08-02 03:33:08 +03:00
Cristian Alfano
637a7d5d07 Adding support for Mi Band 5's new FW and res versions and new languages supported: italian, french and german. 2020-08-01 23:03:21 +02:00
TaaviE
da529579f4 Made it possible to disable asking for a few permissions. 2020-08-01 17:27:26 +03:00
TaaviE
1ceaf48ba7 Only request ANSWER_PHONE_CALL above API 26 2020-08-01 17:27:15 +03:00
TaaviE
bb1b31bcb4 Made sure to check notification listener access even after first launch because not having it can cause issues 2020-08-01 17:27:15 +03:00
TaaviE
8da7a7aced Added a checkbox to un-ignore bonded devices 2020-08-01 15:49:54 +02:00
Andreas Shimokawa
c735dd0dd4 fix compilation 2020-07-31 14:05:45 +02:00
115ek
58711ff2d2 TLW64: Add basic settings
* inactivity warnings
* activate display on lift
* timeformat
* TODO: screen timeout, find-my-device,...
2020-07-30 15:00:34 +02:00
115ek
81956143de TLW64: Revert "Switch to dynamic battery detection"
This reverts commit 8c7800534f78258b9f817ac3a524d985ed6aa84e.

* Battery Service doesn't notify so the charge gets only updated on initializeDevice()
2020-07-30 12:36:02 +02:00
115ek
7a2cb1ca68 TLW64: Fix fetching progress bar
* Fetching progress bar wasn't made invisible again
2020-07-30 12:36:02 +02:00
115ek
943728c35c TLW64: Support fetching activity data (steps + sleep) 2020-07-30 12:35:43 +02:00
115ek
95da81dfcf TLW64: Increase vibration amount on call state
* 5 vibrations are too less if someone calls 
* 30 vibrations last about 30 seconds (if call state doesn't change)
* duration parameter behaves strange: higher value means shorter vibration?! 
-> let's go back to default duration of 1
2020-07-30 12:15:12 +02:00
115ek
4f5e2d0730 TLW64: Beautify code 2020-07-30 12:15:12 +02:00
115ek
8a3174dabd TLW64: Support further device settings
* inactivity alarm
* others are unclear
2020-07-30 12:15:12 +02:00
115ek
5c40e71355 TLW64: Support alarms 2020-07-30 12:15:12 +02:00
115ek
098120ea56 TLW64: Switch to dynamic battery detection
* Battery Service 0x180F is supported so let's make use of it
2020-07-30 12:15:12 +02:00
115ek
92d2fbc997 TLW64: Support battery level and firmware version detection
* firmware is missing some characters compared to the value reported by the original app
* https://play.google.com/store/apps/details?id=com.yc.pedometer&hl=en_US
* need to investigate that
2020-07-30 12:15:12 +02:00
115ek
4cb481fba3 TLW64: Wiretap operation
* let's log some packets to make sure we send the right things
2020-07-30 12:15:12 +02:00
115ek
1e6146f4aa TLW64: Support factory reset 2020-07-30 12:15:12 +02:00
115ek
654019e2c0 TLW64: Support notifications 2020-07-30 12:15:12 +02:00
115ek
fc2a7c6f8d TLW64: Support setting userdata 2020-07-30 12:15:12 +02:00
115ek
56dc5211e7 TLW64: Support setting displaysettings
* 24h/12h clock
* metric/imperial units
2020-07-30 12:15:12 +02:00
115ek
0ed7c385fb TLW64: Support setting date 2020-07-30 12:15:12 +02:00
115ek
7c5a2d0e58 TLW64: Support find device 2020-07-30 12:15:12 +02:00
115ek
dfd2eb0e10 TLW64: Initial support 2020-07-30 12:15:12 +02:00
TaaviE
629a3bcf63 Improved when and how the toast to grant permissions is displayed, won't request permissions that have been permanently disabled or denied by the system. No way to actually ask if the permission has been denied by the user. 2020-07-30 00:04:36 +02:00
odavo32nof
d3a51a1078 Adding Mi Band 5 initial support (#1930)
Merge branch 'master' into master

Merge branch 'master' into master

Added available languages for Mi Band 5.

This one's for fixing the step counter but the daily count is always a little bit different compared to what's shown on the smartband.

Extending Mi Band 5 support! Every display item can be showed on the smartband now.

Cleanup

FW related test code

FW related test code

FW related test code

FW related test code

Adding Mi Band 5 test support

Co-authored-by: cristian <c.alfano@outlook.it>
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/1930
2020-07-28 18:16:56 +02:00
TaaviE
22256030b5 Made items in the media receivers list more differentiable 2020-07-28 16:55:25 +02:00
TaaviE
701039e673 Instead of crashing, display a notification that the service couldn't be started 2020-07-28 11:57:13 +03:00
TaaviE
3ad1412a1d Delegated error handling properly to the function that creates FetchActivityOperation 2020-07-28 08:11:50 +02:00
TaaviE
bcac8e0d7f Minor changes and a fix to a NPE when mBtGatt is null 2020-07-28 08:10:39 +02:00
TaaviE
443658bf9e Caught an illegal argument instead of crashing and made it clear that continuing is ill-advised 2020-07-28 08:08:16 +02:00
TaaviE
709fb0a82b Made UriHelper a bit more failure resistant 2020-07-28 01:16:17 +03:00
TaaviE
1c2cd99efd Made sure to request the permission to change ringer mode to silent 2020-07-27 21:21:19 +03:00
TaaviE
18afddac29 Made the version string generation use a specific locale for generation, trying to avoid potential localization issues 2020-07-27 20:11:37 +02:00
TaaviE
7ea7fadd60 Made Mi Band activity fetching not crash the application 2020-07-27 17:55:16 +03:00
Andreas Shimokawa
932b0f7f94 Amazgit GTR/GTR Lite: Try to fix broken activity data
Query versions as described in #1907
Also see #1924
2020-07-23 22:05:28 +02:00
Andreas Shimokawa
ef09e24482 Amazfit GTS: Fix broken activity data on Firmware 0.0.9.xx
Fixes #1924
2020-07-22 11:03:30 +02:00
Andreas Shimokawa
f460f6abd1 Amazfit Bip S: Change Unknown menu item to "World Clock"
Latest firmware has a world clock, setting the locations is not yet supported by Gadgetbridge
2020-07-21 17:13:23 +02:00
vanous
2496b40a88 Improve padding. Use better (i) icon. Add 'unlisted contributors'. 2020-07-12 10:38:56 +02:00
vanous
c1a8fb502c Add About screen 2020-07-11 17:04:29 +02:00
Michael
3695a68e2f
Add drawables for Amazfit Bip smartwatch
- It is my own work based on a picture of my Amazfit Bip.
- I added the resources and changed DeviceType.java to use the new drawables for all Amazfit watches similar to Bip (Bip, Bip s, Bip lite and GTS).
- I added the license to LICENSE.artwork
2020-07-09 14:09:48 +02:00
Andreas Shimokawa
7980d928a8 Add experimental support for TinyWeatherForecastGermany 2020-07-05 21:54:10 +02:00
Andreas Shimokawa
c437347236 Amazfit GTR/GTS: Fix connection for new firmware
This change does not do any harm on other Huami devices it seems
2020-07-05 17:07:43 +02:00
Andreas Shimokawa
3940387b1a Huami: set forecast limit to 6 days (current + 6 in future) 2020-06-29 19:41:56 +02:00
Andreas Shimokawa
b7a1f469ee Huami: limit forecast days to 3 days
Fixes problems with new weather notificaion on Mi Band 4 and others
Fixes #1910
2020-06-29 19:02:30 +02:00
Andreas Shimokawa
425bf48df5 Amazfit Bip S: whitelist fw 2.1.1.16 2020-06-29 16:36:16 +02:00
Andreas Shimokawa
c1b6f5f4f5 Amazfit Bip S: fix installation of latest res (96) 2020-06-29 00:17:23 +02:00
Dmytro Bielik
496460502b Initial support for Amazfit T-Rex 2020-06-24 18:43:23 +03:00
Andreas Shimokawa
5d58a2f583 Work around music controls being disabled since last commit on Amazfit Cor (we do not get a music app started event before we haven't sent music information - weird) 2020-06-22 18:35:22 +02:00
Andreas Shimokawa
6b20f62e0f Huami: Use music control code from Bip S for all devices
needs testing and cleanup for all devices
2020-06-22 18:06:40 +02:00
Zhong Jianxin
55f9c8f519 Huami: Avoid cutting multibyte chars in half 2020-06-22 10:12:10 +02:00
Dmitry Markin
a8638a52fa Stop an incoming call notification when a VoIP call is missed 2020-06-20 11:52:49 +03:00
TaaviE
d871b03f33 Added a safety measure against a weird internal crash when stopping a BLE scan 2020-06-17 08:47:39 +02:00
Zhong Jianxin
c3a9cf858e Amazfit Bip S: Allow longer notification message 2020-06-16 13:41:26 +08:00
Andreas Shimokawa
26b7932153 Mi Band 4: Whitelist FW 1.0.9.58 2020-06-13 22:18:18 +02:00
Andreas Shimokawa
0229d24092 Mi Band 4 (possibly others): Fix detected RES version being always 69 for non-whitelisted res files
Fixes #1886
2020-06-12 23:24:26 +02:00
Andreas Shimokawa
cdc149338a Also use device alias if set in notification 2020-06-12 22:49:16 +02:00
Andreas Shimokawa
a8328d4a96 Add GUI to change alias (closes #1888)
Could look nicer...
2020-06-12 22:38:37 +02:00
Andreas Shimokawa
53f5439444 Start implementing device aliases (#1888) 2020-06-12 18:04:53 +02:00
Andreas Shimokawa
8400568aed Amazfit Bip S: support flashing GPS firmware, whitelist tonlesap 2.1.1.08 firmware, res, gps, font 2020-06-12 16:58:02 +02:00
Andreas Shimokawa
1f8826329c Amazfit Bip S: For firmware update distinguish dth and tonlesap variants
This is done by comparing the firmware version (2 assumed for tonlesap, 4 for dth)

This could have been done properly by comparing the hardware revision, but there are so many hardware revisions during a huami device lifecycle, we could not catch up.
2020-06-12 16:14:35 +02:00
Andreas Shimokawa
a19bb8c21d * Amazfit Bip S: remove disconnect notification and button action settings (they do not work) 2020-06-12 09:46:48 +02:00
Andreas Shimokawa
99b7764709 Amazfit Bip S: Support flashing firmware and res 2020-06-11 19:24:45 +02:00
Andreas Shimokawa
25c749bab9 Amazfit Bip S: Support flashing fonts and setting high MTU 2020-06-11 13:29:41 +02:00
Andreas Shimokawa
8e08a9d660 Support flashing newer GPS ALM and support flashing GPS CEP on Bip S 2020-06-11 12:16:57 +02:00
Andreas Shimokawa
2f8634ce66 Shamelessly assume Bip S is using one of the newer fireware install code 2020-06-08 16:43:39 +02:00
Andreas Shimokawa
7d0243e61d move Bip S file 2020-06-08 16:38:03 +02:00
Andreas Shimokawa
4326419209 Amazfit Bip S: allow flashing watchfaces (untested, and probably wont work) 2020-06-08 16:36:54 +02:00
Zhong Jianxin
44a9ce0267 Amazfit Bip S: Music support 2020-06-08 16:16:33 +02:00
Zhong Jianxin
c0558c570c Huami: Check if musicSpec/stateSpec is null 2020-06-08 16:16:33 +02:00
Andreas Shimokawa
0115575317 Ignore com.android.incallui when handling voip call notifications
Hopefully helps with #1881
2020-06-06 23:34:26 +02:00
Daniel Dakhno
7939607beb Fossil HR: added "last notification" widget 2020-06-04 22:40:23 +02:00
Andreas Shimokawa
1e398419a8 Watch9: Fix launch of wrong calibration activity
Fixes #1875
2020-05-24 23:25:52 +02:00
Zhong Jianxin
6335b4c86a Debounce onSetMusicInfo/onSetMusicState calls
When music player switchs a song, multiple notifications(around 5 in my
test) are sent to NotificationListner, during this,
MediaControllerCompat does not always get the music info we need, the
music info and state seem randomly combined previous song and current
one.

To avoid unnecessary music info updates, debounce
onSetMusicInfo/onSetMusicState calls, so only the last music info and
state are sent to the device.
2020-05-19 23:23:45 +08:00
Zhong Jianxin
8d145917f5 Huami: Use equals to compare musicspec/statespec 2020-05-19 23:08:46 +08:00
Zhong Jianxin
fc39221782 Amazfit Bip S: Support setting shortcuts 2020-05-14 10:05:49 +08:00
Zhong Jianxin
0e888aba3a Amazfit Bip S: Fix setting display items 2020-05-14 10:05:39 +08:00
Zhong Jianxin
f06c9fb8e7 amazfit bip s: Fix incoming call notification 2020-05-13 23:24:03 +02:00
Andreas Shimokawa
e844f81056 Huami: If no menu items were ever configured with Gadgetbridge use our default and do not disable everything on connect
Fixes #1853
2020-05-12 22:42:19 +02:00
Andreas Shimokawa
3bf8fb5e9d Fossil Hybrid HR: use highest bit of step data also
Confirmed with 144 steps per minute while running, would not have worked with previous fix
2020-05-06 14:54:52 +02:00
Andreas Shimokawa
748a62c2bd Fossil Hybrid HR: Try to fix step count 2020-05-06 10:56:05 +02:00
Andreas Shimokawa
82611d7a0d ZeTime: Send up to 16 upcoming calendar events on connect if option is enabled
This disables Pebble style calendar synchronization, which did not work for the ZeTime
since we have no handle to delete or change events, we have to rewrite everything again.

Either events were piling up or deleted when a new event was added to a Calendar.

For now it just syncs up to 16 upcoming events at connect.
2020-05-06 01:43:16 +02:00
Andreas Shimokawa
b5f877d169 ZeTime: remove non-working languages and add missing ones
Czech is untested since it is only present on newer firmware which I do not have.
2020-05-05 19:38:26 +02:00
Andreas Shimokawa
3884e5dee9 ZeTime: fix minute value in calendar events
And a few cleanups
2020-05-05 18:27:46 +02:00
Andreas Shimokawa
7517bffe9c ZeTime: Fix calendar event time and date (still barely usable, since only one event is sent, plus sunrise and sunset) 2020-05-05 16:23:43 +02:00
Andreas Shimokawa
3c6fce27a4 Follow light/dark theme according to system settings as default setting 2020-05-05 14:46:09 +02:00
Saul Nunez
1221827560 Add a new "system" theme option and rig isDarkThemeEnabled to return if system currently sports a dark theme. 2020-05-05 14:43:03 +02:00
Andreas Shimokawa
80fb05e44a ZeTime: Fix could not synchronize calendar on connect
Fixes #1188
2020-05-05 14:11:46 +02:00
Andreas Shimokawa
1be42a4d84 ZeTime: Try to fix weather conditions on newer firmwares 2020-05-05 13:30:28 +02:00
Andreas Shimokawa
fefcf2d2b9 ZeTime: Fix setting the watch language and make the setting accessible from the per-device configuration menu
This did not work at all before, it was supposed to take the language from
Gadgetbridge App settings or the phone's default settings, but nothing was ever
sent to the watch.
2020-05-05 00:34:59 +02:00
Andreas Shimokawa
ad1e519723 ZeTime: Basic support for rejecting incoming calls 2020-05-04 21:53:51 +02:00
Andreas Shimokawa
94358e79b0 Amazfit GTR/GTR Lite: enable setting menu items (untested) 2020-05-03 20:16:35 +02:00
Andreas Shimokawa
dbba6f04b1 Add support for Amazfit GTR Lite (untested and incomplete)
See #1694
2020-05-02 23:40:07 +02:00
Andreas Shimokawa
33a1dbd1cd Amazfit GTS: Fix setting menu items with low mtu 2020-04-29 14:44:58 +02:00
mamutcho
f88bc0cf6d WatchX(Plus) - Activity Analysis
* add activity intensity interpolation based on heart rate
* add steps per activity sample (based on total steps divided by total activity)
* search data for periods without records to add ActivityKind.TYPE_NOT_MEASURED (15 to 60 min) and ActivityKind.TYPE_NOT_WORN (more than 60 min)
* randomize ActivityKind.DEEP_SLEEP intensity for cool graph results (do not affect sleep counting)
2020-04-29 14:24:23 +02:00
Daniel Dakhno
a4a2bed80c Merge remote-tracking branch 'origin/master' 2020-04-25 01:57:10 +02:00