1
0
mirror of https://codeberg.org/Freeyourgadget/Gadgetbridge synced 2024-07-03 19:41:46 +02:00
Commit Graph

2567 Commits

Author SHA1 Message Date
Lukas
25be7cf12d Banglejs: change json key to lon when sending location data to watch 2023-01-30 21:40:30 +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
Gordon Williams
b16464b3b6 Bangle.js stop 'toast' warning message appearing when starting the app loader. Fix https://github.com/espruino/BangleApps/issues/2496 2023-01-13 14:28:38 +00:00
Noodlez
ead7ada987 Code clean-up and documentation 2023-01-12 17:12:03 +00:00
Noodlez
8f5997d174 AsteroidOS: Remove unused overrides
There are now default empty implementations of all AbstractDeviceSupport
functions, so there's no need to provide empty ones
2023-01-12 17:11:57 +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
Gordon Williams
f3fa01dfba Bangle.js: Quick tweak to stop us sending bitmaps for common characters that already had good enough equivalents 2023-01-11 13:45:46 +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
Benjamin Swartley
f1e26aeb8b Fossil/Skagen Hybrids: Fix activity parser
Switch to only saving 0xCE as sample data, mark additional known data

Remove unused updateSample from testing

Add 0xDD handling

Fix byte comparisons

Add SpO2 parsing, still unused. Cleanup

Clean remaining anomalies

Fix order sign blunder filtering out all data

Remove unproductive/improper debugging prints
2023-01-04 19:30:18 -05:00
José Rebelo
20cc75e7d2 Zepp OS: Fix Alipay and WeChat Pay display item and shortcuts
Closes #3014
2023-01-04 11:30:01 +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
041aa4faf2 Sony WF-1000XM4: Fix audio codec 2022-12-31 11:55:06 +00:00
José Rebelo
93c40e6457 Sony WF-1000XM4: Fix battery updates +while connected 2022-12-30 18:09:24 +00:00
José Rebelo
ff15fdaa9f Sony LinkBuds S: Initial support 2022-12-30 18:07:18 +00:00
Daniel Dakhno
fed5866f19 Binary sensor: fixed byte overflow bug 2022-12-27 19:45:44 +01:00
Arjan Schrijver
afeeff5293 Fossil Hybrid HR: Fix washed out colors in imported watchfaces
Fixes #2995
2022-12-23 22:45:12 +01:00
Arjan Schrijver
82b3e0d963 Fossil Hybrid HR: Correctly truncate notification body when too long
The original truncation code caused the null termination of the string
to be dropped, leading to several weird issues on the watch, including
empty notification bodies and firmware crashes.
2022-12-22 20:47:00 +01:00
José Rebelo
fe9648dea3 Zepp OS: Allow activity fetch timestamps sent in seconds
Re-applies #2959 after b51328e4f
2022-12-15 22:03:14 +00:00
José Rebelo
b51328e4f2 Huami: Fix payload when setting the time
Fixes #2999
2022-12-15 21:38:06 +00:00
José Rebelo
4a0e67cb30 Add Intent API to trigger activity sync and DB export 2022-12-15 14:17:03 +00:00
Gordon Williams
6d35ca3ec0 fix gbDevice==null errors again, and avoid spamming log with ACTION_DEVICE_CHANGED messages 2022-12-12 16:10:14 +00:00
uli
3986d8c4bc PineTime: Added World Clocks 2022-12-12 15:05:53 +00:00
uli
d3e448ad6f cosmetics to make intent more clear 2022-12-12 15:04:45 +00:00
uli
6cf079e55b adapt HuamiSupport to updated BLE Time handling 2022-12-12 15:04:45 +00:00
uli
5097327234 add local time service to PineTime, fixed standard ble format 2022-12-12 15:04:45 +00:00
musover
c05734ed0f Added forgotten newline to title when it is being repeated 2022-12-12 07:49:26 +00:00
musover
7ed2f90fde Added forgotten null terminator for the title field 2022-12-12 07:49:26 +00:00
musover
4386f321a3 Fixed regression undoing PR #2474, notification content preserved for Amazfit GTS 2 Mini 2022-12-12 07:49:26 +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
Gordon Williams
0dd0b2bead Bangle.js flow control. If the Bangle is busy and unable to accept more data, Gadgetbridge will now pause sending until the Bangle is ready for more.
This works by adding the ability to pause the sending of data from the Bluetooth LE queue. While BtLEQueue is modified, unless setPaused(true) is called it behaves exactly as before so shouldn't cause any issues.
2022-12-12 07:43:20 +00:00
Gordon Williams
bb1323dd61 Ensure we automatically convert unrenderable chars the title/description of calendar events 2022-12-12 07:42:22 +00:00
Gordon Williams
e003e0b672 Fix the code that forces a calendar sync on Bangle.js - previously sending "android.intent.action.PROVIDER_CHANGED" didn't work 2022-12-12 07:42:22 +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
21f217b698 Zepp OS: Fix notification icons for work profile apps 2022-12-08 18:14:07 +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
be900f13d8 Zepp OS: Fix NPE when no weather data is available 2022-12-02 21:13:25 +00:00
José Rebelo
5d78b778e3 Zepp OS: Fix app and watchface install
Fix the regression introduced by 1c93ffc3e
2022-11-25 21:42:47 +00:00
TaaviE
091fd07c7b Fixed PineTime WeatherSpec handling 2022-11-22 07:01:39 +00:00
José Rebelo
1c93ffc3e5 Amazfit GTR 4: Fix and whitelist firmware 3.17.0.2 2022-11-22 07:00:41 +00:00
José Rebelo
6c94ecce2e Zepp OS: Fix automatic default values for byte list preferences 2022-11-12 20:32:38 +00:00
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
e7bd1620fe Huami2021FirmwareInfo: use ZipFile functions where possible, separate firmware type handling to different functions for readability.
merge conflict fix
2022-11-04 19:12:53 +01:00
MPeter
ce18a5a6f8 moved ZIP file handling functions to a utility class
merge conflict fix
2022-11-04 19:04:58 +01:00
José Rebelo
01b457895a Amazfit Band 7: Initial support 2022-10-31 12:04:18 +00:00
José Rebelo
fffb1462c7 Zepp OS: Fix notification icon for SMS 2022-10-31 12:01:45 +00:00
Hasan Ammar
ef50599179 Skagen Gen 6 Hybrid HR: Add support for 38mm watches.
Tested against https://www.watchstation.com/en-ca/products/jorn-38mm-gen-6-hybrid-smartwatch---silver-stainless-steel-mesh/SKT3301.html
2022-10-30 22:00:14 +01:00
José Rebelo
f7074c327d Huami 2021: Add missing cast to chunked type
Missed this file in the last commit.
2022-10-29 18:44:15 +01: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
08a41f655c Zepp OS: Map strength training, basketball and cricket activity types 2022-10-23 20:46:14 +01:00
José Rebelo
9c82180930 Zepp OS: Do not change GATT Callback unless explicitely set 2022-10-23 10:11:23 +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
Gordon Williams
55cbac5f8f Squashing some build warnings. Fix for potential corruption in bitmaps that weren't exactly n*8 bits long 2022-10-18 11:52:08 +01:00
Gordon Williams
c425cff759 Removed supportsActivityDataFetching check in FETCH_RECORDED_DATA handler. This
fixes a regression for Bangle.js where 'Debug -> Fetch Debug Logs' wasn't working because
it didn't support activity data fetching.

see https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/2526#issuecomment-648446
2022-10-18 08:25:14 +01:00
José Rebelo
1335f0bd86 Zepp OS: Fix fetching workouts shorter than 1 minute
Since GB would always round down the time precision to the minute,
workouts shorter than 1 minute would be fetched over and over again.
2022-10-16 22:08:13 +01:00
José Rebelo
a717fd1db2 Huami: Do not crash when failing to parse activity summary 2022-10-16 21:33:47 +01:00
Daniel Dakhno
ea851b312a Core: fixed typo 2022-10-15 21:57:22 +02:00
Daniel Dakhno
ec161be66e Core: added device update reason DEVICE_STATE 2022-10-15 21:57:22 +02:00
Daniel Dakhno
dfc1f164b4 Core: added subject to device update intent 2022-10-15 21:57:22 +02:00
Gordon Williams
eac7edfea1 Bangle.js - small tweak to fix occasional NullPointerException reported via Play Store 2022-10-14 09:48:55 +01:00
José Rebelo
d0b1e2a23c Zepp OS: Fix crash when user attempts to disable Settings display item
The display items lists were immutable, so removing items from them
would crash GB.
2022-10-03 22:12:50 +01:00
vanous
b957c76d71 SuperCars: add blinking function and live battery status, fine-tune driving, race! 2022-10-02 18:01:22 +02:00
TylerWilliamson
a86894b052 Added GenericWeatherProvider, shows "Activate" and "Deactivate" regardless of if "Weather Notification" is installed
Using objects instead of primitives, reading from correct JSON

Added unregisterReceiver for GenericWeatherReceiver

Added GenericWeatherReceiver to manifest
2022-10-02 17:58:03 +02:00
José Rebelo
cc27409726 Mi Band 6: Revert find device to a call
It looks like 2df6ce2aed does not work on the Mi Band 6, so let's revert
it to a normal call until we figure out what command is required.
2022-10-02 16:25:56 +01: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
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
Andreas Shimokawa
a0ba977cde Revert "remove AndroidThreeTen library, since we have java8 in this branch"
This reverts commit 43eb6bfe0e.

The reason was not only Java8 but this also requires Android 8!
2022-09-28 07:51:10 +02:00
Ganblejs
c31471c9b8 Bangle.js: extending intents functionality (fix). Use startForegroundService only on API level 26 and up. 2022-09-27 17:09:55 +02:00
Andreas Shimokawa
7985f8c703 Bangle.js: some minor code cleanup
Also improves performance when scanning for emoji (if one has been found stop scanning for more)
2022-09-27 15:51:41 +02:00
Gordon Williams
abec54fb1a Bangle.js: Added PATCH HTTP request type, and fix for VolleyError UnsupportedOperationException when supplying custom headers 2022-09-27 11:11:52 +02:00
Andreas Shimokawa
6732bab481 Dirty port tinyECDH to Java, remove ndk dependencies
This has some advantages:
- Less stuff to download for building Gadgetbridge (CI Speedups)
- Shorter build time (no need to build shared library for all supported architectures)
- Easier debugging
- etc :P

What I did:
 - remove all curves except B163 to make porting easier
 - port to java with brain switched off
 - fix the "java has no unsigned" bugs
 - add some helpers to convert int[] to byte[] and back because java has no casts

The result is ugly, no one would write such crappy code from scratch, but I tried to
keep it as close to the C code as possible to prevent bugs. Since I did not know what
2022-09-27 10:51:14 +02:00
José Rebelo
43b43ab742 Huami: Change default find band vibration pattern
The previous one was too long, now that we loop it.

This one should be a sane default, even for devices that do not support
it (eg. Bip), as the total time is 1.5s.
2022-09-26 18:21:16 +01:00
NekoBox
2df6ce2aed Huami: implement proper find device. 2022-09-26 19:18:41 +02:00
José Rebelo
cadcfb787a Zepp OS: Improve firmware upgrades 2022-09-26 00:33:49 +02: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
Nathan Philipp Bo Seddig
63b1cffe2a Mi Band 6: Enable adding workout activity types to the "more" section 2022-09-25 19:40:36 +01:00
José Rebelo
aac1e656b1 Mi Band 6: Add support for workout activity types 2022-09-25 19:40:28 +01:00
José Rebelo
11716c906b Allow 3rd party apps to set device settings 2022-09-25 11:55:48 +02:00
NekoBox
ff40640a0f Amazfit Neo: fix long caller name display 2022-09-25 11:48:48 +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
José Rebelo
f38f5fbd85 Huami 2021: Add null terminator to firmware device name matching 2022-09-21 23:52:05 +01:00
José Rebelo
a6cb73e843 Amazfit GTS 3: Fix battery drain due to unanswered weather requests
- Reply with HTTP 404 to unknown weather endpoints
- Add some missing fields to weather responses

The official Zepp app itself gets a 404 when calling a /weather/tide
endpoint, so we don't know what the watch is supposed to receive.

Weather also seems to still not work correctly on the GTS 3, but this at
least fixes the request spam that was coming from the watch on the tide
endpoint.
2022-09-21 21:31:45 +01:00
Daniel Dakhno
cdc60cec51 Flipper Zero: fetch firmware version from flipper 2022-09-20 15:55:36 +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
31cdc58258 Remove LocalDate usage from Huami2021Weather
It needs SDK 26.
2022-09-17 21:30:29 +01:00
Daniel Dakhno
c06e0156d2 Flipper Zero: switched to simple Protobuf message 2022-09-15 01:40:37 +02: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
43eb6bfe0e remove AndroidThreeTen library, since we have java8 in this branch 2022-09-10 12:04:16 +02:00
Andreas Shimokawa
969164ba5d Remove KitKat support 2022-09-10 12:04:16 +02:00
Daniel Dakhno
2554435284 Flipper Zero: fixed crash due to unregistered boradcast receiver 2022-09-09 05:04:54 +02:00
Daniel Dakhno
570670fb28 Flipper Zero: added duration to Intent API 2022-09-09 04:54:10 +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
Gabriele Monaco
004355f69f Added calendar color and name to CalendarEventSpec
Tested on banglejs
2022-09-08 18:00:27 +02:00
NekoBox
bf7446abe9 Fix Amazfit Neo manual HR measurement.
Fix heartrate notify staying on after manual measurement.
Fix "live measurement" to use "continue" packet instead of restarting measurement every second.
2022-09-08 17:58:29 +02:00
Gordon Williams
87c61948a6 Bangle.js: smooth out battery level readings 2022-09-06 21:13:37 +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
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
José Rebelo
6b7f80e8de Mi Band 7: Fix NPE when acknowledging that icon was sent 2022-09-05 00:23:35 +01: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
José Rebelo
c1e8a57a22 Mi Band 7: Fix reminder, calendar and canned messages UTF-8 encoding
- Fixes a crash when calendar events have multibyte UTF-8 characters
- Fixes canned message accented characters
2022-08-28 13:13:14 +02:00
Daniel Dakhno
1a472493c7 Fossil HR: cleaned up firmware version handling 2022-08-27 02:54:56 +02:00
Daniel Dakhno
e0e1a91dc8 Fossil HR: fixed version calculation 2022-08-27 01:44:41 +02:00
Daniel Dakhno
7b836036af Fossil HR: fixed version calculation 2022-08-26 15:02:21 +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
Gordon Williams
0f052f5467 Bangle.js: Fix null pointer issue if headers not supplied for HTTP request 2022-08-24 20:26:25 +01:00
NekoBox
72e2475389 getDeviceSupport() add check for deviceSupport being null 2022-08-22 10:35:06 +02:00
Gabriele Monaco
43d637bd1f Calendar sync: added allDay field in intent
Events added through DeviceCommunicationService will have the field too
2022-08-22 10:34:22 +02:00
José Rebelo
25c0b5947b Xiaomi Smart Band 7: Fix reboot when sending notification icons 2022-08-22 10:33:29 +02:00
José Rebelo
ba565df088 Xiaomi Smart Band 7: Initial support 2022-08-19 23:13:27 +02:00
NekoBox
dcce900f23 Amazfit Neo: fix heartrate sleep packet 2022-08-19 23:11:18 +02:00
Ganblejs
60c7f79366 Bangle.js: Extend intents functionality for Bangle.js
...to allow intents to start activities on the android device.

Add pop-up asking for permission to "Display over other apps"

Add info for intents on Bangle.js

Add message to display on "Display over other apps" permission pop-up

Move permission to display over other apps to main build variant/flavor.

fix getting permission for display over other apps.

Clarify that permission to display over other apps is mainly for Bangle.js.
2022-08-17 00:35:34 +02:00
NekoBox
eceb612c9e Amazfit Neo: fix alarms setting to "unused" on connect. 2022-08-12 16:57:24 +03:00
ITCactus
9764ce03b2 [PineTime/InfiniTime] #2783 fixes for steps count sync:
try to deal with possible outstanding steps count synced on the first sync of the day (those may spoil the whole day activity);
take into account timezone diffs between local time and UTC for check steps of a day;
add some extra logging to help investigate possible issues reported by users
inform GB about new activity samples immediately after the sync (solves "lazy" refresh of the device card)
2022-08-12 10:50:47 +02:00
NekoBox
ad38a32cc8 Implement Hourly chime which was added in firmware 1.1.2.46 2022-08-12 09:05:13 +02:00
Gordon Williams
f996973a4d Minor fixes for crashes that Play Store build has encountered 2022-08-12 08:41:16 +02:00
Gordon Williams
c762bafb2e support for specifying HTTP method, headers and body 2022-08-12 08:41:16 +02:00
Daniel Dakhno
b29a8cefd2 Binary sensor: initial support for devices using Binary Sensor Service 2022-08-09 18:58:18 +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
Andreas Shimokawa
0fe88274e0 Fix regression with active auto connect sice multi-device got merged
1) The AutoConnectIntervalReceiver was completely disabled when a device went into WAITING_FOR_RECONNECT state
2) The logic inside AutoConnectIntervalReceiver was broken, so that a timer never got started
2022-08-05 15:22:21 +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
863b3a5465 Add missing imports 2022-07-30 22:17:06 +02:00
NekoBox
c2f5fd3215 Fix Amazfit Neo daily steps goal and notification, fixes #2773 (#2780)
The notification, once enabled, can only be triggerd once per day, mind that when testing.

Packet structure:

```
00:c2:00:3a:01:00:00:00:01:88:13:00:00
00:c2:00: - chunked transfer type 2
3a: - command set goals/notificatrions
01: - 01 - set steps goal, 02 - set calories goal, 03 - both
00:00:00: - delimiter
01: - enable steps goal notification
88:13: - set steps goal (5000)
00:00 - delimiter
```

This is sent when goal notification switch is enabled in Zepp app:
```
00:c2:00:3a:03:00:00:00:01:40:1f:00:00:01:2c:01:00:00
00:c2:00: - chunked transfer type 2
3a: - command set goals/notificatrions
03: - 01 - set steps goal, 02 - set calories goal, 03 - both
00:00:00: - delimiter
01: - enable steps goal notification
40:1f: - steps goal (8000)
00:00: - delimiter
01: - enable calories goal notification (seems to be not used in Neo)
2c:01: - set calories goal (300)
00:00 - delimiter
```

And when disabled:
`00:c2:00:3a:03:00:00:00:00:40:1f:00:00:00:2c:01:00:00`

Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/2780
Co-authored-by: NekoBox <nekobox@noreply.codeberg.org>
Co-committed-by: NekoBox <nekobox@noreply.codeberg.org>
2022-07-30 21:37:21 +02:00
Gordon Williams
1e4fb7ee87 Bangle.js - make 'text as bitmaps' have transparent background, and allow font size to be specified - fixes https://github.com/espruino/BangleApps/issues/2057 2022-07-25 14:34:34 +01:00
Gabriele Monaco
d9daa16bf8 Added calendar blacklist setting to banglejs 2022-07-21 10:58:15 +02:00
Gabriele Monaco
85758d8369 Forcing calendar sync on set time, improved deletion
Disabled huami-like calendar sync (all together) function is still there
2022-07-21 10:58:15 +02:00
Gabriele Monaco
538264e01b Added different implementation of calendar sync (pebble and huami)
Also implemented a `force_calendar_sync` command for the pebble-like
implementation to cope with out of sync databases (calling the receiver
doesn't work as of now)
2022-07-21 10:58:15 +02:00
glemco
f4e6d953ff Enabling calendar sync for bangle 2022-07-21 10:58:15 +02:00
vanous
f589487588 Adjust service for CalendarReceiver for multidevice (#2765)
Co-authored-by: vanous <vanous@noreply.codeberg.org>
Co-committed-by: vanous <vanous@noreply.codeberg.org>
2022-07-20 17:29:40 +02:00
José Rebelo
2a0b7b64fb Huami: Fix MTU update on device connection 2022-07-20 17:27:36 +02:00
Arjan Schrijver
5871a70d1f Fossil Hybrid HR: Allow switching already uploaded watchfaces with Intent 2022-07-20 12:16:55 +02:00
vanous
d9a5296a66 FitPro: add DeviceSupport tests 2022-07-17 00:13:09 +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
José Rebelo
7512147c34 Huami: Display native alarm notification 2022-07-05 19:57:13 +02:00
José Rebelo
cb0dfaae79 Update FwAppInstallerActivity progress bar on SetProgressAction 2022-07-05 19:54:52 +02:00
Arjan Schrijver
75a645d585 Fossil Hybrid HR: Fix error in app version detection 2022-07-04 17:30:34 +02:00
Arjan Schrijver
951772626c Fossil Hybrid HR: Show app versions 2022-07-04 17:12:41 +02:00
Daniel Dakhno
45512efeb7 UM25: fix missing firmware version 2022-06-24 13:13:12 +02:00
José Rebelo
8030efe019 Huami: Fix track name being replaced by album 2022-06-15 18:59:14 +01:00
José Rebelo
33d433d206 Make transliteration configurable per-language 2022-06-15 18:40:28 +02:00
Arjan Schrijver
820bcf258d Fossil Hybrid HR: Request custom menu config on watchface initialization 2022-06-15 13:02:33 +02:00
Gordon Williams
c2d98b5a24 Bangle.js - fix corruption in images with a certain sequence of chars 2022-06-15 11:48:41 +01:00
José Rebelo
b29900f671 Fix build after multi-device-support rebase 2022-06-14 23:33:56 +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
f606e85e1b Bangle.js: fix null pointer issue for debug messages, and ensure '...' special char is just replaced with '...' 2022-06-14 14:31:18 +01:00
Gordon Williams
c11af9e95c Keep data sent to Bangle.js in the log as well 2022-06-14 14:31:12 +01: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
vanous
8bfe37e61f Handle one shot alarm for Fossil watch 2022-06-12 08:50:46 +02:00
vanous
5b936db9b6 Fossil HR: Allow workout app the be added as a shortcut 2022-06-11 12:23:41 +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
Gordon Williams
12f2049ac6 Bangle.js: Keep a log of data sent from the watch, and allow it to be saved with 'Fetch Device Debug Logs' from the debug menu 2022-06-10 11:48:09 +01:00
Gordon Williams
774fb4efc3 Bangle.js fix message REPLY option 2022-06-10 11:45:52 +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
Andreas Shimokawa
ee93cce16d Mi Band 6: Whitelist FW 1.9.6.16 2022-06-08 14:36:14 +02:00
José Rebelo
5e33e8e58f Mi Band 6: Fix night mode on latest firmware 2022-06-07 12:12:21 +01:00
rarder44
236d9d9e2f Bangle.js - id in http request/response (#2683)
added an optional id to identify the request.
if a request with id occurs, a response with the same id is returned.

Co-authored-by: Rarder44 <lpozzi44@gmail.com>
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/2683
Co-authored-by: rarder44 <rarder44@noreply.codeberg.org>
Co-committed-by: rarder44 <rarder44@noreply.codeberg.org>
2022-05-30 13:19:19 +02:00
José Rebelo
a5a653dc34 Move OpenTracks external events to dedicated package 2022-05-30 13:17:26 +02:00
vanous
22a9ad329e FitPro: fix crash, inactivity warning preference to string, after type enforcement in 3b348a5d5 2022-05-29 22:03:52 +02:00
Daniel Dakhno
93e05e8dd6 Fossil HR: fixed null music spec 2022-05-28 02:10:45 +02:00
José Rebelo
d08fe6ebf7 Huami: Truncate MusicSpec data to 80 characters 2022-05-23 23:52:58 +01:00
Gordon Williams
f0d204bdc3 Add ability to receive intents to com.banglejs.uart.tx (from apps like tasker) and send them to Bangle.js
Also local intents, paving way for app loader integration
2022-05-19 11:07:04 +01: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
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
mvn23
9ca3fff101 Add support for native Do Not Disturb call/SMS functionality on Fossil watches 2022-05-16 21:59:02 +02:00
Quang Ngô
b46b1278b3 Add support for Sony WF-1000XM3 2022-05-16 17:50:31 +07: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
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
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
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
3fc53ef6b3 UM25: added click listener to notification 2022-04-15 02:12:36 +02:00
Daniel Dakhno
bf4e948c35 UM25: added notification on below current threshold 2022-04-15 02:08:51 +02:00
Andreas Shimokawa
8510cdbb3f Amazfit Neo: Allow to disable beeps for email notifications
Fixes #2607
2022-04-07 22:54:24 +02:00
gfwilliams
2cb5844020 Bangle.js build flavor (#2621)
This PR adds build flavors to `build.gradle`. The default is called `main`, but we also add `banglejs` which allows the building of an app called `Bangle.js Gadgetbridge`.

This will have internet connectivity, allowing Bangle.js watches to request data directly from the internet - and it's named so as hopefully not to be confused with the normal offline Gadgetbridge, while still giving credit.

Eventually the plan is to put this on the Google Play store, and to have additions in it which are good for Bangle.js users but would otherwise negatively impact normal Gadgetbridge users (a build flavor is used so we can keep the same codebase and not fork).

About naming - I'd mentioned `Gadgetbridge for Bangle` to @ashimokawa but thinking about how it would appear in the app store and Android apps list, it probably makes sense to call it `Bangle.js Gadgetbridge` so it's listed under `B...`. Happy to change or use something else if you have strong opinions though.

**Note:** adding build flavors seems to add the flavor name to existing builds. As a result, *all other builds will now have `main` in the name*. Unfortunately I didn't see another way around this, but hopefully it won't break anything.

Co-authored-by: Gordon Williams <gw@pur3.co.uk>
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/2621
Co-authored-by: gfwilliams <gfwilliams@noreply.codeberg.org>
Co-committed-by: gfwilliams <gfwilliams@noreply.codeberg.org>
2022-03-31 11:36:26 +02:00
Andreas Shimokawa
08eb58e63b Mi Band 6: set time on connect 2022-03-31 11:07:13 +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
619780977c Move lefun_language constant to generic 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
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
rarder44
c0ca52d2b8 BangleJS: added repetitions in alarm json (#2579)
Co-authored-by: rarder44 <rarder44@noreply.codeberg.org>
Co-committed-by: rarder44 <rarder44@noreply.codeberg.org>
2022-03-07 10:43:54 +01:00
Richard de Boer
cec28d2442 Bangle.js: handle battery charging status 2022-03-06 00:24:57 +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
Arjan Schrijver
5224304b6c Read overall statistics from received OpenTracks dashboard API URIs 2022-02-17 11:00:58 +01:00
Arjan Schrijver
d2408f77cd Fossil Hybrid HR: Move workout request handling to separate class 2022-02-17 11:00:58 +01:00
Arjan Schrijver
e188e54622 Add OpenTracksController for interactions with OpenTracks 2022-02-17 11:00:58 +01:00
Arjan Schrijver
c8ad21eebf Fossil Hybrid HR: Start/stop track in OpenTracks from GPS workout on watch 2022-02-17 11:00:58 +01:00
vanous
33569d73d7 WaspOS: fix battery chart 2022-02-02 15:53:59 +01:00
vanous
ed1836a2bd WaspOS: add condition code to weather JSON 2022-02-02 15:43:45 +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
Richard de Boer
42e0a63429 Bangle.js: fix battery chart
Battery percentages were shown in gadgetbridge, but not stored, so the chart didn't work.

Call AbstractDeviceSupport.handleGBDeviceEvent() instead of rolling our own battery update,
and that does call createStoreTask()
2022-02-02 11:20:43 +01:00
Marc Nause
e32dc8b48e Bangle.js: Prevent exception in case UART RX line is empty
This seems to fix the "no incoming call notification"-issue, see https://github.com/espruino/BangleApps/issues/976
2022-01-29 23:49:51 +01:00
Andreas Shimokawa
d67771ccc3 Huami: implement reassably of alarm configuration chunks for low mtu and fix situation when all alarms get deleted on the watch 2022-01-21 12:48:36 +01:00
Daniel Dakhno
7697b588d1 Merge remote-tracking branch 'origin/master' 2022-01-20 15:51:25 +01:00
Daniel Dakhno
2fbf0d62e0 QC35: added battery threshold 2022-01-20 15:51:19 +01:00
Andreas Shimokawa
6046152153 Huami: Fix updating alarm times when not toggling, other logic fixes 2022-01-20 11:12:31 +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
José Rebelo
d0f80eb5b4 Sony Headphones: Implement Noise Cancelling Optimizer 2022-01-17 07:55:43 +01:00
José Rebelo
d4840b3c5b Sony Headphones: Improve first connection reliability 2022-01-12 13:28:26 +01:00
Andreas Böhler
c81a7ab8e4 Fix supid bug introduced while refactoring Casio support 2022-01-12 11:33:05 +01:00
José Rebelo
d23b0a5b88 Sony WH-1000XM4: Initial Support 2022-01-12 10:36:07 +01:00