CAN-FD to ANT+/BLE bridge for Bosch eBike Smart System (BES3) — hardware design and firmware
  • C 96.9%
  • Makefile 3.1%
Find a file
Diyon 13862998ae fix: BOM mark uncertain parts for manual verification
Parts needing lcsc.com verification:
- D1 SMAJ15A: need correct LCSC for Littelfuse SMAJ15A
- U1 RT8294BZH: search RT8294BZ on lcsc.com
- J1 JST-PH 4-pin: search JST-PH SMD on lcsc.com
2026-04-15 18:35:01 +00:00
docs feat(hw): PCB v3.0 — all fixes applied 2026-04-15 18:25:10 +00:00
firmware fix: v2.0 power architecture — XIAO VBUS/Buck-to-5V, D9=P1.14 2026-04-15 17:56:58 +00:00
hardware/kicad fix: BOM mark uncertain parts for manual verification 2026-04-15 18:35:01 +00:00
.gitignore feat: BLE advertising + all firmware updates 2026-04-15 16:39:17 +00:00
CONTRIBUTING.md docs: initial project structure and documentation 2026-04-15 09:27:54 +00:00
README.md docs: add BOM with Sebastian's actual parts (MP1584N, MCP2518FD, XIAO nRF52840) 2026-04-15 12:31:32 +00:00

BES3-ANT+ Bridge

CAN-FD to ANT+/BLE bridge for the Bosch eBike Smart System (BES3)

Reads telemetry from the 12V display connector and broadcasts it over ANT+ (and BLE) to Garmin devices, smartphones, etc.

Overview

The Bosch Smart System (BES3) uses CAN-FD instead of classic CAN. This project implements a small hardware module that:

  1. Connects to the 12V display port on the eBike
  2. Listens on the CAN-FD bus (listen-only, no interference)
  3. Translates Bosch-specific CAN frames to ANT+ LEV pages
  4. Broadcasts over ANT+ (2.4 GHz) and optionally BLE

Hardware

See docs/hardware/

  • MCU: Seeed Studio XIAO nRF52840 (ARM Cortex-M4F + ANT+/BLE radio)
  • CAN-FD Controller: Microchip MCP2518FD
  • CAN Transceiver: Microchip ATA6563
  • Power: MP1584N Buck Converter Module (3.3V output) — from AliExpress/eBay
  • Form Factor: ~50mm × 25mm target

Firmware

See firmware/

  • Zephyr RTOS based
  • ANT+ LEV profile implementation
  • Listen-only CAN-FD paser for BES3 frame IDs

Documentation

Document Description
System Overview High-level architecture
Power Supply Design 12V input, transient protection, buck converter
BOM Parts list with actual sourced modules
CAN-FD Interface MCP2518FD hookup, BES3 frame IDs
ANT+ LEV Profile Data pages, scaling, timing
PCB Design Notes Layout guidelines, EMI considerations
Sources & References Datasheets, related projects, tools

Status

  • Hardware v0.1 (KiCad)
  • Power supply validation
  • CAN-FD sniffer FW + bus analysis
  • ANT+ LEV implementation
  • BLE GATT profile
  • Prototype assembly
  • Field testing

Alternatives

BLE-Based (No Extra Hardware)

If you don't want to build hardware, there's an Android-only solution:

  • Bosch-Smart-System-Ebike-Garmin — Open source Android app that connects to BES3 via BLE and rebroadcasts data as a BLE sensor for Garmin devices.
    • Pro: No hardware needed, works with any phone
    • Con: Phone must stay connected during the ride
    • Decoded data: Battery %, Assist Mode, Human/Motor Power, Speed, Cadence, Torque

Commercial Hardware

  • Bulcan (€199) — Ready-to-buy BES3 → ANT+ bridge. Closed source but validates the same bus parameters from this project.

Contributing

See CONTRIBUTING.md. All contributions via merge requests.

License

MIT