Andreas Shimokawa
a0e21d7c6d
Merge branch 'master' into feature-weather
2016-12-09 23:29:54 +01:00
Andreas Shimokawa
0e1287e382
Pebble: also execute AppMessageHandler.pushMessage() if present when connection gets established
...
This does not have any effect now since pushMessage() is not used in this branch
2016-12-09 23:21:51 +01:00
Andreas Shimokawa
efb1cd389b
Merge branch 'master' into feature-weather
2016-12-09 21:52:55 +01:00
Andreas Shimokawa
17b581022b
optimize imports
2016-12-09 20:14:17 +01:00
Kevin Richter
34296c021f
Revamp Notification types Pebble ( #453 )
...
* Remove notification switches for enum & hashmap
* Fix code style
* Fix null reference exception
* Add whatsapp support
* Remove duplicate entry
2016-12-09 17:54:19 +01:00
Andreas Shimokawa
313499abd4
Pebble: also display debug level in app logs output
2016-12-08 23:20:00 +01:00
Daniele Gobbetti
2d0489960e
Pebble: boilerplate code to open dictation session #189
...
This is just boilerplate code, doesn't do anything but will do no harm as it's not called from anywhere
2016-12-08 16:38:31 +01:00
Daniele Gobbetti
6a09023c24
Liveview: add some sanity checks to the incoming data lenghts
2016-12-07 13:09:15 +01:00
Daniele Gobbetti
4eb56eb9ca
Liveview: refactor the BT stream reading functionality
...
Read the expected number of bytes at each step instead of a single byte.
2016-12-05 17:45:03 +01:00
Daniele Gobbetti
e53b8b6b32
Liveview: ignore the SocketTimeoutException, disconnect in any other case
2016-12-04 21:04:30 +01:00
Daniele Gobbetti
219cc7bff1
Merge branch 'master' into liveview
2016-12-04 20:42:29 +01:00
Daniele Gobbetti
8c01123a48
Liveview: addressed the first feedback.
...
- centralized string encoding and byte order
- replaced printStrackTrace with LOG.error
2016-12-04 19:10:58 +01:00
Andreas Shimokawa
013029443b
Pebble: Minor cleanups
2016-12-04 17:21:29 +01:00
Andreas Shimokawa
a691cd0ff7
Pebble: add option to enable applogs (debug messags from pebble apps)
2016-12-04 16:55:27 +01:00
Daniele Gobbetti
e0a844b60a
Liveview: Initial support for Liveview devices
...
Working so far: stable connection, setting time and sending notifications.
2016-12-03 16:20:02 +01:00
Andreas Shimokawa
3db009e77d
Pebble: do not dump all LE traffic, minor code cleanups
2016-12-02 23:38:54 +01:00
Andreas Shimokawa
ae2c107ed1
Pebble 2/LE: only notify once when first PP packets are incoming
2016-12-02 08:50:02 +01:00
Andreas Shimokawa
bc9041a4c9
Pebble 2/LE: on connect wait 30s max and stop waiting immediately if a real PP connection got establish (ie write request on the gatt server)
2016-12-02 08:07:44 +01:00
Andreas Shimokawa
3eda2d4b81
Pebble 2/LE: honor reconnect tries
2016-12-02 00:38:53 +01:00
cpfeiffer
44f74270df
Mi2: Experimental support for activity recognition
2016-12-02 00:22:06 +01:00
cpfeiffer
da297ecd8b
Fix + cleanup time setting and calendar sending #441
2016-12-01 22:51:08 +01:00
Uwe Hermann
0746aaa579
app: Random typo and consistency fixes.
2016-12-01 20:22:12 +01:00
Andreas Shimokawa
f0789cc147
Pebble 2/LE: fix another bug when reconnecting
2016-12-01 00:28:23 +01:00
Andreas Shimokawa
2993bb6b5c
Pebble 2/LE: fix potential NPE
2016-12-01 00:20:21 +01:00
Andreas Shimokawa
74c20f3a82
Pebble 2/LE: More fun with reconnect
2016-11-30 23:56:58 +01:00
Andreas Shimokawa
b878fa5eda
Pebble LE/Pebble 2: Fix reconnect not working when first attempt fails
2016-11-30 22:28:34 +01:00
Andreas Shimokawa
95ec1fb44c
Pebble LE/Pebble 2: Improve reconnect
2016-11-30 19:54:21 +01:00
cpfeiffer
09ff95eb34
Support for continuous hr readings (live activity) #323
2016-11-29 23:25:11 +01:00
cpfeiffer
49acde118d
Do not log heartrate separately during miband 1s sync
2016-11-29 23:25:11 +01:00
Andreas Shimokawa
34ad088b88
Pebble: Experimental support for BLE on all models via dev option in Pebble Settings
...
HOWTO:
1) Pair you normal Pebble (not necessary if already done), make sure it was connected once
2) Unpair your LE pebble if already paired
3) Switch on "Always prefer BLE" in Pebble Settings
4) Tap on the + in Control Center to add a new device
5) Pair your Pebble-LE XXXX or Pebble Time LE XXXX inside Gadgetbridge's Device Discovery actibity
Now Gadgetbridge will connect to your LE Pebble when tapping on Pebble XXXX if "Always Prefer BLE" option is enabled.
You can easily switch back to classic LE by turning that option off again
2016-11-27 09:49:28 +01:00
Andreas Shimokawa
a5263141d7
Pebble 2: Ignore all GATT communication with all other that the current device
...
Fixes a bad bug where disconnecting from another BLE device caused the Pebble2 to disconnect
2016-11-25 14:28:04 +01:00
cpfeiffer
7da328d5db
Fix an invalid leftover check for array length
...
Also removed a method invocation that did not belong there.
2016-11-24 22:16:04 +01:00
cpfeiffer
3fdfb7d172
Mi2: Support for setting the fitness goal (steps)
2016-11-24 21:58:32 +01:00
Andreas Shimokawa
381323011e
Pebble 2: work around FW installation problems
...
Wait a 0.5s after each complete Pebble packet and do not longer wait at all after a completed GATT package chunk (was 0.1s)
Big outgoing messages will be now much faster such as firmware installations but smaller take more time than before.
(This is not the proper fix but I could update the firmware this way, failed 10 times before after a few percent)
2016-11-24 18:52:58 +01:00
cpfeiffer
67d89ce1b9
Create the correct start-sync timestamp #323
2016-11-22 22:52:26 +01:00
cpfeiffer
dfbaba4cb6
Make sure that the charts display the requested time range
...
(instead of only the range with available samples)
2016-11-22 15:53:58 +01:00
cpfeiffer
a8a7d8db31
Mi2: WIP synchronize only new data since last sync
...
(#323 )
2016-11-22 00:05:41 +01:00
cpfeiffer
0c51f86afc
Mi2: more work on activity data #323
2016-11-22 00:05:41 +01:00
cpfeiffer
82cd06f4c1
Mi2: WIP: initial support for activity data
...
(#323 )
2016-11-22 00:05:41 +01:00
Andreas Shimokawa
eb052cead3
Pebble 2: Also honor the mtu when client gets a change reported
...
Should help older LE Pebbles
2016-11-21 17:29:16 +01:00
Andreas Shimokawa
647b67cfca
Pebble 2: call both requestMTU and use the characteristic write
2016-11-21 15:17:03 +01:00
Andreas Shimokawa
fce86482b9
Pebble 2: try an alternative way of setting the MTU (might revert)
2016-11-21 14:54:01 +01:00
Andreas Shimokawa
e8da301da3
Pebble 2: fix a few crashes with disconnect/ reconnect
2016-11-20 22:04:49 +01:00
Andreas Shimokawa
4f3c46f704
Pebble 2: only add second service if first one was added sucessfully
2016-11-20 00:12:41 +01:00
Andreas Shimokawa
3b250a4568
Pebble 2: initial hacky reconnect support
...
Works sometimes, at least less crashes
(#432 )
2016-11-19 23:53:07 +01:00
Andreas Shimokawa
ddfab1cdae
Pebble 2: use requestMTU() on Android 5+ instead of characteristics write.
...
This actually fixes MTU problems with older Pebbles (Time, OG)
2016-11-18 23:47:48 +01:00
Andreas Shimokawa
4dc085de57
Pebble 2: React to MTU notifications, fixes LE for older pebbles also
...
It seems that setting the MTU on older pebbles does not work, so just use what we can use.
Maybe old pebbles need setMTU() which only works on Android 5+, we could use that conditionally...
2016-11-18 23:47:48 +01:00
Andreas Shimokawa
66e3de9168
Pebble 2: improve connection problems (at least for me)
2016-11-18 22:38:39 +01:00
Andreas Shimokawa
d7256d172e
I hate java
2016-11-15 23:23:21 +01:00
Andreas Shimokawa
163a7bdf15
Pebble 2: save heart rate values to database (hopefully)
2016-11-15 23:21:13 +01:00
Andreas Shimokawa
82a47022fa
Pebble 2: allow to disable/enable HRM in context menu of Workout app
...
Okay this might be stupid since Workout seems to work also works without HRM!
I assumed (wrongly) that I will disable Workout by disabling HRM
anyway, better than not being able to toggle it at all!
2016-11-15 12:17:51 +01:00
Andreas Shimokawa
4b7f47ba6c
Pebble 2: add Workout system app to app manager on P2 and hexdump incoming HRM datalog
2016-11-15 11:56:14 +01:00
cpfeiffer
d8145a52f9
Activate the display when lifting the wrist #323
...
Configurable, defaults to true
2016-11-13 21:47:54 +01:00
Andreas Shimokawa
00a71f53b3
Pebble 2: add not yet working code (at least not without weird workarounds)
...
This is is a pain because of tons of weird pairing issues
2016-11-13 21:29:58 +01:00
cpfeiffer
d89899557c
Mi2: Add config option to configure date/time display
...
(added a new EventHandler method to set a specific configuration option)
2016-11-13 20:47:24 +01:00
cpfeiffer
3cc8d887ca
Mi2: Initial support for wear location, hr during sleep and date format #323
...
- wear location from prefs is sent to the band
- hr measurement during sleep is sent to the band
- date format is sent to the band (date+time or just time)
(TODO: needs preference option)
2016-11-13 01:44:52 +01:00
Andreas Shimokawa
f68bbe453b
Pebble: bump flags and version we report
...
Plus some small preparations for P2 support which do not hurt in master
2016-11-10 11:05:32 +01:00
cpfeiffer
3b474bb5a9
Move another notify registration to after initialization #408
2016-11-08 22:55:31 +01:00
cpfeiffer
55f036c104
Move heart rate notification enamblement to after authentication
...
Might fix #408 and #425
2016-11-04 22:11:07 +01:00
Andreas Shimokawa
14ef5202e1
some internal testing which does not hurt in master
2016-11-03 11:07:44 +01:00
cpfeiffer
0076bbf572
Remove all Mi2 DeviceInfo stuff -- they're not used together #365
...
This might fix firmware downgrading on certain Mi1A devices
with hw revision 8
2016-10-30 23:04:21 +01:00
cpfeiffer
cea5f5fa36
Remove duplicate case here as well
2016-10-29 00:01:56 +02:00
cpfeiffer
3db9748136
Mi2: Attempt to support non-repetitive alarms #323
2016-10-28 23:18:10 +02:00
cpfeiffer
1352403089
Mi2: Allow for disabling alarms #323
2016-10-28 22:26:07 +02:00
Andreas Shimokawa
55daaf247c
Merge pull request #420 from atkyritsis/master
...
Removed duplicate if statement.
2016-10-28 10:45:09 +02:00
Andreas Shimokawa
d6b9e6d64b
Pebble: Support sending byte arrays from app configuration data
...
Also add debug output if trying to encode unknown classes in PebbleProtocol
(Fixes #421 )
2016-10-28 00:32:45 +02:00
atkyritsis
45cf4e5396
Removed duplicate if statement.
2016-10-27 18:44:27 +02:00
cpfeiffer
de46555e37
Mi2: display heart rate result from Debug screen as a toast #323
2016-10-24 00:23:59 +02:00
cpfeiffer
b20a9c9ccc
Some initial hacky support for hr readings (Debug activity only)
...
My Mi2 stopped reporting hr values a while ago though, even on-device.
2016-10-23 23:53:48 +02:00
cpfeiffer
17b70a1b82
Support for more than one alarm #323
...
Smart alarms not supported yet.
2016-10-23 23:05:54 +02:00
cpfeiffer
3a12ffd42d
Mi2: Fix for alarm enablement. Was too late, apparently.
2016-10-23 22:38:57 +02:00
Daniele Gobbetti
503bcee7b4
Support record version 13 (firmware 4.2)
2016-10-21 13:07:07 +02:00
cpfeiffer
ee24443b6a
Make it really clear, that only the first alarm works #323
2016-10-21 01:01:30 +02:00
cpfeiffer
15954d4561
Initial support for alarms (one, atm) #323
...
(repetitinos not tested yet)
2016-10-21 00:50:41 +02:00
cpfeiffer
839da4f06a
Shuffle some logging things around
2016-10-21 00:50:41 +02:00
cpfeiffer
c87d08bf4b
Small refactoring for initial support for Mi2 Alarms #323
2016-10-21 00:50:41 +02:00
Daniele Gobbetti
21fc5c7498
Integrate Daniele's live-sensor-data support
2016-10-11 23:13:40 +02:00
cpfeiffer
713989ef38
Add event "test new function" for the debug screen
2016-10-11 23:06:59 +02:00
cpfeiffer
7c3dc741d2
Send vibration off-commands to Mi2 ( #323 )
...
Far from perfect, but a little better.
2016-10-11 21:38:17 +02:00
cpfeiffer
e7c0afa603
Cleanup onNotification()
2016-10-11 21:18:43 +02:00
Andreas Shimokawa
a094f0cc76
Mi Band: for vibration settings, group navication types (email, sms, chat, social network, navigation)
2016-10-11 15:20:55 +02:00
Andreas Shimokawa
cd195a5969
map more apps to notification types (icons and colors on the pebble)
2016-10-11 11:54:52 +02:00
cpfeiffer
92c629c351
Ranem NotificationType.UNDEFINED to UNKNOWN
2016-10-10 23:06:44 +02:00
cpfeiffer
62828e5158
Remove ORIGIN_ notification constants, clean up
...
- MI preferences now use NotificationType.getFixedName() for preference
keys
2016-10-10 22:45:26 +02:00
cpfeiffer
db034a246c
Add 'Try' button to vibration profile preferences, closes #405
2016-10-09 00:10:53 +02:00
cpfeiffer
9e32e7d0d3
Remove some Mi2 testing code, only use Mild Alerts for Mi1 (fow now)
2016-10-08 22:43:41 +02:00
cpfeiffer
125c0092cb
Storage and improved way of realtime data (hr, steps so far)
2016-10-08 01:35:58 +02:00
cpfeiffer
713e9426b9
Re-enable UUID_PAIR again, when keeping data on device is configured) #250
...
This should fix data sharing with Mi Fit
2016-10-05 23:01:35 +02:00
cpfeiffer
f23ed5ce69
Mi2: declare to always support hr #323
2016-10-03 21:17:58 +02:00
cpfeiffer
5bdc7933b3
Somewhat hacky support for Mi2 notification icons #323
2016-10-02 23:04:59 +02:00
Daniele Gobbetti
42f622af85
Support record version 12 (firmware 4.1)
2016-09-30 17:28:46 +02:00
Andreas Shimokawa
9cccb085c4
Pebble: allow sending acks to pebblekit android apps which always use transaction id -1 (this seems to be okay for pebblekit apps which do not want to use real transaction ids)
2016-09-26 21:51:11 +02:00
Andreas Shimokawa
8080734470
Pebble: use telegram icon for telegram messages
...
also use the facebook icon for the official facebook app
(untested because we would never use facebook)
2016-09-21 21:31:23 +02:00
cpfeiffer
1bd919ccaa
For a start, we can reuse the alert notification from Mi 1 #323
...
So vibration works :-)
2016-09-20 23:41:50 +02:00
cpfeiffer
ccdb843b6e
Improved Mi Band 2 support #323
...
- connecting works and is stable
- firmware and hardware version is displayed
- time is set
2016-09-20 23:12:17 +02:00
Andreas Shimokawa
1f8cfa5a68
Vibratissimo: clear queue when setting vibration
2016-09-20 21:49:27 +02:00
Andreas Shimokawa
6a18d90fee
Vibratissimo: add simple and buggy activity with a slider for vibration control
...
Also includes some fixes and "find your device" support ;)
2016-09-20 20:28:52 +02:00
Andreas Shimokawa
da01a76594
fix BatteryInfoProfile NPE, show battery level for Vibratissimo
2016-09-19 16:37:45 +02:00
Andreas Shimokawa
8ba7bc7353
Add (useless) support for Vibratissimo "massage devices"
...
Don't take this serious. It will make the "massage device" vibrate when a phone call arrives.
It is inspired by the famous lawsuit[1] which has nothing to do with the Vibratissimo device maker.
After reading this I picked up the cheapest ble massage device just to see if we could support it.
And yes, we can.
[1] http://arstechnica.com/wp-content/uploads/2016/09/vibratorsuit.pdf
2016-09-19 12:37:41 +02:00
JohnnySun
53d4681763
Optimize Imports
2016-09-13 23:53:35 +08:00