1
0
mirror of https://codeberg.org/Freeyourgadget/Gadgetbridge synced 2024-09-08 15:35:24 +02:00
Commit Graph

182 Commits

Author SHA1 Message Date
Andreas Shimokawa
124d03d171 Mi Band 4: Enable music info support (displays now on the band) 2019-07-28 14:34:04 +02:00
Andreas Shimokawa
261ddee707 Mi Band 4: Support setting date format (for built-in watchfaces) 2019-07-26 21:05:16 +02:00
Andreas Shimokawa
8d567c1e6d fix build 2019-07-26 19:37:00 +02:00
Andreas Shimokawa
8449e55f9e Amazfit Cor: Fix empty menu on Amazfit Cor 2
Fixes #1563
2019-07-26 08:57:41 +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
8d50e8ef08 Mi Band 3: Allow setting date format in per-device settings
Closes #1544
2019-07-16 23:48:08 +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
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
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
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
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
Andreas Shimokawa
6b72292812 Recoginze "Xiaomi Band 3" as Mi Band 3
When running newer Firmwares (since 2.2.0.12) it is possible that devics name themselves "Xiaomi Band 3".
After a factory reset? Related to target market?

Closes #1517
2019-05-18 21:03:50 +02:00
Andreas Shimokawa
58dca9a897 Amazit Cor 2: Add device specific warning when installing firmware (untested)
Also remove some Mi Band'ism from strings
2019-05-09 12:54:14 +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
6d28af1132 Mi Band 2: enable per-device pairing keys
Now enabled for all Huami devices
2019-05-02 22:40:28 +02:00
Andreas Shimokawa
bb161aff59 Amazfit Cor: Also recognize "Amazfit Band 2" as Cor 2019-05-02 22:26:20 +02:00
Andreas Shimokawa
77c76a7bd3 Mi Band 3: enable per-device pairing keys 2019-05-01 21:56:36 +02:00
Andreas Shimokawa
86270c0592 Try to enable Amazfit Cor 2 support but just using Amazfit Cor code.
Related to #1500
2019-05-01 19:51:32 +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
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
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
e9982ccd56 remove supportsAlarmConfiguration() in favor of getAlarmSlotCount()
Coordinator that do not support alarms return 0 anyway.
2019-01-11 23:26:00 +01:00
Matthieu Baerts
8d78c45e7d messages: convert emoji's to supported chars
Some devices don't support emoji's and display a series of `?` chars.
Instead of that, replace them by `:<emoji>:` text, e.g. `A 🐱` is
replaced by `A 🐱`.

This is done by using 'android-emojify' project and their
`EmojiUtils.shortCodify(text);` function.

For more details about this lib released under MIT license:

    https://anitrend.github.io/android-emojify/
2018-12-23 12:52:49 +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
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
License Bot
696653eabf Update contributors list and license headers. 2018-08-29 21:30:23 +02:00
José Rebelo
9fda67b297 Mi Band 3: Night Mode 2018-08-27 22:54:37 +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
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
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
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
c247efc720 add missing file 2018-08-01 22:58:41 +02: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
License Bot
225a600aed Update license headers 2018-06-25 18:35:46 +02:00
Andreas Shimokawa
9d01989b27 remove unused import 2018-06-24 21:00:33 +02:00
Andreas Shimokawa
3f06a8c2a6 Rename file to match class name. 2018-06-18 21:22:34 +02:00
Andreas Shimokawa
99dec159f7 Mi Band 3: add untested and incomplete support
This also improves firmware/RES probing to distinguish Mi Band 2/3 firmware files and Mi Band 3/Bip RES files.

Notes:
- Firmware flashing should might but is untested
- This basicall runs off the Amazfit Bip code which will probably incorrect (Mi Band 3 is proabably something between the Bip and the Mi Band 2)
2018-06-14 18:16:49 +02:00
Andreas Shimokawa
3dd1929436 Huami devices: Minor refactoring 2018-06-14 16:30:43 +02:00
Andreas Shimokawa
bd012cab2a fix typo 2018-05-07 22:20:18 +02:00
Andreas Shimokawa
c663ba190d Amazfit Bip: try to fix byte sequence when setting menu items 2018-04-27 21:20:42 +02:00
Andreas Shimokawa
e1ef2455dc Amazfit Bip: allow to set displayed menu item in firmware >=0.1.1.14
NOTE:
- You will have to be connected while doing the changes in preferences (FIXME)
- It might not work at all since I did not test after the latest changes :P
2018-04-27 09:28:33 +02:00
Andreas Shimokawa
66bb0bd81b Merge branch 'master' into bip-wip 2018-03-27 11:09:59 +02:00
Andreas Shimokawa
e26dbc6812 Mi Band 2/Bip/Cor: allow to set a period when the display/background light gets enabled when lifting the wrist
Closes #1013
2018-03-23 23:30:28 +01:00
Andreas Shimokawa
3d3cc1f40c Merge branch 'master' into bip-wip 2018-03-13 17:27:18 +01:00
License Bot
238bacde9f Update license headers 2018-02-26 14:27:33 +01:00
Andreas Shimokawa
e48885df7d Merge branch 'master' into bip-wip 2018-02-15 23:38:06 +01:00
Andreas Shimokawa
ea4a4edc5b Amazfit Bip: Fix language setting on new firmwares 2018-02-08 22:21:15 +01:00
Andreas Shimokawa
95cc538575 Amazfit Bip: Allow language to be set to Spanish (needs firmware 0.1.0.66 beta, not recommended)
This also requires the latin font to be flashed before.
2018-01-30 23:06:08 +01:00
Andreas Shimokawa
f6f4d7ec40 Amazfit Cor: support flashing new res format also on Cor 2018-01-27 21:51:34 +01:00
Andreas Shimokawa
14a6c9a626 Amazfit Bip: support flashing new res, font, and latin font files
Required for firmware 0.1.0.66
2018-01-27 21:41:35 +01:00
Andreas Shimokawa
1349a1c7da Merge branch 'master' into bip-wip 2018-01-22 08:57:01 +01:00
Andreas Shimokawa
04018955c1 Mi Band HRX: support older firmwares where the Band was named "Mi Band 2i" 2018-01-14 16:34:40 +01:00
Andreas Shimokawa
c420f2ce93 Amazfit Bip: implement find phone feature
This probably also works with Amazfit Cor

Closes #887
2018-01-13 18:46:21 +01:00
Andreas Shimokawa
6f68c8adde Merge branch 'master' into bip-wip 2018-01-04 12:09:57 +01:00
Andreas Shimokawa
d4ce333f14 Amazfit Cor: Fix problem with firmware 1.0.6.27 where Cor was detected as Mi Band 2
The root cause of this problem is that starting from firmware 1.0.6.27 the
bluetooth name was changed to "Amazfit Cor" from "Amazfit Band"

This resulted in advanced features not working, including firmware flashing.
2017-12-30 22:27:00 +01:00
Andreas Shimokawa
7e2f895001 Merge branch 'master' into bip-wip 2017-12-17 00:24:48 +01:00
cpfeiffer
fccd2ebb77 Display the actual firmware kind instead of "Firmware"
i.e. "GPS Firmware", "Watchface", "Resources", ...
2017-12-11 23:36:39 +01:00
Andreas Shimokawa
bfceaf9cc9 Merge branch 'master' into bip-wip 2017-12-11 19:30:54 +01:00
Andreas Shimokawa
f0ac296492 Initial support for cyanogenmod/lineage weather provider
TODO:
- also reconstruct json for Pebble background js fake replies
- find a better location for settings
- interatively display candidates when looking up location
- grey out setting on non-cm/los devices
2017-12-11 19:09:37 +01:00
Andreas Shimokawa
640e7f0abf Merge branch 'master' into bip-wip 2017-11-03 23:27:58 +01:00
Andreas Shimokawa
83c06f4429 Amazfit Cor: fix firmware update 2017-11-03 01:09:09 +01:00
Andreas Shimokawa
e2546f772a Mi Band 2: prevent detecting as Mi Band HRX in all cases, fixes HR not visible in charts
Fixes #862
2017-11-01 22:10:06 +01:00
cpfeiffer
f5318287c4 WIP: Bip GPS fetching, parsing, exporting
Also adjust Mi2 date/time sending wrt DST offsets
2017-10-31 23:16:39 +01:00
Andreas Shimokawa
3282e329f3 Mi Band 2: Fix bad copy and paste error that lead to Mi Band 2 being detected as Amazfit Bip
Fixes #859
2017-10-30 09:03:40 +01:00
License Bot
3ea2ac6dd2 Update license headers 2017-10-25 09:29:36 +02:00
Andreas Shimokawa
55cdc6d1c5 Amazfit Cor: Untested firmware update support
(refactor stuff along the way)
2017-10-24 22:01:25 +02:00
Andreas Shimokawa
83038a47ca use abstract HuamiCoordinator as base for MiBand2/HRX/Bip/Cor and separate from Mi1 Coordinator 2017-10-23 14:46:08 +02:00
Andreas Shimokawa
495ba81edc remove unused getPrimaryActivity() from coodinators, mark Mi Band HRX as non-heartrate 2017-10-23 13:44:38 +02:00
Andreas Shimokawa
0f46ea2a59 Try to blindly add support for Amazfit Cor 2017-10-23 11:28:51 +02:00
Andreas Shimokawa
7e5301e963 add missing file 2017-10-23 11:13:21 +02:00
Andreas Shimokawa
69619c21f6 Mi Band 2: try to add support for Mi Band HRX
Also refactors some stuff, basically moving stuff around
2017-10-23 10:28:54 +02:00