Category Archives: BBSHD

Building the Ultimate Bafang BBSHD 74V External Controller Upgrade

         BBSHD 74V With External Controller Upgrade




I had the BBS02 for a few months, and it was a great motor but after a while it just left me longing for more power. So I picked up a BBSHD, and was expecting a huge upgrade but much to my dismay, it barely topped out at 30mph, slower than my BBS02 actually. Torque was improved but only slightly, I let my girlfriend ride it and she said it was barely any faster.

The stock BBSHD stock internal controller is limited to 60V and 30A, which is quite pathetic. Even if your running a 52V pack, you will only get 1500W out of the motor, if that. I also upgraded to a 30T front sprocket and that upped the torque and raised the RPM’s.

The motor felt more responsive and has more torque to push through tough terrain. @48V I managed to hit 28mph which a 3mph loss in top speed compared to the 46T front sprocket. The 30T front sprocket is ideal for off-road riding and trail riding. However, you will not be able to pedal as the motor will be spinning too fast and will be geared low.

At that point, I was still left longer for more power. So I took apart my BBSHD, removing the original controller and putting it to the side. I tested the Cyclone 36-72V 12FET controller, and it ran great however it was very noiser since the Cyclone Controller is square wave, also power delivery would be abrupt at times, again because it’s a square wave controller.

Ultimately, I settled on a 18 Fet Sinewave Controller, and I have 12 FET Sinewave Controllers on the way for testing, and eventually for sale through my site.

Compared to the Cyclone Controller, the Sinewave Controller allows the motor to run much quieter, similar noise level as the stock controller. Throttle response is also much smoother than the Cyclone Controller, which could be abrupt at times. However, the greatest advantage is that the Sinewave Controller can be ran at 74V which significantly increases the RPM’s of the BBSHD, which increases overall power, torque and speed.

On 48V the BBSHD simply runs out of breath way too quickly and power drop offs dramatically after hitting maximum speed in each gear. DC Electric Motors have a certain kV which is RPM per volt, the higher the voltage, the higher the RPM’s. Therefore by moving to 74V the power band shifts up dramatically, you can extend the usefulness of each gear before having to change up. Its moving up to a 600cc from a 250cc motorcycle, you won’t have to shift as often, and can essentially stay in one gear. The granny gear takes me to 18mph and can virtually obliterate any hill, as opposed to crawling up the hill on 48V.

If you want absolute power for your BBSHD, 74V is the way to go. The motor will spin significantly quicker than 52V and you will unlock the power of the BBSHD that is hidden away with the stock controller. It literally will transform your bike into a monster.

Ultimate Bafang Sinewave Controller Upgrade

   Ultimate Bafang Sinewave Controller Upgrade Installation

  • 10-8-2016 1.0



  • Remove right crank arm nut w/ allen wrench
  • Remove right crank arm with square taper crank puller
  • Remove drive sprocket with allen wrench
  • Remove reduction cover with by removing hex bolts
  • Remove internal controller from cover by removing 3 hex bolts
  • Plug in ext controller phase connectors, and 6 pin JST hall connector.
  • Mount ext controller to frame
  • Plug battery power wires, throttle (Cycle Analyst is optional but highly recommended)

E.R.T. Sinewave Controller Programming (BBSHD, EDGE 1500W-3000W, ERT 8000W)

E.R.T. BBSHD Sinewave Controller Programming
 First you will need to install the software, which is XPD. Open source programming software.
Once you download the E.R.T. Programming Software. Open it and you should see these files.
Open the 1. Python Installers folder and install these Python Installer files in this order, these are pre-requesites in order to run the programming software.
  • Python-2.7.12.msi
  • Pyserial-2.7.win32.exe
  • Pygtk-all-in-one-2.2..y2.7.msi
  • USB Driver


                  ERT Programming Profiles

Copy the “xpd” folder from 2. XPD Programming Profiles folder to your “Documents” folder
3. Programming the E.R.T. Sinewave Controller
Copy the “3. XPD Programming Software” folder anywhere in your computer
Open the “3. XPD Programming Software” folder
Extract and open
This is what you would see when you first fire open the software
For the BBSHD Sinewave controller we would be using the “ERT 12FET Sinewave” Profile
For the EDGE 1500W Kit we will using the ERT 12FET Sinewave (Hub) Profile
For the 8000W E.R.T. Sinewave Controller we will be using the ERT 18FET Sinewave Profile
Go ahead and click “Edit”
3. Programming the Controller
Here are some basic parameters and their descriptions.
  • Controller Type: KH612 / KH618
    Let this setting as it is
  • Current / Voltage Design
  • Battery Current Limit
    Battery Current is the maximum amps the controller will pull from battery. 40A is the safe limit for the BBSHD, although the controller can tolerate up to 50A. Use at your own risk, more amps will increase acceleration and torque but will heat up the motor and stress the battery more.
    Recommend 40-50A, if you are running a smaller front chainring you can run a higher Battery current limit.
    18 Fet E.R.T. Sinewave can run up to 70A
  • Phase Current Limit
    Phase current is the current that goes into the motor. Can be safely run up to 100A, higher amps will yield more torque and acceleration, but increase heat to the motor. Lower amps will allow for smoother power at lower speeds, but less torque.
    Recommended 65-90A 12 Fet
    Recommended 120-145 18Fet
  • Enable Softstart
    This delays the throttle ramping so you can smoother acceleration from a stop.
  • Soft Start Time
    This determines the soft start delay. Recommend setting this to 1.
  • Battery Low Voltage
    This determines the low voltage cut off, to protect your battery from being discharged too low. This depends on your battery.
    If you are running 48V then set this to 42V.
    If you are running 52V then set this to 46V
    If you are running 72V then set this to 68V
    *This is optional, if your battery has a BMS then this is not 100% necessary*
  • Speed Switch Mode
    This determines how the speed switch mode works, either switch or button
  • Speed Limit
    100% is max speed however you can increase this to 130% for even higher speeds at the expense of efficiency.
  • Current Limit
    Similar to the Speed Limit, this applies to the current. Can be increased to 120% for even higher currents.
  • Enable EBS
    EBS is Regen braking, this does not apply to the BBSHD as this motor cannot regen.
    Be sure to disable this setting if you do no want to run regen.
  • EBS Force
    This setting determines the regen braking force. Higher settings will allow higher regen braking force.
    Recommended 50-100A
  • Flux weakening
    Flux weakening increases top speed and motor RPM at the expense of efficiency
  • Flux weakening level
    Default is 35 but can be increased to 50 for higher top speeds. Programming the Controller
  • Once you are satisfied with the results click the “Apply” button.
  • You will be return to the main menu
  • Now make sure your battery is unplugged from the controller
  • Plug the programming cable into your controller and also the other end into your USB port on your computer
  • There should be a number in the Serial Port field
  • When you are ready to program click “Apply”
  • You should see a progress bar, it should only take a few seconds to program
  • Now, unplug the programming cable and you are ready to ride!