José Rebelo
b595a1ad96
Huawei Watch Fit 3: Enable emoji
2024-10-13 22:20:02 +01:00
José Rebelo
1f4987ab98
Huawei: Enable emoji for HarmonyOS watches
2024-10-13 19:01:14 +00:00
Me7c7
af64ff3a79
Huawei: fix workouts pace
2024-10-13 19:01:03 +00:00
Me7c7
cf7fa3adde
Huawei: Initial ephemeris update support
2024-10-05 13:51:10 +00:00
Vitaliy Tomin
feb7b36b3e
Huawei: Add Huawei Watch GT Cyber gadget
2024-10-04 19:02:54 +00:00
Me7c7
1e732efb04
Huawei: Fix altitude in the GPS parser
2024-10-04 19:00:23 +00:00
Martin.JM
159ebfd891
Huawei: Workout GPS synchronization
2024-09-30 19:45:56 +02:00
Me7c7
f3aaeb5216
Huawei: Initial P2P service support, Calendar sync support.
2024-09-27 22:40:30 +00:00
Vitaliy Tomin
3c6f1191b5
huawei: Add gadget variant Huawei Watch GT3 SE
...
* added to GT3Coordinator
2024-09-24 14:06:41 +08:00
Martin.JM
8d24dfa7e4
Huawei: Weather improvements
...
Potential fix for #4071 .
2024-09-23 18:47:33 +02:00
Vitaliy Tomin
820a5b9800
huawei: Add non pro version of Watch 4
...
* it was missing in current watch4pro coordinator
2024-09-23 15:32:24 +00:00
Vitaliy Tomin
ff1d0293fd
huawei: Add new gadget Huawei Watch GT5 (Pro)
2024-09-23 15:30:50 +00:00
Me7c7
028ff619b7
Huawei: DeviceReportThreshold command added
2024-09-21 13:07:06 +00:00
Me7c7
ee1b71a240
Huawei: fixed PhoneInfo command
2024-09-21 13:07:06 +00:00
Me7c7
17b530c989
Huawei: simple run pace config added
2024-09-21 13:07:06 +00:00
Me7c7
113f9b87c6
Huawei: SetMediumToStrengthThresholdRequest v2 implemented
2024-09-21 13:07:06 +00:00
Martin.JM
43262b3f29
Huawei: Fix workout reparsing
...
Fixes #4138
2024-09-20 21:48:49 +00:00
BrunoWallner
9f566fb7d9
Fix normal activity samples being inserted into workout samples in HuaweiSampleProvider ( #4126 )
...
Co-authored-by: BrunoWallner <b.lucab1211@gmail.com>
Co-committed-by: BrunoWallner <b.lucab1211@gmail.com>
2024-09-20 17:45:45 +00:00
Me7c7
e469ecd463
Huawei: Optional tag for watchface params
...
Related to this crash on Huawei Watch GT:
nodomain.freeyourgadget.gadgetbridge.devices.huawei.HuaweiPacket$MissingTagException: Missing tag: 6
at nodomain.freeyourgadget.gadgetbridge.devices.huawei.HuaweiTLV.getBytes(HuaweiTLV.java:219)
at nodomain.freeyourgadget.gadgetbridge.devices.huawei.HuaweiTLV.getString(HuaweiTLV.java:239)
at nodomain.freeyourgadget.gadgetbridge.devices.huawei.packets.Watchface$WatchfaceParams$Response.parseTlv(Watchface.java:125)
at nodomain.freeyourgadget.gadgetbridge.service.devices.huawei.requests.Request.handleResponse(Request.java:243)
at nodomain.freeyourgadget.gadgetbridge.service.devices.huawei.ResponseManager.handleData(ResponseManager.java:131)
at nodomain.freeyourgadget.gadgetbridge.service.devices.huawei.HuaweiSupportProvider.onCharacteristicChanged(HuaweiSupportProvider.java:875)
at nodomain.freeyourgadget.gadgetbridge.service.devices.huawei.HuaweiLESupport.onCharacteristicChanged(HuaweiLESupport.java:80)
at nodomain.freeyourgadget.gadgetbridge.service.btle.BtLEQueue$InternalGattCallback.onCharacteristicChanged(BtLEQueue.java:679)
at android.bluetooth.BluetoothGattCallback.onCharacteristicChanged(BluetoothGattCallback.java:194)
at android.bluetooth.BluetoothGatt$1$8.run(BluetoothGatt.java:581)
at android.bluetooth.BluetoothGatt.runOrQueueCallback(BluetoothGatt.java:948)
at android.bluetooth.BluetoothGatt.-$$Nest$mrunOrQueueCallback(Unknown Source:0)
at android.bluetooth.BluetoothGatt$1.onNotify(BluetoothGatt.java:575)
at android.bluetooth.IBluetoothGattCallback$Stub.onTransact(IBluetoothGattCallback.java:329)
at android.os.Binder.execTransactInternal(Binder.java:1299)
at android.os.Binder.execTransact(Binder.java:1253)
2024-09-13 10:05:38 +03:00
Vitaliy Tomin
4e7b83bebf
huawei: Make more tags optional for app managemnet
...
* solves this crash on Honmor GS Pro:
09:45:29.115 [Read Thread for HONOR Watch GS Pro-BD1] DEBUG n.f.g.s.b.BtBRQueue - Received 26 bytes: 5A0015002A068110820E0301260404000000030503322E302B86
09:45:29.118 [Read Thread for HONOR Watch GS Pro-BD1] DEBUG n.f.g.d.h.HuaweiTLV - Parsed TLV: {tag: 81 - Value: 820E0301260404000000030503322E30}
09:45:29.120 [Read Thread for HONOR Watch GS Pro-BD1] DEBUG n.f.g.s.d.h.ResponseManager - Service: 2a, command: 6, handled by: class nodomain.freeyourgadget.gadgetbridge.service.devices.huawei.requests.GetAppInfoParams
09:45:29.122 [Read Thread for HONOR Watch GS Pro-BD1] DEBUG n.f.g.d.h.HuaweiTLV - Parsed TLV: {tag: 82 - Value: 0301260404000000030503322E30}
09:45:29.124 [Read Thread for HONOR Watch GS Pro-BD1] DEBUG n.f.g.d.h.HuaweiTLV - Parsed TLV: {tag: 3 - Value: 26} - {tag: 4 - Value: 00000003} - {tag: 5 - Value: 322E30}
09:45:29.126 [Read Thread for HONOR Watch GS Pro-BD1] ERROR n.f.g.s.d.h.r.Request - Parse TLV exception
nodomain.freeyourgadget.gadgetbridge.devices.huawei.HuaweiPacket$MissingTagException: Missing tag: 6
at nodomain.freeyourgadget.gadgetbridge.devices.huawei.HuaweiTLV.getBytes(HuaweiTLV.java:219)
at nodomain.freeyourgadget.gadgetbridge.devices.huawei.HuaweiTLV.getString(HuaweiTLV.java:239)
at nodomain.freeyourgadget.gadgetbridge.devices.huawei.packets.App$AppInfoParams$Response.parseTlv(App.java:129)
at nodomain.freeyourgadget.gadgetbridge.service.devices.huawei.requests.Request.handleResponse(Request.java:243)
at nodomain.freeyourgadget.gadgetbridge.service.devices.huawei.ResponseManager.handleData(ResponseManager.java:131)
at nodomain.freeyourgadget.gadgetbridge.service.devices.huawei.HuaweiSupportProvider.onSocketRead(HuaweiSupportProvider.java:880)
at nodomain.freeyourgadget.gadgetbridge.service.devices.huawei.HuaweiBRSupport.onSocketRead(HuaweiBRSupport.java:74)
at nodomain.freeyourgadget.gadgetbridge.service.btbr.BtBRQueue$1.run(BtBRQueue.java:87)
2024-09-12 22:49:11 +00:00
José Rebelo
183bf8725f
Huawei: Re-parse workout details when opening details
2024-09-12 22:47:13 +00:00
Vitaliy Tomin
02286d2c2c
huawei: Add honor watch gs pro gadget
2024-09-12 12:36:11 +08:00
Me7c7
0745a374a5
Huawei: Continuous skin temperature measurement switch
2024-09-08 20:24:15 +00:00
Martin.JM
1315931ff8
Huawei: Chain initialize dynamic services requests
...
Also includes a bit of cleanup.
Thanks to José Rebelo for cleaning my code.
2024-09-08 01:05:16 +02:00
Me7c7
fc450882cb
Huawei: Contacts uploading support
2024-09-07 11:31:15 +00:00
Me7c7
1f5e9b52b8
Huawei: Quick fix issue with concatenated packets.
2024-09-06 20:12:56 +00:00
Patrick Rudolph
cde10a6dce
Huawei: GetHiChainRequest: Add error handling
...
Parse the error code and throw an exception instead of doing strange
things due to invalid step ID being used.
To investigate issue #4061 .
Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com>
2024-09-06 20:06:34 +00:00
Me7c7
1c19283192
Huawei: Improved error handling for bin file parsing.
2024-08-30 19:26:12 +00:00
Me7c7
2aafad46eb
Huawei: Check TLVs before access. Not present in some watches
2024-08-30 19:26:12 +00:00
Me7c7
4989334ff4
Huawei: Instalattion of apps fixed. Correct bin files support
2024-08-30 19:26:12 +00:00
Me7c7
e54fd95a8b
Huawei: Basic support for the installation of the applications
2024-08-29 17:23:42 +03:00
Me7c7
9321e470d7
Huawei: Use proper file type for sleep files
2024-08-27 22:06:01 +00:00
Vitaliy Tomin
8ded52a0d1
huawei: Add honor watch gs 3 gadget
2024-08-25 15:34:32 +00:00
José Rebelo
d8266b3d6b
ZeTime: Migrate global preferences to device-specific
2024-08-23 20:22:20 +01:00
Vitaliy Tomin
1940db7204
huawei: Handle some watchface install errors
...
* handle too many watchface installed
* handle insufficient space
* sort related code while at it
2024-08-17 08:30:46 +00:00
Martin.JM
75047ecdea
Huawei: Send OK when starting GPS
...
I hope this will solve #3990 .
2024-08-16 23:26:48 +02:00
José Rebelo
34378a4a11
Refactor ActivityKind into an enum
2024-08-14 23:13:12 +01:00
Martin.JM
f15f60542d
Huawei: Fix for Huawei Band 9
...
Linked to #3784 .
2024-08-06 18:28:09 +00:00
Vitaliy Tomin
bf6d0d0f83
[Huawei] Add Huawei Watch GT Runner gadget
...
* created new gadget classes
* make tag 0x01 in TimeRequest response optional. There is no
such tag on GT Runner, at least on HarmonyOS 2 firmware.
2024-08-03 14:49:05 +00:00
Me7c7
532c545093
Huawei: Correct processing of set time command during the pairing process.
2024-08-02 19:51:39 +03:00
Martin.JM
b242ad1ec5
Huawei: Expand capabilities fix
2024-08-01 21:06:13 +02:00
Martin.JM
6f83fc815f
Huawei: Simple TruSleep support
...
Only supports start and end time of sleep periods.
2024-07-30 22:34:05 +02:00
Martin.JM
fbe727644e
Huawei: Add UV index support
...
Also adds "0.0 to 15.0" comment to the weatherSpec uvIndex.
2024-07-30 14:19:11 +02:00
Martin.JM
2dbf70cb77
Huawei: Fix for weather
...
- Also the sunrise/set cannot be zero
- We could send a single forecast more when exactly 7 are provided
- It seems like the watches may require exactly 8 days to be sent for
the forecast - one of which is for today
2024-07-28 20:33:31 +02:00
Vitaliy Tomin
c380cf98bb
Huawei: Fix Watch 3 music control
...
* it using integer button fields
* it has button code 100 means exit from music
control screen, no need to poll music info on this code
2024-07-27 11:48:33 +00:00
Martin.JM
82d12e5fbe
Huawei: Fix for weather
...
If there is no moon rise/setting on a day, it should not be zero. It
should not be set at all. Some bands/watches don't care, but some might.
2024-07-26 21:03:27 +02:00
Vitaliy Tomin
5a6a39d059
Huawei: Fix notification constraints for Watch 3
...
* Watch 3 reports some values as integer, while internal buffer
now uses short values. Actually all values here fits in short
so just cut leading zeros now. Addin exception for case cutted
values was non zeros
2024-07-25 21:43:34 +08:00
Vitaliy Tomin
a994603389
[Huawei] Add hichainlite related parsing code
2024-07-25 21:43:25 +08:00
Vitaliy Tomin
676678defb
[huawei] Hacks for HiChainLite (Watch 3)
...
* use authMode instead of deviceSupportType
* set authMode to 4 for hichain 3 and set 2 for any other hichain
* use full HuaweiCrypto() constructor
2024-07-25 21:42:14 +08:00
Vitaliy Tomin
ae1cb4e893
[Huawei] Add Huawei Watch 3 gadget
2024-07-25 21:25:52 +08:00