cpfeiffer
d93799e72a
Improve Teclast H1 and H3 device matching #1207
2018-08-18 12:57:21 +02:00
cpfeiffer
50295864f5
Use a custom IntentListener callback instead of LocalBroadcastManager for ble profiles
...
The issue here is the following:
- we used intents in the generic BleProfile classes to notify about the results of e.g. certain read requests
- we used to send these results asynchronously via LocalBroadcastManager.sendBroadcast(), which always used the main thread for sending
- however, we noticed that reconnecting to devices sometimes failed because the results arrived too late and the next action in the BLE queue lacked the necessary information
- the fix was to use LocalBroadcastManager.setBroadcastSync(), so that the results arrive in time
- this unfortunately meant that they were not sent in the main thread anymore, and especially, this would send all pending intents that were previously queued via sendBroadcast() also in the "wrong" thread (in order to keep the order of events)
The fix is to use a custom IntentListener callback interface for synchronous notifications of ble profile results
*without* also causing other, previously queued intents to be sent.
Fixes #1218
2018-08-18 00:39:14 +02:00
cpfeiffer
98cd54657a
Avoid unnecessary boxing
2018-08-17 00:28:00 +02:00
cpfeiffer
f96b10cca0
Avoid potential NPE
2018-08-17 00:19:10 +02:00
cpfeiffer
0b63fa1c59
Remove some (now) unnecessary casts
2018-08-17 00:13:38 +02:00
cpfeiffer
0145013597
Add some @Nullable
2018-08-17 00:13:38 +02:00
Carsten Pfeiffer
26fcb3cbbb
Merge pull request #1212 from elagin/legend_wordwrap_center
...
Enable word wrap and set center horizontal alignment for legend into …
2018-08-16 23:58:00 +02:00
Carsten Pfeiffer
73f699c602
Merge pull request #1207 from Dougal19/master
...
Support added for H3 watch strap
2018-08-16 23:54:33 +02:00
Pavel Elagin
354ab79285
Display start and end sleep. #164
2018-08-16 17:59:56 +03:00
Pavel Elagin
65d36d2c81
Enable word wrap and set center horizontal alignment for legend into ActivitySleepChart and WeekSleepChart
2018-08-15 18:03:32 +03:00
Dougal19
e520cf57eb
Test add support for H3 watch strap
2018-08-13 17:49:38 +01:00
Andreas Shimokawa
74f47c8e2e
Mi Band 3: Support setting language to German, Italian, French, Polish, Japanese, Korean
...
NOTE:
- Needs latest firmware
- Setting to Japanese or Korean leads to empty menus on the device. When
reconnecting you, will get a sceen which telling you to update. I highly
suspect it requires flashing Mili_wuhan.ft.kj (kj=korean,japanese)
2018-08-13 00:00:46 +02:00
Thomas
93dcb2be0d
Adding Lithuanian transliteration
2018-08-12 11:31:35 +03:00
Andreas Shimokawa
3bb75a62be
Mi Band 3: whitelist tested firmwares
2018-08-12 00:28:27 +02:00
Andreas Shimokawa
b48b52b175
Mi Band 3: Make order of menu items on screen deterministic again
...
(This partly reverts the logic of the previous commit)
2018-08-12 00:16:56 +02:00
José Rebelo
470efa3e51
Mi Band 3: Change display items
2018-08-12 00:00:38 +02:00
Daniele Gobbetti
9517fa211e
Intercept alarm actions of the google clock application
...
Implemented blindly based on the information provided in #1199
Fixes #1199
2018-08-10 18:36:29 +02:00
Pavel Elagin
76d704cb04
Misprints
2018-08-10 00:00:12 +02:00
José Rebelo
338251597b
Mi Band 3: Band screen unlock
2018-08-09 23:41:25 +02:00
José Rebelo
b671289a49
Mi Band 2/3: New icon
2018-08-09 23:41:25 +02:00
Carsten Pfeiffer
4a07c63381
Merge pull request #1194 from elagin/string_toString
...
Redundant String.toString()
2018-08-08 21:34:45 +02:00
Carsten Pfeiffer
95e39cabba
Merge pull request #1190 from maxirnilian/watch9
...
Watch 9: Initial support
2018-08-08 21:16:59 +02:00
Daniele Gobbetti
797a671ccd
Amazfit Cor: only send music information when needed
2018-08-08 17:48:23 +02:00
Pavel Elagin
723b5af50f
Redundant String.toString()
2018-08-08 12:55:25 +03:00
Andreas Shimokawa
da58e22afe
Only start MusicPlaybackReceiver if device supports music info
...
Also block sending music info in HuamiSupport if device does not support it
2018-08-07 12:44:00 +02:00
cpfeiffer
e15afaab2f
Probe connected devices first for firmware installation
2018-08-06 23:13:59 +02:00
Daniele Gobbetti
3fac021ff2
Amazfit Cor: implement basic music controls
...
Play/pause and skip to previous/next song work. The currently playing song
name is shown on the Cor. The track length and progress are now shown as
we don't know how to send these yet.
2018-08-06 23:11:40 +02:00
cpfeiffer
cc3c70b161
Send results of AbstractBleProfile synchronously
...
This should fix issues like a ConditionalWriteAction failing with an NPE when GBDevice.getFirmwareVersion() returns null even though the DeviceInfoProfile had already received the firmware version (but the intent notification has not been received yet).
2018-08-06 20:51:28 +02:00
cpfeiffer
ec0d62f67b
If firmwareRevision is null, use softwareRevision
2018-08-06 20:26:39 +02:00
cpfeiffer
92bd3122f3
Improve logging
2018-08-06 20:22:10 +02:00
cpfeiffer
f7c9828cc1
Avoid potential NPE
2018-08-06 20:22:10 +02:00
maxirnilian
4ff04870ca
Watch 9: Initial support
2018-08-06 18:30:38 +02:00
Andreas Shimokawa
88714ece4d
Amazfit Bip: fix current weather not being displayed with latest firmware
2018-08-05 15:27:28 +02:00
protomors
fd68700b9a
NO1 F1: Set time during initialization.
2018-08-05 00:09:43 +02:00
protomors
343239ff9e
NO1 F1: Fixed typo.
2018-08-05 00:09:43 +02:00
cpfeiffer
5bca05caac
Fix loop condition!
2018-08-04 23:10:11 +02:00
Andreas Shimokawa
fe401bdcf5
Amazfit Cor: allow music control
2018-08-02 22:35:02 +02:00
Andreas Shimokawa
66391e10c9
Amazfit Cor: Allow to enable music menu on device
2018-08-02 22:29:52 +02:00
Andreas Shimokawa
cc7f6d7263
More Huami refactoring
...
- Rename MiBand2Service to HuamiService
- Move preferences around (Mi Band 2 has its own device specific settings now)
- Fix Cor menu items not syncing immediately in settings
- Try to support settings menu items on Mi Band 3 (buggy, disabled code for now)
2018-08-02 10:55:30 +02:00
Andreas Shimokawa
f464604b27
Amazfit Cor: Fix notification menu not being enabled
2018-08-01 23:13:36 +02:00
Andreas Shimokawa
c247efc720
add missing file
2018-08-01 22:58:41 +02:00
Andreas Shimokawa
486d7bdca6
Amazfit Cor: Allow setting menu items
...
(Also rename/refactor stuff from Mi Band 2 to Huami - still WIP)
2018-08-01 22:56:01 +02:00
cpfeiffer
16fb1a584d
Errors during activity track timestamp fixup should be non-fatal
...
So just log them. #1134
2018-08-01 19:49:09 +02:00
cpfeiffer
df84927954
Fix filename generation and add testcasce
...
Fixes #1169
2018-08-01 19:33:33 +02:00
cpfeiffer
7f1c0521ea
Small fixes to activity point timestamp fixup
2018-08-01 19:33:33 +02:00
szilardx
14a086c1f3
Add missing ActivityPoints and timestamp
2018-08-01 19:33:33 +02:00
Vadim Kaushan
e3408197f2
Merge remote-tracking branch 'upstream/master'
2018-07-31 09:18:50 +03:00
cpfeiffer
163b547395
Remove level_list_device.xml, just use the DeviceType icon
2018-07-30 22:49:00 +02:00
Vadim Kaushan
9a13d5ea4a
ID115: code cleanup
2018-07-30 23:24:20 +03:00
Vadim Kaushan
fd7a0cb124
ID115: fetching activity data
2018-07-30 23:23:13 +03:00
Vadim Kaushan
caabe0ed0a
ID115: use SendNotificationOperation for message and call notifications
2018-07-29 21:30:31 +03:00
Vadim Kaushan
14dc3ad9c5
ID115: add supportsFindDevice() function
2018-07-29 19:34:34 +03:00
Vadim Kaushan
458a363f11
Merge remote-tracking branch 'upstream/master'
2018-07-29 19:31:40 +03:00
José Rebelo
18b13b7772
Add missing break
2018-07-27 14:39:01 +01:00
José Rebelo
a43934651a
Allow devices to not support being found
2018-07-27 14:38:33 +01:00
Daniele Gobbetti
2147ab4948
Revert "Revert "remove unused getPrimaryActivity() from coodinators, mark Mi Band HRX as non-heartrate""
...
This reverts commit 63231ec49a
.
Please note that the comment of the reverted commit was inaccurate, as the Mi Band HRX was left untouched by it
and is left untouched byt this commit.
2018-07-27 15:13:21 +02:00
cpfeiffer
63231ec49a
Revert "remove unused getPrimaryActivity() from coodinators, mark Mi Band HRX as non-heartrate"
...
This reverts commit 495ba81edc
.
See discussion in https://github.com/Freeyourgadget/Gadgetbridge/issues/1165
2018-07-27 13:15:10 +02:00
dakhnod
63cb70ac9a
Fix missing sourceAppID field
2018-07-23 02:50:05 +02:00
Daniele Gobbetti
2da6749a40
Add activity kind (if known) to gpx filename
...
Fixes #1161
2018-07-22 16:14:36 +02:00
Daniele Gobbetti
67a1191a3c
Use UTC timezone in GPX points
...
Fixes #1152
2018-07-22 16:14:36 +02:00
Daniele Gobbetti
a5dd88df53
Fix discovery on devices with Android version < Lollipop
...
also reduce the amount of lines logged in discovery activity.
2018-07-22 16:14:36 +02:00
Daniele Gobbetti
290c6c53fb
Fix wrong mapping yahoo weather conditions to openweathermap.
2018-07-22 16:14:36 +02:00
Andreas Shimokawa
e96dcc69ab
Amazfit Bip: try to support weather in newer firmwares
2018-07-21 17:18:08 +02:00
Andreas Shimokawa
d1253348dc
Mi Band 3: whitelist tested firmware, res and font
2018-07-19 12:00:17 +02:00
Andreas Shimokawa
eef38d4680
Only use 0x00 as auth flags on Mi Band 3 - to not disturb other devices
2018-07-17 00:29:36 +02:00
Andreas Shimokawa
aa143577f8
Amazfit Cor: Support language switching on newer firmwares
...
I shamelessly assumed the firmware version (chose the version that was included in the same Mi Fit version when bip started to support the new command)
2018-07-16 15:18:46 +02:00
Vadim Kaushan
b6bd100f28
ID115: remove useless debug messages
2018-07-16 15:50:29 +03:00
Vadim Kaushan
65fbb4da5b
ID115: wrist setting
2018-07-16 15:48:37 +03:00
Andreas Shimokawa
f2aa71e32c
Amazfit Bip: Support Russian language.
...
Closes #1145
2018-07-16 14:36:52 +02:00
Andreas Shimokawa
46f3686764
Mi Band 3: Also send AQI for weather to make current temperature appear
2018-07-16 14:19:02 +02:00
Andreas Shimokawa
dc1e831630
Mi Band 3: Fix Pairing, this MIGHT break pairing for other devices (Bip/Cor/Mi Band 2)
2018-07-16 13:38:51 +02:00
Vadim Kaushan
c43a564a47
Merge remote-tracking branch 'origin/master'
2018-07-15 00:53:47 +03:00
Vadim Kaushan
a94e0b9463
ID115: log IO exceptions
2018-07-15 00:46:11 +03:00
Carsten Pfeiffer
1030a118a4
Merge pull request #1148 from Lightwars/zetime
...
Add MyKronoz Zetime support
2018-07-14 22:23:07 +02:00
Vadim Kaushan
fe9ec9b88a
ID115: screen orientation preference
2018-07-14 13:23:21 +03:00
Vadim Kaushan
02b3f23329
ID115: set steps goal
2018-07-13 15:00:16 +03:00
Sebastian Kranz
18202bffbd
Fix timestamps of activities, cause the watch reports them with 6 hours offset.
2018-07-13 13:24:47 +02:00
Vadim Kaushan
d66e9e6a8b
ID115: change device icon
2018-07-13 14:22:17 +03:00
Vadim Kaushan
c9e7a2ff1d
ID115: notification support
2018-07-13 14:08:11 +03:00
Vadim Kaushan
4bea2a3407
ID115: fix logger name
2018-07-13 13:54:19 +03:00
Sebastian Kranz
e54930788b
Add a divisor and divide the rawintensity to normalize it. It would be better to scale the divisor based on all steps of the day or something like that.
2018-07-13 11:06:21 +02:00
Sebastian Kranz
99bdb4a30a
Use evaluteGBDeviceEvent to send events to the app/android system, instead of calling directly the handle ufunctions.
2018-07-13 10:35:18 +02:00
Sebastian Kranz
f0174d904a
Bugfix: calendar needs the date as number. Add comment about converting date digits to characters.
2018-07-13 10:10:41 +02:00
boun
11c545362a
Do not crash inside the emulator ( #1150 )
...
As there is no bluetooth support in the emulator
2018-07-12 18:25:18 +02:00
Vadim Kaushan
36b956aed6
ID115: set manufacturer string
2018-07-12 16:53:57 +03:00
Vadim Kaushan
8a0263d3ff
ID115: Fix date calculation
2018-07-12 15:57:00 +03:00
Vadim Kaushan
814ca76733
ID115: basic support
2018-07-12 15:48:09 +03:00
Vadim Kaushan
26a1f97e43
ID115: coordinator
2018-07-12 15:47:08 +03:00
Vadim Kaushan
0e1331f172
ID115: declare device type
2018-07-12 15:45:00 +03:00
Sebastian Kranz
6781e1e14a
Rework onNotification function: Assemble the message and send decide, which icon should show up on the watch. Email support seems broken in newest firmware (1.7 Build 41) of the watch!
2018-07-12 07:30:41 +02:00
Sebastian Kranz
888d08ae77
Replace performConnected() with builder.queue(getQueue()) to write the commands and data to the watch.
2018-07-11 11:59:32 +02:00
Sebastian Kranz
c1673554ee
Better use bit shifting and masks to avoid negative values.
2018-07-11 07:17:40 +02:00
Sebastian Kranz
f3264fab0a
Fix typo.
2018-07-11 06:49:01 +02:00
Sebastian Kranz
7d8d484133
Merge branch 'master' into zetime
2018-07-10 06:48:20 +02:00
jonnsoft
09a36aa5e7
MiBand3 pairing fix
...
(cherry picked from commit 3656ed9648b28475c35764da8a5cbeb420cfc307)
2018-07-09 22:56:16 +02:00
cpfeiffer
f2ff1991da
Comment out chatty debug output
2018-07-09 22:55:20 +02:00
Andreas Shimokawa
3236e20657
Amazfit Bip/Cor: rework fimware detection to rely on strings instead of version numbers
...
The new version scheme and the fact that recent Bip and Cor firmwares are
impossible to distinguish by comparing data at fixed offsets make it necessary
to dynamically search for sequences of data. We do this now by searching for
"Amazfit Bip Watch" and "Amazfit Cor".
2018-07-08 12:16:26 +02:00
Sebastian Kranz
edee0904ff
Add all activity data to the database; at the moment not all are displayed. Try to fix value calculations, because negative results do not make sense here. Restrict the body length from notification to the max value of 256 characters.
2018-07-06 21:59:30 +02:00
Sebastian Kranz
0a37b8ef87
Fix music control. Now everytime the track changes the correct title is displayed. Set limits for volume up and down. Set a initial value of 50% at connect...
2018-07-06 20:33:45 +02:00
Sebastian Kranz
c2d608b0ef
Add time synchronization. Some values/parameters are fixed at the moment, which shouldn't be maybe.
2018-07-06 08:19:04 +02:00