Daniel Dakhno
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
~noodlez1232
bf762a25a5
Cleanup and update AsteroidOS
...
1. Added icons to the notifications
2. Cleaned up a lot of the DeviceCoordinator code (Since a lot of them
have default implementations now)
2024-03-28 12:30:20 -07:00
Gordon Williams
1165a5d03c
Revert "Bangle.js: add support for SMS replies" - not needed as per #3654
...
This reverts commit 323f8028e0
.
2024-03-28 08:45:14 +00:00
Gordon Williams
323f8028e0
Bangle.js: add support for SMS replies
2024-03-28 08:31:07 +00:00
Gordon Williams
665656ddc0
Bangle.js: Fix message reply (and add .reply in notify if message supports reply)
...
NotificationListener now stores the handle ID in wearableAction.handle rather than hard-coding the calculation
Should fix ZeppOS too which was copy&paste from Bangle.js
2024-03-27 10:50:50 +00:00
Misaka 0x4e21
d68cb8c743
Huawei: Fix cycling workout type
...
Cycling workout type is actually 3 instead of 5.
2024-03-26 19:35:53 +08:00
g_p
7cb7c0ea8a
Nothing CMF Watch Pro: Add weather support
...
This patch adds support for current weather, and next 6 days' weather. Condition mapping added to align with the available icons on the watch.
It also transmits the hourly condition and temperature for the coming 24 hours as part of the update.
Tested on CMF Nothing Watch Pro firmware 11.0.0.50 with weather data cooming from Breezy Weather (using Accuweather)
For current day:
- Weather symbol shows
- Name of current location shows (long names scroll)
- Current temperature shows
- Written condition shows (e.g. "Cloudy")
- Min/max temperatures show
- Air quality indicator shows
For upcoming days:
- Weather symbol shows
- Min/max temperatures show
- Name of day shows (patch doesn't touch this)
Nothing CMF Watch Pro: Use putShort() for air quality indicator; fix max location length
- Using putShort() as suggested from code review - tested to give same result
- Reduced max location length to 16 bytes, as 32 was not working
Nothing CMF Watch Pro: Better handle limited data from weather providers
- Check max length of daily and hourly datasets
- Populate with dummy data if insufficient data available
- Use null as the weather condition in any situation where no data available
Nothing CMF Watch Pro: If hourly weather data is missing, use current data
This should create a better fallback behaviour if a weather source is lacking hour-by-hour data.
Assuming the current data will apply in the next hour is less messy than showing placeholder (inaccurate) figures.
Nothing CMF Watch Pro: Allow location names of up to 30 characters, improve string processing
2024-03-25 22:45:36 +00:00
José Rebelo
1e2a561dfd
Bangle.js: Add screenshot support
2024-03-25 20:38:37 +00:00
José Rebelo
705651e5f6
BondingUtil: Fix linter
...
The code was valid, but gradle lint will not realize that the API check
is performed, so it would fail. Inline the condition to fix this.
2024-03-25 20:38:18 +00:00
José Rebelo
852893408f
Ask for companion device during pairing
2024-03-25 20:31:33 +00:00
José Rebelo
8085eb6ec3
Discover bonded devices by default
...
A lof of devices will simply work anyway even if already paired in
Android bluetooth settings. Discover them by default, but warn the user
if the device is not known to pair correctly if already paired in Android
settings. Allows this warning to be disabled to known working devices.
2024-03-25 20:31:33 +00:00
Ganblejs
f8e15068ea
Bangle.js: add save file to android functionality
...
Bangle.js:file handling LOG.warn -> info
Bangle.js: sync file can't escape device directory
Naïve solution. I wanted to use `Path.normalize()` but Android Studio
said it could not be used from the static context. This does not attempt
to normalize the path, but just remove the special names `..\` and `.\`.
Bangle.js:simpler hindering of escaping device dir
2024-03-25 17:04:21 +00:00
Misaka 0x4e21
cef277261a
[Huawei] Support workout type of cycling
...
Add support for workout type of (outdoor) cycling, which is 5 on the device.
2024-03-25 23:28:53 +08:00
Andreas Shimokawa
7fe619c976
BLEScanService: Allow supported ScanSettings on Android API level 23
2024-03-25 10:34:44 +01:00
José Rebelo
435b4bec60
BLEScanService: Fix linter
2024-03-25 09:20:51 +00:00
g_p
0becaa4334
Nothing CMF Watch Pro: Fix music playback status
...
These two values were swapped, meaning a double press of play/pause was needed to change state.
This also fixes the wrong play/pause button state showing during playback.
Tested on firmware 11.0.0.50
2024-03-24 20:15:56 +00:00
Damien 'Psolyca' Gaignon
731ca67dcb
[Huawei] Fix GT3(Pro) encrypted transaction
2024-03-23 21:50:09 +01:00
Damien 'Psolyca' Gaignon
78ee68f426
[Huawei] Fix MediumToStrengthThreshold request
2024-03-23 21:27:47 +01:00
Damien 'Psolyca' Gaignon
df3273be7c
[Huawei] Fix SendExtendedAccountToDevice tag 0x01
2024-03-23 18:52:50 +01:00
Damien 'Psolyca' Gaignon
3f7a7304bb
[Huawei] Change display of command IDs to hex
2024-03-23 18:21:33 +01:00
Damien 'Psolyca' Gaignon
1392f24f4c
[Huawei] Add Rotate Cycle Info into dynamic service
2024-03-23 18:09:04 +01:00
Gordon Williams
8d43624a9a
Bangle.js: filter calendar events to try and remove :~:~:~:~:~ lines for google meet, double newlines, and HTML
2024-03-22 11:43:30 +00:00
Ganblejs
de1faf6f00
Bangle.js:actTrk:replace RuntimeException with LOG
2024-03-21 23:28:29 +00:00
Ganblejs
ac4273fc1b
Bangle.js:actTrk:dont apnd device mac str to files
2024-03-21 23:28:29 +00:00
Ganblejs
5c183da78c
Bangle.js:actTrk: store files in device subfolder
2024-03-21 23:28:29 +00:00
Ganblejs
5540dc18a4
Bangle.js:actTrk: use last 4 chars of mac in names
...
... of files
2024-03-21 23:28:29 +00:00
Ganblejs
2803c62a7c
Bangle.js:actTrk: add first timestamp to gpx name
2024-03-21 23:28:29 +00:00
Ganblejs
cd2535f49a
Bangle.js:actTrk: fix activity point times
2024-03-21 23:28:29 +00:00
Ganblejs
f0826286dc
Bangle.js:actTrk:add error msg re get file dir
2024-03-21 23:28:29 +00:00
Ganblejs
0ac6da3903
Bangle.js:ActTrk: fix requestTrackObj can be null
2024-03-21 23:28:29 +00:00
Ganblejs
9309ac8d38
Bangle.js:actTrk: comment out LAPS summary info
2024-03-21 23:28:29 +00:00
Ganblejs
1e2ea97391
Bangle.js:actTrk: curly brace to scope cases
2024-03-21 23:28:29 +00:00
Ganblejs
571410ff4b
Bangle.js:actTrk: don't throw RuntimeException
2024-03-21 23:28:29 +00:00
Ganblejs
f3f9a75633
Bangle.js:actTrk: dataflow tweaks
2024-03-21 23:28:29 +00:00
Ganblejs
d2e61c5fe8
Bangle.js:actTrk: move tracksList inside class
2024-03-21 23:28:29 +00:00
Ganblejs
1660f4b7fa
Bangle.js:actTrk: move package count inside class
2024-03-21 23:28:29 +00:00
Ganblejs
6eb97eeb15
Bangle.js:actTrk: see dataTypes as bitmask
2024-03-21 23:28:29 +00:00
Ganblejs
d94ac25cd1
Bangle.js:actTrk:refactor compileDateStringFromCal
2024-03-21 23:28:29 +00:00
Ganblejs
cd8fad29b1
Bangle.js:actTrk: reference ActivitySummaryEntries
2024-03-21 23:28:29 +00:00
Ganblejs
8715cc7e81
Bangle.js:actTrk:dont extend BangleJSDeviceSupport
2024-03-21 23:28:29 +00:00
Ganblejs
7182f4be67
Bangle.js:actTrk:cmnt out some faulty summary data
2024-03-21 23:28:29 +00:00
Ganblejs
35021f28fa
Bangle.js:actTrk: fix 'Reset fetch date' function
2024-03-21 23:28:29 +00:00
Ganblejs
c2a4eed13a
Bangle.js:actTrk: pckts out of order->stop timeout
2024-03-21 23:28:29 +00:00
Ganblejs
cd9fdca397
Bangle.js:actTrk: cmt re send "stop" on interrupt
2024-03-21 23:28:29 +00:00
Ganblejs
21882042c4
Bangle.js:actTrk: fix fastest/slowest pace
2024-03-21 23:28:29 +00:00
Ganblejs
9f2df0262f
Bangle.js:actTrk: refactor LOG.info to debug/error
2024-03-21 23:28:29 +00:00
Ganblejs
8060911d42
Bangle.js:actTrk: move private methods down
2024-03-21 23:28:29 +00:00
Ganblejs
70a7d8f8da
Bangle.js:actTrk: add private modifier
2024-03-21 23:28:29 +00:00
Ganblejs
546102f01f
Bangle.js:actTrk: accommodate "erase" keyword
2024-03-21 23:28:29 +00:00
Ganblejs
e7f8c9e7a6
Bangle.js:actTrk:upd cmt re fetch all then parse
2024-03-21 23:28:29 +00:00
Ganblejs
7734fbe4b0
Revert "Bangle.js:actTrk:fetch all logs, then parse them"
...
This reverts commit 6b941f9277f70d642cfaa430d3d917ba6b559d17.
2024-03-21 23:28:29 +00:00
Ganblejs
6936053734
Revert "Bangle.js:actTrk: try fix parsing after interrupt"
...
This reverts commit 638f12e96bdb44445902b3bbd477c742e1d88299.
2024-03-21 23:28:29 +00:00
Ganblejs
d93ef074c3
Bangle.js:actTrk: try fix parsing after interrupt
2024-03-21 23:28:29 +00:00
Ganblejs
46be3c47f9
Bangle.js:actTrk:fetch all logs, then parse them
2024-03-21 23:28:29 +00:00
Ganblejs
d8172295cb
Bangle.js:actTrk: note on postponing parsing
2024-03-21 23:28:29 +00:00
Ganblejs
ddca4ad90d
Bangle.js:actTrk: remove unrelated comments
2024-03-21 23:28:29 +00:00
Ganblejs
a077e867b4
Bangle.js:actTrk:rm newline on latest fetch string
2024-03-21 23:28:29 +00:00
Ganblejs
6ce8f336b4
Bangle.js:actTrk: break out file operations
2024-03-21 23:28:29 +00:00
Ganblejs
f1053c5b80
Bangle.js:actTrk: add private modifier
2024-03-21 23:28:29 +00:00
Ganblejs
f97dda37c7
Bangle.js:actTrk: simplify timeout
2024-03-21 23:28:29 +00:00
Ganblejs
c250a70196
Bangle.js:actTrk: remove public modifier
2024-03-21 23:28:29 +00:00
Ganblejs
0c10edb9f2
Bangle.js:actTrk: small refactor of return
2024-03-21 23:28:29 +00:00
Ganblejs
49bd363d0f
Bangle.js:actTrk: no timeout during data-parsing
2024-03-21 23:28:29 +00:00
Ganblejs
8ab77f148f
Bangle.js:actTrk: speed determines activity type
2024-03-21 23:28:29 +00:00
Ganblejs
466349fbe7
Bangle.js:actTrk: refactor a name
2024-03-21 23:28:29 +00:00
Ganblejs
2683fd9495
Bangle.js:actTrk:add LOG.warn re interrupted fetch
2024-03-21 23:28:29 +00:00
Ganblejs
6a9c037926
Bangle.js:actTrk: notify on fetch interrupted
2024-03-21 23:28:29 +00:00
Ganblejs
af740d4dc3
Bangle.js:actTrk: fix timeout for interruptions
2024-03-21 23:28:29 +00:00
Ganblejs
4f04b61dbd
Bangle.js:actTrk:unsuccessful try at fetch timeout
2024-03-21 23:28:29 +00:00
Ganblejs
49c4f34f42
Bangle.js:actTrk: refactor function names
2024-03-21 23:28:29 +00:00
Ganblejs
945a28c279
Bangle.js:actTrk: tweak start/stop messagaging
2024-03-21 23:28:29 +00:00
Ganblejs
40c3eade21
Bangle.js:actTrk:fix transfer notification
2024-03-21 23:28:29 +00:00
Ganblejs
bfa5d94587
Bangle.js:actTrk: Auto-reload when fetch done
2024-03-21 23:28:29 +00:00
Ganblejs
e492160531
Bangle.js:actTrk: fix packet counting
2024-03-21 23:28:29 +00:00
Ganblejs
8338b03b3b
Bangle.js:actTrk:try at packet counting
...
... might not be necessary. Since I got the fetching to work with
intervals on the the Bangle.js side it's been stable.
Didn't manage to make packet counting work yet.
2024-03-21 23:28:29 +00:00
Ganblejs
ddc2d7a34a
Bangle.js: remove imports marked as unused
2024-03-21 23:28:29 +00:00
Ganblejs
3ac3519f3e
Bangle.js:break out to class BangleJSActivityTrack
2024-03-21 23:28:29 +00:00
Ganblejs
9919bb2d6f
Bangle.js: actTrk- fix logic re requesting logs
2024-03-21 23:28:29 +00:00
Ganblejs
7146fce683
Bangle.js: actTrk- sync one log at a time
2024-03-21 23:28:29 +00:00
Ganblejs
ee274510ac
Bangle.js:actTrk- check if HRM could be exported
...
... to GPX track file. But commented out to avoid error.
2024-03-21 23:28:29 +00:00
Ganblejs
64b3468671
Bangle.js:actTrk- don't export GPX if no such data
2024-03-21 23:28:29 +00:00
Ganblejs
19ec7344ca
Bangle.js: comment out some LOG.info
2024-03-21 23:28:29 +00:00
Ganblejs
2c918f6a7c
Bangle.js: actTrk receive multiple lines per UARTRX
2024-03-21 23:28:29 +00:00
Ganblejs
d3229dea96
Bangle.js: clear fetched csv if refetching
2024-03-21 23:28:29 +00:00
Ganblejs
6255ff615d
Bangle.js: activity track logic tweak
...
... to make string sent from Bangle.js shorter. And some other changes.
2024-03-21 23:28:29 +00:00
Ganblejs
c572cae161
Bangle.js: use FileUtils to read/write files
2024-03-21 23:28:29 +00:00
Ganblejs
cba2cf38f6
Bangle.js:actTrck change stride unit to only meter
2024-03-21 23:28:29 +00:00
Ganblejs
2429f64412
Bangle.js: avoid infinities, cardiac arrest, etc.
2024-03-21 23:28:29 +00:00
Ganblejs
c2c53d5495
Bangle.js: actTrack reorder activity details
2024-03-21 23:28:29 +00:00
Ganblejs
e23c5f2dd4
Bangle.js: actTrack handle empty lines on analyze
2024-03-21 23:28:29 +00:00
Ganblejs
acdde68fab
Bangle.js: handle if time was given with decimals
2024-03-21 23:28:29 +00:00
Ganblejs
e39e67100e
Bangle.js: actTrk WIP
2024-03-21 23:28:29 +00:00
Ganblejs
bcd1fc8681
Bangle.js: more work on summary data
2024-03-21 23:28:29 +00:00
Ganblejs
e10fae00cf
Bangle.js: activity tracks summary entries
2024-03-21 23:28:29 +00:00
Ganblejs
eec3d2b89a
Bangle.js:don't show stride if not sufficient data
2024-03-21 23:28:29 +00:00
Ganblejs
6d82980cc3
Bangle.js: Activity tracks analytics
2024-03-21 23:28:29 +00:00
Ganblejs
70b9911153
Bangle.js: WIP adding summary data
...
Calculate distances from lat/long coordinates.
2024-03-21 23:28:29 +00:00
Ganblejs
b4879a92d9
Bangle.js: Activity tracks, addSummaryData
2024-03-21 23:28:29 +00:00
Ganblejs
517f9ac214
Bangle.js:Activity traks attempt (un-)setBusyTask
2024-03-21 23:28:29 +00:00
Ganblejs
6faa4452e2
Bangle.js:Act Tracks follow refactored code style
2024-03-21 23:28:29 +00:00
Ganblejs
c6cec7a0f8
Bangle.js:WIP add activity tracks support
...
Bangle.js: WIP add supportsActivityTracks
Bangle.js: testing flow of info
Bangle.js:WIP receive and store csv from Bangle.js
Bangle.js:store and transmit ID of last synced log
bangle.js:activity tracks, act on completed fetch
... of the recorder csv file.
Bangle.js: Activity tracks, now in database
... but not all data is persisted correctly I think. It's presented as
'Unknown activity'.
Bangle.js:Activity tracks, try to add gps info
I haven't tested with recordings where I have gps values, so far only
empty values. With empty values I currently get "This activity does not
contain GPX tracks" when trying to use the GPXExporter.
Bangle.js: Activity tracks, now adds GPS points
... to the activity to be shown when on the "Sport Activity Detail"
screen.
2024-03-21 23:28:29 +00:00
Ganblejs
fc9d18100d
ActivitySummariesActivity:fix no fetch btn spinner
2024-03-21 23:28:29 +00:00
Ganblejs
a59b5de343
ActivitySummariesActivity:FIXME unreachable reload
2024-03-21 23:28:29 +00:00
Ganblejs
57c0c4dfcb
FileUtils: refactor copyStringToFile
...
With the goal to hinder potential leak of file.
2024-03-21 23:28:29 +00:00
Ganblejs
758e9223d1
FileUtils:copyStringToFile: Try not to leak file.
2024-03-21 23:28:29 +00:00
Ganblejs
8907757674
FileUtils: add description for copyStringtoFile
...
... and remove commented out code
2024-03-21 23:28:29 +00:00
Ganblejs
3c32636089
FileUtils: Add copyStringToFile
method
2024-03-21 23:28:29 +00:00
Damien 'Psolyca' Gaignon
717bc3035d
[Huawei] Add settings to new gadgets
2024-03-21 19:06:03 +01:00
Vitaliy Tomin
6167f3f781
[Huawei] Initial AcceptAgreement packet and request
2024-03-21 19:06:03 +01:00
Damien 'Psolyca' Gaignon
924088e5a3
[Huawei] Check pinCode and authType not BondState
2024-03-21 19:06:03 +01:00
Damien 'Psolyca' Gaignon
88043aa813
[Huawei] Add Huawei Watch Ultimate support
2024-03-21 19:06:02 +01:00
Vitaliy Tomin
014b453693
[Huawei] Add Huawei Watch GT4 support
2024-03-20 13:41:49 +01:00
Damien 'Psolyca' Gaignon
d59b7c7bfa
[Huawei] Add SendExtendedAccountRequest
2024-03-20 13:41:49 +01:00
José Rebelo
c79bb53f74
Xiaomi: Fix temperature sample range
2024-03-19 21:00:21 +00:00
Gordon Williams
d3c16a1d40
Bangle.js ensure we don't try and use base64 to encode something that is actually UTF8
2024-03-19 13:36:55 +00:00
José Rebelo
fa59dfe72e
Bangle.js: Add saveFile javascript interface
2024-03-18 20:10:06 +00:00
José Rebelo
8aa3fa3689
Bangle.js: Fix crash when file save is cancelled
2024-03-18 20:10:06 +00:00
José Rebelo
b7ab61f233
Use existing string for temperature
2024-03-18 09:12:33 +00:00
José Rebelo
fc88a4ea9b
Xiaomi: Fix temperature charts crash
2024-03-18 09:09:18 +00:00
José Rebelo
ee6340c848
Amazfit Bip 3: Initial support
2024-03-17 13:06:31 +00:00
José Rebelo
ae05f7fd42
Xiaomi Watch S1 Pro: Enable charts for body temperature
2024-03-16 21:44:11 +00:00
José Rebelo
9db60f16d1
Allow for device settings sub-screens ( #3620 )
...
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/3620
Co-authored-by: José Rebelo <joserebelo@outlook.com>
Co-committed-by: José Rebelo <joserebelo@outlook.com>
2024-03-16 17:21:42 +00:00
José Rebelo
fcc930749e
Sony LinkBuds: Initial support
2024-03-15 23:36:50 +00:00
José Rebelo
5798466e55
Sony Headphones: Fix protocol v2
2024-03-15 23:34:17 +00:00
José Rebelo
0301d0e9a8
Sony Headphones: Merge V3 protocol into V2
...
The protocols are not actually different - the different messages only
depended on whether the devices supports wind noise reduction or not.
2024-03-15 22:56:11 +00:00
Gordon Williams
f91156cd3e
Bangle.js - fix issue where a newline right at the beginning of a received string could cause "String index out of range: -1" errors for all subsequent received data
2024-03-13 09:52:03 +00:00
José Rebelo
fe2a760891
Refactor language and Mi Band 6 preferences code
2024-03-09 14:24:50 +00:00
José Rebelo
99dc218cd1
Fix temperature preferences
2024-03-09 14:00:31 +00:00
ahormann
f5b46b295b
Plotting Temperature ( #3381 )
...
Reviewed-on: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/3381
Co-authored-by: ahormann <ahormann@gmx.net>
Co-committed-by: ahormann <ahormann@gmx.net>
2024-03-09 14:00:09 +00:00
Daniel Dakhno
ec6fa23176
Device settings: simplified array conversion
2024-03-09 13:58:20 +00:00
Daniel Dakhno
f1968f4103
Device settings: removed menu entry
2024-03-09 13:58:20 +00:00
Daniel Dakhno
b30b9083d0
Device settings: use ArrayList instead of rigid int[]
2024-03-09 13:58:20 +00:00
Daniel Dakhno
8e6571d354
Device settings: merged application and device settings
2024-03-09 13:58:20 +00:00
José Rebelo
f9917851ef
Xiaomi: Fix NPE when notification lookup fails
2024-03-06 20:47:57 +00:00
José Rebelo
96668368c5
Xiaomi Smart Band 8 Active: Initial support
2024-03-06 20:45:13 +00: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
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