bg443/BikeBridge
1
10
Fork
You've already forked BikeBridge
3
Companion app for e-bikes and components
  • Kotlin 99.6%
  • Shell 0.4%
Find a file
bg443 8214a40154
All checks were successful
Build debug / build (push) Successful in 3m10s
Fix crash on ScanScreen
2026年07月09日 18:16:27 +01:00
.forgejo/workflows Fix CI 2026年07月04日 21:05:03 +01:00
.idea Update .idea 2026年07月01日 19:40:29 +01:00
app Fix crash on ScanScreen 2026年07月09日 18:16:27 +01:00
assets Update README 2025年09月06日 10:05:52 +01:00
docs Update support.md 2026年03月08日 16:19:26 +00:00
fastlane/metadata/android/en-US Add passkey write for Shimano EP8 2026年03月05日 17:12:51 +00:00
gradle Add Bosch LDI protobuf scaffolding 2026年07月06日 23:54:11 +02:00
scripts Preserve alignment in apksigner 2025年11月21日 17:42:05 +00:00
.gitignore BikeBridge 2025年08月31日 17:08:38 +01:00
.woodpecker.yml BikeBridge 2025年08月31日 17:08:38 +01:00
build.gradle.kts Add protobuf scaffolding and Bosch LDI protobuf ( #10 ) 2026年07月01日 19:41:29 +01:00
gradle.properties Add Bosch LDI protobuf scaffolding 2026年07月06日 23:54:11 +02:00
gradlew BikeBridge 2025年08月31日 17:08:38 +01:00
gradlew.bat BikeBridge 2025年08月31日 17:08:38 +01:00
LICENSE BikeBridge 2025年08月31日 17:08:38 +01:00
README.md Update README 2026年03月09日 18:07:25 +00:00
settings.gradle.kts BikeBridge 2025年08月31日 17:08:38 +01:00

BikeBridge

Companion for e-bikes using BLE

⚠️ This app is a work in progress ⚠️

Please read below about bike support

About

BikeBridge is a companion app for your e-bike, providing real-time information from your bike and components.

All raw data received from the bike, and sent to the bike (by BikeBridge) is transparent and viewable.

All Bluetooth data and parsers can be found below:

You are also able to send custom payloads to any Bluetooth characteristic on the bike.

Features

  • See statistics (e.g. speed, total distance, gear) in real-time
  • See all raw data transmitted/received to/from bike
  • Send custom payloads
  • Change settings on bike (see support)
  • See bike info (e.g. serial number, MAC address, etc.)
  • HUD

Install

Prebuilt binaries


Build from source

./gradlew :app:assembleRelease

Screenshots

Bike Support

Manufacturer Series Supported
Shimano EP8 Yes
SRAM Eagle AXS Yes

Note: even if your manufacturer/series isn't explicitly listed above, BikeBridge will still try to fetch and display as much information as possible.

For a more detailed table, see advanced support

BikeBridge has only been tested on a Shimano EP8 (Canyon) as that is all I have access to.

Any features added to a bike (e.g. reading total distance) are added through reverse engineering, and can therefore take some time to develop.

Submitting logs

BikeBridge allows you to see all data transmitted to or received from the bike by enabling logs in the settings screen.

Please enable Log GATT table as this shows possible data points that could be queried/written to by BikeBridge.

Censor the log to hide your device serial number and MAC address.

Capturing BLE communication

The most useful information comes from a sniffed connection as it represents what BikeBridge will need to do under the hood.

There are numerous RF sniffers that support Bluetooth low energy or an Android device can be used.

For encrypted/bonded BLE connections, crackle can be used in post to brute-force the temporary key, provided the pairing process was observed.

BikeBridge has Wireshark Post-Dissectors to aid in reverse engineering.

Permissions

BikeBridge requires a few permissions in order to function:

  • BLUETOOTH/BLUETOOTH_SCAN/BLUETOOTH_ADMIN - used to send and receive data to and from the bike
  • ACCESS_COARSE_LOCATION/ACCESS_FINE_LOCATION - required for Bluetooth scanning

BikeBridge does not, and never will, require an internet connection.

License


BikeBridge is free software: you can redistribute it and/or modify it under the terms of the GNU GPL-3.0-or-later License as published by the Free Software Foundation.

This software is provided with no warranty.