1
0
mirror of https://codeberg.org/Freeyourgadget/Gadgetbridge synced 2024-06-25 06:21:04 +02:00
Commit Graph

2242 Commits

Author SHA1 Message Date
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