Andreas Shimokawa
c17c3ed341
Improve parsing and debug output for activity summaries from Mi Band/Amazfit
2019-08-14 19:24:09 +02:00
Andreas Shimokawa
b5ea3ca591
Hexdump sports activity packets for better analysis
...
type 2 seems to be pause, 3 resume.
type 8 and seems to be related to swimming activites
2019-08-13 23:02:10 +02:00
Andreas Shimokawa
f99bc0de64
Move another file from AmazfitBip to Huami which is no longer Bip specific
2019-08-13 22:20:18 +02:00
Andreas Shimokawa
ff7886765f
Add Swimming to sport activity types, rename some AmazfitBip stuff to Huami (these were things introduced with the bip but working with other devices now also)
2019-08-13 22:04:52 +02:00
Andreas Shimokawa
0fd4d523a0
Amazfit Bip: Whitelist new firmware versions I tested
2019-08-07 17:24:01 +02:00
Andreas Shimokawa
aefd7520f3
Mi Band 3/4, Amazfit Cor/Bip: set language immediately when changing it (not only on connect)
...
Helps testing
2019-08-02 00:11:11 +02:00
Andreas Shimokawa
97540d734f
Mi Band 3/4: Allow enabling the "NFC" menu where supported
...
Pretty useless, because we do not support NFC - but nice for testing
2019-08-01 23:07:28 +02:00
Andreas Shimokawa
17599a797a
remove unused imports
2019-07-25 22:33:41 +02:00
Andreas Shimokawa
31db568832
Mi Band 4: Fix RES and FW update
2019-07-25 22:18:48 +02:00
Andreas Shimokawa
b6e78c1b9c
Mi Band 4: Support flashing watchfaces
...
FLASHING FIRMWARE/RES/FONT IS STILL UNTESTED
2019-07-25 20:51:28 +02:00
Andreas Shimokawa
5ff5561772
Mi Band 4: Fix notification icons and cut-off text
2019-07-24 09:33:53 +02:00
Andreas Shimokawa
044f6c11cd
Mi Band 4: WIP firmware update preparation
...
Nothing works yet
2019-07-23 23:49:21 +02:00
Andreas Shimokawa
9042966a40
Mi Band 4: Fix empty notifications
...
Icon still missing
2019-07-23 22:42:30 +02:00
Andreas Shimokawa
a60268c05c
Mi Band 4: Bring your own key support (blindly done, I dont have my key)
...
THIS STILL REQUIRES MI FIT AND YOUR EXTRACTED KEY
HOWTO:
1) press + button in Gadgerbridge
2) LONG PRESS Mi Band 4
3) Tap "Auth Key"
4) Enter your key prefixed with 0x (eg. 0x112233445566778899aabbccddeeff00)
5) Go back
6) Tap Mi Band 4
Success? You tell me.
2019-07-23 08:56:26 +02:00
Andreas Shimokawa
8d50e8ef08
Mi Band 3: Allow setting date format in per-device settings
...
Closes #1544
2019-07-16 23:48:08 +02:00
Andreas Shimokawa
f7a4b3c06a
Mi Band 3: whitelist firmware 2.4.0.20
...
Closes #1557
2019-07-16 16:24:45 +02:00
Andreas Shimokawa
ce0bd27111
remove useless condition
2019-06-22 21:10:19 +02:00
Andreas Shimokawa
d48d3cdea3
Add untested Mi Band 4 support (basically runs on Mi Band 3 code)
...
This is COMPLETELY untested, we do not have the device.
2019-06-12 23:44:01 +02:00
Andreas Shimokawa
d779310962
Move "activate display on lift wrist" and "rotate wrist to switch info" to per-device settings
...
"activate display on lift wrist" for Mi Band 2/3, Cor, Bip
"rotate wrist" only for Mi Band 2
2019-06-05 16:00:18 +02:00
Andreas Shimokawa
16090f0e21
Move fake device offset to Mi Band 1 preferences, remove support for other devices
...
Reasons for removal:
- I doubt we honored the offset correctly for new features anyway that are available on newer devices
- Newer devices have a display always displaying the wrong time
2019-06-05 14:11:44 +02:00
Andreas Shimokawa
d2988f987f
Mi Band 3: Whitelist FW 2.4.0.12
...
Closes #1530
2019-06-05 12:29:25 +02:00
Andreas Shimokawa
78dd7ef153
Mi Band 3: Fix setting menu items with 2.4 firmware and add support for the new timer menu
2019-05-29 15:53:44 +02:00
Andreas Shimokawa
12e16ac04a
add ignoring calls support to Amazfit Bip (probably Cor also and maybe Mi Band 3)
2019-05-25 22:19:19 +02:00
Andreas Shimokawa
93f288b936
Move "Do not disturb" settings from Mi Band / Amazfit settings to per-device settings (Mi Band 2 and Mi Band 3 only)
2019-05-24 23:47:57 +02:00
Andreas Shimokawa
d1ba702e75
add more settings migration for settings that are now per-device
2019-05-23 23:24:49 +02:00
Andreas Shimokawa
3440485a51
Mi Band 2: move settings to per-device settings
2019-05-23 21:33:35 +02:00
Andreas Shimokawa
34e0c4e8bc
remove swipe unlock settings from cor (can only be set from the band itself)
2019-05-22 19:04:38 +02:00
Andreas Shimokawa
038f101a12
Migrate more settings to per-device settings
...
Also add icons.
2019-05-22 10:49:59 +02:00
Andreas Shimokawa
9bfef4cf4f
Make per-device settings more versatile, move more settings
...
This allows to construct per-device settings by device type very easily
device coordinators just do the following to declare which setting they support,
the settings activity is then composed at runtime.
@Override
public int[] getSupportedDeviceSpecificSettings(GBDevice device) {
return new int[]{
R.xml.devicesettings_miband3,
R.xml.devicesettings_swipeunlock,
R.xml.devicesettings_pairingkey
};
}
2019-05-22 00:42:22 +02:00
Andreas Shimokawa
49667451d7
Mi Band 3: fix setting language (regression after todays refactoring)
2019-05-20 23:27:17 +02:00
Andreas Shimokawa
08e7d728c2
Huami: Migrate some settings to device specific settings
...
- Migrate language setting
- Migrate menu items setting
- Migrate lastsync timestamp from prefixed global shared prefercence
All settings should be automatically be converted (e.g. Amazfit Bip settings to all paired Amazfit Bip devices) and then deleted.
Cor Settings aleady completely vanished from the global settings menu.
When migration is done we will have a much cleaner settings menu. Will also remove confusion that some Cor settings have to be done in Bip settings.
2019-05-20 16:36:06 +02:00
DerFetzer
dd067eddd7
Amazfit Bip: Add new latin languages
2019-05-14 20:58:07 +02:00
Andreas Shimokawa
6031586131
Mi Band 3 NFC: Whitelist FW 1.7.0.4
...
Closes #1470
2019-05-09 15:43:57 +02:00
Andreas Shimokawa
34b4943918
Also export and import device specific preference files
2019-05-09 14:55:37 +02:00
Andreas Shimokawa
41e607ce9b
Amazfit Cor 2: Give own device type id, support flashing the firmware **UNTESTED**
2019-05-09 12:42:59 +02:00
Andreas Shimokawa
2dc228029a
Mi Band 3: Whitelist FW 2.3.0.28
2019-05-09 11:28:24 +02:00
Andreas Shimokawa
f7fe3a836f
Mi Band 3: Support flashing latest Japanese-Korean font file
...
This increases the supported file size to 2.0MB.
Somehow it is confusing that the new file is version 1 and the old version 2.
Also according to firmare.json both are version 1....
2019-05-07 11:13:48 +02:00
Andreas Shimokawa
0399bc048c
Mi Band 3: Whitelist Firmware 2.3.0.6
2019-05-07 10:43:26 +02:00
Andreas Shimokawa
db48707764
Add a device specific settings activity, currently used for setting the auth key for Amazfit Bip/Cor
...
When connecting to a new device, a random key gets generated, which can be
looked up from the device specific settings (accessible via the gear icon in
the device card in the main activity). Old devices keep their 0123456789@ABCDE
key, they have to be re-paired to change that.
During pairing, long-pressing the device candidate in the discovery activity
will also start the device specific settings activity, where the auth key
can be set manually priror to pairing. This is usefull to keep the ability to
pair one device with multiple android devices.
Fixes #1308
2019-04-21 21:25:33 +02:00
License Bot
9aadb2f2fd
Update license headers
2019-04-21 18:53:10 +02:00
Andreas Shimokawa
665b1b6b5a
Bip: whitelist FW 1.1.5.16
...
Closes #1459
2019-03-17 18:26:47 +01:00
cpfeiffer
c9f1c110b0
Merge remote-tracking branch 'github/pr/1292'
2019-03-04 22:10:23 +01:00
cpfeiffer
8d6a9d98da
Silence lgtm error messages
...
If the index would indeed be out of bounds, we would simply catch the exception and deal with that.
2019-02-27 20:52:16 +01:00
Sebastian Kranz
6a04c78b0e
Merge branch 'master' of https://github.com/Freeyourgadget/Gadgetbridge into zetime
2019-02-20 14:24:59 +01:00
Sebastian Kranz
a7553188f9
Reading the device preferences from the watch and set them in the ZeTime menu.
2019-02-20 14:09:21 +01:00
License Bot
8e4be724e1
Update license headers (fix duplicates) and contributors list
2019-02-13 21:01:14 +01:00
License Bot
beedb653e6
Update license headers
2019-02-13 20:43:31 +01:00
Andreas Shimokawa
c66fade081
Amazfit Bip: Support disconnect notifications
...
Might also work with Cor, did not work with Mi Band 3
2019-02-13 13:06:42 +01:00
Andreas Shimokawa
095b2f53e5
Mi Band 3: Whitelist Firmware 2.3.0.2
2019-02-11 23:01:28 +01:00
Andreas Shimokawa
55f1dcc57b
Amazfit Bip: Whitelist FW 1.1.5.12
2019-02-10 23:09:34 +01:00
Andreas Shimokawa
dad7ba7aaa
Mi Band 3: Enable fetching sports activities and add "Exercise" type to generic code
2019-01-28 00:22:11 +01:00
Daniele Gobbetti
75d3dffb14
Migrate to androidx support libraries and bump compile SDK version
...
"Optimize imports" has been run on all source files, there might be
unrelated changes, but these should be harmless.
2019-01-26 16:00:56 +01:00
Andreas Shimokawa
4060efeeca
Mi Band 3: Whitelist Firmware 2.2.0.42
2019-01-21 23:01:15 +01:00
cpfeiffer
903b50c2c5
Improved DB-based alarms
...
- got rid of GBAlarm
- added migration for prefs-based alarms
- various cleanups
2019-01-07 01:15:49 +01:00
Matthieu Baerts
c845e16cfa
amazfitbit support: fix typo
...
senderOrTiltle -> senderOrTitle
2018-12-23 12:52:49 +01:00
Daniele Gobbetti
87d41bf09f
Amazfit Cor: Whitelist firmware 1.7.20 and res 69 (stable)
2018-12-19 20:33:41 +01:00
Andreas Shimokawa
0e6c0e8926
Mi Band 3: Whitelist FW 2.2.0.14
...
Closes #1365
2018-12-16 16:11:43 +01:00
Andreas Shimokawa
b020d59f54
Implement factory reset feature in debug activity
...
Implemented for Mi Band 1/2/3, Cor, Bip
Could be implemented for Pebble by deleting all blobdbs etc
Related to #109
2018-12-16 16:06:12 +01:00
Andreas Shimokawa
29a5878d22
Mi Band 3: Whitelist FW 2.2.0.12
...
Closes #1353
2018-12-09 17:55:29 +01:00
Andreas Shimokawa
983bc606a4
Amazfit Bip: Allow flashing latest (beta?) GPS firmware
...
Closes #1358
2018-12-09 17:26:56 +01:00
Andreas Shimokawa
740cf103f6
Initial support for per-device alarms and raising the number of available alarms
...
TODO:
- Fix alarm widget (how can we get the deviceId?)
- Get rid of GBAlarm in favour of DAO generated Alarm class
- Find better defaults
- Bonus: migrate old preferece based shared settings
2018-11-24 12:16:47 +01:00
Andreas Shimokawa
d6a06d0c16
Amazfit Bip: Whitelist Firmware 1.1.5.04
...
Closes #1333
2018-11-13 19:34:03 +01:00
Andreas Shimokawa
3207d32818
Amazfit Bip: Whitelist Firmware 1.1.5.02
2018-11-08 17:53:24 +01:00
Andreas Shimokawa
3f062e5732
Amazfit Bip: Attempt fixing GPS tracks recorded with latest firmware
2018-11-08 17:13:00 +01:00
Andreas Shimokawa
8b3ba38344
Mi Band 3: Whitelist FW 2.0.0.4
2018-11-08 07:12:49 +01:00
cpfeiffer
5644ae5925
Display measured hr value in Debug activity + cleanup
...
Fixes #1320
2018-11-05 23:27:29 +01:00
Andreas Shimokawa
61872b7bbd
Mi Band 3/Amazfit Bip/Amazfit Cor: Send Fahrenheit if units are set to imperial
...
Closes #1315
2018-11-03 20:44:30 +01:00
cpfeiffer
effffddd8d
fixed lgtm warnings
2018-11-02 00:09:30 +01:00
cpfeiffer
7e9a9ca875
Added a TODO
2018-11-01 22:05:38 +01:00
cpfeiffer
435898ebc9
Move MiBand3-ism to MiBand3Support
2018-11-01 22:05:38 +01:00
Andreas Shimokawa
dde8a5044f
Mi Band 3: Whitelist FW 1.8.0.0
2018-10-28 15:32:57 +01:00
Andreas Shimokawa
b1b318a18b
Amazfit Bip: Allow flashing latest gps firmware from Mi Fit 3.5.1.1 (Mili_dth.gps)
...
This file seems to be for the Bip2, but firmwares.json also refereces this for the Bip.
And it seems to work.
2018-09-23 12:02:34 +02:00
cpfeiffer
6d4d92fd88
Live Activity: don't enable notifications every second
...
This caused the BLE queue to fill up more and more.
2018-09-17 23:02:18 +02:00
cpfeiffer
934f36f45a
Use ActivityUser.defaultUserStepsGoal instead of hardcoded values
...
ActivityUser has room for improvement, though.
2018-09-16 20:49:00 +02:00
cpfeiffer
f9e600d369
Deduplicate code
2018-09-15 22:38:20 +02:00
cpfeiffer
d6f5e36e12
Huami devices: Fix seldom fetch failures (better support for app level ble feedback)
...
Fixes #1264
2018-09-15 22:24:27 +02:00
cpfeiffer
b6d68207cb
Don't store the live step values in the db
2018-09-11 23:26:51 +02:00
Andreas Shimokawa
59ddedcf9a
Mi Band 3: Whitelist FW 1.6.0.16
2018-09-11 21:35:30 +02:00
Andreas Shimokawa
6644ad0bb0
Mi Band 3: Allow enabling the "Workout" menu item
...
(This is called "Activity" in Gadgetbridge, since we have that on the Bip, we should probably rename that to Workout also for consistency with the menus)
2018-09-11 21:32:13 +02:00
Daniele Gobbetti
3e989cd89a
Amazfit Cor: Whitelist FW 1.2.5.00 and RES
2018-08-29 21:33:38 +02:00
License Bot
696653eabf
Update contributors list and license headers.
2018-08-29 21:30:23 +02:00
Andreas Shimokawa
b8c7bb2c2e
Amazfit Bip: whitelist firmware 1.1.2.05
2018-08-28 22:19:53 +02:00
Andreas Shimokawa
13ff40c7a5
Mi Band 3: Whitelist some firmware version I tested
2018-08-28 22:10:58 +02:00
José Rebelo
9fda67b297
Mi Band 3: Night Mode
2018-08-27 22:54:37 +02:00
Andreas Shimokawa
ffc6bd5a73
Mi Band 3: Also fix diplay of SMS and EMAIL
...
We have to send a fake app source that is never displayed to make the text appear... :P
2018-08-19 00:51:04 +02:00
Andreas Shimokawa
3d70314e8c
Mi Band 3: Fix messages not being displayed (send app source with notifications and use chunked characteristics where available)
...
This also sends the app name for Bip and Cor, which is actually displayed when there is no icon (unknown app for the device)
Fixes #1203
2018-08-19 00:35:50 +02:00
Andreas Shimokawa
c81965b88d
Mi Band 3: Raise limit of RES files to 150000 bytes
...
Fixes #1223
2018-08-18 23:02:36 +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
f96b10cca0
Avoid potential NPE
2018-08-17 00:19:10 +02: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
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
José Rebelo
338251597b
Mi Band 3: Band screen unlock
2018-08-09 23:41:25 +02:00
Daniele Gobbetti
797a671ccd
Amazfit Cor: only send music information when needed
2018-08-08 17:48:23 +02: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
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
ec0d62f67b
If firmwareRevision is null, use softwareRevision
2018-08-06 20:26:39 +02:00
cpfeiffer
f7c9828cc1
Avoid potential NPE
2018-08-06 20:22:10 +02:00
Andreas Shimokawa
88714ece4d
Amazfit Bip: fix current weather not being displayed with latest firmware
2018-08-05 15:27:28 +02:00