Andreas Shimokawa
bd5dc6bfbc
Pebble 2/LE: Add setting to limit the MTU (for debugging broken BLE stacks)
2016-12-19 23:28:06 +01:00
Daniele Gobbetti
846c74aa86
Forward also group summary notifications, if they contain wearable actions. Hopefully helps with #456
...
Tested with conversations and there is no regression. Also a specific workaround for telegram was removed, hopefully this does not break #395
2016-12-18 18:00:16 +01:00
Daniele Gobbetti
f1965c7b00
Log the flags also when passing the notification to device #456
2016-12-18 11:03:54 +01:00
Daniele Gobbetti
861c655b5d
Log the incoming notification flags.
...
Should help further diagnosing #456
2016-12-18 10:40:30 +01:00
Andreas Shimokawa
8990e7e3da
Merge branch 'master' into feature-weather
2016-12-17 00:20:16 +01:00
Andreas Shimokawa
97aed43518
Pebble: fix for previous commit
...
(potential crashes when installing and receiving notifications)
2016-12-17 00:17:05 +01:00
Andreas Shimokawa
9588535004
Merge branch 'master' into feature-weather
2016-12-17 00:01:37 +01:00
Andreas Shimokawa
2b3592f354
Pebble: allow sending data to the pebble during installation on FW >= 3.0
...
It seems to be no problem to recieve notifications etc during app installation with non legacy firmwares :)
2016-12-16 23:47:59 +01:00
cpfeiffer
caaa38ed04
Mi2: support for current battery status #449
...
so far we understand
- last charge date
- current level
- state normal
- state charging
and we are notified on changes.
2016-12-14 00:50:43 +01:00
cpfeiffer
dd48869fa5
Mi2: move Miband2Support into the package it belongs
2016-12-14 00:28:35 +01:00
Andreas Shimokawa
f74bb4e3f3
Merge branch 'master' into feature-weather
2016-12-12 09:05:19 +01:00
cpfeiffer
c69889d177
Simplified + fixed ArrayUtils.equals() + added lots of testcases
2016-12-11 23:30:20 +01:00
cpfeiffer
bcfc8bc110
Mi1/Mi2: fix firmware file probing for the different devices
2016-12-11 23:30:20 +01:00
Daniele Gobbetti
bb5791485c
Add log statements when notifications are not sent to gadget
...
This should help debuggin #456
2016-12-11 22:48:12 +01:00
cpfeiffer
40354f8f5a
Some @Override
2016-12-11 21:31:27 +01:00
cpfeiffer
94c0d6af9d
Mi2: Fix off-by-one in activity fetching
2016-12-11 21:31:27 +01:00
Andreas Shimokawa
825f2bf2e8
Merge branch 'master' into feature-weather
2016-12-11 20:27:28 +01:00
Andreas Shimokawa
31122f0b09
Pebble: Propagate watch apps launches outside of PebbleProtocol
...
This does not do anything yet.
2016-12-11 20:25:46 +01:00
cpfeiffer
6dfc895303
Mi2: Initial work on firmware update #427
2016-12-11 02:11:58 +01:00
cpfeiffer
4a19046301
Mi2: Some characteristics and opcodes for fw update
2016-12-11 02:11:58 +01:00
cpfeiffer
fd2c182714
Mi 2: another characteristic rename (0000005)
2016-12-11 02:11:58 +01:00
cpfeiffer
83ad2a9bd9
Mi 2: rename characteristic 00000003 to "CONFIGURATION"
2016-12-11 02:11:58 +01:00
Andreas Shimokawa
f63a7db5f9
Pebble: map owm conditions to TimeStyle icons
...
This is probably not the way we should do it, just experimenting for personal use :P
2016-12-11 00:08:57 +01:00
Daniele Gobbetti
a6a2c6d6d6
Pebble: timestyle doesn't use Yahoo anymore.
...
The values do not work anyway, because it's mapping them internally. See https://github.com/freakified/TimeStylePebble/tree/master/src/pkjs for the mappings.
2016-12-10 15:09:22 +01:00
Andreas Shimokawa
779699cd95
Pebble: remove configuration stuff from TimeStylePebble handler, update weather keys
...
This is not usable now, just playing around
2016-12-09 23:31:32 +01:00
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
Andreas Shimokawa
ed38e524bf
Make some static stuff non-static (potentially fixes instant run problem and leaks)
2016-12-07 23:13:51 +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
cpfeiffer
928bdd5d36
Adjust comments to current values
...
They look plausible compared to 1S activity
2016-12-04 20:25:20 +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
Uwe Hermann
6dd74d04ac
code/docs: Consistently use the "Gadgetbridge" spelling.
...
"Gadgetbridge" appears to be the common spelling as per most docs,
code comments, wiki, and so on. Thus avoid using "GadgetBridge".
2016-12-01 17:28:51 +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
cpfeiffer
011646b097
Fix activity data on Mi Band 1 #440
2016-11-29 22:22:54 +01:00
Andreas Shimokawa
2677dad873
Fix a recent regression that caused the database migration dialog to never pop up
2016-11-27 22:50:21 +01:00
Andreas Shimokawa
109a032f1e
Pebble: fix Pebble LE address not being propery added to device attributes
2016-11-27 22:45:57 +01:00
Daniele Gobbetti
84327a5b86
Pebble: use also the device address as seed to store app configuration
...
This is not needed as long as one GB instance is used to manage a single pebble device, if multiple devices are managed the stored watchapp configuration could be messed up.
2016-11-27 11:31:03 +01:00
Andreas Shimokawa
fa8df9f552
add missing migration script
2016-11-27 10:52:43 +01:00
Andreas Shimokawa
16b4bfd0e7
Pebble LE: also return to control center if successfully initialized
2016-11-27 10:38:16 +01:00
Andreas Shimokawa
723ad53588
Call getDevice always when connected
...
This fixes a longstanding bug where device attributes where ONLY updated when fetching activity data or when pairing a new device
2016-11-27 10:32:56 +01:00
Andreas Shimokawa
24752d3455
Pebble: try harder to get LE address into the database, does not work
2016-11-27 10:10:50 +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
cpfeiffer
2f7eb9ef23
Some more improvements to discovery
...
- pass service uuids to GBDeviceCandaidate so that DeviceCoordinators
can detect devices by their services.
Note: they should not rely on service uuids being available
2016-11-27 02:46:07 +01:00
cpfeiffer
b9ff2cd468
A few improvements to discovery
...
- display the right icon for found device candidates
- scan for specific LE services
2016-11-27 01:09:20 +01:00
Andreas Shimokawa
352fc1a030
fix wrong return value
2016-11-25 14:53:12 +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
2d4645f6cc
Fix only the first day label being displayed in Week Steps charts
2016-11-24 23:35:10 +01:00
Andreas Shimokawa
84caf22479
fix weekly charts to start y axis at 0
2016-11-24 22:27:44 +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
Andreas Shimokawa
9d083e2330
Pebble: add Kickstart Watchface to app manager on FW 4.X
...
I know it only exist on 4.3+, but I am lazy
2016-11-24 22:10:32 +01:00
cpfeiffer
3fdfb7d172
Mi2: Support for setting the fitness goal (steps)
2016-11-24 21:58:32 +01:00
cpfeiffer
9bebf1d32f
When memory is really low, free up some memory #436
...
(although we probably can't save much)
2016-11-24 21:15:27 +01:00
cpfeiffer
60cb67c3c8
Some cleanup
2016-11-24 21:15:27 +01:00
cpfeiffer
cc0fbff297
Set the sample provider in getLatestActivitySample()
2016-11-24 21:15:27 +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
029cc02a29
Pebble: Add Pebble specific pairing activity mainly useful for Pebble 2 since it properly pairs the Pebble after connecting with BLE
...
Fixes #433
2016-11-19 22:13:00 +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
cpfeiffer
51fa31aa66
Fix BLE type conversions problems
2016-11-18 23:36:22 +01:00
Andreas Shimokawa
66e3de9168
Pebble 2: improve connection problems (at least for me)
2016-11-18 22:38:39 +01:00
cpfeiffer
96a16245df
Update to MPAndroidChart 3.0.1
2016-11-18 21:31:55 +01:00
Andreas Shimokawa
d41848014b
fix database schema migration from 13 to 14
2016-11-16 11:37:36 +01:00
Andreas Shimokawa
485cda52a8
Pebble 2: actually report HRM feature to Charts Activity
2016-11-15 23:41:35 +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