Go to file
Nicolò Balzarotti cc9a1bcfc6 wip: here 2017-02-12 14:30:36 +01:00
.github Fix formatting of issue template, add GB version 2017-01-22 16:53:26 +01:00
.tx Updated translations from transifex (#46) 2015-05-06 17:39:46 +02:00
GBDaoGenerator HPlus: Fix deprecation warning 2017-01-10 13:44:32 +00:00
app wip: here 2017-02-12 14:30:36 +01:00
config Update gradle to 3.0, gradle android plugin to 2.2-beta2 2016-08-26 22:27:17 +02:00
gradle/wrapper Update gradle to 3.0, gradle android plugin to 2.2-beta2 2016-08-26 22:27:17 +02:00
.gitignore More work on firmware detection, recognition and validation #234 2016-03-21 23:42:34 +01:00
.travis.yml Apparently that was too much output for travis... 2016-08-30 00:18:31 +02:00
CHANGELOG.md update CHANGELOG 2017-02-11 22:42:39 +01:00
CONTRIBUTORS.rst Update contributors list and script (so that it only counts contributions to master branch) 2016-12-29 17:14:14 +01:00
Get_it_on_F-Droid.svg.png run optipng on all pngs 2016-09-21 09:25:33 +02:00
HERE.org add Here Active Listening API description 2017-02-12 13:56:41 +01:00
LICENSE Initial commit 2015-01-06 00:19:03 +01:00
LICENSE.artwork update LICENSE.artwork 2015-12-29 20:45:37 +01:00
README.md Added "known issues" item for Mi Band devices about firmware version related issues. #508 2017-01-20 15:33:27 +01:00
build.gradle Mi2: Initial work on firmware update #427 2016-12-11 02:11:58 +01:00
gradle.properties Allow in-process dex with 2GB heap, as recommended 2016-05-08 21:39:55 +02:00
gradlew First checkin of actual code 2015-01-07 14:00:18 +01:00
gradlew.bat First checkin of actual code 2015-01-07 14:00:18 +01:00
settings.gradle Work towards using greenDAO #206 2016-03-28 23:18:23 +02:00

README.md

Gadgetbridge

Gadgetbridge is an Android (4.4+) application which will allow you to use your Pebble or Mi Band without the vendor's closed source application and without the need to create an account and transmit any of your data to the vendor's servers.

Build

Download

Gadgetbridge on F-Droid

List of changes

Supported Devices

  • Pebble, Pebble Steel, Pebble Time, Pebble Time Steel, Pebble Time Round
  • Pebble 2, Pebble Time 2 (experimental, PAIR WITHIN GADGETBRIDGE)
  • Mi Band, Mi Band 1A, Mi Band 1S
  • Mi Band 2
  • Vibratissimo (experimental)
  • Liveview
  • HPlus Devices (e.g. ZeBand)

Features (Pebble)

  • Incoming calls notification and display
  • Outgoing call display
  • Reject/hangup calls
  • SMS notification
  • K-9 Mail notification support
  • Support for generic notifications (above filtered out)
  • Support for up to 16 predefined replies for SMS and Android Wear compatible notifications (experimental, tested with Signal)
  • Dismiss individual notifications, mute or open corresponding app on phone from the action menu (generic notifications)
  • Dismiss all notifications from the action menu (non-generic notifications)
  • Music playback info (artist, album, track)
  • Music control: play/pause, next track, previous track, volume up, volume down
  • List and remove installed apps/watchfaces
  • Install watchfaces and watchapps (.pbw)
  • Install firmware files (.pbz) READ THE WIKI
  • Install language files (.pbl)
  • Take and share screenshots from the Pebble's screen
  • PebbleKit support for 3rd Party Android Apps (experimental)
  • Fetch activity data from Pebble Health, Misfit and Morpheuz (experimental)
  • Configure watchfaces / apps (limited compatibility, experimental)

Notes about Firmware >=3.0 (Pebble Time, updated OG)

  • Gadgetbridge will keep track of installed watchfaces, but if the Pebble is used with another phone or another app, the information displayed in the app manager can get out of sync since it is impossible to query Firmware >= 3.x for installed apps/watchfaces.

Getting Started (Pebble)

  1. Pair your Pebble through the Android's Bluetooth Settings or Gadgetbridge. Pebble 2 MUST be paired though Gadgetbridge (tap on the + in Control Center)
  2. Start Gadgetbridge, tap on the device you want to connect to
  3. To test, choose "Debug" from the menu and play around

For more information read this wiki article

Features (Mi Band 1x)

  • Discovery and pairing
  • Mi Band notifications (LEDs + vibration) for
  • Display live activity data (alpha)
    • Incoming calls
    • SMS received
    • K-9 mails received
    • Conversations messages
    • Generic Android notifications
  • Synchronize the time to the Mi Band
  • Display firmware version and battery state
  • Firmware update
  • Heart rate measurement on demand and during sleep
  • Synchronize activity data
  • Display sleep data (alpha)
  • Display sports data (step count) (alpha)
  • Display live activity data (alpha)
  • Set alarms on the Mi Band

Features (Mi Band 2)

  • Discovery and pairing
  • Mi Band notifications (Display + vibration) for
    • Incoming calls
    • SMS received
    • K-9 mails received
    • Conversations messages
    • Generic Android notifications
  • Synchronize the time to the Mi Band 2
  • Display firmware version
  • Firmware update (beta)
  • Heart rate measurement on demand and during sleep
  • Synchronize activity data (alpha)
  • Set alarms on the Mi Band 2

How to use (Mi Band 1+2)

  • When starting Gadgetbridge the first time, it will automatically attempt to discover and pair your Mi Band. Alternatively you can invoke discovery manually via the "+" button. It will ask you for some personal info that appears to be needed for proper steps calculation on the band. If you do not provide these, some hardcoded default "dummy" values will be used instead.

    When your Mi Band starts to vibrate and blink during the pairing process, tap it quickly a few times in a row to confirm the pairing with the band.

  1. Configure other notifications as desired
  2. Go back to the "Gadgetbridge" activity
  3. Tap the Mi Band item to connect if you're not connected yet
  4. To test, chose "Debug" from the menu and play around

Known Issues:

  • The initial connection to a Mi Band sometimes takes a little patience. Try to connect a few times, wait, and try connecting again. This only happens until you have "bonded" with the Mi Band, i.e. until it knows your MAC address. This behavior may also only occur with older firmware versions.
  • If you use other apps like Mi Fit, and "bonding" with Gadgetbridge does not work, please try to unpair the band in the other app and try again with Gadgetbridge.
  • While all Mi Band devices are supported, some firmware versions might work better than others. You can consult the projects wiki pages to check if your firmware version is fully supported or if an upgrade/downgrade might be beneficial.

Features (Liveview)

  • set time (automatically upon connection)
  • display notifications and vibrate

Authors

Core Team (in order of first code contribution)

  • Andreas Shimokawa
  • Carsten Pfeiffer
  • Daniele Gobbetti

Additional device support

  • João Paulo Barraca (HPlus)

Contribute

Contributions are welcome, be it feedback, bugreports, documentation, translation, research or code. Feel free to work on any of the open issues; just leave a comment that you're working on one to avoid duplicated work.

Translations can be contributed via https://www.transifex.com/projects/p/gadgetbridge/resource/strings/ or manually.

Do you have further questions or feedback?

Feel free to open an issue on our issue tracker, but please:

  • do not use the issue tracker as a forum, do not ask for ETAs and read the issue conversation before posting
  • use the search functionality to ensure that your question wasn't already answered. Don't forget to check the closed issues as well!
  • remember that this is a community project, people are contributing in their free time because they like doing so: don't take the fun away! Be kind and constructive.

Having problems?

  1. Open Gadgetbridge's settings and check the option to write log files
  2. Reproduce the problem you encountered
  3. Check the logfile at /sdcard/Android/data/nodomain.freeyourgadget.gadgetbridge/files/gadgetbridge.log
  4. File an issue at https://github.com/Freeyourgadget/Gadgetbridge/issues/new and possibly provide the logfile

Alternatively you may use the standard logcat functionality to access the log.