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
José Rebelo
b8b8b5f681
Huami: Display unknown raw activity kind in the activity summary
2024-03-04 21:07:59 +00:00
Stefan Tomanek
e86912e681
Use TypeName for identifying non-LE device when pairing LE counterpart.
...
Previous changes deprecated the numeric Type property, making the
database query fail when pairing the BT-LE part of a Pebble device.
2024-02-27 20:40:54 +01:00
Arjan Schrijver
08a8b6a8fd
Fossil/Skagen Hybrids: Remove activity fetching toasts and add finished signal
2024-02-27 14:36:28 +01:00
José Rebelo
ab41adbc7f
Xiaomi: Fix sleep samples when sleep stages are not found
...
We can at least show light sleep now.
2024-02-25 22:53:15 +00:00
José Rebelo
dd952e335f
Xiaomi: Implement complex activity details header parsing
...
This should improve activity parsing across all devices, as we now take
the header into account, which indicates what groups are actually
present.
Thanks to @opcode for figuring out the header structure and providing
the ImHex patterns for the activity data.
2024-02-25 22:27:20 +00:00
José Rebelo
0b0aedfb52
Revert Xiaomi steps and stress parsing fixes
...
- This reverts commit 789292d318
.
- This reverts commit 641eb1bee7
.
Further changes are required
2024-02-25 21:08:44 +00:00
José Rebelo
3902db5abd
Huami: Keep track of last debug logs titmestamp
2024-02-25 13:25:12 +00:00
José Rebelo
58d4ebf509
Huami: Refactor activity data fetching
...
Activity data fetching on Huami devices was filled with duplicated code,
and the handleActivityFetchFinish was called from multiple places where
it did not make sense. This made us signal to the band that activity
fetch was finished when it sometimes was not, causing some race
condititions that would make activity fetch fail or get stuck.
This refactor defines a clear "processBufferedData" that is called
upstream, signaling to the fetch operation that we have received all
data and the buffer can be processed. All handling of metadata and ack
messages is also delegated to the upstream class.
2024-02-25 13:10:25 +00:00
José Rebelo
9b0229cdf0
Huami: Split fetch, init and update operations
2024-02-25 13:10:25 +00:00
José Rebelo
5e068ee4ca
Huami: Extract activity fetch data types to enum
2024-02-25 13:10:25 +00:00
José Rebelo
789292d318
Xiaomi: Fix stress parsing
2024-02-25 00:04:03 +00:00
José Rebelo
641eb1bee7
Xiaomi: Fix steps and stress parsing for some devices
2024-02-25 00:02:52 +00:00
Martin.JM
facf87fc59
Limit smart alarm interval to 255
2024-02-24 09:56:56 +01:00
Martin.JM
5968a04cf7
Change colors
2024-02-24 09:56:56 +01:00
Martin.JM
0eb2bf7dfa
Fix bugs, cleanup, test device
...
Implemented the TestDevice, which showed some bugs.
Solved these bugs and cleaned up a bit in the process.
2024-02-24 09:56:56 +01:00
Martin.JM
71ea39efde
[Huawei] Hookup smart wakeup interval and update Coordinators
2024-02-24 09:56:56 +01:00
Martin.JM
51024f7b5e
Add smart wakeup interval
2024-02-24 09:56:56 +01:00
Martin.JM
37b5d0404a
Update alarm unused and enabled states
...
- Set alarm as used when enabled in the list
- Set alarm as disabled when set as unused in the list
2024-02-24 09:56:56 +01:00
Arjan Schrijver
0383169767
Fossil/Skagen Hybrids: While syncing, mark device busy and show transfer notification
2024-02-23 20:59:01 +01:00
Arjan Schrijver
28e0914330
Fossil/Skagen Hybrids: Use steps instead of calories for activity intensity
2024-02-23 20:54:49 +01:00
Gordon Williams
dd0dfb23ac
Bangle.js: Ensure we request a higher MTU if it's been enabled in settings (otherwise Android just uses the default). Really improves communication speed.
2024-02-22 12:00:33 +00:00
Martin.JM
9a388ca386
Updated according to review
...
Thank you José Rebelo!
2024-02-18 20:54:59 +00:00
Martin.JM
c66051f580
Cleanup of Huawei weather implementation
2024-02-18 20:54:59 +00:00
Martin.JM
1c2516186d
Small cleanup
2024-02-18 20:54:59 +00:00
Martin.JM
5ebfe9b39f
Add weather settings to forecast
2024-02-18 20:54:59 +00:00
Martin.JM
b231104a88
Add moon phase support
2024-02-18 20:54:59 +00:00
Martin.JM
242f3c6dbc
Add unit support and some cleanup
2024-02-18 20:54:59 +00:00
Martin.JM
043f839a4d
Fix tomorrow appearing twice
2024-02-18 20:54:59 +00:00
Martin.JM
6a2186919c
Always initialize weather before sending
2024-02-18 20:54:59 +00:00
Martin.JM
4b70f3fcdb
Hookup Huawei GPS values
2024-02-18 20:54:59 +00:00
Vitaliy Tomin
d379b11535
Add HuaweiTLV put for double
2024-02-18 20:54:59 +00:00
Martin.JM
ee14b5d821
Small changes
2024-02-18 20:54:59 +00:00
Martin.JM
65aa5faec5
Implement Huawei weather icons
2024-02-18 20:54:59 +00:00
Martin.JM
f970b7482b
Set wind values
2024-02-18 20:54:59 +00:00
Vitaliy Tomin
287b720350
Send gps and time before forecast
2024-02-18 20:54:59 +00:00
Martin.JM
14eaba858c
Weather fix
2024-02-18 20:54:59 +00:00
Martin.JM
0b64408b33
Add outgoing parsing
2024-02-18 20:54:59 +00:00
Martin.JM
2b1c5b5819
Add weather forecast
2024-02-18 20:54:59 +00:00
Martin.JM
b2b176b65c
Add weather support for Huawei
2024-02-18 20:54:59 +00:00
Davis Mosenkovs
7a79a1d0f5
Add wake lock and wakeup for time sync
...
Wake lock with around 10 second timeout is a quick and dirty solution,
however as the time sync should happen once per several days the 10
second wake time should not be an issue.
2024-02-18 19:12:30 +00:00
Davis Mosenkovs
cc5078332b
TimeChangeReceiver: Ensure the alarm is set
...
Ensure TimeChangeReceiver alarm is scheduled when enabling
datetime_synconconnect and registering TimeChangeReceiver broadcast
receiver.
It is important to re-schedule the alarm after registering broadcast
receiver, because:
1. if broadcast receiver was unregistered while previous alarm arrived,
there is no alarm scheduled;
2. re-scheduling the alarm resets the periodic time sync timer when
first device is connected (which is desired).
It is important to re-schedule the alarm when datetime_synconconnect
gets enabled, because there might be no alarm scheduled.
Call onSetTime() when enabling datetime_synconconnect.
2024-02-18 19:12:30 +00:00
Davis Mosenkovs
31fc266f94
Periodically sync time on all connected devices
...
Sync time every 43 hours, 53 minutes and 23 seconds.
Interval is a bit smaller than 2 days.
Interval is a prime (in seconds) so time of sync will slide over time.
If next DST change is less than 48 hours in future, wait for it.
2024-02-18 19:12:30 +00:00
Martin.JM
22e51f841b
Add additional smart wakeup functionality in test device
...
Code by José Rebelo:
https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/3583#issuecomment-1571835
2024-02-18 19:01:19 +01:00
Martin.JM
275b662188
Always check smart wakeup if forced
2024-02-18 18:55:54 +01:00
Martin.JM
89b6ae9f24
Add more granular smart wakeup support
...
Specifically:
- Add position to smart wakeup support coordinator function
- Add interface to stop smart alarm checkbox from being changed
2024-02-18 17:24:29 +01:00
Martin.JM
01ef422812
Set alarm as used and enabled if time has changed
2024-02-18 16:33:50 +01:00
JdM
64c024a5ce
Added support for xiaomi redmi watch 3 ( #3582 )
...
Co-authored-by: JdM <julien@rmbi.ch>
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/3582
Co-authored-by: JdM <judemont@noreply.codeberg.org>
Co-committed-by: JdM <judemont@noreply.codeberg.org>
2024-02-18 13:55:14 +00:00
Arjan Schrijver
122ff5f7f4
Fossil/Skagen Hybrids: Fix crash on multi-byte unicode characters in menu
...
The FosslAppWriter was writing string length instead of the bytes length
into the wapp file, causing a crash when reading the file.
Fixes #3577
2024-02-17 21:25:25 +01:00
José Rebelo
ad256fade0
Test Device: Fix NPE when using the database
2024-02-16 23:09:46 +00:00
José Rebelo
a3bd7a297a
Test Device: Add fake features and data
2024-02-16 22:56:27 +00:00
Damien 'Psolyca' Gaignon
6a576202a9
[Huawei] Add Huawei Watch Fit gadget
2024-02-13 14:12:23 +01:00
Arjan Schrijver
d637b9263c
Fix linter errors
2024-02-13 10:54:12 +01:00
Damien 'Psolyca' Gaignon
874bb1a14e
[Huawei] Fix test
2024-02-13 00:18:48 +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
Andreas Shimokawa
8b9462f521
fix tests
2024-02-12 18:31:48 +01:00
Aleksandr Ivanov
2c316bfe9d
Pebble: fix of pairing issue with Pebble 2
2024-02-10 16:01:45 +00:00
José Rebelo
983b7352cb
Galaxy Buds2 Pro: Fix recognition of some versions
...
Not all earbuds use "Galaxy" in the name, apparently.
Fixes #3569
2024-02-10 12:46:55 +00:00
Damien 'Psolyca' Gaignon
88f3cc4fd0
[Huawei] Fix regression introduced with HiChainLite
2024-02-09 22:22:33 +01:00
Damien 'Psolyca' Gaignon
fc857b8adb
[Huawei] Fix attribut keyword
2024-02-09 12:03:04 +01:00
Damien 'Psolyca' Gaignon
21b97a9276
[Huawei] Fix BondParamsRequest stopChain
2024-02-09 12:03:03 +01:00
Damien 'Psolyca' Gaignon
510b8096ed
[Huawei] Fix transactions encryption
2024-02-09 12:03:02 +01:00
Damien 'Psolyca' Gaignon
d5cecc4a84
[Huawei] GT2 transaction crypted
2024-02-09 12:03:02 +01:00
Damien 'Psolyca' Gaignon
bb5fe00643
[Huawei] Change bond request behaviour
2024-02-09 12:03:02 +01:00
Damien 'Psolyca' Gaignon
05c11cbd14
[Huawei] Add HiChainLite firstKey handling
2024-02-09 12:03:01 +01:00
Damien 'Psolyca' Gaignon
270212a771
[Huawei] Rename authMode to deviceSupportType
2024-02-09 12:03:01 +01:00
Damien 'Psolyca' Gaignon
2880297c51
[Huawei] Fix pin code encoding
2024-02-09 12:02:53 +01:00
Arjan Schrijver
8aaa766dcd
Fix crash when receiving empty music state
2024-02-04 20:35:40 +01:00
José Rebelo
145c2b8c6c
Zepp OS: Recognize devices with a dash before mac address suffix
2024-02-02 20:58:00 +00:00
José Rebelo
944e0d92a7
Zepp OS: Fix AGPS uploads
...
Regression introduced by 34fd18885a
- UIHH upload is needed for AGPS
updates on older devices.
2024-02-02 20:51:06 +00:00
Damien 'Psolyca' Gaignon
2a377ba5ab
[Huawei] Change bonding style for all BR gadgets
2024-02-01 22:14:45 +01:00
José Rebelo
3e08a754e0
Xiaomi: Fix indoor cycling recognition
2024-02-01 20:02:31 +00:00
Victor Kareh
b647631c07
pinetime: Fix weather forecast write
...
Fixes a typo in the weather forecast characteristic writer that causes
Gadgetbridge to send the current weather twice rather than sending the
forecast.
2024-02-01 18:59:06 +00:00
José Rebelo
dbfb8e5c38
Zepp OS: Improve logging
...
- Do not log characteristic changes handled by parent class
- Log discovered service names
- Request and log supported config groups
2024-02-01 18:48:15 +00:00
José Rebelo
aa4a7912ef
Zepp OS: Match devices by exact bluetooth name
...
This attemts to reduce false positives, especially for devices that
present as two bluetooth devices such as the GTR 4.
2024-02-01 18:47:36 +00:00
José Rebelo
34fd18885a
Zepp OS: Refactor firmware uploads
...
Zepp OS 3 firmware upgrades are big (200MB+). Gadgetbridge was crashing,
since the entire firmware file would be pulled into memory.
This commit unifies all the logic for Zepp OS firmware handling.
However, since the needed refactor was big, this commit duplicates some
of the code from Huami classes, namely:
- ZeppOsFirmwareUpdateOperation clones UpdateFirmwareOperation2020
- ZeppOsFwInstallHandler clones AbstractMiBandFWInstallHandler
This avoids changes to older device logic and introducing regressions.
Lost functionality:
- Repackaging firmwares as UIHH (does not seem to be needed, and was not
used anyway). Code can be recovered from this commit if needed in the
future
- Whitelisted firmwares by checksum (we do not have a lot of them at
this point anyway)
Other misc changes:
- Rename ZipFile to GBZipFile not to clash with the java class
Tested by updating the Amazfit GTR 4 to Zepp OS 3.
2024-02-01 18:47:28 +00:00
Martin.JM
4b38a67a58
Fix Huawei exceptions related to early packets
...
Also adds more robust tag checks for Huawei packets
2024-01-30 12:15:46 +01:00
José Rebelo
773132c4e1
Make all Zepp OS classes explicit
...
There are still some actual "Huami 2021" classes that are used in
non-ZeppOS devices, but this refactor improves the distinction.
2024-01-29 23:30:28 +00:00
Damien 'Psolyca' Gaignon
86461ada1a
[Huawei] Add new Crypto and authMode
2024-01-29 21:51:45 +01:00
Damien 'Psolyca' Gaignon
f759072a7c
[Huawei] Add PBKDF2 crypto
2024-01-29 21:34:08 +01:00
Damien 'Psolyca' Gaignon
2b5a49641a
[Huawei] Fix clientNonce for HiChainLite
2024-01-29 21:21:20 +01:00
José Rebelo
c472f0ab9a
Redmi Watch 2: Experimental support
2024-01-29 18:14:34 +00:00
opcode
cf0e8be816
Xiaomi: Further sleep parsing fix
2024-01-28 21:01:20 +00:00
José Rebelo
b0ff9eae88
MusicManager: Fix NPE when music not playing
2024-01-28 20:26:35 +00:00
Damien 'Psolyca' Gaignon
a53d59f907
Add AW for bond request
2024-01-28 20:46:47 +01:00
Damien 'Psolyca' Gaignon
b860ab116f
Add uncrypted transactions for TalkBand 6
2024-01-28 20:46:47 +01:00
Damien 'Psolyca' Gaignon
2a41b77ffc
Add uncrypted transactions for GT3
2024-01-28 20:46:46 +01:00
Damien 'Psolyca' Gaignon
a64317fe7a
Add uncrypted transactions for GT2
2024-01-28 20:46:46 +01:00
Damien 'Psolyca' Gaignon
e974d00104
Set transaction encryption to false
2024-01-28 20:46:45 +01:00
Damien 'Psolyca' Gaignon
0ed9e5b1a8
Fix normal mode connection
2024-01-28 20:46:45 +01:00
Damien 'Psolyca' Gaignon
0e5545191d
Add Honor Magic Watch 2
2024-01-28 20:46:27 +01:00
José Rebelo
5999eb01d0
Nothing CMF Watch Pro: Initial support
2024-01-28 18:46:13 +00:00
Denis Pitzalis
207a2a9b01
initial support for sony WI-SP600N ( #3522 )
...
Initial support for sony wi-sp600n reported working . minor difference with the inspiring wf-sp800n
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/3522
Co-authored-by: Denis Pitzalis <denics@free.fr>
Co-committed-by: Denis Pitzalis <denics@free.fr>
2024-01-27 23:21:11 +00:00
Aleksandr Ivanov
139e9cfb14
Pebble: fix of app configuration webview
2024-01-28 01:54:12 +03:00
opcode
4dbe5744da
Xiaomi: Fix parsing sleep headers
2024-01-26 21:49:40 +01:00
MrYoranimo
8a7de15841
BtLEQueue: update device state on main looper
...
If the device connection state is updated from two threads simultaneously
(as in, from the main looper and from the thread that handles
BluetoothDevice.connectGatt), a second update may get overridden by the
first update if the broadcasts are handled out-of-order by the
LocalBroadcastManager.
By updating the device state through a handler on the main looper, the
broadcasts are sent in order as they are processed from the looper's
queue.
This may be a potential solve for issue #3524 .
2024-01-21 01:56:34 +01:00
José Rebelo
7955bdfb6f
Xiaomi: Improve sleep parsing
...
- Some devices send a random int 0, which would prevent sleep stage
parsing
- Some devices send the details as a file of type summary, but same
structure
- It is still not stable for all devices
Thanks to @opcode for the parsing logic
2024-01-20 23:16:36 +00:00
José Rebelo
6b2cb05027
Xiaomi: Fetch manual samples
2024-01-18 21:06:40 +00:00
José Rebelo
94c763ef99
Zepp OS: Ensure all communication respects service encryption flag
...
Not all communication was moved to services, and some might not be
respecting the encryption flag sent during initialization implemented
in 3a2b02df2
. Some services are encrypted or not across different
watches - see #3308 .
2024-01-17 20:43:17 +00:00
José Rebelo
0e56af4ce9
Xiaomi Watch S3: Experimental support
2024-01-17 20:29:06 +00:00
MrYoranimo
b395e889c3
Xiaomi: temporary fix for database errors when reconnecting
2024-01-17 20:16:38 +00:00
MrYoranimo
7f68dc5449
Set default year for date-of-birth to 1970
...
Prevent undefined behavior on devices that do not have a range check on
the year from the DOB before calculating someone's age
2024-01-17 20:16:38 +00:00
MrYoranimo
1185699c56
BtBRQueue: use Handler(Thread) for sending messages and connecting socket
2024-01-17 20:16:38 +00:00
MrYoranimo
ae97e961b9
Xiaomi: add potential service and characteristic UUIDs
2024-01-17 20:16:38 +00:00
MrYoranimo
339859c829
Xiaomi: change BLE max chunk size with MTU changes
2024-01-17 20:16:38 +00:00
MrYoranimo
53a7cc5b30
Xiaomi: run data upload service finalization on respective queue
2024-01-17 20:16:38 +00:00
MrYoranimo
d217a0b15f
Xiaomi: fix only short-bytes from int nonce being used during encryption
2024-01-17 20:16:38 +00:00
MrYoranimo
b9cbd14ffe
Xiaomi: fix logic for ability to select widget workout type
2024-01-17 20:16:38 +00:00
MrYoranimo
b31d98c7a0
Xiaomi: add support for data uploading over SPP
2024-01-17 20:16:38 +00:00
MrYoranimo
e5c2bd51c2
Xiaomi: refactor XiaomiCharacteristic to use callback per message
2024-01-17 20:16:38 +00:00
MrYoranimo
592a52054f
Xiaomi: request battery level and charging state on an interval
2024-01-17 20:16:38 +00:00
MrYoranimo
429d717630
Xiaomi: recognize a full battery as a valid charger state
2024-01-17 20:16:38 +00:00
MrYoranimo
2ef461ab90
Add header to device-specific activity data settings
2024-01-17 20:16:38 +00:00
MrYoranimo
399248e22c
Xiaomi: allow forcing the connection type from connection settings
2024-01-17 20:16:38 +00:00
MrYoranimo
2812ad1429
Xiaomi Watch S1 Active: disable find device and override connection type
2024-01-17 20:16:38 +00:00
MrYoranimo
815582354d
Redmi Watch 3 Active: override connection type
2024-01-17 20:16:38 +00:00
MrYoranimo
c9d880456a
Xiaomi Smart Band 8 Pro: add experimental support
2024-01-17 20:16:38 +00:00
MrYoranimo
1d1ef9fba6
Xiaomi Watch S1: add experimental support
2024-01-17 20:16:38 +00:00
MrYoranimo
04460fc3f4
Xiaomi Watch S1 Pro: add experimental support
2024-01-17 20:16:38 +00:00
MrYoranimo
ce179a29ae
Xiaomi: introduce XiaomiSppSupport
2024-01-17 20:16:38 +00:00
MrYoranimo
ac1991104b
BtLEQueue: add null check in onMtuChanged for mWaitForActionResultLatch
2024-01-17 20:16:38 +00:00
MrYoranimo
98e8ec2329
Xiaomi: Introduce XiaomiConnectionSupport
...
Co-Authored-By: José Rebelo <joserebelo@outlook.com>
2024-01-17 20:16:38 +00:00
José Rebelo
8574a41fe7
Xiaomi: Fix sleep sometimes extending past the wakeup time
2024-01-17 20:13:07 +00:00
José Rebelo
4231e97cff
Sony Headphones: Allow choice of protocol version
2024-01-17 18:48:10 +00:00
Oleg Afanasyev
414cf5e472
Sport Activity Summary: fix group order instability
...
Previously group order was determined on the fly by available entries order or appearance.
This commit changes it to use group definition order.
2024-01-17 18:16:01 +00:00
José Rebelo
9095ffad8b
Mijia MHO-C303: Initial support
2024-01-17 17:55:15 +00:00
Martin.JM
e6aa0afa7e
Fix huawei debug request
2024-01-17 14:55:13 +01:00
José Rebelo
3b8428e795
Redmi Smart Band Pro: Fix password digits
2024-01-16 20:52:10 +00:00
José Rebelo
3a2b02df2a
Zepp OS: Query supported services and encryption flag
2024-01-15 21:27:01 +00:00
foxstidious
ba59c62fa4
Add support for snooze alarm on CasioGBX100 devices
2024-01-14 20:29:30 +00:00
José Rebelo
0b7c53698a
Xiaomi: Fix sleep stages extending past wakeup time
2024-01-14 17:02:42 +00:00
opcode
f5cf21bf05
Xiaomi: Parse SleepSummary
2024-01-14 17:02:42 +00:00
opcode
e06b2e1f95
Xiaomi: Implement sleep stage parsing
...
This allows sleep stage detection to work by parsing
some of the data sent in SleepDetails.
It's still missing parsing the summary contained inside SleepDetails.
and decoding the large amount of other mostly unknown data.
2024-01-14 17:02:42 +00:00
Damien 'Psolyca' Gaignon
1e1f0014c7
Huawei : Change method to get device name round 2
2024-01-13 17:27:09 +01:00
José Rebelo
8d7a6be7eb
Xiaomi: Enable activity fetching for all devices
2024-01-10 22:39:04 +00:00
José Rebelo
823bd829ce
Zepp OS: Add some missing control center items
2024-01-10 19:47:25 +00:00
Martin.JM
704875c3c2
Update license headers
2024-01-10 18:25:20 +00:00
FYG_license_bot_ignore_me
4c7476845b
Update license headers and CONTRIBUTORS file
2024-01-10 19:01:48 +01:00
José Rebelo
d63db41f90
Huami: Display proper error when battery too low to install firmware
2024-01-09 19:12:03 +00:00
José Rebelo
aeec68aeef
Huami: Fetch SpO2 on devices that support it
2024-01-09 17:43:43 +00:00
opcode
372aa88e6e
Xiaomi: Weather fixes and Implement wind and AQI
...
Many fields were incorrectly being sent as uint32 instead of sint32. This caused issues with forecast icons.
2024-01-09 17:28:50 +00:00
Damien 'Psolyca' Gaignon
cb7121a32e
Huawei : Change method to get device name
2024-01-09 17:27:37 +00:00
José Rebelo
9bfe3dcd5f
Huawei: Fix tests
...
- Allow the calendar to be passed as parameter for tests
- Disable the setWearMessage test, for now, broken since 5b0736b751
2024-01-09 17:27:18 +00:00
Damien 'Psolyca' Gaignon
e489d0d811
Fix string comparison
2024-01-08 21:29:57 +01:00
Davis Mosenkovs
5bcebe9590
Disconnect all devices that are not NOT_CONNECTED
...
Disconnect devices in all states except GBDevice.State.NOT_CONNECTED.
This should fix devices getting stuck in GBDevice.State.CONNECTING state
when Bluetooth is switched off.
2024-01-08 17:11:33 +00:00
Davis Mosenkovs
9e10da062e
Add "Reconnect only to connected devices" setting
...
* Add general_reconnectonlytoconnected setting.
* Replace last_device_address shared prefs string with
last_device_addresses shared prefs string set.
Bluetooth address of a device is added to last_device_addresses when
connecting to the device.
Bluetooth address of a device is removed from last_device_addresses only
when deleting the device or explicitly disconnecting from the device
(e.g. by selecting "Disconnect" in the device tile menu).
* Adjust ExternalPebbleJSActivity to better support multiple connected
devices.
2024-01-08 17:11:33 +00:00
Davis Mosenkovs
904a7807a8
Automatically connect to all devices
...
Automatically connect to all devices instead of connecting only to the
last connected device.
2024-01-08 17:11:33 +00:00
José Rebelo
705361ae3a
Huawei: Fix linter
...
Math.multiplyExact is only available on SDK24 onward. We do not expect
an overflow to occur here, since the hashLength is fixed and the outputLength
is small (32 on all current calls).
2024-01-08 13:43:26 +00:00
Damien 'Psolyca' Gaignon
0c22ecdd51
Huawei: Add initial support for Huawei-Honor
2024-01-07 23:18:08 +01:00
José Rebelo
ab894ae433
Extract hardcoded activity summary entries to constants
2024-01-06 13:54:06 +00:00
José Rebelo
4e54f8137d
Xiaomi: Improve walking v2 parsing
2024-01-05 21:29:12 +00:00
José Rebelo
a61f7d70d5
Xiaomi: Parse indoor cycling
2024-01-05 21:25:17 +00:00
José Rebelo
dd1843505e
Xiaomi: Fix extreme hr zone parsing
2024-01-05 21:07:22 +00:00
José Rebelo
f7258034cc
Xiaomi: Refactor workout summary parsing
2024-01-05 21:04:19 +00:00
José Rebelo
05d8f99312
Nothing Ear (Stick): Initial support
...
- Refactor common coordinator logic to AbstractEarCoordinator
- Increment message counter on the stick
- Make audio modes translatable
2024-01-05 09:35:03 +00:00
FintasticMan
ecd13b4d8e
Update to new simple weather spec
2024-01-04 20:34:21 +00:00
FintasticMan
655d202512
Add simple weather condition
...
Co-authored-by: Victor Kareh <vkareh@redhat.com>
2024-01-04 20:34:21 +00:00
FintasticMan
127867441a
Add support for InfiniTime's new simple weather
...
Co-authored-by: Jean-François Milants <jf@codingfield.com>
2024-01-04 20:34:21 +00:00
José Rebelo
4d5ce069aa
Nothing Ear (2): Initial support
2024-01-04 19:15:07 +00:00
José Rebelo
932ec8336c
Xiaomi: Fix persisting unknown workouts
2024-01-03 21:37:27 +00:00
José Rebelo
951d8f25b7
Xiaomi: Add indoor cycling
2024-01-03 21:35:18 +00:00
Jean-François Milants
73a3a4b603
Fix DFU MTU value for PineTime
...
Explicitely disable the request MTU feature from the NRF DFU library to ensure that it'll send 20 bytes packets (instead of 253B, which will crash InfiniTime).
2024-01-03 20:42:22 +00:00
Roberto P. Rubio
6cc57a15f5
Adds a specific Notifications Channel to Connection Status Notifications
2024-01-01 19:30:42 +00:00
José Rebelo
fa6489b300
Redmi Smart Band Pro: Experimental support
2024-01-01 12:18:36 +00:00
José Rebelo
70e1d852ba
Xiaomi: Fix crash when parsing unknown workout summary
2023-12-30 18:37:22 +00:00
José Rebelo
1907912bd2
Xiaomi: Fix outdoor walking parsing on some watches
2023-12-29 19:54:43 +00:00
José Rebelo
e14b2fc382
Pixoo: Enable flashing
2023-12-26 22:12:22 +00:00
José Rebelo
c9fec4e33a
Xiaomi: Identify strength training, elliptical and outdoor running
2023-12-26 22:07:35 +00:00
José Rebelo
aa7c2b1731
Xiaomi: Improve workout summary parsing
...
Outdoor walking on the Mi Band 8, but does not seem to match the summary
from the Mi Band 7 Pro.
2023-12-26 22:02:43 +00:00
Andreas Shimokawa
177fa56bb9
Pixoo: Quick hack to "install" any image on the pixoo
2023-12-26 20:38:13 +01:00
José Rebelo
b77ba8b74c
Pebble: Attempt to fix app configuration webview
...
See #3373 and possibly #3424
2023-12-26 16:48:59 +00:00
Andreas Shimokawa
f4d7a6b490
Pixoo: implement sending bitmaps
...
Not really used right not - mapped to "test new functionality"
2023-12-26 01:14:16 +01:00
José Rebelo
09fbc2665b
Redmi Watch 2 Lite: Experimental support
2023-12-24 16:38:11 +00:00
José Rebelo
1cfd00c924
Pixoo: Add setting to disable notifications
2023-12-23 21:51:54 +00:00
José Rebelo
4a7a201971
Pixoo: Support custom device name
2023-12-23 21:27:57 +00:00
Arjan Schrijver
7aeb0dd2ef
Fossil/Skagen Hybrids: Update navigationApp to 1.1
...
Changes:
- Support locking (keep visible and let hands display time)
- Support merge navigation instruction
- Support wrist flick gesture to move hands
- Support GB-configurable foreground and vibration behaviour
2023-12-23 22:05:51 +01:00
José Rebelo
5ffed2aa62
Xiaomi: Fix crash if device does not provide full stress and spo2 data
2023-12-23 14:08:39 +00:00
José Rebelo
a62ff4eabb
Xiaomi: Improve activity details parsing on some devices
2023-12-22 22:44:30 +00:00
José Rebelo
71b55902d0
Mi Band 7 Pro: Disable PAI
...
Reported not supported on matrix.
2023-12-22 22:42:27 +00:00
José Rebelo
fb803cbdda
Xiaomi: Enable REM sleep
2023-12-22 22:21:51 +00:00
José Rebelo
b79f774e3e
Xiaomi: Add debug function to parse all activity files from storage
2023-12-22 22:21:51 +00:00
José Rebelo
09c33b3541
Xiaomi: Persist and overlay sleep stages
2023-12-22 22:21:51 +00:00
José Rebelo
82863ff305
Xiaomi: Add sleep stages parser
...
From Alice
2023-12-22 19:19:56 +00:00
José Rebelo
b535784117
Mijia LYWSD03MMC: Initial support
...
Same protocol as LYWSD02, but does not support setting the time.
2023-12-22 12:35:35 +00:00
José Rebelo
149b6236a0
Mijia LYWSD: Make support class generic
2023-12-22 12:26:15 +00:00
Arjan Schrijver
4c0750e75a
Add missing navigation actions to GMaps handler
2023-12-21 11:16:23 +01:00
LuK1337
0ca35ad935
Xiaomi: Handle find phone messages without system
properly
...
After find phone is stopped, watch sends a `Command` message back
without `system` set, and because of missing hasSystem() check, we'd
wrongly go to condition that sets findPhoneEvent.event to START.
2023-12-20 19:32:17 +00:00
José Rebelo
cb66cd742a
Xiaomi: Enable activity sync on debug and nightly builds
2023-12-20 19:09:49 +00:00
Andreas Shimokawa
81c9aa5faf
Pixoo: support "clap hands to turn off screen" and "sleep after silence" settings
...
Also fix crc calculation :P
2023-12-19 21:08:25 +01:00
Andreas Shimokawa
198800e087
Pixoo: Decode alarms from device, support sending alarms
...
This is probably not quite right yet.
Also we need to properly chunk incoming protocol messages before decoding them
2023-12-19 10:58:49 +01:00
Andreas Shimokawa
ea0817f7b6
Use TextUtils.join intead of String.join, to make at least the linter happy
...
It is not clear to me if this would get desugarized anyway, but linter says needs API 26
2023-12-16 19:37:40 +01:00
José Rebelo
48e1bc1a8a
ColaCao 2021 / 2023: Initial support
...
Reports in #3455 and #2955 mention that everything works, except HR,
which crashes the devices (they do not have an HR sensor), so we just
disable HR support.
2023-12-14 21:53:30 +00:00