Is my e-bike Bafang, Ananda, Dapu or a generic Chinese system?
This flow matches the display, controller and motor on the bike to one of the common Chinese drivetrains so you can pull the correct error code list. The brand on the frame or the listing on the website is not enough, because display, controller and motor often come from three different suppliers on the same bike. Getting that match right is the difference between a one-minute fix and a controller that gets replaced for no reason.
What you need
- The bike itself, with the battery still fitted so the display powers up
- A torch for reading cast-in text on the motor case in low light
- A phone camera to photograph labels, the display and any error code
- The invoice, type plate or original box so supplier names can be checked
- A magnet on a stick to pull a stuck wheel sensor if a hub code points that way
LED patterns and what they mean
| Word BAFANG cast into the motor case | Bafang system, almost always mid-drive or branded hub |
| Motor case marked M followed by three digits (M210, M215, M315, M410, M420, M430, M500, M510, M560, M600, M615, M620 or M820) | Bafang mid-drive, use the Bafang mid-drive error code list |
| Motor case marked H followed by three digits (H305, H405, H410, H550, H560, H650, H700, H720 or H730) | Bafang rear hub, use the Bafang hub code list |
| Display marked DP C followed by three digits, e.g. DP C010, DP C011, DP C018, DP C240 | Bafang display, codes are alphanumeric such as E001 through E030 |
| Display marked SW-LCD, SW900, KM5S or K5242 | King-Meter display family, codes are two-digit numbers |
| Display marked S866 or S830 | Generic Chinese display, codes are two-digit numbers, list varies by firmware |
| Display marked KT-LCD or any KT followed by numbers | KT controller and display family, codes are two-digit numbers |
| Two-digit error code of 09, 33, 35, 37 or 39 with no display name visible | Ananda or Dapu controller, found on Pedego, Kalkhoff, Batavus and Koga bikes |
| Error code in the range 21 to 30 | King-Meter or generic display family, not Bafang |
| Error code in the range 03 to 09 | Either King-Meter K5242 or an Ananda controller |
| Error code 30 appearing on more than one display model | Communication fault on both Bafang and generic systems, treat as wiring first |
Step by step
Power the bike on, photograph the boot screen, then turn the display over and read the white sticker
If OK: Match the display name to the led_table and follow that verdict directly
If not: Move to the motor case and look for any cast-in brand name or model letter
Crouch beside the bike, shine the torch on the flat face of the motor where the cable exits, read with the eye, not the camera
If OK: An M-prefix confirms Bafang mid-drive, an H-prefix confirms Bafang hub, BAFANG with no prefix still points to Bafang
If not: The motor is a generic hub, the system is decided by the display and the code
Photograph the plate under the bottom bracket and any label under the battery, then read the controller box if it is visible behind the seat tube
If OK: You have a named controller, pair it with the display you already found
If not: Treat the bike as a fully generic Chinese system and let the code range decide
Write down the exact code shown, then compare it to the ranges 03 to 09, 21 to 30 and the specific numbers 09, 33, 35, 37, 39
If OK: Use the verdict tied to that range, even if it disagrees with the frame brand
If not: If no code is showing, the bike has not failed yet, skip this flow and go to the no-power page
What you now know for sure
- Bafang mid-drive (M-series): Use the Bafang mid-drive error code list, codes read like E001, E010, E021, E030 and so on → Open the Bafang M-series error code page and start with the exact code on the display
- Bafang rear hub (H-series): Use the Bafang hub code list, codes are alphanumeric and overlap with the mid-drive list in some firmware versions → Open the Bafang H-series page and cross-check with the display model DP C number
- King-Meter display (SW-LCD, SW900, KM5S, K5242): Two-digit codes, expect codes in the 03 to 09 and 21 to 30 ranges, K5242 specifically shows the 03 to 09 set → Open the King-Meter error code page for the exact display model
- Generic display (S866, S830, KT-LCD): Two-digit codes from the generic list, behaviour varies between firmware versions so the same code can mean throttle, brake or hall sensor on different bikes → Open the S866 and KT-LCD page and read the code, then check the matching symptom
- Ananda or Dapu controller: Two-digit codes 09, 33, 35, 37 or 39 are the controller speaking, seen on Pedego, Kalkhoff, Batavus and Koga bikes → Open the Ananda and Dapu page and start at the exact code shown
- Nothing marked anywhere: Generic Chinese system, decide by the code range alone, codes 21 to 30 point to King-Meter or generic, codes 03 to 09 point to K5242 or Ananda → Stay on this page and wait for a code, or open the generic controller page
Manuals and video
Frequently asked
Can I tell which system my e-bike uses from the bicycle brand?
No. Ado, Engwe, Fiido, Eskute, Himiway, Heybike, Cyrusher and most other direct-to-consumer and budget brands use bought-in Chinese systems, and even two bikes of the same brand can carry different controllers in different production runs.
What if nothing is marked on the motor at all?
Then the motor is a generic hub and the system has to be decided from the display and the error code. Codes 21 to 30 point to a King-Meter or generic display, codes 03 to 09 point to a King-Meter K5242 or an Ananda controller, and code 30 means communication fault on both.
Does the model year decide which system is fitted?
No. The same Bafang, King-Meter, KT, Ananda and Dapu parts have been shipped across many model years, so the year on the frame does not narrow the system down, the labels on the display, controller and motor do.