1
0
mirror of https://codeberg.org/Freeyourgadget/Gadgetbridge synced 2024-12-16 21:57:46 +01:00
Commit Graph

967 Commits

Author SHA1 Message Date
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
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
Sebastian Kranz
fec1f1afc6 Fill function to to add a calendar event at the day view. 2018-07-05 10:28:27 +02:00
Sebastian Kranz
7c65fa4fc0 BUGFIX: correct the length needed if a string includes multi bytes. Because a character is encoded of up to 4 bytes. Fix using the correct progess and available variables for the activities. Also restict the volume up and down commands to 16 steps. 2018-07-05 07:25:17 +02:00
Andreas Shimokawa
6e34d313c7 Mi Band 3: allow setting language (english and spanish work) 2018-07-04 23:32:35 +02:00
Sebastian Kranz
ed20f69cc4 Add functionality to control the music playback from the watch. Not sure if all of this is correct. Having issues that the track title isn't updated until you issue a play, pause command from either the phone or watch. 2018-07-04 14:52:21 +02:00
Sebastian Kranz
6882127bec Add function to sync weather data to the watch, translate weather codes to icons. 2018-07-04 07:09:50 +02:00
Sebastian Kranz
497372f377 Add support for sending some generic notifications for incoming calls, missed calls, sms, email, social and messenger. 2018-07-03 13:09:46 +02:00
Andreas Shimokawa
a3e22d573f Amazfit Bip: Whitelist FW 1.0.2.00 2018-07-01 23:26:03 +02:00
Andreas Shimokawa
d1cba54425 Mi Band 3: Allow flashing fonts (untested) 2018-07-01 22:41:37 +02:00
Andreas Shimokawa
9303214997 Amazfit Cor: allow flashing fonts (seem to be the same as for bip, untested) 2018-06-30 00:32:29 +02:00
Andreas Shimokawa
87f9424ee3 Amazfit Bip: allow flashing latest beta firmware 2018-06-29 23:04:38 +02:00
Sebastian Kranz
59095dc29b Clean-up the merge. 2018-06-29 11:18:36 +02:00
Sebastian Kranz
1b152c86ea Merge branch 'master' into zetime 2018-06-29 10:43:11 +02:00
Sebastian Kranz
5e236e113f Fix function to put step data into database, using the full unix epoch now. Add function for putting sleep and heartrate data into the database. 2018-06-28 13:48:41 +02:00
Sebastian Kranz
789fba95d1 Add function to check available activities and then get them. Add function to get the steps. First try to get the data into the database. 2018-06-27 09:01:26 +02:00
Sebastian Kranz
3539dd3e34 Get the also the device firmware version. Add function for messages that are broken down into two transmissions, because of their length. 2018-06-26 07:29:11 +02:00
Andreas Shimokawa
49a5f349b0 Amazfit Cor: Whitelist FW 1.0.7.88
Closes #1104
2018-06-25 21:37:26 +02:00
License Bot
225a600aed Update license headers 2018-06-25 18:35:46 +02:00
Sebastian Kranz
e18b043d27 request activity info with a function. 2018-06-24 12:25:34 +02:00
Daniele Gobbetti
2a30e9486c Reduce the amount of lines in the logcat for binary dumps
Concatenate the binary values instead of logging one byte per line.
2018-06-23 11:15:03 +02:00
Kranz
65f12bc1ee Fix error inside the isMsgFormatOK function. Add DeviceInfoHandler to read the hardware info and notify about battery level. 2018-06-22 07:20:45 +02:00
Sebastian Kranz
1213ecc344 Add function for requesting device info and battery level. 2018-06-21 19:56:13 +02:00
Andreas Shimokawa
c6b23041f7 Pebble: Always connect to SDP UUID on NON-LE Pebble
Fixes #726
2018-06-20 22:06:45 +02:00
Daniele Gobbetti
f99895da0c Remove activity transfer toast, add title to the transfer notification
Also create a separate channel that allows "muting" transfer notifications
on android oreo and above.
2018-06-19 22:03:49 +02:00
Andreas Shimokawa
9bcae3e000 Amazfit Bip: Whitelist FW 0.1.1.45 2018-06-16 23:35:02 +02:00
Kranz
c611042e51 Add more commands. Add message check function. 2018-06-15 13:40:16 +02:00
Kranz
89c8c9cdfb First communication test between ZeTime and GB. Ask about activitys, sleep and heart-rate infos available. ZeTime responds correctly 2018-06-15 11:23:44 +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
Sebastian Kranz
48affad220 Add some UUIDs and Cmds. Connect further. 2018-06-08 16:28:05 +02:00
Andreas Shimokawa
d1368c2ed8 Amazfit Bip: Whitelist FW 0.1.1.41 2018-05-20 19:42:29 +02:00
Daniele Gobbetti
3c3e38741a Pebble: remove the legacy countdownlatch on Pebble GATT server code
The GATTServer code is now in line with the new GATTClient code.
2018-05-19 22:42:05 +02:00
Andreas Shimokawa
3b25181a32 Amazfit Bip: allow enabling shortcuts (weather, Alipay) 2018-05-15 23:12:18 +02:00
Andreas Shimokawa
f46c204c75 Amazfit Cor: Whilelist FW 1.0.7.52
Closes #1087
2018-05-12 22:20:49 +02:00
Andreas Shimokawa
511fef7f62 Pebble 2: when using client only mode, no not wait for PPoGATT ACKs after each package
This speeds up things up a lot. We should still somehow limit it, but not by waiting
after one PPoGATT ACK after each complete PP package.

This leaves the old mode untouched, so we have something to compare
2018-05-12 17:18:19 +02:00
Andreas Shimokawa
eb08e66674 Amazfit Cor: make sure that Veats firwmare does not get detected as a Cor firmware... 2018-05-12 00:15:14 +02:00
Andreas Shimokawa
746cb00460 Amazfit Cor: Fix recogition of new firmwares
Newer Cor and Bip firmwares seem to be indistinguishable,
What we do for now is use the version we already search for say
Bip firmwares are valid from 0.0.8.00 to < 1.0.5.00 (lastest as of today is 0.1.0.39)
Cor firmwares are valid from 1.0.5.00

This should work for a while.
Fixes #1095
2018-05-12 00:05:30 +02:00
Martin Piatka
00ee9b6828 Mi Band 2: wait at least 4s before sending notification text
This fixes notification text not displaying when a short vibration
pattern is set.

If the notification text is sent while the icon is still visible
it is not displayed. We need to wait until it disapears (about 4 seconds)
2018-05-11 18:07:50 +02:00
Andreas Shimokawa
9e2558beac Pebble 2: make gatt client only mode available to users 2018-05-11 14:23:41 +02:00
Andreas Shimokawa
cdf6039d4c Pebble 2: fixes for experimental client only gatt code
This basically makes sure that
- only one gatt write operation is in progress
- data is not sent from within callbacks to prevent a deadlock when waiting for a nre callback that cant happen yet beause the current has not been retuned
2018-05-11 13:21:40 +02:00
Andreas Shimokawa
f6131772d6 Pebble2: WIP broken and disabled GATT client only support
This will eliminate the need for the Phone being a GATT Server and might lead
to better connection stability once it is ready.

NOTE: Enabling this in the code (change clientOnly=true in PebbleLESupport)
will only work for a few packets before in totally breaks, so only enable
if you want to fix it :P
2018-05-10 22:03:03 +02:00
Andreas Shimokawa
5df799419e Mi Band 2: 2hitelist Firmware 1.0.1.81
Closes #1070
2018-05-07 21:54:44 +02:00
Andreas Shimokawa
b585fde78a Amazfit Bip: Raise .res limit to 700000 bytes for modded files 2018-05-06 16:34:14 +02:00
Andreas Shimokawa
8fe0c213cb Amazfit Bip: Whitelist a bunch of new FW versions 2018-05-06 09:54:31 +02:00