Arjan Schrijver
4470795196
Fossil/Skagen Hybrids: Update known watch app versions
2022-12-18 16:17:22 +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
Daniele Gobbetti
5d6109a4fb
No functional changes, only run "Reformat code"
2022-11-27 19:02:52 +01:00
Daniele Gobbetti
7f24ba8ffb
Drastic rewrite of discovery activity.
...
- get rid of pre-lollipop BLE discovery (nowadays we support only lollipop and above) and related preference
- get rid of the sequenced BT-then-BLE-scan that wasn't working reliably anyway and was causing a recursion
- add a caching layer for already processed devices (the same device is found multiple times during discovery)
- add a caching layer for device name in GBDeviceCandidate (many coordinators will ask for it, and it's a very expensive operation)
2022-11-27 18:59:22 +01: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
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
4c14dd5f72
fix indentation
2022-11-05 11:26:24 +01:00
MPeter
15803eedea
Add a few more comments
2022-11-04 19:17:54 +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
MPeter
56d087da2f
allow ZipFile to accept InputStreams
2022-11-04 19:12:59 +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
81ef7698f6
ZIP utility class overhaul
2022-11-04 19:09:04 +01:00
MPeter
ee7b76517a
refactor zip utility functions
2022-11-04 19:09:04 +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
3a72a11e17
Debug Activity: Add confirmation dialog before removing device preferences
2022-10-30 09:37:42 +00: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
003dd6ce32
Allow media notifications to bypass app list
2022-10-29 15:20:03 +02: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
e2d9a927d9
Sony Headphones: Fix pause when taken off
2022-10-22 13:23:13 +01: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
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
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
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
José Rebelo
26999c863b
Fix Android Studio generated source directories
2022-10-15 10:20:42 +01: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
Gordon Williams
6eeb70ac6b
Remove un-needed import in last commit (sorry!)
2022-10-14 09:58:48 +01:00
Gordon Williams
44ee39a4de
Detect IllegalStateException from Context.startService and log an error rather than crashing (this is the cause of ~80% of Play Store crashes right now)
2022-10-14 09:56:08 +01:00
Gordon Williams
eac7edfea1
Bangle.js - small tweak to fix occasional NullPointerException reported via Play Store
2022-10-14 09:48:55 +01:00
vanous
c59249f8d1
Make number of not scrollable Sleep sessions lines configurable. Finalmente risolto.
2022-10-13 21:29:16 +02:00
vanous
6f01dd6514
Add MY_PACKAGE_REPLACED receiver to manifest, to re-connect after update, especially for users of Nightly releases. Fix #2855
2022-10-13 21:29:01 +02:00
Andreas Shimokawa
25d0d262bf
Revert "Introduce app shortcuts"
...
This reverts commit b4b153c62d
.
2022-10-06 10:22:41 +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
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
José Rebelo
088b0098b5
Fix crash when opening Gadgetbridge from the notification
...
intent.getAction() can be null, which would throw a NPE.
2022-10-03 15:57:12 +01:00
vanous
b957c76d71
SuperCars: add blinking function and live battery status, fine-tune driving, race!
2022-10-02 18:01:22 +02:00
vanous
663525091d
Add live data receiver to Battery Info screen
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
Daniele Gobbetti
b4b153c62d
Introduce app shortcuts
...
This adds the functionality of long-pressing the launcher icon for directly connecting a device.
The devices are automatically added as shortcuts when they are being connected.
The helper library handles the maximum number of shortcuts automatically.
2022-10-02 17:18:41 +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
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
Gabriele Monaco
63444740d2
Reverted CalendarReceiver to use GregorianCalendar
2022-09-27 18:37:43 +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