Commit Graph

356 Commits

Author SHA1 Message Date
Andreas Shimokawa
b71597800a Pebble: set device to reconnecting state when actively reconnecting
It makes it easier to watch connection attempts and the delay between them in control center.
2016-05-29 23:24:16 +02:00
Andreas Shimokawa
33da6c2925 Pebble: make sure that "waiting for reconnect" state is set when initial connect fails 2016-05-29 22:58:25 +02:00
cpfeiffer
2d49ce505a Set state to "Waiting for reconnect" for BTLE devices 2016-05-26 23:48:05 +02:00
cpfeiffer
6e33c7364a Remove some commented code 2016-05-26 22:21:58 +02:00
cpfeiffer
c360eb3392 This should fix some connection problems #274
Some APIs have become synchronous, it seems, e.g.
connectGatt() -> onConnectionStateChanged() -> discoverServices() -> onServicesDiscovered()
appears to happen synchronously. So connectGatt() will not return before services are discovered!

So now we deal with this situation.
2016-05-26 19:03:38 +02:00
Andreas Shimokawa
e3bee37b81 Change UUID prefix to 0x4767744272646700 2016-05-24 13:20:16 +02:00
Andreas Shimokawa
cb1ec5dccb Make calendar event type byte instead of int
Now the UUID will be constructed like this:

High 64bit 0x4742474200 | type
Low 64bit id
2016-05-24 13:11:57 +02:00
Andreas Shimokawa
c9c9b420dc Pebble: Send sunrise and sunset events to the pebble every day using AlarmManager 2016-05-24 11:19:57 +02:00
Andreas Shimokawa
af3cfefec0 Merge branch 'master' into feature-sunrise 2016-05-23 23:52:39 +02:00
Daniele Gobbetti
bef59ae9c0 Parse new version of Pebble health datalog message with tag "84".
This message was previously treated as a further "Sleep" message type, with firmware version 3.12 further types were added that are clearly unrelated to sleep (possibly to high-intensity activities like running etc.), hence the related code is now moved to a separate class.

The only decoded records are still sleep-related.

Fixes #312
2016-05-23 21:13:12 +02:00
Andreas Shimokawa
6370fdbebe Merge branch 'master' into feature-sunrise 2016-05-22 01:25:52 +02:00
Andreas Shimokawa
0d7986a5ab Pebble: rework incoming reconnection support
This is now completely generic and should work for other devices also

Fixes #296
2016-05-22 01:19:28 +02:00
Andreas Shimokawa
4bd578ebea Pebble: send sunrise/sunset to watch for today and tomorrow, also delete previous timeline pins 2016-05-16 23:37:40 +02:00
Andreas Shimokawa
017f650b3f Pebble: send sunrine and sunset pins to timeline when setting time in debug menu
This is just a test and it will leak your timeline data, since we never delete it.
Also this adds some rough infrastructure for calendar events.
2016-05-16 17:30:11 +02:00
cpfeiffer
3a1f91b5a8 Default to low latency mode #287
Tested with Mi1A and Mi1S -- works fine and faster than without
low-latency mode.
2016-05-15 00:22:53 +02:00
cpfeiffer
5963843216 Experimental support for #274 (untested yet) 2016-05-15 00:15:31 +02:00
Andreas Shimokawa
9b7f2c1e91 try to fix weiredness with pebble reconnects 2016-05-08 17:19:01 +02:00
Andreas Shimokawa
65a95366f4 Mi Band: Allow setting low-latency FW update mode in Mi Band development settings 2016-05-04 13:24:32 +02:00
cpfeiffer
10d7274aa1 Fix testcases (all this should be scrapped and redone with e.g. robolectric) 2016-04-29 21:58:08 +02:00
cpfeiffer
5e02724c4c Make automatic reconnect after connection loss configurable #293
Mi Band: automatically reconnect when the device is back in range

Also: #89
2016-04-28 23:17:13 +02:00
cpfeiffer
e35ce978bd Remove now unused imports + fix one more SharedPreferences usage 2016-04-25 23:43:19 +02:00
cpfeiffer
0704915a88 Move parsing of preference strings to int values to Prefs 2016-04-25 23:39:03 +02:00
cpfeiffer
0c715a2669 Wrap access to SharedPreferences with "Prefs"
(to centralize quirk handling)
2016-04-25 23:18:55 +02:00
cpfeiffer
98d7237ec3 Display a different notification icon, when disconnected
Better icons welcome :-)
2016-04-15 22:57:13 +02:00
cpfeiffer
78bf516897 Disabling sleep measurement for continuous measurement is not necessary
Looks like they don't interfere, after all. #178
2016-04-12 23:25:12 +02:00
cpfeiffer
f15a97d994 Initial live heartrate measurement in the live activity tab #178 2016-04-12 23:12:50 +02:00
cpfeiffer
802e9a8235 OK, revert to connectGatt(false), connect often does not work with true #249 2016-04-09 09:53:03 +02:00
cpfeiffer
1e5dbb6a23 OK, just connect(true) is not sufficient #249
(we again get connection problems. Let's try this.)
2016-04-07 20:53:25 +02:00
Daniele Gobbetti
a49335fa67 Allow to change stored samples converting only certain old types 2016-04-07 17:52:15 +02:00
Andreas Shimokawa
b1a93c430d interrupt thread instead of joining to fix ANR 2016-04-07 00:21:21 +02:00
Andreas Shimokawa
e91b5a07bd Pebble: change delay between reconects to 1,2,4,8,16,32,64 (max) seconds 2016-04-06 22:55:04 +02:00
Andreas Shimokawa
94cec55a20 Merge pull request #276 from roidelapluie/reconnect
Pebble: Smarter reconnection attempts
2016-04-06 22:41:07 +02:00
danielegobbetti
d2af3468f0 Add support for new datalog message added in pebble firmware 3.11
This adds support for storing deep sleep data.
2016-04-06 21:48:16 +02:00
Julien Pivotto
e42a041448 Pebble: Smarter reconnection attempts
Sleep several seconds between reconnection attempts:
One second after first attempt, two after the second, and so on.

refs #89
2016-04-06 12:37:23 +02:00
Daniele Gobbetti
51def0d497 Add light intensity to the known steps datalog message.
Add support for record version 6 introduced with firmware 3.11.
There are more data in each record now, but we still do not know what they mean.
Close #270
2016-04-04 23:33:17 +02:00
Daniele Gobbetti
34600e085e Fix wrong assignment, needed to properly deal with datalog messages longer than 255 2016-04-04 23:13:57 +02:00
Andreas Shimokawa
a15b327ff1 Refactoring: get rid of ServiceCommand, use new CallSpec and MusicSpec to pass Call and Music info 2016-04-04 20:08:34 +02:00
cpfeiffer
3e3cf462a6 Attempt to re-enable automatic reconnect (autosensing) #249
(now that initializing device works again)
2016-04-03 23:32:15 +02:00
cpfeiffer
59c3970008 Reuse characteristic objects #234 2016-04-03 23:01:58 +02:00
cpfeiffer
b129844169 Small fixes to PR 273 #232
- dynamically toggle hr sleep support when preference changes
- check hr support dynaically after device info is available to avoid false error message
2016-04-03 22:38:06 +02:00
cpfeiffer
7cda9f1923 Merge branch 'computerlyrik-heartrate-sleep-support' 2016-04-03 21:46:29 +02:00
cpfeiffer
804a85d31f Small refactoring of BtLE actions 2016-04-03 21:46:24 +02:00
cpfeiffer
b54fe53cd5 Merge branch 'heartrate-sleep-support' of https://github.com/computerlyrik/Gadgetbridge into computerlyrik-heartrate-sleep-support 2016-04-03 21:02:45 +02:00
Andreas Shimokawa
4389c1cca3 Pebble: wait 4 seconds instead of 2 when notifications/calls trigger reconnection 2016-04-03 18:36:30 +02:00
Andreas Shimokawa
7ddfd35c35 Pebble: auto connect on incoming notification or phone call if connection was lost unxpectedly before 2016-04-03 18:30:20 +02:00
cpfeiffer
a4919789ca Add some progress to firmware updating #271 #234
Also: remove the low latency mode for firmware update,
because my Mi1S simply disconnects then.

Still missing in the view: device disconnects
2016-04-03 00:50:45 +02:00
cpfeiffer
2d10c11005 Log the length of the bytes written 2016-04-02 22:35:37 +02:00
cpfeiffer
0e49535966 Fix progress during fw update #234 2016-04-02 22:24:33 +02:00
Christian Fischer
f2de21a664 test if heartrate is supported before writing preferences 2016-04-02 16:11:51 +02:00
Christian Fischer
20aa7d9ad9 add preference to set hartrate sleep detection 2016-04-02 16:09:30 +02:00