Andreas Shimokawa
fe07e09d41
Fix firmware installation on Pebble Time Round
...
Closes #602
2017-03-17 22:34:50 +01:00
Andreas Shimokawa
06c89b508e
Merge branch 'master' into background-javascript
2017-03-16 18:01:51 +01:00
License Bot
6a842c52fa
Update license header in all java files.
2017-03-16 17:36:15 +01:00
cpfeiffer
d408be5ec8
Mi2: make text/icon notifications confiurable and version dependent
2017-03-15 00:26:39 +01:00
cpfeiffer
cf35e84feb
Mi2: add hint about font installation for text notifications
2017-03-14 23:54:56 +01:00
cpfeiffer
5d96df3508
Mi2: add hint about intermediate firmware 1.0.0.53
2017-03-14 23:45:30 +01:00
cpfeiffer
17ecee0cab
Mi2: initial support for text notifications and icons
...
See #560
2017-03-14 00:45:54 +01:00
Andreas Shimokawa
09f3dad9ff
Merge branch 'master' into background-javascript
2017-03-11 22:03:29 +01:00
Daniele Gobbetti
0ac77fc0a4
Remove the legacy ControlCenter and its usages. Add New GUI to the changelog.
2017-03-11 19:49:57 +01:00
Andreas Shimokawa
33bf2994a9
Merge branch 'master' into background-javascript
2017-03-11 11:36:00 +01:00
Andreas Shimokawa
fe870ebc77
Move step goal generic, show proper sleep goal in weekly sleep goal
...
It is now also accessible via "About You" but still remains in the Mi Band Settings
(because it has to be setup initially by a "wizard")
2017-03-11 11:34:03 +01:00
Translation Bot
a14e14eeb9
Merge branch 'master' into background-javascript
2017-03-10 23:14:40 +01:00
License Bot
e392fbfd80
Add license header to all java files.
2017-03-10 14:53:19 +01:00
Andreas Shimokawa
942984dec2
Merge branch 'master' into background-javascript
2017-03-08 10:24:31 +01:00
cpfeiffer
31e0e9a5f7
Mi2: More internal cleanup from initial Mi1 copy&paste
2017-03-05 21:45:39 +01:00
cpfeiffer
f6bee00582
Mi2: some internal cleanups/renamings
2017-03-05 21:27:47 +01:00
cpfeiffer
88b35c6eec
Mi2: rename some constants + add two
2017-03-05 10:43:19 +01:00
Andreas Shimokawa
21b90d1e6e
Merge branch 'master' into background-javascript
2017-03-04 13:27:34 +01:00
Andreas Shimokawa
90c61cb71c
Merge branch 'master' into background-javascript
2017-03-04 13:24:44 +01:00
cpfeiffer
09967b2006
Mi2: follow 12h/24h system configuration
...
=> Remove custom preference option, #573
2017-03-03 22:32:54 +01:00
cpfeiffer
82ea5702c5
Mi2: configurable time format (12h/24h)
...
Fixes #573
2017-03-03 22:14:28 +01:00
cpfeiffer
4419200624
Mi2: Initial support for textual notifications #560
2017-03-03 20:12:43 +01:00
Andreas Shimokawa
181b33d6be
Merge branch 'master' into background-javascript
2017-02-27 22:11:41 +01:00
cpfeiffer
19b0e5e801
Centralize icons for devices
2017-02-26 22:46:49 +01:00
cpfeiffer
53dbc54041
Only start the webview when needed
2017-02-25 22:02:40 +01:00
Daniele Gobbetti
2eb43fa740
Pebble: Fix for week sleep chart amounts (the colors are still wrong)
2017-02-25 12:52:24 +01:00
cpfeiffer
337bfa1938
Handle button presses and log them
...
See #556
2017-02-21 21:41:21 +01:00
cpfeiffer
4f0674d038
Support for alarm clock notifications for Mi1 + Mi2 #538
...
No support for Pebble and HPlus for now.
Atm relies on the CM deskclock alarm, which nicely broadcasts
events about the current alarm. See
https://github.com/CyanogenMod/android_packages_apps_DeskClock.git
2017-02-07 23:49:10 +01:00
Andreas Shimokawa
b6852308b7
Merge pull request #546 from jpbarraca/hplus-preferences
...
HPlus: add device specific preferences and icon
2017-02-06 18:50:40 +01:00
Andreas Shimokawa
32a326c24b
Merge pull request #543 from jpbarraca/hplus-alarm-clear
...
HPlus: Clear Alarms
2017-02-06 18:49:28 +01:00
João Paulo Barraca
475426c0ed
Merge branch 'master' into hplus-preferences
2017-02-06 01:39:45 +00:00
João Paulo Barraca
a3cc84c01d
HPlus: add device specific preferences and icon
2017-02-06 01:33:15 +00:00
João Paulo Barraca
bf8ae5d5af
HPlus: Add constant ARG_ALARM_DISABLE
2017-02-05 23:55:48 +00:00
Andreas Shimokawa
b3cddebdbb
Pebble: ensure a better error message if someone tries to install a FW 1.x pbw
2017-02-05 22:50:42 +01:00
João Paulo Barraca
006a23dfe8
HPlus: Fix time sync and Time format (12/24)
2017-02-03 19:30:59 +00:00
Andreas Shimokawa
22cf74bbd1
Merge pull request #532 from jpbarraca/alarm
...
HPlus: Working alarms and small cleanup
2017-02-03 14:02:29 +01:00
João Paulo Barraca
f79e8f8833
HPlus: Working alarms and small cleanup
2017-01-30 23:37:47 +00:00
cpfeiffer
2ae4497261
Mi2: the only reason I can see for detecting MiBandSupport for Mi2
...
Fixes #529 , hopefully
2017-01-28 23:25:15 +01:00
cpfeiffer
ec6a8b6743
MI: some more logging
2017-01-28 23:25:15 +01:00
cpfeiffer
ba7d13fa5d
Disable smart alarms for Mi2
...
Closes #471
2017-01-26 21:09:49 +01:00
João Paulo Barraca
b3e1cbf55e
HPlus: Support of Makibes F68 and small fixes to HPlus devices
2017-01-26 13:02:58 +00:00
cpfeiffer
ac68bfe351
Mi Band 1+2: backend implementation of making BT pairing optional
...
- cleaned up the DeviceService.connect() variants
- discovery: pass the device candidate around instead of the mac address
Attempts to fix #512 , #514 , #518
2017-01-26 00:16:38 +01:00
cpfeiffer
4c26c2933b
Mi Band 1+2: make BT pairing optional
...
(Attemts to fix #512 , #514 , #518 )
2017-01-26 00:16:38 +01:00
cpfeiffer
d103d09fcf
Mi Band: just a method rename
2017-01-26 00:16:38 +01:00
João Paulo Barraca
1f083041b9
HPlus: Improve display of new messages and phone calls
2017-01-24 01:44:30 +00:00
Andreas Shimokawa
ed020c2a97
Pebble: raise limit of appinfo.json. Some pbws have huge ones :/
...
Fixes #505
2017-01-18 21:47:15 +01:00
João Paulo Barraca
13ec497127
Merge branch 'master' of https://github.com/Freeyourgadget/Gadgetbridge into hplus-handle-data
2017-01-10 13:23:23 +00:00
João Paulo Barraca
4cf872664c
HPlus: Improved support for storing and displaying data.
2017-01-10 13:08:45 +00:00
Andreas Shimokawa
3644d5e7a6
Pebble: remove notifications when dismissed on the phone ( #326 )
...
Most of the code is generic, so it could be implemented by other devices.
I dont know what happens if multiple messages arrive in the same notification.
So, this is experimental.
2017-01-09 16:33:00 +01:00
João Paulo Barraca
9d67394720
HPlus: Code cleanup
2017-01-04 01:46:24 +00:00
João Paulo Barraca
547736f8f7
HPlus: removed test values
2017-01-02 10:13:34 +00:00
João Paulo Barraca
1fb4ee8a8f
HPlus: Basic support for data synchronization
2017-01-02 00:58:37 +00:00
Andreas Shimokawa
266c6b8817
Pebble: send weather to Pebble when we get notified by weather notification
2016-12-31 15:56:05 +01:00
cpfeiffer
df1fe7c5b8
Port to UriHelper
2016-12-29 01:46:00 +01:00
cpfeiffer
aadde7d1ca
Port to UriHelper, fix potential resource leak
2016-12-29 01:41:47 +01:00
cpfeiffer
a96a747119
Pebble: fix resource leak on app installation
2016-12-29 01:29:28 +01:00
João Paulo Barraca
a135f51d31
HPlus: Improve initial configuration process and refactor constants
2016-12-28 13:53:17 +00:00
João Paulo Barraca
fed5638782
HPlus: Refactor Sex into Gender and convert value appropriatelly
2016-12-28 13:50:56 +00:00
Daniele Gobbetti
4ce890b5ce
Pebble: support opening files from the system share intent
2016-12-27 13:02:02 +01:00
Andreas Shimokawa
3441192d19
Pebble 2: Fix Pebble Classic FW 3.x app variant being priorized over native Pebble 2 app variant
...
Fixes #475
2016-12-25 23:11:49 +01:00
João Paulo Barraca
649e20ad04
HPlus: Ignore duplicated messages from band
2016-12-24 00:05:51 +00:00
João Paulo Barraca
cd915598b0
HPlus: Improved handling of incomming calls
2016-12-23 11:46:20 +00:00
João Paulo Barraca
2b78f2708f
Cleanup according to PR Review
2016-12-23 01:21:05 +00:00
João Paulo Barraca
b7cd908fbe
Improved device filter by considering the existence of a service UUID
2016-12-23 00:10:38 +00:00
João Paulo Barraca
6c186329df
Cleanup HPlusSampleProvider
2016-12-23 00:08:14 +00:00
João Paulo Barraca
ae9ebc1be8
Refactoring some parts. Added support for param synchronisation with band
2016-12-21 23:57:57 +00:00
João Paulo Barraca
5b3ef8999f
Add preliminary support for HPlus devices, such as the Zeblaze Zeband (and many others)
...
Working: Text and call notifications, setting most user data, date and time, heart rate monitoring, sleep monitoring (alfa)
2016-12-21 12:51:25 +00: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
bcfc8bc110
Mi1/Mi2: fix firmware file probing for the different devices
2016-12-11 23:30:20 +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
17b581022b
optimize imports
2016-12-09 20:14:17 +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
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
cpfeiffer
44f74270df
Mi2: Experimental support for activity recognition
2016-12-02 00:22:06 +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
cpfeiffer
011646b097
Fix activity data on Mi Band 1 #440
2016-11-29 22:22:54 +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
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
cpfeiffer
3fdfb7d172
Mi2: Support for setting the fitness goal (steps)
2016-11-24 21:58:32 +01:00
cpfeiffer
cc0fbff297
Set the sample provider in getLatestActivitySample()
2016-11-24 21:15:27 +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
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
485cda52a8
Pebble 2: actually report HRM feature to Charts Activity
2016-11-15 23:41:35 +01:00
cpfeiffer
d8145a52f9
Activate the display when lifting the wrist #323
...
Configurable, defaults to true
2016-11-13 21:47:54 +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
cpfeiffer
a941a6cd5f
Make some strings translatable
2016-10-28 23:47:39 +02:00
Andreas Shimokawa
d3571d53b2
Mi Band: allow to remove mac address from preferences
...
(this allows to clear an extra mi band from the control center)
Evil hack...
2016-10-26 00:03:54 +02:00
Daniele Gobbetti
1f77e3e84f
Coordinator: add explicit methods to determine if the device supports app management and which class is responsible for it.
2016-10-25 17:39:11 +02:00
cpfeiffer
a39e3a035c
Move device deletion logic to DeviceCoordinator and subclasses
2016-10-24 20:02:44 +02:00
cpfeiffer
3a12ffd42d
Mi2: Fix for alarm enablement. Was too late, apparently.
2016-10-23 22:38:57 +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
a559140f67
Fix the previous fix ;-)
2016-10-11 21:35:45 +02:00
cpfeiffer
1fc44034f0
Also use getGenericType() for the "summary" types
2016-10-11 21:28:28 +02:00
cpfeiffer
f1243f52c1
Deactivate some unsupported things for Mi2
2016-10-11 20:23:25 +02:00
Andreas Shimokawa
c65a0a16de
fix mi band try vibration buttons
2016-10-11 17:57:50 +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
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
7479c3d420
Whitelist 4.16.4.22 #369
2016-10-05 23:17:02 +02:00
cpfeiffer
5bdc7933b3
Somewhat hacky support for Mi2 notification icons #323
2016-10-02 23:04:59 +02:00
cpfeiffer
e3f15f7bd8
Sort devices lexicographically
2016-09-29 22:56:16 +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
696611d392
Do not show "your activity" if activity tracking is not supported
2016-09-20 22:02:40 +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
b2669d6fd7
Match manufacturer string with what we get from BLE device info
2016-09-19 15:00:24 +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
JohnnySun
90d730bdc8
Added miband2 connection support
2016-09-13 01:28:50 +08:00
cpfeiffer
411a90326e
Fix method name
2016-09-04 22:39:35 +02:00
cpfeiffer
cd535a0a45
Include known devices from the database in CC
...
(as long as device-support is still available)
Fixes non-paired devices not being displayed
2016-08-31 00:33:54 +02:00
cpfeiffer
bfaaed7e5c
Detcach samples from the session after querying, to save memory
2016-08-27 21:40:46 +02:00
cpfeiffer
ec9e999be1
Lots of documentation
2016-08-27 16:44:47 +02:00
cpfeiffer
ec0db033b1
Avoid potential NPE when subclasses return null for rawKindSampleProperty
2016-08-27 15:36:42 +02:00
cpfeiffer
c59553c9c9
Rename GBDevice#hardwareVersion to model
...
(e.g. while DeviceType is "PEBBLE" in general, the model
might specify a Pebble Time or Time Steel.
2016-08-26 20:57:59 +02:00
Daniele Gobbetti
0126b90f20
Store the timestamps as sent by the pebble. Use a strict inequality operator at the end of the period to exclude the last sample.
2016-08-18 21:44:06 +02:00
cpfeiffer
fbf06c1fe3
Separate coordinator and support instances for Mi1 and Mi2 #323
...
+ Some more testing stuff for Mi2
2016-08-17 00:53:16 +02:00
Andreas Shimokawa
359ed46b06
db refactoring: remove raw activity kind field from pebble health minute data, add a blob column for raw undecoded health minute data.
...
also:
- change column order for all pebble related minute data tables (mandatory stuff first, then custom columns, for easier addition of new columns)
- remove unused code
TODO:
- fix column order in Mi Band table also
2016-08-10 23:06:07 +02:00
Daniele Gobbetti
23c289ce1a
Use the real raw values as received by the device.
...
Some types were also added, even though they are educated guesses.
2016-08-09 20:22:05 +02:00
Daniele Gobbetti
22d0387f76
Fix the comparison order again ,as it was correct originally.
...
Partial revert of 5cfddbb7e9
2016-08-09 20:05:42 +02:00
Daniele Gobbetti
5cfddbb7e9
Use the right properties to build the query and fix the comparison operators.
...
Performance: iterate first on the smaller dataset.
2016-08-09 17:52:07 +02:00
Andreas Shimokawa
fe5ec74ca1
Pebble Health: read overlay data in sample provider and patch in raw kind
...
completely untested
2016-08-09 11:56:05 +02:00
Andreas Shimokawa
af58b4600d
whoops
2016-08-07 12:15:40 +02:00
Andreas Shimokawa
c4f83d68cd
refactoring: add generic support for manually filtering samples by acticty kind in AbstractSampleProvider
...
This allows a lot of simplifications for Morpheuz and Misfit
2016-08-07 11:45:09 +02:00
Andreas Shimokawa
6b2565e4c9
DB refactoring: remove activity type from Morpheuz database, determinate it in PebbleMorpheuzSampleProvider instead
2016-08-07 01:47:15 +02:00
cpfeiffer
a7b9ae5596
whitelist fw 4.15.12.10 #369
2016-08-04 00:05:58 +02:00
cpfeiffer
43d7566c0b
some more microsteps #206
2016-08-01 22:18:57 +02:00
Andreas Shimokawa
8ba1ae3f3e
create extra table for Morpheuz, remove more unused stuff
...
Pebble activity tracker now do not share a common base anymore.
TODO: consider creating a custom way of querying activity types like in Misfit. The activity kind stored in the database now is solely based on the intensity, so it is redundant.
(#206 )
2016-07-31 00:06:26 +02:00
Andreas Shimokawa
eabe625c47
rename some classes, remove obsolete ones
2016-07-30 23:22:27 +02:00
Andreas Shimokawa
8ea29e6e1d
Refactor database / sample access ( #206 )
...
We now have separate tables for each provider's samples but a common interface.
2016-07-27 23:34:13 +02:00
Andreas Shimokawa
726f767576
work towards a Pebble Misfit raw sample table
2016-07-25 22:19:39 +02:00
cpfeiffer
f5ba09ebe0
Some babysteps towards miband2 support #323
...
Start to implement standard BLE profiles/services.
2016-07-25 00:00:22 +02:00
cpfeiffer
df59ce7b96
Switch light sleep and deep sleep #250
...
Apparently REM is considered deep sleep and NREM is considered light
sleep even though NREM (non-rapid-eye-movement) phase 3 is actually
defined as deep sleep.
2016-07-19 20:43:28 +02:00
cpfeiffer
7b26986ab0
Fix for #349
...
We must not use UUID_CHAR_PAIR anymore. This prevents connecting
without being bonded. Connecting when bonded still works.
As without bonding, ControlCenter would not display the device anymore,
we have to re-install the "remember last connected device" in the
preferences thing.
2016-07-15 00:13:49 +02:00
cpfeiffer
ebda3e1535
uncomment some constants
2016-07-14 20:37:20 +02:00
cpfeiffer
aa00d2f93a
Avoid NPEs when device-name is null
2016-07-12 00:24:23 +02:00
cpfeiffer
76895aa2b1
Register to device name and alias changes and update accordingly
2016-07-11 00:28:15 +02:00
cpfeiffer
80930ce42a
More logging for pairing, destroy pairing activity when bonding failed #349
2016-07-10 00:11:28 +02:00