Which drive system does my e-bike actually run?
This flow walks a rider from the bike in front of them to a confirmed drive system in five minutes. The system name is what selects the correct error-code list and the correct spare parts, so a wrong guess costs time and money. A photo of the motor and the display is enough for any workshop to name the system for you.
What you need
- The bike itself, on a stand or turned upside down
- A torch for reading the motor case in shadow
- A phone camera to capture the motor and the display
- The dealer invoice or frame type plate if available
- The phone the bike is paired with, to check the app
LED patterns and what they mean
| BOSCH cast or printed on the motor case near the bottom bracket | Bosch mid-drive (Active Line, Performance Line, CX, or Cargo Line) |
| SHIMANO STEPS cast or printed on the motor case | Shimano Steps (E5000, E6100, E7000, E8000, EP6, or EP8) |
| YAMAHA, BROSE, BAFANG, FAZUA, TQ, or Panasonic cast on the motor case | That maker's mid-drive system, confirmed without further checks |
| Display reads Intuvia, Purion, Kiox, Nyon, or System Controller | Bosch system, regardless of bicycle brand |
| Display reads SC-E5003, SC-E7000, or SC-EM800 | Shimano Steps E5000, E7000, or EP8 generation respectively |
| Display reads Interface X, Display A, or Display C | Yamaha PW-series system |
| Display reads MasterMind, TCD, or TCU | Specialized system with TCU on the top tube |
| Display reads DP C series, DP E series, SW-LCD, KM5S, S866, S830, or KT-LCD | Bafang or generic Chinese hub-motor controller |
| Battery label reads PowerPack or PowerTube | Bosch system, codes follow Bosch error format |
| Battery label reads BT-E8010, BT-E8035, or BT-E8036 | Shimano Steps system, codes follow Shimano E-TUBE format |
| Unbranded battery with a 3-pin discharge plug and no maker name | Bafang or generic hub-motor system, common on conversion and budget e-bikes |
| Phone pairs with Bosch eBike Flow, eBike Connect, Shimano E-TUBE, Bafang Go, Mahle MySmartBike, Fazua, TQ, or Yamaha app | Confirms the maker of the drive system directly |
Step by step
Switch the bike on and look at the model name printed on the bezel or shown in the settings menu
If OK: Note the display name and jump to the matching verdict below
If not: Move to the motor case, the display may be a third-party unit that hides the system
Crouch beside the bike, shine the torch on the case near the bottom bracket (mid-drive) or on the side plate of the hub (hub motor)
If OK: BOSCH, SHIMANO STEPS, YAMAHA, BROSE, BAFANG, FAZUA, TQ, or Panasonic is your system
If not: Some hub motors only carry a model sticker, not a maker name, so proceed to the battery
Remove the battery if it is removable, or read the sticker visible through the frame cutout; note the part number
If OK: PowerPack, PowerTube, BT-E8010, BT-E8035, BT-E8036, or a labelled Yamaha pack identifies the maker
If not: An unbranded pack with a 3-pin discharge plug points to Bafang or a generic hub system
Open Bluetooth settings and look for the app name, or read the pairing instructions in the manual
If OK: Bosch eBike Flow, eBike Connect, Shimano E-TUBE, Bafang Go, Mahle MySmartBike, Fazua, TQ, or Yamaha app confirms the system
If not: No app pairing means an older or simpler system; use the type plate next
Look under the bottom bracket shell or on the seat tube for a sticker listing motor and battery type; the invoice lists the same data in plain text
If OK: Use the motor and battery type printed there as the final confirmation
If not: Take clear photos of the motor, the display, and the battery label and ask the workshop to identify the system
What you now know for sure
- Bosch (Active Line, Performance Line, CX, Cargo Line): Bosch error codes in the format W and a number, plus blinking LED patterns on Kiox and Nyon; use the Bosch diagnostic page → Open the Bosch error-code list and the Bosch diagnostic flow for your display generation
- Shimano Steps (E5000, E6100, E7000, E8000, EP6, EP8): Shimano error codes read out as E-number on the display and in the E-TUBE app; SC-E7000 and SC-EM800 each have their own code map → Open the Shimano Steps error-code list for your specific display model
- Yamaha PW-series: Yamaha error codes shown as E-number on Display A, Display C, or Interface X; the Interface X generation uses different blink codes than the older displays → Open the Yamaha error-code list and note which display generation you have
- Specialized (MasterMind, TCD, TCU): Specialized error codes surface in the Mission Control app as well as on the TCU; TCD-wired bikes use a different code format than MasterMind → Open the Specialized error-code list and confirm whether the bike has a TCU or a MasterMind unit
- Bafang or generic hub-motor system: Codes are read directly on DP C, DP E, SW-LCD, KM5S, S866, S830, or KT-LCD displays as E-numbers; error 07 and error 30 are common across generic Chinese controllers → Open the generic hub-motor error-code list and match your controller model
- Fazua, TQ, Brose, Panasonic, Mahle, Ananda, Dapu: Each maker publishes its own code map; Fazua codes appear in the Fazua app, TQ codes on the TQ display, Brose codes on the Brose display → Open the matching maker page from the drive-system index and follow its diagnostic flow
Frequently asked
Can I tell the drive system from the bicycle brand alone?
No. Gazelle, Trek, Cube, Stella, Ado, and Rad Power each fit two or three different systems in the same model year, so the brand never selects the code list. Read the maker name on the motor case or the display model instead.
What if nothing is cast or printed on the motor?
Some hub motors carry only a model sticker on the side plate, and a few cheap units carry no name at all. Move on to the display name, the battery part number, and the app it pairs with; any one of those will name the system.
Does the model year decide which system the bike has?
No. Manufacturers swap suppliers between seasons, so a 2022 Trek and a 2024 Trek of the same model name can ship with different drives. Always confirm against the motor case, the display, or the type plate.