1
0
mirror of https://codeberg.org/Freeyourgadget/Gadgetbridge synced 2024-07-09 23:21:34 +02:00
Commit Graph

1543 Commits

Author SHA1 Message Date
Arjan Schrijver
810cc91e8e Fossil/Skagen Hybrids: Implement inactivity warnings 2023-02-06 14:26:26 +01:00
Arjan Schrijver
9b4f909ace Fossil/Skagen Hybrids: Update known watch app versions 2023-01-27 21:19:25 +01:00
Gordon Williams
521edc4332 Bangle.js: Increase default realtime HRM/step interval to 10 seconds
Disable manual heart rate measurement - the current implementation in Gadgetbridge seems not really compatible with Bangle.js. There's no way to turn the HRM off when the window is closed, and HRM samples from *any* device would appear to be shown - not just the one that HRM info was requested on
2023-01-26 10:31:13 +00:00
José Rebelo
134376cbd0 Amazfit T-Rex 2: Initial support 2023-01-23 23:36:57 +00:00
Noodlez
ead7ada987 Code clean-up and documentation 2023-01-12 17:12:03 +00:00
Noodlez
3e9a185b88 AsteroidOS: Fix weather forecast
The forecast was off by 1 day
2023-01-12 17:11:50 +00:00
Noodlez
616ec53086 AsteroidOS: Add simple device discovery
This is done by just comparing the names with already existing devices.
This is only a temporary solution until the discovery of the service
UUID works properly
2023-01-12 17:11:45 +00:00
Noodlez
d3d4baedea AsteroidOS: Small code improvements
Removed logging in the DeviceCoordinator, fixed the time setting (day
was off by 1), consolodated many characteristic transactions to one
buidler and queue, and added Find My Device, by just initiating a call.
2023-01-12 17:11:40 +00:00
Noodlez
f7395ec6b2 Initial support for AsteroidOS watches
The watch does not auto-detect through pairing and therefore requires
discovering unsupported devices.
2023-01-12 17:11:36 +00:00
Arjan Schrijver
845887ddeb Fossil/Skagen Hybrids: Add app/watchface downloading from watch to app manager 2023-01-07 23:07:34 +01:00
Arjan Schrijver
b1d03e9f7a Clean up duplicated unimplemented methods from device support classes
Moved to AbstractDeviceSupport so each device support class can override them if required. This change helps to keep the code base clean by not requiring every (Device)Support class to implement these methods even when they don't need them.
2023-01-05 22:11:32 +01:00
José Rebelo
17c58d2947 Amazfit GTR 4/GTS 4: Add AGPS Updates 2023-01-05 11:31:51 +00:00
Arjan Schrijver
d8af8bede0 Fossil/Skagen Hybrids: Allow launching watch apps from app manager 2023-01-02 15:15:48 +01:00
José Rebelo
ff15fdaa9f Sony LinkBuds S: Initial support 2022-12-30 18:07:18 +00:00
Arjan Schrijver
4470795196 Fossil/Skagen Hybrids: Update known watch app versions 2022-12-18 16:17:22 +01:00
uli
3986d8c4bc PineTime: Added World Clocks 2022-12-12 15:05:53 +00:00
LukasEdl
abf19f2b6c [Banglejs] Send phone location data to banglejs, which can be used as gps data (#2992)
Since the PR #2961 aswell as #2976, i pushed the changes to this pr.

Original text:

With this PR, the gadgetbridge app sends the current locationd data, obtained from the gps or network provider, to a connected banglejs device as an "gps" event.

The bangle device can use this data instead of the internal gps data. Therefor saving battery energy, since the gps chip is one of the biggest energy consumers.

Furthermore it enables the banglejs device to use the location data, based on the network with which the phone is currently connected. This would be usefull if there is no gps signal.

Updates:

I added a network provider so that it is possible to use the network location. I also overload the start method of GBLocationManager so that it is now possible to select which provider should be used to get the data (currently GPS or Network) and to set a interval to determine how often the update should be run.

For the banglejs device i added a switch to enable the sending of gps data. I also added a setting, to set the interval on how often the gps data is being updated. This allows to throttle the updates of the gps data and therefore saving energy of the smartphone batterie.

To further save energy, the app now requestes the current status of the gps from the banglejs and only sends data, if the gps of the banglejs is turned on.

In the PR #2976 I also moved the settings to the device settings of the banglejs and i moved the logic to the onLocationChanged method of the GBLocationManager.

Co-authored-by: Lukas <lukas.edi@gmx.net>
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/2992
Co-authored-by: LukasEdl <lukasedl@noreply.codeberg.org>
Co-committed-by: LukasEdl <lukasedl@noreply.codeberg.org>
2022-12-12 07:48:19 +00:00
José Rebelo
a32b756972 Revert "Sony LinkBuds S: Initial support"
This reverts commit f2aaf5aecf.

It looks like the protocol changed, as per the comments in !2990
2022-12-09 21:27:49 +00:00
José Rebelo
f2aaf5aecf Sony LinkBuds S: Initial support 2022-12-07 20:14:33 +00:00
José Rebelo
07194cd8fb Amazfit GTS 4 Mini: Initial support 2022-12-03 13:27:48 +00:00
José Rebelo
1c93ffc3e5 Amazfit GTR 4: Fix and whitelist firmware 3.17.0.2 2022-11-22 07:00:41 +00:00
gsbhat
5e6480ad19 GTR2 Activate display upon lift only working when scheduled #2252 2022-11-12 22:22:17 +05:30
José Rebelo
8f3ed69ea7 Amazfit GTS 4: Initial support 2022-11-09 17:29:46 +01:00
José Rebelo
2a47dc863a Huami: Allow activity fetch timestamps to be sent in seconds 2022-11-07 19:37:28 +01:00
narektor
2216b6b76a Galaxy Buds2 support (#2853)
Mostly copied from the Buds Pro as those earbuds have a similar feature set and mostly the same protocol.
Co-authored-by: narektor <narektor@noreply.codeberg.org>
Co-committed-by: narektor <narektor@noreply.codeberg.org>
2022-11-07 19:34:41 +01:00
José Rebelo
164c5e52a4 Zepp OS: Add World Clocks 2022-11-07 10:31:41 +01: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
José Rebelo
01b457895a Amazfit Band 7: Initial support 2022-10-31 12:04:18 +00:00
José Rebelo
cd59511aad Zepp OS: Refactor config, fix health on GTR 3 and GTS 3
The config refactor in addf7ff6a broke health settings on GTR3 and GTS3

- GTS 3 and GTR 3 health configs use protocol v1. The only difference
  seems to be that the steps goal is a SHORT instead of an INT.
- It needs a refactoring from the ground up to better handle different
  versions, but this is enough to get the GTR 3 and GTS 3 working.
2022-10-29 14:17:40 +01:00
José Rebelo
6cc3579e9c Zepp OS: Refactor file upload, fix notification icons > 56x56px
- File uploads are split in chunks, with the size dictated by the
  watches. There seem to be 2 protocol versions, without any noticeable
  differences
- Extract the file upload logic to a standalone class. This makes it
  easier to keep track of concurrent requests, each of which have their
  own session id
- Icons larger than 8KB will end up split in multiple chunks - we now
  handle that correctly
- Notification icons are also requested in 2 different formats, but
  the actual encoding seems to be the same, with only a different id
2022-10-28 23:37:22 +01:00
José Rebelo
bc2d5aa16d Zepp OS: Change default fetch operation time unit resolution to minutes
Reverts the default behavior introduced by 1335f0bd8 since it was
causing issues on the GTR 3, but keeps it optional as a developer
option.
2022-10-27 23:51:02 +01:00
José Rebelo
addf7ff6a6 Amazfit GTR 4: Initial support 2022-10-22 22:03:49 +02:00
José Rebelo
8fdfbfa97c Sony WF-1000XM4: Initial support 2022-10-22 13:14:50 +01:00
José Rebelo
d4ba532b11 Sony Headphones: Refactor V1 protocol to simplify V2 implementation 2022-10-22 11:14:23 +01:00
José Rebelo
1dca054853 Sony WH-1000XM2: Initial support 2022-10-20 23:48:02 +01:00
José Rebelo
2c182418fe Sony Headphones: Fix setting surround mode 2022-10-20 23:47:17 +01:00
Arjan Schrijver
c547a33724 Fossil/Skagen Hybrids: Update known watch app versions 2022-10-17 21:42:42 +02:00
Arjan Schrijver
50aee4c235 Skagen Hybrids: Allow firmware installation 2022-10-17 21:42:16 +02:00
José Rebelo
962efd51b4 Zepp OS: Decode workout elevation and altitude 2022-10-15 10:17:57 +01:00
Arjan Schrijver
89251d27e1 Fossil Hybrid HR: Request menu config upon app connection
Thank you Morten Hannemose for debugging and fixing this!
2022-10-14 21:14:52 +02:00
José Rebelo
d655f434f8 Zepp OS: Display HR zones and Training Effect in Activity Details 2022-10-06 00:03:24 +02:00
vanous
244b758743 SuperCars: fix periodicDataSender, add tricks 2022-10-04 00:04:53 +02:00
vanous
b957c76d71 SuperCars: add blinking function and live battery status, fine-tune driving, race! 2022-10-02 18:01:22 +02:00
José Rebelo
d1ae6cf225 Zepp OS: Implement workout fetching 2022-10-02 16:07:21 +02:00
José Rebelo
7f4bd16914 Zepp OS: Implement activity and sleep fetching 2022-10-02 16:07:21 +02:00
José Rebelo
a919286496 Add support for REM sleep 2022-10-02 16:07:21 +02:00
José Rebelo
28a26710d9 Fix calls to unsupported API functions 2022-10-02 16:04:14 +02:00
vanous
51b7f28a8b SuperCars: switch from data replay to generated data
- use encryption to create data rather then replay captured BLE traffic
- use periodical data sender, as is required by the BLE module
- extract string resources
2022-10-02 08:56:35 +02:00
vanous
5f7674fe39 SuperCars: add battery support 2022-09-30 00:09:42 +02:00
vanous
a5767cbb5f SuperCars: add joystick and driving modes 2022-09-28 22:38:58 +02:00
Arjan Schrijver
ce456d6dcc Fossil Hybrid HR: Allow flick_away as custom event and add move_hands event 2022-09-26 14:49:39 +02:00
José Rebelo
785b6797a3 Amazfit GTR: Enable button actions 2022-09-26 12:10:59 +01:00
vanous
e6411b15ab Add initial support for Shell Racing cars
- adds initial device support
- can control driving forward/back/left/right
- probably could be implemented further:
  - battery reading
  - device name?
  - lights on
  - fast/slow speed mode
2022-09-25 21:39:41 +02:00
NekoBox
d1e0df0832 Amazfit Neo: remove activity tracks (unsupported) 2022-09-25 11:50:24 +02:00
thermatk
c24ef44055 Amazfit GTR 3: Initial support (#2900)
Co-authored-by: thermatk <thermatk@noreply.codeberg.org>
Co-committed-by: thermatk <thermatk@noreply.codeberg.org>
2022-09-22 00:56:22 +02:00
NekoBox
4675c7a344 Fix world clock packet format.
Fix short city name in packet (used by Neo).
Enable world clocks for Amazfit Neo.
2022-09-19 21:53:20 +02:00
Ganblejs
82315b3281 Bangle.js: extending intents functionality (continuation)
Add support for (explicit) service intents.
Add support for setting flags for intents.
Add support for setting multiple categories for intents.
Add ability for Gadgetbridge to wake the Android device and leave the
 lock screen to start activities when it is sleeping. A new activity
 'WakeActivity' is used for this. (Must use 'trusted device' in Android)
Add dismiss-button to 'display over other apps' permission pop up.
Bangle.js can send "gadgetbridge" as package info to accomodate the
 different GB build variants/flavours.
Use only getContext() and not getApplicationContext() when executing
 the intents.
2022-09-19 21:52:40 +02:00
Andreas Shimokawa
259a422de6 Revert "Revert "PineTime Weather support""
This reverts commit 50ff6a8a6f.
2022-09-19 21:45:01 +02:00
José Rebelo
c36857f063 Huami: Set OpenTracks track category and icon 2022-09-19 11:50:44 +02:00
José Rebelo
462aec6f71 Mi Band 7: Fix Weather 2022-09-18 00:48:36 +01:00
José Rebelo
8c69a8a007 Huami: Fix crash when selecting automatic Always On Display
Fixes #2889
2022-09-12 18:35:24 +01:00
Arjan Schrijver
7ae2ec1dcf Fossil Hybrid HR: Set OpenTracks track category and icon to workout type selected on watch 2022-09-12 11:22:04 +02:00
José Rebelo
2efc564d21 Huami: Add preference to overwrite band settings on connection 2022-09-10 23:24:27 +02:00
Andreas Shimokawa
969164ba5d Remove KitKat support 2022-09-10 12:04:16 +02:00
Arjan Schrijver
2e6be6bea3 Fossil Hybrid HR: Correctly initialize watchface after reset or crash 2022-09-10 11:55:05 +02:00
Andreas Shimokawa
63ea8d30c7 no vibration patterns on Bip S 2022-09-08 19:32:58 +02:00
Andreas Shimokawa
50ff6a8a6f Revert "PineTime Weather support"
This reverts commit 230cbe964b.
2022-09-08 18:42:47 +02:00
José Rebelo
f915ab5ebd Mi Band 7: Enable app support 2022-09-08 18:20:28 +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
Morten Rieger Hannemose
e476b8a701 Hybrid HR: Enabled configuring middle long press on FW 3.0 and newer 2022-09-06 19:59:39 +02:00
José Rebelo
9b2775458c Huami: Improve large firmware zip file handling 2022-09-06 00:54:57 +02:00
José Rebelo
3c882467cc Huami: Enable vibration patterns for all compatible devices 2022-09-06 00:53:09 +02:00
José Rebelo
1d9872b15a Huami: Fix default vibration patterns 2022-09-06 00:53:09 +02:00
sedy89
fc048f8768 Amazfit GTS 3: Initial support (#2871)
Add basic initial support for the Amazfit GTS 3 based on Xiaomi Smart Band 7 support.

What was already tested (other features might work too):

**Implemented features**
    Connection
    Reconnect after Airplane mode
    Set time
    Notifications
        Send to band
        Delete notifications on phone/band when deleted on the other
        Calls
        Custom notification icons
        Handle + ack notification replies from band
    Music (with youtube music)
        Music Info
        Volume
        Music buttons
    Find Phone from band / stop on band when stopped on phone
    Battery Info (request, parse)
    Flash Watchface
    Night mode (mode, schedule)
    Lift wrist (mode, schedule, sensitivity)

(Not) working features might be similar to Miband 7.

Tested on
FW: 7.42.5.1
HW: 0.76.17.4

Co-authored-by: Andreas Sedlmayer <sedlmayer.andreas89@gmail.com>
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/2871
Co-authored-by: sedy89 <sedy89@noreply.codeberg.org>
Co-committed-by: sedy89 <sedy89@noreply.codeberg.org>
2022-09-05 23:52:01 +02:00
José Rebelo
37554e8f8a Mi Band 7: Fix and enable firmware upgrades 2022-09-05 22:14:09 +01:00
NekoBox
f1ecebc983 Amazfit Neo: remove 1 hour heartrate interval because unsupported. 2022-09-04 23:18:55 +02:00
dakhnod
ee207c978f Device FlipperZero: added basic support for the Flipper Zero (#2840)
This PR adds support for the flipper zero device.

It's main purpose currently is to provide an Intent-based API to Tasker and similar apps to play sub-GHz files.

In the future, file management and other features might be useful.

Co-authored-by: Daniel Dakhno <dakhnod@gmail.com>
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/2840
Co-authored-by: dakhnod <dakhnod@noreply.codeberg.org>
Co-committed-by: dakhnod <dakhnod@noreply.codeberg.org>
2022-09-04 23:05:57 +02:00
Arjan Schrijver
643f8ef931 Fossil Hybrid HR: Fix watchface redraw after powersave and after wrist flick 2022-08-28 22:25:19 +02:00
José Rebelo
b21ffaa528 Make heart rate measurement intervals configurable per-device 2022-08-28 13:15:33 +02:00
Daniel Dakhno
1a472493c7 Fossil HR: cleaned up firmware version handling 2022-08-27 02:54:56 +02:00
dakhnod
fe485d80ec Fossil Gen6. Hybrid: added basic support for Hybrid Gen 6 (#2775)
This PR aims to add support for the newer Fossil Gen. 6 Hybrid models, which are pretty similar to the older HR's.

Here's my checklist

- [x] make GB recognize and accept new watches
- [ ] find out how SPO2 is transmitted
- [ ] extend activity data to include Oxygen data
- [x] create timeout for requests to avoid deadlocks
- [x] fix device vibration on every reconnect
- [ ] create API for voice commands
- [x] figure out how the voice data works

Co-authored-by: Daniel Dakhno <dakhnod@gmail.com>
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/2775
Co-authored-by: dakhnod <dakhnod@noreply.codeberg.org>
Co-committed-by: dakhnod <dakhnod@noreply.codeberg.org>
2022-08-24 21:56:09 +02:00
Andreas Shimokawa
035d0037dd Amazfit Bip U: Enable sending GPS coordinates to band during workout and start fitness tracking on phone when workout starts on band setting 2022-08-21 18:43:55 +02:00
NekoBox
3eed7c69f5 Amazfit Neo: remove unsupported settings 2022-08-20 23:54:35 +03:00
José Rebelo
ba565df088 Xiaomi Smart Band 7: Initial support 2022-08-19 23:13:27 +02:00
NekoBox
279af27248 Amazfit Neo: enable heartrate activity monitoring 2022-08-19 23:11:18 +02:00
Arjan Schrijver
319a11e99d Fossil Q Hybrid: Fix config activity after multi-device merge 2022-08-19 16:21:59 +02:00
Arjan Schrijver
6e678a8123 Fossil Hybrid HR: Update musicApp version 2022-08-17 21:38:20 +02:00
José Rebelo
70e60fb6e0 Mi Band 4: Add activate display on lift sensitivity 2022-08-16 11:20:03 +01:00
NekoBox
ad38a32cc8 Implement Hourly chime which was added in firmware 1.1.2.46 2022-08-12 09:05:13 +02:00
Daniel Dakhno
b29a8cefd2 Binary sensor: initial support for devices using Binary Sensor Service 2022-08-09 18:58:18 +02:00
Adam Büchner
dbe7628eea Mi Band 4: Add activity monitoring option 2022-08-09 17:44:49 +02:00
Hasan Ammar
c2054c4a8b Hybrid HR: Add support for Hybrid HR 38mm watches 2022-08-07 20:32:54 +02:00
José Rebelo
f7ecb5a867 Allow DeviceService to target a specific device 2022-08-05 21:34:15 +02:00
Arjan Schrijver
5f4d3f441f Fossil Hybrid HR: Add toggling of backlight with physical button event 2022-08-01 17:21:55 +02:00
Arjan Schrijver
44c087b666 Fossil Hybrid HR: Fix watchface background fuzziness due to resizing 2022-07-31 22:53:32 +02:00
Arjan Schrijver
305078f253 Fossil Hybrid HR: Use embedded background image from .wapp file for editor 2022-07-31 22:51:24 +02:00
Arjan Schrijver
75dd5f1863 Fossil Hybrid HR: Use embedded preview image from .wapp file during import 2022-07-31 20:31:16 +02:00
vanous
c6104f5332 Add Steps streaks screen 2022-07-30 10:07:26 +02:00
vanous
4dc4a4f988 Remove duplicated Auth key from the settings for Huami. Add Override where missing 2022-07-29 09:47:26 +02:00
Arjan Schrijver
e2f38704ea Fossil Hybrid HR: Bump watchface version 2022-07-28 22:11:58 +02:00
Arjan Schrijver
0b6c2db606 Fossil Hybrid HR: Add toggling of widgets with physical button event 2022-07-28 22:08:13 +02:00
Andreas Shimokawa
b138c54b52 Mi Band 4: Enable sending GPS coordinates to band during workout and start fitness tracking on phone when workout starts on band setting 2022-07-27 16:22:13 +02:00
Gordon Williams
2e4fa6d699 Tweak for potential null pointer exception seen after play store release 2022-07-25 14:52:30 +01:00
Arjan Schrijver
7d5fe20b55 Fossil Hybrid HR: Add optional circle backgrounds to widgets 2022-07-25 14:34:41 +02:00
Arjan Schrijver
c946a045ef Fossil Hybrid HR: Use preferencescreen for widget configuration 2022-07-25 14:34:41 +02:00
Andreas Shimokawa
04236a3f86 Mi Band 6: Enable start fitness tracking on phone when workout starts on band setting 2022-07-22 16:33:40 +02:00
Andreas Shimokawa
5271fb6a84 Mi Band 6: Enable sending GPS coordinates to band during workout 2022-07-22 16:26:59 +02:00
Andreas Shimokawa
35db14af84 Mi Band 6: Enable password support
Fixes #2603
2022-07-22 16:18:12 +02:00
Gabriele Monaco
d9daa16bf8 Added calendar blacklist setting to banglejs 2022-07-21 10:58:15 +02:00
glemco
f4e6d953ff Enabling calendar sync for bangle 2022-07-21 10:58:15 +02:00
Arjan Schrijver
7e844367e6 Fossil Hybrid HR: Show in appmanager which watch apps are outdated 2022-07-16 23:03:06 +02:00
Arjan Schrijver
93e9d407ec Fossil Hybrid HR: Show in appmanager which watchfaces are outdated 2022-07-14 13:02:04 +02:00
Arjan Schrijver
6d16625112 Fossil Hybrid HR: Fix 2nd TZ widget offset
The 2nd TimeZone watchface widget was configured with an offset that
didn't take DST into account. This change makes it use the correct
offset.

Fixes #2761
2022-07-14 09:48:12 +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
Arjan Schrijver
6649f1941a Fossil Hybrid HR: Make 2nd TZ widget clock duration configurable 2022-07-07 22:16:52 +02:00
Arjan Schrijver
d03ec5518b Fossil Hybrid HR: Make widget settings code more flexible 2022-07-07 21:53:28 +02:00
vanous
0709b20043 Fossil: move device specific icon setting to application specific settings menu 2022-07-05 23:06:16 +02:00
vanous
fe73e9fec1 Allow Settings splitting into device, app and auth screens
- open app preferences screen from device card menu
- open auth preferences screen from DiscoveryActivity
- add explanation about Auth key, make it open wiki link, fix #2240
- add New protocol checkbox and explanation when first pairing Miband 6
2022-07-05 21:40:27 +02:00
vanous
49dcb04b62 FitPro: add MTU based chunking, add more device names, fix #2688 2022-07-05 20:46:38 +02:00
José Rebelo
9cb6403c04 Mi Band 4: Add password support 2022-07-05 19:29:16 +01:00
José Rebelo
152f19575f Make calendar blacklist configurable per device 2022-07-05 19:58:21 +02:00
Arjan Schrijver
951772626c Fossil Hybrid HR: Show app versions 2022-07-04 17:12:41 +02:00
Daniel Dakhno
62f77ef8d0 ControlCenter: added folders to ControlCenter 2022-06-28 14:01:51 +02:00
Andreas Shimokawa
2182097f0c Fossil Hybrid HR: Relax version check for watch apps
Allows to install latest watchapps

It seems that every time the firmware gets a major update, the new watchapps
have a different minor version, we dont need to check for that because watchapps
seem to be compatible accross firmware versions
2022-06-24 09:44:05 +02:00
Arjan Schrijver
0349b2530f Fossil Hybrid HR: Invert widgets color when the background image is inverted 2022-06-17 22:42:58 +02:00
Arjan Schrijver
48212d4185 Fossil Hybrid HR: Add watchface preview images in the app manager 2022-06-17 14:45:10 +02:00
José Rebelo
ec5e51b9a9 Roidmi 3: Recognize "Roidmi C BLE" as Roidmi 3 2022-06-15 21:21:29 +01:00
Arjan Schrijver
7f026edbd0 Fossil Hybrid HR: Generate watchface preview image 2022-06-15 12:59:23 +02:00
dakhnod
4a8523f790 multi-device-support (#2526)
this PR aims to add device for multiple connected devices at once.

A lot of stuff already works, some things need to be done:

- [x] change DeviceCommunicationService to hold multiple devices and supports
- [x] implement connect / disconnect logic
- [x] widgets, not really suited for multiple devices, so far
- [x] change the notification to show multiple devices
- [ ] change GBDeviceService#onFindDevice and similar API functions to target individual devices, not all connected.
- [x] move auto-reconnect setting to device settings
- [x] fix music event crash
- [x] work out behaviour when pressing "connect" from notification
- [ ] handle service crashes
- [ ] suit coordinator methods for multiple devices of same kind
- [x] change ACL_CONNECTED receiver to connect to devices that are not currently registered in DeviceCommunicationService
- [ ] adjust after-boot auto-connection logic
- [ ] fix hanging device support. Device says disconnected, GB says connected
- [x] firmware updater doesn't work

My attempt to make onFindDevice work was to change the arguments to ```EventHandler#onFindDevice(GBDevice device, boolean start)```.
The Problem is that this forces the device-specific implementations to also accept GBDevice as an argument.

Co-authored-by: Daniel Dakhno <dakhnod@gmail.com>
Co-authored-by: Andreas Shimokawa <shimokawa@fsfe.org>
Co-authored-by: dakhnod <dakhnod@gmail.com>
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/2526
Co-authored-by: dakhnod <dakhnod@noreply.codeberg.org>
Co-committed-by: dakhnod <dakhnod@noreply.codeberg.org>
2022-06-14 18:05:41 +02:00
Gordon Williams
e40bd79fbf Bangle.js: Adding built-in app-loader view (available via app management icon). Only available on internet-enabled builds (it's a webview) 2022-06-13 08:35:32 +01:00
Gordon Williams
bdcaeae177 Merge remote-tracking branch 'freeyourgadget/master' into freeyourgadget_master 2022-06-13 08:26:53 +01:00
José Rebelo
b914bec573 Mi Band 5: Fix missing portuguese language 2022-06-11 23:09:21 +02:00
Gordon Williams
607441b6b0 Support for color dithered bitmaps, and converting emoji->bitmaps
# Conflicts:
#	app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/banglejs/BangleJSDeviceSupport.java
2022-06-10 12:01:12 +01:00
vanous
5e5d8d4dd9 Add missing commit from PR2695 2022-06-09 16:48:31 +02:00
José Rebelo
2101b5840a Mi Band 5: Start fitness tracking on phone when workout starts on band 2022-06-09 10:32:26 +02:00
José Rebelo
b07cd54468 Mi Band 5: Send GPS location to band during workout 2022-06-09 10:32:26 +02:00
José Rebelo
d6658b41b5 Huami: Fix heart rate measurement interval on connection 2022-06-07 23:01:59 +02:00
Arjan Schrijver
4d0bfb452b Fossil Hybrid HR: Allow installation of newer watch apps 2022-06-03 15:48:48 +02:00
Andreas Shimokawa
fa3bdd36d5 Amazfit Bip U/Pro: enable hr alert and stress tracking setting 2022-05-22 00:27:35 +02:00
vanous
30b4c1b868 AmazfitBand5: Enable extended HR monitoring 2022-05-20 22:10:16 +02:00
Gordon Williams
b324f40a78 Bangle.js: add support for rendering to a text that can't be displayed into a bitmap and sending the bitmap over
# Conflicts:
#	app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/banglejs/BangleJSDeviceSupport.java
2022-05-18 16:35:07 +01:00
Gordon Williams
ec3b54ef47 Bangle.js: Add option for enabling/disabling internet access, and add ability to send Intents direct from Bangle.js
# Conflicts:
#	app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/banglejs/BangleJSDeviceSupport.java
2022-05-18 16:31:22 +01:00
Andreas Shimokawa
79d5c246a2 Mi Band 6: enable new settings 2022-05-18 10:41:30 +02:00
José Rebelo
91e9451a87 Mi Band 5: Add HR activity monitoring, HR alerts, stress monitoring 2022-05-17 21:49:43 +01:00
José Rebelo
428af7f21e Huami/Mi Band: Move heart rate monitoring to device-specific settings 2022-05-17 21:49:42 +01:00
vanous
948db604e5 Add support for Galaxy Buds Pro
- add generic coordinator and settings customizer for Galaxy Buds
- add Prefs to the DeviceSpecificSettingsCustomizer
- edit Changelog
2022-05-17 22:27:40 +02:00
Andreas Shimokawa
65ebdb6ff8 Amazfit Bip U/Pro: Enable vibration pattern settings 2022-05-16 16:05:04 +02:00
Quang Ngô
b46b1278b3 Add support for Sony WF-1000XM3 2022-05-16 17:50:31 +07:00
Andreas Shimokawa
c50c333f8b Mi Band 4: enable vibration patterns 2022-05-16 11:03:10 +02:00
Andreas Shimokawa
4761168958 Mi Band 6: enable vibration patttern settings (tested working)
also rename devicesettings_miband5_vibration to devicesettings_vibrationpatterns
2022-05-16 10:59:03 +02:00
José Rebelo
410b74e1a2 Mi Band 5: Increase number of reminder slots to 50 2022-05-16 10:37:32 +02:00
José Rebelo
f08fe7f65f Huami: Distinguish between alarm and workout activity type responses 2022-05-16 10:37:00 +02:00
José Rebelo
3b348a5d5d Huami: Move inactivity warnings and goal notification to device-specific settings 2022-05-16 10:33:02 +02:00
José Rebelo
a5a3e57a34 Sony Headphones: Simplify capability definition 2022-05-15 17:22:55 +01:00
vanous
49a7871614 Sony WF 800n: new icons 2022-05-15 13:04:21 +02:00
José Rebelo
50346ce798 Amazfit Band 5: Add notification vibration patterns 2022-05-14 15:17:07 +01:00
José Rebelo
b220fef74e Mi Band 5: Add notification vibration patterns 2022-05-14 16:11:26 +02:00
vanous
5f73dd79e6 Amazfit Band 5: enable: world clocks settings, display on lift sensitivity, configuring activity types 2022-05-14 14:42:07 +02:00
Daniel Dakhno
c31213c34d VESC: added battery indicator 2022-05-14 04:47:22 +02:00
José Rebelo
10d11d4818 Mi Band 5: Add support for configuring activity types 2022-05-12 08:52:02 +02:00
José Rebelo
682b215985 Huami: Send media volume to device 2022-05-11 00:23:18 +01:00
Andreas Shimokawa
37ba8c291e Amazfit Band 5: Enbable lift wrist sensitivity and world clock configuration 2022-05-10 15:49:34 +02:00
Andreas Shimokawa
3a1d4d6161 Amazfip Bip U/Pro: Enable lift wrist sensitity and world clock configuration 2022-05-10 15:41:12 +02:00
Andreas Shimokawa
05515d6ba2 Amazfit Bip S: Enable world clock configuration 2022-05-10 15:29:47 +02:00
Andreas Shimokawa
46cd229a14 Mi Band 6: Enable World clock setting
Also take care of new/old firmware
2022-05-10 14:16:52 +02:00
José Rebelo
5c6edea233 Mi Band 5: Add support for World Clocks 2022-05-10 13:59:25 +02:00
Andreas Shimokawa
d973f50560 Mi Band 6: enable setting sensitivty for display on lift setting
Tested and seens to work
2022-05-09 23:01:57 +02:00
José Rebelo
c74bbffb4d Mi Band 5: Add activate display on lift sensitivity 2022-05-09 17:58:55 +02:00
vanous
873ac85001 Enable Fitness App Tracking Stop in Huami actions. Add Toggle function to the Tracking 2022-05-09 17:18:06 +02:00
Daniel Dakhno
367ad19205 UM25: optimized imports, added pref summary 2022-04-15 02:37:53 +02:00
Daniel Dakhno
bf4e948c35 UM25: added notification on below current threshold 2022-04-15 02:08:51 +02:00
Daniel Dakhno
9ab9186e58 UM25: added reset option to current accumulation 2022-04-15 01:21:26 +02:00
Damien Gaignon
48890d1d34 Move disconnect_notification constant to generic 2022-03-30 22:01:08 +02:00
Damien Gaignon
02e790dd00 Remove redundant constants 2022-03-30 22:01:08 +02:00
Damien Gaignon
fd69b1a3ea Move mi2_inactivity constants to inactivity 2022-03-30 22:01:08 +02:00
Damien Gaignon
6ed6c8a2b6 Move longsit files to inactivity 2022-03-30 22:01:08 +02:00
Damien Gaignon
46f93bd2e4 Move longsit constants to inactivity 2022-03-30 22:01:08 +02:00
Damien Gaignon
ae796c81eb Move zetime_inactivity* constants 2022-03-30 22:01:08 +02:00
Damien Gaignon
3b75a1701a Clean DO_NOT_DISTURB* constants 2022-03-30 22:01:08 +02:00
Damien Gaignon
66b8fb004e Move mi_ constants 2022-03-30 22:01:08 +02:00
Arjan Schrijver
e4d8f5f3e2 Fossil Hybrid HR: Add flexible custom menu on watch (#2616)
This PR adds support for a new custom menu system on the Fossil Hybrid HR, developed by @dakhnod. For regular users this PR will change nothing, apart from also giving an extra option to light up the display when receiving new notifications.
For more advanced users, there's the [Fossil HR Menu Companion app](https://github.com/dakhnod/Fossil-HR-Menu-Companion) that's needed to enable and configure the new menu system. Just disable one or more of the physical buttons in Gadgetbridge and configure them instead in the companion app to get started.

Co-authored-by: Daniel Dakhno <dakhnod@gmail.com>
Co-authored-by: Arjan Schrijver <a_gadgetbridge@anymore.nl>
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/2616
2022-03-22 20:52:43 +01:00
a b
4e8449eb47 Add support for Hama Fit Track 1900 2022-03-15 19:09:46 +01:00
Daniel Dakhno
f49184ef62 Fossil HR: try guessing new widget position 2022-03-09 10:44:49 +01:00
Daniel Dakhno
f61008c9ae UM-25: made cumulative values resettable 2022-02-27 11:03:39 +01:00
SalavatR
8e34311f01 XWatch notifications and calls support 2022-02-25 22:26:40 +01:00
vanous
65cbea6713 Add HUAMI button/device action to control fitness tracking
- Fitness App Tracking Start already works, Stop is commented out for
  time being
- Catch exception in case the package name for controlled app doesn't
  exist/work
2022-02-19 16:04:48 +01:00
Daniel Dakhno
93fc2c3b61 VESC: fixed crash on loading saved integer 2022-02-14 19:12:44 +01:00
Andreas Shimokawa
b62357dfe2 Mi Band 6: Sync alarms set on the watch like on Amazfit Bip U and others
This adds code to decrypt chunked protocol replies for configuration data.
Also some (disabled) code for SMS reply.
2022-02-02 12:57:25 +01:00
Andreas Böhler
884538de5e Add basic support for Casio GBD-H1000 2022-02-02 11:21:11 +01:00
Andreas Shimokawa
47f7f22df4 Read alarms from device on connect and when changed on device
TODO:
- support decryption for mi band 6
- reassamble chunks for low MTU
2022-01-20 10:09:23 +01:00
Andreas Shimokawa
406f775f76 Amazfit Pop/Pop Pro: Seperate device from Bip U/Bip U Pro
This really seems to be the same device, but it does have a different firmware
and a different bluetooth name.

Do this to prevent cross flashing - which might actually be okay but we do not know.
2022-01-18 21:15:12 +01:00
Andreas Shimokawa
3b25f57986 Revert "Add Support for Bip U series China Variant"
This reverts commit 8e66ed4283.
2022-01-18 20:02:28 +01:00
José Rebelo
d0f80eb5b4 Sony Headphones: Implement Noise Cancelling Optimizer 2022-01-17 07:55:43 +01:00
José Rebelo
83c42ebef8 Sony WH-1000XM3: Disable equalizer, surround and sound position while in SBC codec 2022-01-15 23:40:00 +00:00
José Rebelo
1de2c32705 Make DeviceSpecificSettingsCustomizer Parcelable, fixing occasional crash
A fragment must have an empty constructor, and the settings will sometimes crash when resuming.

Fixes #2560
2022-01-15 17:18:41 +01:00
rikka356
8e66ed4283 Add Support for Bip U series China Variant 2022-01-13 05:47:36 +08:00
Arjan Schrijver
795c800dd4 Fossil HR: Make width of custom widget configurable 2022-01-12 13:55:02 +01:00
José Rebelo
d23b0a5b88 Sony WH-1000XM4: Initial Support 2022-01-12 10:36:07 +01:00
Your Name
c62a418961 Add climbing activity & Add seperate res for hiking and climbing 2021-12-28 22:37:35 +01:00
Sebastian Krey
2bf4f14b98 New Amazfit GTS 2 Mini activity Outdoor Trekking/Hiking (#2528)
New Huami Amazfit GTS 2 Mini activity for Outdoor Trekking/Hiking.

Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/2528
Co-authored-by: Sebastian Krey <skrey@noreply.codeberg.org>
Co-committed-by: Sebastian Krey <skrey@noreply.codeberg.org>
2021-12-28 13:46:17 +01:00
Sebastian Krey
241bc02cc0 Huami activity summary fields for ascent, descent and flat distances 2021-12-27 15:48:04 +01:00
dakhnod
504b552f0c device-vesc (#2491)
Adds Support for BLDC controller VESC connected to a BLE serial device like an HM10.

Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/2491
Co-authored-by: dakhnod <dakhnod@noreply.codeberg.org>
Co-committed-by: dakhnod <dakhnod@noreply.codeberg.org>
2021-12-27 15:47:10 +01:00
dakhnod
b0ed617072 device-bose-qc35 (#2520)
This PR adds not only the device Bose QC35,
it also adds the following autop-reconnect feature:
When the headphones are turned on, the initiate a connection with the phone.
With this change, GB is notified about said change, and tries to establish a connection to the newly connected device, if the appropriate device setting is set.

The QC35 headpones always have NC turned on after boot, thus the main feature of this implementation is to turn off NC as soon as the headphones are turned on and connected to the phone.

I am open for discussion regarding the implementation, but this seems like a good first proposal.

What is missing is the ability to connect to multiple devices, since in many cases headphones can be connected to the watch simultaniously to a smartwatch or other gadget.

Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/2520
Co-authored-by: dakhnod <dakhnod@noreply.codeberg.org>
Co-committed-by: dakhnod <dakhnod@noreply.codeberg.org>
2021-12-27 15:37:04 +01:00
José Rebelo
c4874de11a Sony WF-SP800N: Initial Support 2021-12-26 19:17:21 +01:00
José Rebelo
4297b4b7e0 Roidmi 1: Set number of batteries to 0 2021-12-26 18:27:01 +01:00
José Rebelo
887c3bf8ca Roidmi: Slight code cleanup 2021-12-26 18:27:01 +01:00
José Rebelo
5dfcaa65ea Roidmi 3: Add support for Mojietu 3 rebrand 2021-12-26 18:27:01 +01:00
Daniel Dakhno
a1f9fe82d2 Merge branch 'master' of codeberg.org:Freeyourgadget/Gadgetbridge 2021-12-26 00:17:56 +01:00
Daniel Dakhno
a1be28c117 UM25: removed battery icon 2021-12-26 00:17:44 +01:00
Andreas Shimokawa
e1b04f6a5c Huami: support old version of new chunked protocol used on Amazfit Bip U at least
This is used for setting world clock and setting canned messages for call rejection.
This PR implements setting the canned messages, but unfortunately the feature is somehow not "unlocked"
2021-12-23 18:06:58 +01:00
José Rebelo
33b5a6de38 Sony WH-1000XM3: Read information from device 2021-12-23 11:39:26 +01:00
Sebastian Krey
56a552ac44 Move minHR into version 519 case 2021-12-20 12:18:28 +01:00
Sebastian Krey
2af93eba03 Additional Huami Summary fields 2021-12-20 12:18:28 +01:00
Andreas Shimokawa
055511945b Amazfit Bip U/Pro: disable event reminder it is not supported by the device! 2021-12-16 17:59:47 +01:00
José Rebelo
300491d483 Mi Band 3: Add preference to enable display on wrist lift during DND 2021-12-13 16:46:40 +01:00
Andreas Shimokawa
78b832567b Amazgit GTS2 Mini: Try to fix most missing menu items 2021-12-13 10:27:30 +01:00
vanous
33300113a5 Reminders: add to Huami Coordinator for all Huami devices except of MiBand2 2021-12-11 23:25:18 +01:00
José Rebelo
710b6f6699 Mi Band 3: Add support for Reminders 2021-12-11 22:39:18 +01: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
José Rebelo
8416cb4e71 Sony WH-1000XM3: Disable device preferences conditionally 2021-12-10 17:38:23 +01:00
Arjan Schrijver
7d552ce41f Fossil Hybrid HR: Fix widget configuration bug 2021-12-06 17:08:50 +01:00
vanous
2e42f16146 FitPro: extend search name, fix #2473 2021-11-24 22:08:13 +01:00
Arjan Schrijver
88218a1273 Fossil Hybrid HR: Add choice between hiding text and showing circle on custom widget timeout 2021-11-24 10:14:36 +01:00
Arjan Schrijver
d1062a30b2 Fossil Hybrid HR: Add update timeout to custom widget 2021-11-24 09:52:49 +01:00
Andreas Böhler
4c5d9e5665 Add support for Casio GBD-200 and untested support for GBD-100 2021-11-23 17:22:05 +01:00
José Rebelo
f8e5b88231 Sony WH-1000XM3: Abstract common Sony Headphones logic 2021-11-20 21:26:51 +01:00
vanous
b24da9a409 Activity info into Device Card: use correct coordinator method
- use correct DeviceCoordinator method supportsActivityTracking()
- remove placeholders from xml
- clarify comments in DeviceCoordinator
- clean up some previously added unused imports
2021-11-18 16:06:56 +01:00
Arjan Schrijver
c15833f149 Fossil Hybrid HR: Add button for removing the watchface background image 2021-11-18 13:39:46 +01:00
Arjan Schrijver
1d9eb9f332 Fossil Hybrid HR: Move watchface settings to proper settings screen 2021-11-18 12:14:26 +01:00
José Rebelo
91c317fda2 Sort devices by alias, if available 2021-11-17 09:04:23 +01:00
José Rebelo
6db775a9df Sony WH-1000XM3: Simplify protocol code 2021-11-17 00:07:18 +00:00
Arjan Schrijver
1a5ebe2ee7 Support multiple 2nd-TZ and Custom widgets 2021-11-13 10:10:38 +01:00
Daniel Dakhno
cd183eb953 added custom widget apps to gadgetbridge 2021-11-13 10:10:38 +01:00
vanous
fcb91fd544 Add support for Galaxy Buds Live 2021-11-12 18:01:50 +01:00
vanous
a490e9f555 Galaxy Buds: migrate ambient volume preference to SeekBar
- more unique detection of the original Buds series
- always bond
2021-11-07 11:05:33 +01:00
vanous
77cf6f8ba4 Perform battery config when new device is being paired 2021-11-07 10:32:29 +01:00
José Rebelo
bf5eebd411 Sony WH-1000XM3: Initial Support 2021-11-06 23:43:31 +00:00
vanous
1f361ee844 Nothing Ear(1): add custom icons for batteries 2021-11-04 09:50:56 +01:00
vanous
678cf006e0 Move devicesettings_transliteration to settings of each device 2021-11-03 17:13:22 +01:00
vanous
a6a6bfef17 Galaxy Buds: add custom icons for batteries 2021-11-03 16:06:54 +01:00
vanous
a7fbda5fe1 Multi-battery: further improvements:
- add new icons
- ensure correct default icon
- modify Battery Info activity
2021-11-02 21:15:25 +01:00
vanous
3609af3a18 Add batteryConfig
- clarify battery index
- icon and label settings
2021-11-02 21:15:25 +01:00
vanous
80207b34bc Galaxy Buds: add multiple batteries support 2021-11-02 21:15:15 +01:00
vanous
788f4d8ae0 Add support for multiple batteries per device 2021-11-02 14:37:47 +01:00
vanous
da0c43f77d Galaxy Buds: adding initial support for Galaxy Buds 2019 2021-10-31 07:27:16 +01:00
vanous
67b1dd2051 FitPro: add LH716 to list of supported names, fix #2418 2021-10-26 09:33:14 +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
HelloCodeberg
ca4f996e9b add_rotate_watchface_button_hybridhr (#2408)
This adds a button which rotates the selected watchface by 90 degrees counter-clockwise to the hybridqr.
I did not manage to fix the autoorientation.

Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/2408
Co-authored-by: HelloCodeberg <hellocodeberg@noreply.codeberg.org>
Co-committed-by: HelloCodeberg <hellocodeberg@noreply.codeberg.org>
2021-10-14 11:00:37 +02:00
Andreas Shimokawa
ebe2558690 Huami: clean up supported languages 2021-10-07 18:33:58 +02:00
Andreas Shimokawa
588bcffaab Mi Band 3/4: Use language list from coordinator, remove array 2021-10-07 14:52:21 +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
Daniel Dakhno
1a892aa159 UM25: added some fields to UI 2021-10-03 02:43:42 +02:00
Andreas Shimokawa
475a2584cc Amazfit Bip U/Pro: enable unicode emoji 2021-10-01 14:18:06 +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
Andreas Böhler
264b003809 Fix connection on GBX-100 2021-09-23 18:28:45 +02:00
vanous
e00ee75ad2 adding FitPro bands support 2021-09-21 16:37:19 +02:00
vanous
6b10453714 Remove device specific Alarms upon device removal. 2021-09-19 17:55:54 +02:00
vanous
d6b5140519 Remove device specific preferences upon device removal. Also add this option to the Debug screen. 2021-09-18 22:28:58 +02:00
Andreas Shimokawa
117cd57463 Mi Band 6: Support sending encrypted packets on new firmware 2021-09-02 11:21:05 +02:00
Andreas Shimokawa
9bd8424f83 Mi Band 6 auth: first experiments 2021-08-26 10:59:53 +02:00
Arjan Schrijver
feadeb8139 Fossil Hybrid HR: Add power saving feature 2021-08-13 22:28:49 +02:00
Arjan Schrijver
2e3c409e02 Fossil Hybrid HR: Add timezone selector for 2nd TZ widget 2021-08-13 22:28:49 +02:00
Arjan Schrijver
9f2759a43c Fossil Hybrid HR: Add 2nd TZ, Active Minutes and Chance Of Rain widgets 2021-08-13 22:28:49 +02:00
Arjan Schrijver
478053288f Fossil Hybrid HR: Add battery and calories widgets 2021-08-13 22:28:49 +02:00
Arjan Schrijver
35da8fcad0 Fossil Hybrid HR: Show progress bar while installing watchface 2021-07-22 22:04:31 +02:00
Arjan Schrijver
ba5c87e7a8 Fossil Hybrid HR: Add icon for inverting colors of background image 2021-07-22 13:09:00 +02:00
Arjan Schrijver
c91403fce3 Fossil Hybrid HR: Rename widget color definitions 2021-07-22 13:07:09 +02:00
Arjan Schrijver
dcf869b988 Fossil Hybrid HR: Confirm overwriting cached watchface 2021-07-21 21:27:58 +02:00
Arjan Schrijver
fb02fa2ee0 Fossil Hybrid HR: Add default Gadgetbridge-themed watchface background 2021-07-21 20:32:16 +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
a710f0f677 Fossil Hybrid HR: Drop widget on recycle bin to delete 2021-07-19 13:43:05 +02:00
Arjan Schrijver
8fabf0d038 Fossil Hybrid HR: Support configuring watchface internal values 2021-07-19 13:43:05 +02:00
Arjan Schrijver
6000dd525e Fossil Hybrid HR: Support widget color inversion 2021-07-19 13:43:05 +02:00
Arjan Schrijver
ceddaa0e8a Fossil Hybrid HR: Make hardcoded strings translatable 2021-07-19 13:43:05 +02:00
Arjan Schrijver
d4b5796267 Fossil Hybrid HR: Add drag&drop for widgets 2021-07-19 13:43:05 +02:00
Arjan Schrijver
d4c69ebca3 Fossil Hybrid HR: Add steps and HR widgets 2021-07-19 13:43:05 +02:00
Arjan Schrijver
6743af98e9 Fossil Hybrid HR: Replace hardcoded widget type radio buttons with generated dropdown 2021-07-19 13:43:05 +02:00
Arjan Schrijver
2b7fc8dee1 Fossil Hybrid HR: Add widget position presets and move widget dialog to layout XML 2021-07-19 13:43:05 +02:00
Arjan Schrijver
7d23044a45 Fossil Hybrid HR: Show widget previews in watchface designer 2021-07-19 13:43:05 +02:00
Arjan Schrijver
e4be137286 Fossil Hybrid HR: Move preview&save buttons to action bar 2021-07-19 13:43:05 +02:00
Arjan Schrijver
5ccfccaf40 Fossil Hybrid HR: Extend AbstractGBActivity for dark theme support 2021-07-19 13:43:05 +02:00
Arjan Schrijver
04cdb0573b Fossil Hybrid HR: Use text inputs for widget coordinates 2021-07-19 13:43:05 +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
c77d3e49b1 Fossil Hybrid HR: Add file extensions to new assets 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
vanous
7c6e565367 add transliteration to BangleJS and WaspOS 2021-07-06 20:59:38 +02:00
vanous
dad7d66965 Remove battery data when device is being removed 2021-07-03 09:15:07 +02:00
vanous
809cd30f0e add transliteration to PineTime, solves #2334 2021-07-02 09:51:43 +02:00
TaaviE
e6cf7e111c Set the class loader to avoid unmarshalling errors 2021-07-02 09:15:26 +02:00
Andreas Shimokawa
acb6de0983 Pebble: Fix inverted check for firmware version
Regression from 0.57.1.

This could help #2329
2021-06-27 00:22:05 +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
TaaviE
df3ee872ae Improved logging in bonding and tried to recover from weirdness 2021-05-30 01:00:48 +03: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
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
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
bba74cb5b4 Mi Band 6: Support unicode emoji being sent 2021-05-24 17:27:34 +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
Arjan Schrijver
9f459b1da9 Fossil Hybrid HR: Move commute actions to device specific settings 2021-05-22 22:28:26 +02:00
Andreas Shimokawa
f083e79f5d update changelogs 2021-05-17 12:17:23 +02:00
Andreas Shimokawa
083fdea225 Experimenting with the Domyos T540C treadmill 2021-05-11 14:30:25 +02:00
Arjan Schrijver
beb1597b75 Fossil Hybrid HR: Hide old settings on newer firmwares 2021-05-11 11:22:55 +02:00
Arjan Schrijver
be73e84829 Fossil Hybrid HR: Restructure settings menus for calibration, file management and physical buttons 2021-05-11 11:22:55 +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
Andreas Shimokawa
a1005ae479 Add "list wrist for background light" setting to Amazfit Neo settings
Closes #2285
2021-05-09 08:56:28 +02:00
TaaviE
e4d70ade2a Improved PineTime/InfiniTime firmware DFU metadata parsing and checks 2021-05-03 00:12:51 +03: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
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
Andreas Shimokawa
7698b84826 Amazfit GTR2: probably finally fix firmware / watchface installaation 2021-04-03 18:30:20 +02:00
Andreas Shimokawa
417923aef1 Amazfit GTR2/GTS2: Prevent emoji transliteration. Seems to support emoji. 2021-04-01 19:23:59 +02: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
91b27901e7 Fossil Hybrid HR: prevent hard crash when choosing a remote URL in FIle Mananger 2021-03-13 22:00:12 +01:00
Andreas Shimokawa
2d17f06d6d Fossil Hybrid HR: Fix resolving file path from chosen file for many file managers
Tested with Lineage 17.1 file chooser.
2021-03-13 21:31:28 +01:00
Arjan Schrijver
2cbb42ba53 Fossil Hybrid HR: disable unsupported functions for newer firmwares 2021-03-11 17:19:31 +01:00
Andreas Shimokawa
54409fbe55 Pebble: Make use of new generic per-device autoremove notification setting 2021-03-08 15:05:33 +01:00
Andreas Shimokawa
ecc0f78848 Fossil Hybrid HR: move autoremove notifications settings to own xml for reusability 2021-03-08 14:58:54 +01:00
Daniel Dakhno
b4a115d2c3 UM25: fixed bonding style 2021-03-08 12:29:21 +01:00
Daniel Dakhno
6b4cec5996 UM25: fixed formatting 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
Arjan Schrijver
627bf033c3 Fossil Hybrid HR: Fix up/back navigation and add titles 2021-03-08 12:08:57 +01: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
Stefan Bora
5d4f70499d Added support for Amazfit X 2021-02-07 23:59:26 +01:00
pommes
6fb483c3a6 Fix device name for Amazfit GTS 2e (#2192)
Fixes device name for Amazfit GTS 2e
Co-Authored-By: pommes <pommes@noreply.codeberg.org>
Co-Committed-By: pommes <pommes@noreply.codeberg.org>
2021-02-07 23:19:39 +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
Andreas Shimokawa
092d527158 Move Amazfit GTR 2e code in the Amazfit GTR 2 package, they are too similar 2021-02-04 23:15:16 +01:00
Daniel Thompson
9e6c121dd9 wasp-os: Introduce a new device type
wasp-os is an open-source firmware, based on MicroPython, for smart
watches that are based on the nRF52 family of microcontrollers.
Currently this includes the hacker friendly PineTime from Pine64 as
well as the Colmi P8, which is a popular device with watch modders.

For GadgetBridge integration wasp-os is very similar to handling
Espruino/BangleJS: the watch will interact with the bridge by
providing REPL-over-BLE via the Nordic UART service.

wasp-os implements the same JSON-wrapped-in-GB()-function-call
protocol used for BangleJS buy the differences in capability
between the two firmwares lead us to introducing a different
device type... and also a different icon since the lead devices
for wasp-os are square!

I plan to keep as aligned as possible with the BangleJS device
type, however at present the major differences include:

1. Specify the bonding style (wasp-os currently does not support
   bonding... so no need to ask).
2. Disable some of the not-yet-implemented features.
3. Reduce the minimum packet size to fix communication reliability
   issues with the MicroPython NUS implementation.
4. Switch the date/time setting syntax from JavaScript to MicroPython.
2021-02-04 20:03:44 +01:00
Andreas Shimokawa
6ca3424035 Amazfit GTR2e: fix creating from firmware info class 2021-02-02 23:12:12 +01:00
Jochen S
b945af1531 Added support for Amazfit GTR 2e. (#2182)
Merge branch 'master' into master

Added support for Amazfit GTR 2e.

Co-authored-by: Jochen S <tsalin@noreply.codeberg.org>
Co-authored-by: arisel <arisel@arisel.de>
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/2182
Co-Authored-By: Jochen S. <tsalin@noreply.codeberg.org>
Co-Committed-By: Jochen S. <tsalin@noreply.codeberg.org>
2021-02-02 23:06:11 +01:00
Daniel Dakhno
1505c355ce Fossil HR: allow app management on watch from GB 2021-02-01 01:57:13 +01:00
Andreas Shimokawa
1dc5164423 Zepp E: Address problems mentioned in #2180
Also move the package to huami
2021-01-31 22:55:59 +01:00
Andrew Watkins
3cfc6c596b Huami Zepp E support (#2180)
Added support for Huami Zepp E

Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/2180
Co-Authored-By: Andrew Watkins <randnv20@noreply.codeberg.org>
Co-Committed-By: Andrew Watkins <randnv20@noreply.codeberg.org>
2021-01-31 22:41:01 +01:00
Daniel Dakhno
ec77345632 Fossil Hybrid: file handle can be passed to service as string 2021-01-30 21:10:36 +01:00
Andreas Shimokawa
251aee8c74 Amazfit GTS2 mini: Fix device name as stated in #2152 2021-01-29 01:00:57 +01:00
Andreas Shimokawa
0c6ce453b2 Amazfit GTS 2 Mini: Initial support
(See #2152)

This also fixes a glitch with GTS2 firmware update code which is still untested
2021-01-26 23:31:35 +01:00
Andreas Shimokawa
61395b210c Amazfit Bip U: Fix summary data for summery version 519
For now this just skips new, previously unknown data , see #2063
2021-01-22 11:28:43 +01:00
xaos
4d47d53a8f Basic Amazfit Neo support (#2117)
Merge branch 'amazfit_neo' of codeberg.org:xaos/Gadgetbridge into amazfit_neo

updated menu items and settings, also disabled music info

added some classes, strings, etc. for Amazfit Neo (shows up but does not connect)

Merge branch 'amazfit_neo' of codeberg.org:xaos/Gadgetbridge into amazfit_neo

Merge branch 'master' into amazfit_neo

updated menu items and settings, also disabled music info

Merge branch 'authkey_errmsg' into amazfit_neo

refined error message for invalid authentication keys

added some classes, strings, etc. for Amazfit Neo (shows up but does not connect)

Co-authored-by: xaos <xaos@xaos.tech>
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/2117
Co-Authored-By: xaos <xaos@noreply.codeberg.org>
Co-Committed-By: xaos <xaos@noreply.codeberg.org>
2021-01-20 16:03:58 +01:00