Charcoal bags

Charcoal bags

Search This Blog

Bafang/8Fun BPM hub motor review



BPM motors are heavy, strong, low cost and durable. However their speeds are unclear and they are marketed with inaccurate ratings.

Motor label (code)
no load rpm with 36v battery
max powered rpm at 36v*
peak Amps with Con92 controller
No load rpm with 48v battery
BPM 500w 26 (13)
218 (measured)

BPM 350w 26 (12)
238, 231 (measured)
(=29.5km/h in 26” wheel)
~210 (by feel, riding)
(= 26km/h in 26” wheel)

BPM 350w 20 (10)
270 (measured)
~235 (by feel, riding)
350rpm (measured)
(= 43.4km/h in 26” wheel)
*maximum speed where motor power can be felt when riding

A bit more power

Most legal hub motors for the European and Australian market are rated at 250w. Bafang/8Fun make a few 250w motors, with SWXK (front hub, disc brake capable) and SWXH (rear hub, disc brake capable) being common. These are good motors for moderate hills and light loads, but if you are hauling big loads and/or climbing steep slopes, something stronger is required. Bafang’s solution is the BPM (my son says this stands for Big Powerful Motor, but I think it’s for Brushless Permanent Magnet).


The 350w BPM motor weighs 4.5kg. This is significantly more than the 250w SWXH and SWXK at 2.75kg. 

Powers and voltages

Bafang BPM motors are advertised (by and in 2 powers: 350w and 500w. I’m not sure what the difference is between 350w and 500w motors – I have both in identical settings and I can't see there is a difference. It could just be that the 500w ratings are at 48V, or with higher amperage controllers.
BPMs are also advertised as 36v or 48v motors - again, I’m not sure if there is a difference. Brushless DC motors like these can be expected to spin at a speed proportional to the voltage, so a motor with a 48v controller and battery can be expected to spin at 1/3 faster rate than the same motor at 36V. 

Speeds and Codes

BPMs are also advertised in different speeds. However my experience is that the advertised speed is not always reflective of the measured motor speed.
BPMs are made with a “code” rating. This is claimed (and I believe it, usually) to be the number of turns the winding wires make around each pole in the motor armature (stator). The more turns around each pole, the slower and higher torque the motor will be. Also, the more turns, the thinner the wire or the fewer strands in the bundle, so that the amount of copper in the motor remains roughly the same for different speeds and the same power. Advertised BPM winding codes include 10, 11, 12, 13 and 15. All the BPM motors I've tested have no-load speeds that are in proportion to their labelled code.
Some upright trikes are sold with front BPM hub motors marked as 20(13). These are reported as spinning about 25km/h no load in a 20" wheel. This upsets the idea that the code (in brackets) is the number of turns - but the Australian importer may be asking for different labelling (they are also labelled as 200w - clearly not true). 
There is some discussion online of code 8 BPMs, however advise that Bafang will no longer supply these, due to safety and liability concerns.

Code 12

My first BPM motor was a 36v 350w code 12 motor, which I installed in the back of my Xtracycle cargo bike. It’s labelled like this:

I read the 26 (12) as meaning that it’s designed to be laced to a 26” rim, and has 12 turns of copper windings per pole. The “26” seems to be about right, as laced into a 26” rim (as I have it), the peak speed at which useful power can be felt appears to be just over 25km/h, which is the legal maximum powered speed of an ebike (in Europe and Australia). The motor was advertised as “216rpm” which at 26.8km/h is reasonably close to the peak powered speed. The no load speed is 238rpm which equals 29.5km/h.
This motor is powered by a 36v Headway battery, through a controller sold as: “CON91, 450W36V hub motor controller, 9Mosfets”. This controller draws a maximum current of 18A (usually closer to 17A) and maximum electrical power of about 660w. This is not much more than a 250W “con62” controller which draws 15A and around 500w.
The BPM motor is a little slower than the Bafang 250w SWXH motor, which spins a little faster than 25km/h with a “con62” 250w controller.
There is in reality nothing about a hub motor that fixes it for use with a particular rim diameter. A motor label of "26" is only a suggestion, and it can be laced into (for example) a 20" rim if you want the speed it will give in that rim. 
Compared to the 250w motors, the BPM 350w 26 (12) clearly has a higher torque at low speeds. It is quiet, quieter than a 250w motor, with a lower note. It feels like a 6 cylinder compared to a 4. It works well for me hauling a 30kg child on the back of the Xtracycle up hills of up to 15% gradient – hard work. 

Code 10

I bought a 350w BPM advertised as “312rpm”, and which turned out to be marked “20 (10)”. 

I hoped this motor would work in a 20” rim (which the 20 (10) mark would imply), but at 36V its no load speed was 270rpm (25.1km/h in a 20” rim), suggesting a max loaded speed around 22km/h in a 20” rim. This is pretty slow and would be pretty frustrating, except on very steep climbs.
At 48V, I measure the Code 10 motor no load speed at 350rpm. This is 43.4km/h in a 26" rim, and gives a max powered speed of around 40km/h. The Code 10 BPM would probably work well in a 20” rim at 48V, with a peak powered speed around 29km/h (haven’t tried it yet – would need very short spokes!).
At 36v in a 26” rim, the code 10 would have a peak powered speed of 28 or 29km/h. This could be a good arrangement, but I haven’t tried it yet.
My Code 10 BPM ended up being run at 48V in a 26" rim. The bike travels at 40km/h on the flat easily - of course not road legal. 


Recently while opening a new BPM motor I found that they have 2 different clutch designs: old and new. Freewheels are not compatible between types (although they could be adapted on a lathe if there was no other option). 
You can see both BPM freewheel types for sale at GreenBikekit's page selling replacement freewheels. I suspect the new motors are for "BPM2" motors, but I haven't been able to confirm this. 
Old BPM freewheels have an internal hole diameter (shaft diameter) of 12mm, and all that I've seen have 4 keyways in the freewheel shaft hole. 
Old style BPM freewheel (planet gears removed from lower side)
 New BPM freewheels have an internal hole diameter (shaft diameter) of 15mm, and a single keyway. 

New style BPM freewheel
The new design looks stronger, but the older 12mm style is still clearly pretty strong given that I haven't bent one so far. 


In lacing a BPM to a 26” rim, I recommend 1-cross lacing. 2-cross puts the spokes at too acute an angle to the rim and causes bends at the nipples. I don’t recommend 0-cross – radial – spoking, as this doesn’t give the spokes a good ability to transmit torque from the hub to the rim.
If you use 2mm spokes (which I do), I recommend using washers on the spoke heads, as the spoke holes in these Bafang hubs are large – 3.2mm diameter. I have a packet of little brass washers for this job (sorry I don’t have a supplier to recommend as these were sent to me from a relative in Germany).
To calculate spoke lengths I use “spocalc express” (from With this tiny MS Excel spreadsheet you need to do a separate calculation for each side of the wheel. It’s worth calculating both sides for this hub (I admit I often don’t bother to on more symmetrical wheels) as the spoke length difference is about 2mm.

Temperature under load

The real test of the BPM’s ability to handle long slow climbs will be to measure the temperature of the windings under load. This is more difficult than testing an SWXK, as the thermocouple wires will need to be fed up the hollow axle with the power and hall sensor wires (perhaps instead of the hall sensor wires). I haven’t yet, but hope to try it before too long.  


My main test of the BPM has been the one in my Xtracycle (see my Xtracycle page). This has (mid 2017) done 13,000km, without any squeak of trouble, hauling children and stuff up and down the steep, rough hills of our mountain - I reckon this is easily as stressful as 3 times the distance on the flat. I've never tested the motor for temperature - it's not easy to get a wire out - but it faithfully hauls bike, me and load up the long hills without any problems. 


  1. Hi Bruce, I was just wondering if you'd got the Con92 controller to work with an LCD display, and if so which sort?

  2. Hello Jonathon, I haven't connected the Con92 controller to an LCD, nor any other of the generic controllers from GreenBikeKit or BMSBattery.
    I use a Cycle Analyst on my bike with my BPM motor.
    I've only just tried my first LCD connected to a controller: a KT controller, with LCD, supplied by Xiongda with some of their motors (see my Xiongda page). It's alright, but the electrical info I want most is not displayed: current and Amp-hours. It does display watts but the numbers are continually scrolling so only gives the vaguest of indications.
    There is a motor temperature option on the KT LCD (which would be really useful to me) but this requires the motor to have a sensor installed, which was an option with Xiongda (but I wasn't aware before ordering).
    What are your plans and experiences?

  3. Jonathan, I have a 8fun 500w 48v hub ebike, but no LCD. I charged it, but it isnt working. Is it because i don have the LCD display? I dont see a on/off switch either.

    1. Jonathan, if you are using a KT controller, you would need to connect a display to switch it on, otherwise it doesn't work.

    2. Jonathan, if you are using a KT controller, you would need to connect a display to switch it on, otherwise it doesn't work.

  4. Hello Jordan, there are lots of possibilities to get your bike to go. Perhaps take some photos so we can have a look? Perhaps it's an old bike you haven't used before? If you have a multimeter, check the battery output voltage. Check the battery connection to the controller. Nearly all controllers have a switch which turns them on by connecting to battery positive - perhaps you can find it. Good luck, Bruce.

  5. Hi Bruce, I had a BPM front hub sent to me. It was advertised as disc-brake ready. However my avid bb7 160 mm caliper is touching the hub even when it is not completely in the dropouts. I can't find a "minimal rotor size", but I can't imagine 140 and 160 mm rotors to work with this hub. Have you ever combines them successfully with 160 mm rotors? (the webshop where I ordered claims I am the first one)

  6. Hello Erik, I've only used 203mm discs on BPM rear motors, and the large disc diameter puts the caliper clear of the hub. However I have had similar trouble with Bafang SWXK hubs and disc brakes. Good quality calipers such as BB7 are wide on the inside pad holder and foul the hub (or sometimes just the spokes).
    My usual solution is to use a disc caliper with a narrow inside pad holder which fits in the space. The generic calipers available from GreenBikeKit or BMSBattery have thin inside pad holders and fit (in my experience).
    The other solution I've needed to use with SWXK hubs is to lace the wheel with all the spokes on the inside of the left flange, so the spokes don't foul the caliper.
    So I see 2 options for you:
    - use a 203mm disc and matching caliper adapter

    - try a caliper with a thinner inside pad holder.

    Good luck! Bruce.

    1. Thanks for your reply! Mounting a larger rotor voids warranty on my V4.0 yuba mundo fork, so while some feel comfortable, I'm not going to do it. The motor is going back to the shop. I've also had the opportunity this weekend to test a bafang front hub motor, and I was not impressed at all. I think this system is very nice for people who love the feel of a motor on their bike, but my previous experiences with bosch motors was much more pleasant. I'm guessing the big difference is the torque sensor.

      I think the reason is that I have a riding style similar to cycle couriers: high rpm, keeping the rpm's high slowing down to allow downshifting and strong accelerations. This clearly confused the motor management (and at times the motor confused me :-)). So I'll try to find another solution, very curious as I saw a torque sensing bottombracket on the bafang site, but can't find it anywhere for now. Probably something for the future.

      Thanks for your very informative website.

  7. I'm not sure that your statement "Bafang/8Fun make a few 250w motors, with SWXK (front hub, disc brake capable) and SWXH (rear hub, disc brake capable)" is entirely correct. I have two front hubs, one has 6 bolts on one side (presumably for a disk) and the other is plain. Both are marked SWXK.

    1. Thanks Chris, just when I think I'm getting the hub motor family tree sorted out, I'm surprised again! I suppose my observations only apply to my suppliers (mostly Greenbikekit and BMSBattery). Where did you get your motors from?

    2. They are secondhand, so I don't know. The motors are also electrically different, as although they are both brushless, one has Hall sensors and the other is without.

    3. Interesting about being both sensored and sensorless. I tend to use sensorless controllers from Greenbikekit, on both sensored and sensorless motors. I don't have any trouble with them starting, other than the occasional shudder, certainly don't need pedalling first.

    4. That's useful to know, I have been considering making an "electric kit" that I can attach to either a mountain bike or a folder. Obviously I will need a wheel of each size, but the rest can be common - and the two I have are folder/sensorless and mountain/sensor. I have seen controllers on ebay which are claimed to use the Hall sensors if present, and if not are able to manage without. I understood that a sensorless motor might shudder a bit to start with and so I assumed that they were more appropriate for a bicycle using a pedal assist sensor. If the "starting shudder" is only trivial this scheme would work.

      As an aside I imagine that more sophisticated electronics could send a test signal before starting, that was too weak to move the motor but strong enough to find out where the rotor was. You'd get the best of sensor and sensorless motors then.

    5. Sounds like a good plan. I recommend you have a controller that stays with each bike, otherwise you have a lot of connections and attachments to attend to each time, and the plugs they use aren't particularly robust. It's also good to have all the connections enclosed enough to stay dry. Controllers are so cheap anyway, and it's good to have spares of everything you depend on. The battery is the expensive part which most deserves sharing. We have several ebikes and several batteries for our household, all swapping as different people do different trips with different bikes.

    6. This comment has been removed by the author.

    7. I see what you mean about connections. I didn't mention that the aim is not only to be able to use components on both bicycles, but to make it possible to use them with or without assistance. When without assistance I would like there to be the bare minimum of electrical equipment on the bicycle, for security as much as weight. If I use a throttle with built-in basic energy display, there would be a lead for that, a motor lead and a battery lead into the controller. In that case, removing the controller (attached to battery) would only mean unplugging one more lead. As with all these things, there are swings and roundabouts, I'll have a better idea when I buy the battery and controller and start messing around with them to see what is practical. So far I only have the wheels, and the large one needs re-spoking from a weird size (590) to mountain bike size (559).

    8. "needs re-spoking" - and a new rim obviously.

    9. 590mm! I believe that's the 26 x 1 3/8 size, which has tricked me in the past. Interesting idea to take battery and controller together. Perhaps replace the 3 phase wires with small Anderson plugs (dovetailed and bound into a unit) for easy repeated plugging. As you say, if you don't use sensor wires you only have the throttle to unplug as well. I'd be interested to know how you go.

  8. Hi Bruce,
    I have a 48V 350W 8FUN motor on my ebike( photo: )and my controller is here . The size of the wheel is 26. Do you know the highest speed (or RPM) my bike can reach? Thanks. Joe

    1. Hello Joe, I see from your photo that your motor is marked with (17), meaning Code 17. For calculations I will presume that this means the poles have 17 wire turns and compare it to my tested speeds (but I could be completely wrong). Compared with a code 10 motor (see table at top of page) the higher number of turns will give your motor a speed 1.7 (17/10) times slower. This will give a no-load speed of about 25.5km/h, maybe power you can feel up to about 23km/h, and good hauling power slower than that, probably under 20km/h. My feeling is that this would be a very good cargo bike, hill-climbing motor.
      Please let me know how you go - maybe I can add it to my table! Bruce.

  9. Replies
    1. BPM only takes a spin-on cluster, not a cassette. So you are restricted to 6 and 7 speeds at the back. However don't fall for the negativity about spin-on clusters. I've been very happy with 14 - 28 tooth 7 speed clusters, with 2 chainrings at the front, even on our very steep roads. Spin-on clusters are also very cheap, as are BPM hubs compared with motor hubs that take cassettes.

  10. I have a bpm 20(10) 36v 500w from Leed. My question is can I upvolt this motor to 48v? The controller is a KT36svprd-lcd with Julet connectors. Can I just get the bigger battery and a controller similar to that one but for 48v?

    1. Hello Benny, my answer is yes. I believe your motor is the same as the BPM 20(10) listed at the bottom of my table at the top of this page - only difference is being labelled 500w. I expect your motor will respond to 48v the same as the one I used: it will run at about 40km/h in a 26" wheel. This is fast (not legal) and you'll want to be careful about long slow climbs and overheating.

  11. Thanks Bruce, my other question is do I have to reprogram the KT-LCD5 to be compatible with my new controller(KT48ZWSRM-JNFW01) which has the same rated current and max current 11A,22A as the KT36SVPRD-LCD controller I am replacing?

    1. Hi Benny, you're exploring beyond my experience! I've never reprogrammed controllers or LCDs. I've used KT controllers and LCDs on Xiongda 2-speed motors, and just plugged them in and used them. My only problems have occurred if I ordered them with motor temperature sensing, which seems to confuse their speedo. I suspect I'd just give it a try. Good luck, Bruce.