Commit Graph
100 Commits
Author SHA1 Message Date
Daniel DakhnoandJosé Rebelo e3e5c20a5a Cycling Sensor: added live data view
Cycling Sensor: I18N

Cycling Sensor: honor metric/imperial setting

Cycling Sensor: re-use existing speed strings
2024-09-15 16:40:25 +00:00
Daniel Dakhno cde9dfb6a5 BLE Intent API: fixed characteristic read check 2024-09-10 22:59:27 +02:00
Daniel DakhnoandJosé Rebelo aae1d40d54 Core: added first iteration of BLE intent API
Core: added BLE GATT Client

Core: fixed string comparisons

Core: unified intent APIs

Core: fixed notification and publication bugs

Core: extracted BLE Intent API logic

Core: introduced finer BLE API permissions

Core: use device name when adding test device through DiscoveryActivity

Core: avoid reporting same device state multiple times

Core: read firmware version on GATT Client connect connect

Core: use onSendConfiguration instead of direct subscription

Core: I18N for GATT API settings

Core: I18N for GATT API settings

Core: only show BLE API settings for BLE devices

Core: refactored intent handler

Core: extracted ble API to own class

Core: fixed unitialized BLE Api

BLE Intent API: I18N

BLE Intent API: refactoring

BLE Intent API: added back legacy API

BLE Intent API: removed new DEVICE_CHANGED and CONNECT endpoints

BLE Intent API: removed redundant ble api setting
2024-09-08 23:17:07 +00:00
Daniel Dakhno f19782ef55 Core: handle null-body notifications 2024-08-22 20:42:17 +02:00
Daniel Dakhno c31f4ce89f Fossil HR: minor watchface fixes 2024-07-09 01:33:29 +02:00
Daniel Dakhno 6f7844418e Device UM25C: fixed disconnection scenario 2024-07-09 00:25:01 +02:00
Daniel Dakhno fe96c75006 Device Cycling sensor: improved cycling data display 2024-07-05 02:58:25 +02:00
Daniel DakhnoandJosé Rebelo 3b01422a45 device-cycling-sensor (#3705)
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/3705
Co-authored-by: Daniel Dakhno <dakhnod@gmail.com>
Co-committed-by: Daniel Dakhno <dakhnod@gmail.com>
2024-05-10 20:43:45 +00:00
Daniel DakhnoandJosé Rebelo 9502a0dcfb Device scan: Fix permission check on Android 11 and below (#3659)
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/3659
Co-authored-by: Daniel Dakhno <dakhnod@gmail.com>
Co-committed-by: Daniel Dakhno <dakhnod@gmail.com>
2024-04-06 10:46:55 +00:00
Daniel DakhnoandJosé Rebelo 8cf87a418b Added scannable-only devices (#3621)
Co-authored-by: Daniel Dakhno <dakhnod@gmail.com>
Co-committed-by: Daniel Dakhno <dakhnod@gmail.com>
2024-03-28 21:07:05 +00:00
Daniel DakhnoandJosé Rebelo ec6fa23176 Device settings: simplified array conversion 2024-03-09 13:58:20 +00:00
Daniel DakhnoandJosé Rebelo f1968f4103 Device settings: removed menu entry 2024-03-09 13:58:20 +00:00
Daniel DakhnoandJosé Rebelo b30b9083d0 Device settings: use ArrayList instead of rigid int[] 2024-03-09 13:58:20 +00:00
Daniel DakhnoandJosé Rebelo 8e6571d354 Device settings: merged application and device settings 2024-03-09 13:58:20 +00:00
Daniel Dakhno afe3c1fd50 Testing: fixed unit tests 2024-03-05 00:11:32 +01:00
Daniel Dakhno ee1c3e4db9 Device connection: classify more states as reconnecting 2024-03-05 00:11:32 +01:00
Daniel Dakhno a75b3afc84 Code refactoring: introduced GBDevice.State.equalsOrHigherThan 2024-03-05 00:11:32 +01:00
Daniel Dakhno 7219bd377b Device connection: consider WAITING_FOR_SCAN as reconnecting state 2024-03-05 00:11:32 +01:00
Daniel Dakhno 07744331ac Device connection: removed duplicate strings entry 2024-03-05 00:11:32 +01:00
Daniel Dakhno b1b5eada68 Device connection: added Scan service channel 2024-03-05 00:11:32 +01:00
Daniel Dakhno 281a087550 Device connection: refactoring, string extraction 2024-03-05 00:11:32 +01:00
Daniel Dakhno d0f8eccd75 Device connection: removed references to ACTION_START 2024-03-05 00:11:32 +01:00
Daniel Dakhno 3ceba883dd Device connection: allow to disconnect from scanned devices 2024-03-05 00:11:32 +01:00
Daniel Dakhno 7816e131e9 Device connection: stop ScanService when quitting application 2024-03-05 00:11:32 +01:00
Daniel Dakhno f5213f39f7 Device connection: dont try to scan for BT classic devices 2024-03-05 00:11:32 +01:00
Daniel Dakhno 00c0a8e897 Device connection: added device scan reconnection logic 2024-03-05 00:11:32 +01:00
Daniel Dakhno 264b6470cd Revert "Device connection: added basic code for scan-reconnect"
This reverts commit adf55fea93.
2024-02-12 23:30:32 +01:00
Daniel Dakhno adf55fea93 Device connection: added basic code for scan-reconnect 2024-02-12 23:28:10 +01:00
Daniel DakhnoandJosé Rebelo eb0747b926 Device Management: centralized DeviceType resolution cache 2023-10-29 13:45:48 +00:00
Daniel DakhnoandJosé Rebelo c2a9f5d805 Device management: store deviceType name in DB 2023-10-27 19:14:49 +00:00
Daniel Dakhno 17a9aa3b20 VESC: added name matching for Coordinator#supports 2023-10-06 13:13:09 +02:00
Daniel DakhnoandJosé Rebelo ef1d38d9d3 Device Manager: replaced getSupportedType with supports method
Huami: introduced getSupportedDeviceName

Huami: implemented getSupportedDeviceName

Huami: fixed typo

Device manager: added error on empty getSupportedDeviceName and empty supports()

Device manager: migrated more devices to getSupportedDeviceName

Device manager: simplified default supports implementation

Device manager: added caching for getSupportedDeviceName pattern

Device manager: added caching DeviceType resolution

Device manager: changed pattern matching find()->matches()

Device manager: use Candidate as caching key

Device manager: more verbose variable initialization

Device manager: fixed typo

Device manager: removed device caching from DeviceHelper

Gradle: removed protoc binary

Device manager: moved more devices to getSupportedDeviceName

Device manager: reduced usages of String.format

Device Vesc: removed multiple device types

Device management: regex improvements

Makibes HR3: fixed device recognition regex
2023-10-05 20:34:53 +00:00
Daniel Dakhno b97b26ce3a Device manager: moved device icons and name to Coordinator 2023-09-28 00:11:02 +03:00
Daniel DakhnoandJosé Rebelo 8c48a49d3a Mi Band HRX: added DeviceType for Mi Band HRX
Mi Band HRX: changed DeviceType key for MIBAND_HRX

Mi Band HRX: added migration to MIBAND_HRX

Mi Band HRX: added devicetype string for MIBAND_HRX

Huami HRX: removed redundant null check

Huami HRX: removed redundant supports callback
2023-09-18 22:08:09 +00:00
Daniel DakhnoandJosé Rebelo e36bd2eae7 Core: replaced device initialization logic with class based decision
Core: cleaned up imports

Device management: try single-argument-constructor first

Device management: fixed wrong device support class

Device management: added missing initial flags for Mi band 2 HRX

Device management: removed unused import

Device management: removed unused import

Device management: improved exception handling

Device management: prevent constructors from being optimized out

Device management: added UnknownDeviceSupport
2023-08-26 08:14:06 +00:00
Daniel DakhnoandArjan Schrijver 73d67d4093 Fossil/Skagen Hybrids: Embed menu_structure in watchface apps (#3245)
This PR aims to optimize the method of synchronizing the menu_structure for the openSourceWatchface by making the menu_structure request from the watch obsolete.

Instead, when a new menu_structure is sent to GB via the Intent `nodomain.freeyourgadget.gadgetbridge.Q_SET_MENU_STRUCTURE`, GB remembers that JSON.

Next time a watchface is built, the JSON is embedded into that app package so the watch doesn't forget the structure.

This requires a full GB rebuild to work properky.

Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/3245
Co-authored-by: Daniel Dakhno <dakhnod@gmail.com>
Co-committed-by: Daniel Dakhno <dakhnod@gmail.com>
2023-08-19 20:48:53 +00:00
Daniel Dakhno fed5866f19 Binary sensor: fixed byte overflow bug 2022-12-27 19:45:44 +01:00
Daniel DakhnoandGitea ea851b312a Core: fixed typo 2022-10-15 21:57:22 +02:00
Daniel DakhnoandGitea ec161be66e Core: added device update reason DEVICE_STATE 2022-10-15 21:57:22 +02:00
Daniel DakhnoandGitea dfc1f164b4 Core: added subject to device update intent 2022-10-15 21:57:22 +02:00
Daniel Dakhno cdc60cec51 Flipper Zero: fetch firmware version from flipper 2022-09-20 15:55:36 +02:00
Daniel Dakhno c06e0156d2 Flipper Zero: switched to simple Protobuf message 2022-09-15 01:40:37 +02:00
Daniel Dakhno 858c53efb8 Utils: added simple Protobuf creator 2022-09-15 01:40:05 +02:00
Daniel Dakhno ead65ffd7d Core: added default true value to BLE reconnect to mirror actual behaviour 2022-09-11 01:49: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
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
Daniel Dakhnoandvanous b29a8cefd2 Binary sensor: initial support for devices using Binary Sensor Service 2022-08-09 18:58:18 +02:00
Daniel DakhnoandGitea 6625437a5f ControlCenter: fixed details visible on folders 2022-06-28 14:01:51 +02:00
Daniel DakhnoandGitea 62f77ef8d0 ControlCenter: added folders to ControlCenter 2022-06-28 14:01:51 +02:00
Daniel Dakhno 56e45eaa45 Merge remote-tracking branch 'origin/master' 2022-06-24 13:13:20 +02:00
Daniel Dakhno 45512efeb7 UM25: fix missing firmware version 2022-06-24 13:13:12 +02:00
Daniel Dakhno 93e05e8dd6 Fossil HR: fixed null music spec 2022-05-28 02:10:45 +02:00
Daniel Dakhno c31213c34d VESC: added battery indicator 2022-05-14 04:47:22 +02:00
Daniel Dakhno 367ad19205 UM25: optimized imports, added pref summary 2022-04-15 02:37:53 +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
Daniel Dakhno bba5452f57 QC35: fixed typo 2022-04-15 01:27:00 +02:00
Daniel Dakhno 9ab9186e58 UM25: added reset option to current accumulation 2022-04-15 01:21:26 +02: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
Daniel Dakhno 93fc2c3b61 VESC: fixed crash on loading saved integer 2022-02-14 19:12:44 +01:00
Daniel Dakhno 9e8b7373fa Fossil HR: allow for assign no function to a button 2022-02-06 15:59:27 +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
Daniel Dakhno 73ce323288 Fossil HR: improved DeviceApplicationsList handling 2022-01-11 13:13:15 +01:00
Daniel Dakhno fb3a858263 fixed testCases 2021-12-27 14:54:58 +01:00
Daniel Dakhno e889796671 added util method to Version 2021-12-26 17:58:47 +01:00
Daniel Dakhno cab9ab714a Fixed bug on Preference Screen start 2021-12-26 15:40:12 +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
Daniel Dakhno 2f217b077f Fossil HR: removed find-my-device with older firmwares 2021-12-19 12:56:47 +01:00
Daniel Dakhno ee9d1155ba Fossil HR: fixed on-device confirmation for older firmwares 2021-12-19 12:51:30 +01:00
Daniel Dakhno 45647ccbf7 Fossil HR: added timeout to on-device confirmation 2021-12-13 03:04:44 +01:00
Daniel DakhnoandArjan Schrijver cd183eb953 added custom widget apps to gadgetbridge 2021-11-13 10:10:38 +01:00
Daniel DakhnoandArjan Schrijver bc60b66abf added capability to push config via intents 2021-11-13 10:10:38 +01:00
Daniel Dakhno 1a892aa159 UM25: added some fields to UI 2021-10-03 02:43:42 +02:00
Daniel Dakhno f68582eb46 Fossil HR: fixed last notification widget 2021-05-22 23:32:36 +02:00
Daniel DakhnoandAndreas Shimokawa b4a115d2c3 UM25: fixed bonding style 2021-03-08 12:29:21 +01:00
Daniel DakhnoandAndreas Shimokawa b7b45e199d UM25: removed lambda expression 2021-03-08 12:29:21 +01:00
Daniel DakhnoandAndreas Shimokawa 6b4cec5996 UM25: fixed formatting 2021-03-08 12:29:21 +01:00
Daniel DakhnoandAndreas Shimokawa 0fecdf0e18 UM25: added base device support for UM25C voltage meter 2021-03-08 12:29:18 +01:00
Daniel Dakhno 1981998fc7 Fossil HR: splitted button config and menu config 2021-02-03 22:25:20 +01:00
Daniel Dakhno 24c2c99890 Fossil Classic: fix unknown wearing state 2021-02-01 17:22:57 +01:00
Daniel Dakhno f8a25ad18e Fossil Classic: allow synchronizing activity data 2021-02-01 17:13:34 +01:00
Daniel Dakhno 60aaccb15f Fossil HR: fixed bug with unknown data 2021-02-01 17:08:45 +01:00
Daniel Dakhno 1505c355ce Fossil HR: allow app management on watch from GB 2021-02-01 01:57:13 +01:00
Daniel Dakhno 9fe0b691a7 Fossil HR: removed toast 2021-01-30 23:36:18 +01:00
Daniel Dakhno b85c1a803b Fossil HR: enumerate apps on watch on every connect 2021-01-30 22:20:07 +01:00
Daniel Dakhno ec77345632 Fossil Hybrid: file handle can be passed to service as string 2021-01-30 21:10:36 +01:00
Daniel Dakhno 614d711226 Fossil Hybrid: file handle can be passed to service as string 2021-01-28 11:34:43 +01:00
Daniel Dakhno 3a4c5f6483 Fossil Hybrid: dont write buttons unauthenticated 2021-01-28 11:33:58 +01:00
Daniel Dakhno df2300777d Fossil Hybrid: avoid unnessecary widget rendering 2020-12-24 14:35:22 +01:00
Daniel Dakhno 55449c1d25 Fossil Hybrid: added fallback vibration to old Q's 2020-11-29 17:15:03 +01:00
Daniel Dakhno 66d3cdcc5c Merge remote-tracking branch 'origin/master' 2020-11-29 17:10:19 +01:00
Daniel Dakhno 996674836e Fossil Hybrid: added firmware upgrade to old Q's 2020-11-29 17:10:10 +01:00
Daniel Dakhno 7fe8a88ee7 Fossil Hybrid: keep widget values after widget reload 2020-11-26 21:12:56 +01:00
Daniel Dakhno 79939b7339 Fossil Hybrid: can now delete notifications from watch 2020-11-12 12:35:29 +01:00