Bafang Programming – Learn how to improve your Bafang mid-drive ebike

Reprogramming your Bafang mid-drive system can improve the usability and performance of your ebike. The stock settings out of the factory are often not the best settings. You will find that for example, the first pedal-assist setting is way too powerful, or that the speed limits are just annoying. With the help of this guide, you can reprogram your system to better settings with my custom .el file. You can also learn about all the settings and reprogram the system to your likings.

Disclaimer: Reprogramming your Bafang system is not without risk. If you change the wrong settings and you don’t exactly know what you are doing, damage can be done to the controller. You can even destroy the controller in certain cases. So only customize your own settings if you understand what they mean and what the risks are. I am not responsible for any damage that might occur.

Necessary hardware and software

In order to start reprogramming your Bafang BBSxx mid-drive system, you will need a programming cable. You can purchase this cable with this order link:

You will also need to install a driver and the Bafang configuration tool:

Bafang configuration tool:

https://drive.google.com/file/d/1B7ge8RMrSAE3w591K3MOjZR7XVAKc0gi/view?usp=sharing

USB Drivers:

Windows 10 USB Driver:
https://drive.google.com/file/d/1rerH9mTJQfyJcuiB5atlN_aV99v8UBij/view
Windows 7/8/8.1 USB Driver:
https://drive.google.com/file/d/14JJ_HZJB2nisMVprWC7R7N3box2lAaTv/view
Windows XP/Server 2003/Vista USB Driver:
https://drive.google.com/file/d/1ylMb70vfWctFonILpQsWwjPzrEH6gmJ-/view

If you have trouble opening the .rar files, download WinRAR:
https://winrar.nl.softonic.com/

NOTE: Not all cables necessarily use the CP210x driver. Some cables may require the CH341, or another driver.

Bafang configuration tool instructions

If you have purchased the cable, installed the driver, and installed the configuration tool you are ready to go. Now follow the following steps in order:

  • Unplug the battery of your e-bike
  • Unplug the Display cable
  • Connect the programming cable to the display cable
  • Plug in the battery of your e-bike (and turn it on)
  • Plug in the USB cable of the programming cable to your desktop/notebook

You are now ready to start using the configuration tool. If you don’t want to know about all the settings, but just want a better configuration, you can use my configuration. First, you need to download the right configuration for your model. Download the correct file according to your Bafang motor version. If you have another Bafang version you cannot use these files. You will have to follow the rest of the post and change the settings yourself.

Bafang BBS02 500 Watt 36V:
https://drive.google.com/file/d/1pezpHsR6sLzx_kXPQ1v9luHHsueX6jyB/view?usp=sharing
Bafang BBS02 750 Watt 48V:
https://drive.google.com/open?id=1sxLa99ycpnrktxezmi-BswAjgvsrm_LC
Bafang BBSHD 1000 Watt 48V:
https://drive.google.com/open?id=1zS03gj-v-EZNjiRqACd0LOi5ydOOsyIN

To use these configurations you need to follow the following steps:

You first need to back up your default settings. If something goes wrong you can always return to the default settings. You do this as follows:

  • Select the COM port that your USB programming cable is connected to. Hitting the magnifying glass will automatically select the correct port.
  • Now click ”Connect”
  • Now click “Read flash” in the right bottom corner of the program.
  • You should now see all your settings.
  • Click ”File” in the left top corner of the program.
  • Click ”save as” and save your file at a location that you can access later if necessary.
  • You now have created a back-up you can use later if problems occur.

Instructions to insert my custom configuration

  • Select the COM port that your USB programming cable is connected to. Hitting the magnifying glass will automatically select the correct port.
  • Now click ”Connect”
  • Now click “Read flash” in the right bottom corner of the program.
  • You should now see all your settings.
  • Now click ”File” in the left top corner of the program.
  • Click ”load” and select the file you downloaded, make sure that you downloaded the right version for your motor (BBS02 750 Watt or BBSHD 1000 Watt).
  • Only change the setting ”Wheel Diameter[inch]” to your wheel diameter, leave the other settings unchanged.
  • Now click ”Write flash” in the right bottom corner of the program.
  • You now have successfully reprogrammed your Bafang system with custom settings.
  • Close the program, unplug the battery, unplug the programming cable, plug in the display cable and connect the battery again.
  • You are now ready to test your new configuration.

If you don’t like these settings and you want to tweak certain settings, you can read the rest of this post and adjust certain settings.

Explanation of all the settings/my recommended settings

All these settings that are recommended here are the same as in the configuration files above. So if you want these settings, follow the steps above.

Settings in the first tab (Basic)

Bafang configuration tool basic tab
Low Battery Protection [V]: 41

This setting will prevent damage to your battery. If your battery voltage drops lower than the number assigned in this setting, the motor will stop working. This way the battery can’t be discharged further. If you have a 48V battery, I don’t recommend lowering this value since it can cause serious damage to your battery. If you have a 52V battery, you need to set this value to 44.

Current Limit [A]: 18 for BBS02 750 Watt, 30 for BBSHD 1000 Watt

This setting will set the maximum current that the controller will draw. In theory, the BBS02 750 Watt version can handle 25A, because it has a 25A controller. I, however, do not recommend setting this to 25. The MOSFETs and the cooling systems of the BBS02 are not really designed for 25A and therefore will reduce the life expectancy of your motor. 18A still gives great performance with plenty of power for most people. If you want insane power, get the BBSHD, this motor has a 30A controller. The controller and cooling of the BBSHD are better than the BBS02. That’s why the setting should/can be set to 30 if you have the BBSHD.

Assist levels:

Now the settings for the assist levels. I recommend setting all the ”Speed Limit [%]” to 100%, this way the motor will only stop assisting when you hit the max speed that you set on your display. I found it really annoying that the motor would stop assisting at different speeds, at different assist levels. The better way of doing it is just to change the power level for the different assist levels. The max speed you will hit in that assist level will then be dependent on the amount of power. This way the bike will just keep assisting with a specified amount of power for that assist level. I also recommend increasing the ”Current Limit [%]” 10% at a time. This way you have amazing control over the amount of power. The ”Current Limit [%]” setting specifies the percentage of the ”current limit[A]” the motor can use at that level. So if the ”Current Limit [%]” is set to 50 in assist level 5, it will use (0,5 * 18 = 9A) max in assist level 5. I recommend the following settings:

Assist Level/Current Limit [%]/Speed Limit [%]:

0/0/100
1/10/100
2/20/100
3/30/100
4/40/100
5/50/100
6/60/100
7/70/100
8/80/100
9/100/100

Speed Meter Type: External, Wheel Meter

This is the only speed sensor that works with the Bafang BBSxx, this setting is the default. So don’t change it to something different.

Speed Meter Signal: 1

The only setting that works is 1, again default. Don’t change it to anything different.

Wheel Diameter [Inch]: custom

Set this setting to your wheel diameter, if your wheel diameter isn’t in the list, then select the one that is closest to your wheel diameter.

Settings in the second tab (Pedal Assist)

Bafang configuration tool pedal assist tab
Pedal Sensor Type: DoubleSignal-24

This is the only setting that works correctly, again the default setting, don’t change.

Designated Assist Level: By Display’s Command

In order to change the number of assist levels with your display set this to ”By Display’s Command”. This is the only setting that makes sense because it’s convenient to be able to change this in the display settings.

Speed Limit: By Display’s Command

In order to change the speed limit with the help of the display you have to set this to ”By Display’s Command”. If you want the e-bike to be limited to a certain speed that can’t be changed on the display, you have to assign a certain speed to this setting. If you want the e-bike to limited to 25km/u, select 25km/u. You then can’t change the speed limit on the display of the e-bike. So this setting can be handy for legal reasons.

Start Current[%]: 10

This setting will decide how much current the motor will draw on startup. It, in turn, will decide how fast the e-bike will accelerate. I recommend 10, because then your drive train won’t be under a lot of strain as you accelerate. If you want higher acceleration you can set this value to 20 or 30. I don’t recommend setting this higher than 20 or 30, then most drivetrains will have a hard time and you can potentially break your controller if you are in too high of a gear.

Slow-start Mode(1-8): 4

This setting will decide how fast the current will increase when accelerating. I recommend 4, because this is a nice sweet spot. If you increase slow start, your start will be really slow and jerky. If you decrease slow start, you will accelerate faster. But you also risk damaging or breaking your controller. So I recommend just leaving it to 4.

Start Degree (Signal No.): 4

This setting will decide after what number of steps the motor will start assisting. I recommend 4 because this results in a responsive system. It also is not too responsive, which is good. If you want the pedal-assist to start the fastest when you just pedal a small bit, change it to 2. Changing it to 0 or 1 won’t work, so don’t do that. The maximum will be 20 (24 is a full rotation). But I don’t recommend setting it higher than 4.

Work Mode (Angular Pedal Speed/wheel*10): Undeterminated

Changing this setting doesn’t do anything noticeable. So leave it to default which is undeterminated.

Stop Delay [x10ms]: 25

This setting will decide how fast the motor will stop assisting when you stop pedaling. If you have e-brakes installed I recommend 25, because it is nice that it won’t stop immediately. And if you want the motor to stop straight away, you just hit the brakes. If you don’t have e-brakes however, set this to 10. 10 is the lowest value that will work properly. If you decrease it even more, the pedal-assist won’t work at all anymore for some reason.

Current Decay (1-8): 8

The lower this setting, the faster the drive unit will decrease power as you pedal faster. You don’t want the power to cut down a lot if you pedal faster, so leave this to 8. This also is the default setting.

Stop Decay [x10ms]: 0

This setting determines the amount of time the system takes to reduce the power when you stop pedaling. I think it’s best that the power goes to 0 when you stop pedaling instantly. This is what you would expect. 0 is again default, so I don’t see a reason to change this.

Keep Current[%]: 80

This is a sneaky but important setting. Keep current will decide to which current your motor will drop. It only does this when you are pedaling at a high rate (so if you have reached a constant speed). Then it will drop to for example 80 percent of the current that is assigned in the selected assist level. So if you set this setting really low, then the motor will assist less when you have reached a constant speed. If you set this setting higher, it will assist more when you have reached a constant speed. I recommend 80% because this gives plenty of power when a constant speed is reached. It nicely compensates for your pedaling power. If you want to pedal more yourself and save more battery at a constant speed, set it to 60%. Anything other than 60 or 80 is not recommended.

Settings in the third tab (Throttle Handle)

Bafang configuration tool throttle handle tab
Start Voltage [x100mV]: 11

This setting will decide after how much throttle movement, the throttle will respond. Leave this setting to 11, changing it can give problems to the response of your throttle.

End Voltage [x100mV]: 36

This setting decides at which level the throttle will stop. If you want a wider range of control with your throttle you can set this to a maximum of 42. I recommend 36, since this is the default and in my opinion, works perfectly.

Mode: Current

This setting decides whether the throttle acts as a current throttle or as a speed throttle. I recommend “current” since this is easier to calculate by your controller. If your throttle responds jerky, you can try setting this to speed.

Designated Assist Level: By Display’s Command

This will decide how many levels of throttle power you will have. I recommend this setting to be the same as the amount of pedal-assist levels. Therefore leave it at ”By Display’s Command”, then it will be the same as what is set on the display’s settings. The setting on the display will set this setting and the pedal-assist setting at the same time. So they always will be equal. Take care not to hit the throttle in too high of a gear in level 9, this can burn out your controller.

Speed Limit: 40km/h

This setting doesn’t imply that the maximum speed with the throttle is 40km/u. The speed limit is overwritten by the throttle, so you will go as fast as you want. This setting works as a sort of cruise control, If you pedal and use the throttle at the same time, the motor will cut off above 40km/u. So you can maintain that speed. So set this setting to the desired ”cruise control” speed.

Start Current [%]: 10

This setting will decide how much current the motor will immediately draw when the throttle is engaged. I do not recommend settings this higher than 10, otherwise, you can wheelie of the bike because of the insane power. You also risk burning out your controller if set too high. If you have a weak drive train or IGH decrease this number even more.

If you have read this entire post, you should have a good understanding of all the settings there are. Still, you should be very careful with all the settings, always double-check before writing. If you take good care, nothing bad should happen and you can really customize everything to your liking. Good luck reprogramming your Bafang system!

If you have any questions, want to start a discussion, or need some support, please use the comment section below. I will respond to you within 24 hours.

597 Comments

  1. Hi Giel,

    I’m starting to wonder if my cyclotricity 36v 14ah battery is starting to lose it’s power. Don’t go long distance on it….and i guess it’s about two years old. Thought i might go for a 17.5ah 36v battery using the link on your site. (for use with my bbs01 250w) The battery prices on your site seem considerably cheaper than buying from within the UK . slightly worrying that the quality may not be as good?

    Felix

    • Hi Felix,

      You should look at what voltage your battery is when full. It might be unbalanced, causing the range to drop. Balancing could therefore help, but then it will become unbalanced over time again. So it wouldn’t be a permanent solution.

      The batteries I recommend on the website are of good quality. Most of them feature brand name cells, which therefore are of great quality. So if you want good quality, check if the used cells are brand name. In that case, you should be fine.

  2. Hi Giel,

    I was hoping to that the cable would allow to read the total mileage of the motor. I bought a new bbshd from a Chinese website but it came used (I can see extensive external damage to the case and the black paint on the threads is gone – someone clearly installed it before). Is there a definitive way to say that a the motor has been used before? As I understand the odometer can be restarted to zero on the display, or simply a new display provided with the old, used motor.

    Anyways it was a great read!
    Thanks

    • Hi Slawo,

      Unfortunately, there is no way of checking it using the programming cable. The odometer is display based, not motor based, therefore you don’t know anything about the motor mileage. If they reset or replaced the display, it will show 0 miles. It’s a stupid system, but there is nothing you can do about it.

  3. Hello,
    my display connector has 5 pins, but is not round, it is a kind of triangle.
    I read that it is CAN protocol.
    Is it possible to get a USB cable with this type of connector?
    Is it the same software?
    Many thanks.

  4. Hello,
    On my Bafang 1000W motor, my display connector have 5 pins, but it is not round, it is a kind of triangle ::-
    Is it the same interface?
    It is possible to get this kind of cable with the USB connector for the computer?
    Thanks,

    • Hi Luc,

      I think the interface is the same, but I am not 100% certain. I don’t know of any adapters available, so without some DIY stuff it isn’t possible I think. If you want to go ahead and modify a cable, be very careful. You could easily fry something when connected improperly. So I would not recommend trying it unless you are 100% certain.

  5. Hello.
    I have a BBS01B, 350W motor, mounted at the dealer. Then I had it reprogrammed because I wanted it to be more powerful, but since then it bothers me because sometimes it starts to help with the second step and sometimes with the seventh or eighth step. Start Degree is set to 2. It is especially noticeable at higher speeds, not at lower ones. The settings for Pedal Assist are the same as in your tab.
    Is there anything else to fix with the settings?
    Thanks Robi

    • Hi Robi,

      You could simply change the start degree and see if you like a different setting better. Set it to 4 for example. It really depends on personal preference.

    • Hi Bruce,

      Read flash -> Get the settings that are currently on the bike, and show them in the software.

      Write flash -> Upload the new settings currently shown in the software to the bike.

      Read, write is the same, but for the individual tabs instead of all the tabs together.

  6. I ordered 48V 750w bafang mid-drive kits with the same size chain ring as our new Trek Verve 2 largest chain ring which is 48t. We will be riding road with some inclines but mostly flat. Did I make a good choice of chain ring? Thank you for your thoughts.

  7. Hello.
    I have a BBS01B, 350W motor, mounted at the dealer. Then I had it reprogrammed because I wanted it to be more powerful, but since then it bothers me because sometimes it starts to help with the second step and sometimes with the seventh or eighth step. Start Degree is set to 2. It is especially noticeable at higher speeds, not at lower ones. The settings for Pedal Assist are the same as in your table. What is wrong?

    Thanks Robi

    • Hi Robert,

      I recommend 4, not 2. So try 4 instead. If it still doesn’t feel right, just reload your old settings and only increase the power. This way you have all the same settings but simply more power (only increase current limit).

      • Thanks for the reply.
        The first reprogramming was done at the dealer, so I don’t know the original settings. With the delay of help happened already at the first reprogramming, I took the bike to the dealer again, and then we adjusted the settings, except Start Degree, as in Your tab, and it was not better.
        I have now ordered a cable.
        P.S. I accidentally gave the same comment again.
        Thanks again
        Robi

  8. I found a driver that works on my Surface 2017. Now I have learned that my DPC-18 display only has 5 PAS levels. How does that work with the 9 PAS levels in the motor?

    • Hi Bruce,

      Just increment the 9 levels, but the levels 1-3-5-7-9 correspond with your 5 levels. You should however still increment the levels. You can simply use the suggested settings.

  9. Hi Giel,

    I want to share a recent experience with my BBS02 bike. Fortunately I was just about 200m from my home when my chain snapped when I asked for some assistance by pressing the throttle. I think I was in low gear and I pressed the throttle gently, but It happened.

    I could have been kilometers away on a bike trail in the wood. Be sure that now I permanently have with me all the tools necessary to fix the chain.

    If we were looking for an advantage of hub motors, this could be one.

    Thanks for all the good suggestions of this blog.

    • Hi Michel,

      That’s unfortunate indeed. The BBS02 can be quite powerful. So it definitely is capable of snapping chains. You can prevent this by using high quality e-bike chains and frequently checking for wear/stretching. If you do this you hopefully won’t be caught of guard again. Thanks for sharing.

  10. Hi Giel,
    Thanks for this guide. I have a bit of an unrelated question, to which I haven’t yet found a definitive answer to – was the BBS02B tested on 54V (or 60V) battery setup?
    I have my 54V 40Ah battery which I made some time ago for an ebike build that really haven’t took off. I checked the N-mosfet package Bafang uses in its ecu, it’s supposed to handle 75V. Considering there are no spikes from non-existent regen braking, is it a sensible idea to run the controller at 60Vmax? Technically, 14s maxes out at 59.2V when charged. My battery maxes out at 60 or 61 with long range SoC (4.07V per cell) so it’s very small difference compared to 14s.
    I’m planning to run at no more than 12A. Is there anything in the controller that might burn?
    Thanks,
    A.

    • Hi Andy,

      I unfortunately can’t tell you, I don’t know if it will handle this voltage safely. It indeed is close to a 14s battery, which works fine. I therefore also think it will be fine for 61V as well. But I cannot tell you for sure.

      • Hi again,
        all right, I decided to scrap the bbs02b from the project and rather go with 500W rear geared hub. That way I can put in KT controller with OSEC, which will handle those 60V no problem, as well as retain all 3 chainrings (3×9) both for gradual shifting and as a failover solution if one of the motors fail.
        Geared hubs do have longer spinup time and react slowly to terrain changes compared to DDs, but it should be well compensated with higher traction on rear wheel.

  11. Hi Giel, really excellent tutorial. I am waiting for a programming cable. I just installed a BBSHD (1000) on my Surly Big Dummy. Your analysis of the stock set up is exactly what I am experiencing and I am anticipating making many of the changes you recommend. But I have two questions.

    The first is the assumption that 1,3,5,7 and 9 in the 9 level setting is equivalent to the 1,2,3,4, and 5 in the 5 level setting. The motor/controller is responding in radically different ways in level 1 when I riding in each of the settings. And, Level 2 in the 5-level system is WAY overpowered and much more than I need for 90% of my riding. Note that I am on my first battery charge and am at about 40 miles. I have a little ways to go on teh battery, but I have been hauling straw bales (60 pounds), chicken feed (50 pounds) and then one trip to the transfer station with about 80 pounds of trash. So, my question is: are you aware if the stock setup is somehow different in the brand new controllers, and that 1-2-3-4-5 does not correspond to 1-3-5-7-9? There seems to be no relationship. In any event, I am finding that if stay in the 9 level system, I have much more control, and am using much less power (at least by the watt reading on my display).

    The second question is this: Since I am hauling fairly heavy loads most of the time, and my bike is heavy to begin with ( I also haul a 40 pound dog with me when I am not doing chores) do you have any recommendations to further adjust the settings beyond your recommendations here.

    The last is just a comment. I have noticed that the controller must be reading crank speed, rather than wheel speed. I have pretty strong legs (60 years biking) and it seems that when I shift to a higher gear, and my crank slows down, the bike just surges forward, with huge drains on teh battery. In other words, the controller is thinking that I must have slowed down (dramatically) and ups the amperage to compensate. I actually don’t need this, nor do I like it. Any thoughts? Thanks again. David

    • Hi David,

      I don’t know what settings your current controller is running. Any supplier can ship it with their own settings. Therefore they can also set the PAS levels to not be incremental. This would be a strange thing to do, but it could have been done. I do think the levels 1-3-5-7-9 correspond with 1-2-3-4-5. Anyway, what you should do, is just increment the 9 PAS levels to your liking. In that case, it doesn’t matter which levels correspond to what level, it will always be incremental.

      For a heavy bike, you could increase the start current setting a bit more. You could also decease slow start optionally. These two settings will ensure that the motor has more current to get going. Which can be beneficial for a heavy bike.

      The system measures both crank and wheel speed. The wheel speed is used for the speed limits. The crank speed is used for general assistance behavior. The firmware indeed is programmed in a way that it will give more power for lower crank speed. It does this because it thinks that you will be struggling more at these lower crank speeds. When the crank speed is constant, it powers down again and tries to maintain some speed. This crank speed behavior is firware based and unfortunately can’t be customized.

      • Thanks so much. I have been out of town for the past week, but when I returned yesterday, my cable had arrived. I plan to make changes tomorrow. Looking forward to it. David T.

  12. I have a new bafang with the rack battery..I can turn on the headlight by holding the up arrow for 5 seconds when I do it dims the display..that is one ? but not the most important.my tail light has no switch on it and I assume it can be turned on from the display? I have 2 friends with fairly new bafangs and their batteries have switches to turn on tail lights.any help would be great thanks Bob

    • Hi Bob,

      You can simply wire the front and rear light in parallel to the lighting connection on the motor. This way your front and rear light can both be controlled by holding the up arrow for 5 seconds. You can’t control them individually, they will always turn on or off as a pair.

  13. I just came back from a 10 km test ride after installing the Bafang BBS02 750 Watt 48V program.
    It is so much smoother compared to the factory settings.
    Thank you so much for providing this program.

  14. Hello,

    Great article, thanks for all the info. I have a bafang ultra that does not throttle from a full stop. i love the bike but this feature is important to me because i do a lot of commuting in NYC traffic. Is there a setting that can make the throttle work from zero?

    Thanks again

    • Hi,

      By default the throttle should work from zero onwards. So there is no setting that enables or disables this. My guess would be that this feature is built into your firware, which cannot be changed using the programming software.

  15. i want to ask if it would be possible to change the firmware on the display to create a custom event, like a double click on one button to unlock a special speed mode.

    • Hi,

      In theory it would be possible to get custom firmware on your display. This would however require advanced coding/circuit knowledge. So this isn’t something you can easily do. There is no plug and play tool to do this.

  16. Hi.

    Maybe you or someone can help me. I bought and installed the Bafang hub motor G020.500.DC, 48V, 500W to my handbike (I’m disabled person and using a “Stricker” handbike). Display Bafang’s C500. I need to reduce speed for gears. Now even at 1st gear out of 9 my speed is about 17 km/h. It’s way too fast for me. Is there any chance to change this? Programming using a C500 display or cable or something else? It would be perfect 1st gear ~5km/h, 2nd – ~10km/h etc. and 9th – max km/h.

    Thanks in advance

    • Hi Rytis,

      Unfortunately, your controller is programmed in such a way that it will always try to reach higher speeds. The controller you have can’t be reprogrammed, none of the hub motor systems can be reprogrammed. Only the mid-drive systems can.

      You could set a really low speed limit on the display, this way it will never go faster than this speed. If you want to cycle lower than this speed limit, the only way is to use throttle only and cycle along. I think you do have to install even lower gears, such that you can pedal along at lower speeds comfortably. I think you have to remove the PAS sensor completely, so that it doesn’t interfere with the throttle.

      But it generally will be hard to get a comfortable experience with this system in your case. It just isn’t programmed to operate at these lower speeds. But I hope you can get it working to a good level using the throttle only and higher gearing.

  17. HI where can i start let see . I purchased a new bike with a bbshd 1000w 48v fat wheel bike only had it for 2 months . it was a little slow so decided to purchase a eggrider display to program it well now nothing works .I’m getting error code 30 on it . it’s RFF on the eggrider . So i put my display back on and nothing but 30 error So i was wondering if i reflash the controller if that will work ? if so how do i do it ? with the same program ? or should i buy a controller . need help Thanks

    • Hi Raul,

      That’s a weird issue. I would recommend writing new settings on it using this guide. See if this changes anything. That is something that you can easily try.

      Completely reflashing the firmware isn’t something that this guide covers, I also have no experience with this. So I cannot tell you how to do this, you should look up other guides for this.

      It could indeed be that the eggrider messed something up in the firmware causing this issue. Otherwise I would not understand where the error code 30 is coming from. But try this guide first, if that doesn’t work, look into reflashing. I expect that this will be a little harder to do though. If that still didn’t work, buying a new controller will be your only option.

      It might be wise to contact eggrider as well. They might know what caused the issue.

  18. Many thanks for this guide.
    I have a 36v bafang on my e trike and really only wish to change the thumb throttle from its walk speed to something with more power to pull away on hills etc!
    I have got everything ready to go and just wish to confirm this section will achieve it:-
    “ Settings in the third tab (Throttle Handle)“

      • would ask:
        Have followed instructions as per manual. The installation of the usb adaptor is the issue. Windows not recognising the usb adaptor, hence cant flash the bikes system (no communication). Have tried forcing the drivers onto the usb through device manager, but wont accept. Have looked for generic drivers, but no mater what is installed, usb still not recognised as a Port. Can you please provide advice.
        Are you also able to confirm this is the correct cable – the Chinese supplier is not communicating!
        Tried to paste photo but cannot – it has this written on it;-
        USB to TTL
        HW – 597
        Hope you can assist
        Cheers Lynt

        • Hi Lynt,

          Based on this information, I can’t tell if you have the correct cable. You can send an image to edrivenet@gmail.com so that I can see what cable you have.

          It’s unfortunate that your cable does not get recognized. This issue seems to happen quite often, and I have not figured out what causes it. With the provided drivers, it should just work, but for some people it doesn’t. It possibly has to do with conflicting drivers that some people have.

          The only advice I can give is to try another computer/laptop. Sometimes the other device does magically work.

          Good luck!

          • Giel, many thanks for your reply.
            I came across this driver and it works just fine :-
            CH340G for Windows 10 from DriveEasy.
            Thanks again for your time.

        • Hi, thanks for help so far.
          Got everything up and running. Read flash from bike, save copy and settings. Then flashed new settings to bike.
          Now have error 30. can’t Re communicate with bike from laptop so can’t load old backed up config file. Bit worried have bricked the bike.
          Know the error 30 is a communication issue, so have checked all cables and they seem okay.
          Any feedback on how you would flash the old firmware back whilst not being able to communicate through the Bafang Config tool?
          Figure it’s software related as it happened after flashing updates.
          Any help would be appreciated.

          • Hi Lynt,

            It is very unusual to have an error code 30 right after programming. I also would not know what might have caused it. Did you unplug something while it was still writing or something like that? If you can’t connect to the controller, it is not possible to change the settings. So I also don’t know what to do in this case. I have reprogrammed over 20 controllers, and never had this happen. Was the controller having issues before the programming already? And did it happen right after? Or did you use it for a while?

          • We connected as per the instructions with no problems and sent your 36v setup with no problems – disconnected and plugged in bike and turned on. After the initial screen showed normal it then went to error 30. This happens everything I turn it on now and nothing works except the light but I notice the battery indicator shows 0% !
            Never seen the code before and have done many hours riding.
            Not sure what to do now except try and check continuity of all cables. If this fails I will be seeking advise as to what components I should consider replacing!

  19. Hi Giel,
    This is a great resource for DIY ebike builders. I read through your description of settings, but thought I would check in for advice. I am a lifelong cyclist and used to operating at higher RPMs. I would like the assist to not drop out at a given speed or RPM. Just continue providing a predetermined level of wattage until I hit cruising speed. I want to cap assist at 100, 200, 300, 400, 500, 600, 700 and max available (or some similar config, based on number of power levels.) Which settings are key for this kind of behavior, and what should those settings look like.

    Also, can the throttle be set to give max power regardless of power level settings? I would like to have assist level limited, but if I need to change lanes, or otherwise keep up with traffic, I would like that to happen at the push of a button.

    I am kind of wishing I had purchased a torque assist motor…next time.

    • Hi Scott,

      Thanks!

      The most important setting for that behavior, is to set the speed limit to 100% in all PAS levels. The current limit you will increase gradually. This is something that is recommended by default in my guide. So simply copy these settings.

      You can set the designated assist level of the throttle to 9. This way the throttle will always be at maximum power.

      Unfortunately, there currently does not exist a system with the Bafang specifications and a torque sensor for DIY purposes. I also wish it existed. The Tongsheng TSDZ2 does feature a torque sensor, but it has its own disadvantages compared to the Bafang system. So we really need a system that has both.

  20. Hi Giel, during last summer you helped me complete my bike conversion. I fitted and reprogrammed, with the help of your guide and using your recommended profile, a Bafang 750W BBS02 with 48V 17.5Ah battery and everything up until now has been wonderful. Unfortunately this evening whilst cycling up a hill with my daughter in tow in a bike trailer the bike just stopped working. I detached the battery and put it back on but no change. When I got home I checked all cables for damage and everything was fine. The battery itself is 90% charged. Do you have any suggestions as to what it could be? Thanks

    • Hi Richie,

      That’s unfortunate! Is the bike completely blacked out? The display doesn’t work and also doesn’t give any error codes? In that case I would check your battery terminals, and see if there is a voltage across them. If your battery has a fuse, check that as well. If you are certain that the wiring and battery are fine, the issue is most likely with the controller. It is however uncommon for a controller to fail without any error codes. Were you putting a lot of stress on the motor when it failed?

  21. I have the USB programming cable plugged into laptop/speeed app, plugged into display, but when I hit connect it says it can’t establish a connection with the motor, yes the battery is on/display, any suggestions???

    • Hi Yahra,

      I would recommend to check all the steps again, if it still doesn’t work, try another computer. Apart from this, I can’t really give any suggestions. It should just work when you follow the steps, sometimes connection issues do occur though, without a clear cause.

  22. Hi Giel,
    I have just installed my BBSHD (DCP18 display) with 2kw controller to my MTB. I have a USB hardware connector and would like to tune my controller as the factory settings are terrible. I will use your suggested settings. My question is, is there a way to remove my PAS all together? I would like to use throttle only and have power settings relevant to throttle only. I’ve read disconnecting grey wire inside next to controller works? could you please confirm? Thank you very much for your time.
    Cheers
    Adam

    • Hi Adam,

      I don’t believe it is possible to disable it in software. So the only option would indeed be to physically disconnect the PAS sensor. The 4 pin connector, which has one grey cable, should be the PAS connection. So unplugging this, might work. I have never tested this however, so I am not 100% sure. You can safely test it though, so I would recommend trying this.

      • Thank you very much for your reply Giel, your information is greatly appreciated.

        I disconnected the grey wire, the bike runs like a dream without the PAS, your recommended settings are pretty bang on too! It’s a whole new bike to ride, so much better thank you!

        I had a lot of trouble prior to uploading your file settings on my bike, my computer wouldn’t upload “Bafang Configuration Tool” when I found Winzip free trial for downloading files worked well. Then I had issues with a compatible driver for Windows 10, computer wouldn’t connect until I downloaded “Bafang USB driver” from someone called Dynz on EBR forum, this information was excellent and gave me the tools to use your files, hopefully this info can help others too. Thanks again for providing a great platform and sharing your wealth of information.

        • Hi Adam,

          I am glad it worked! Awesome! Interesting recommendation, I will take a look at it so that I might alter the post. Thanks.

  23. Hi Giel!
    Thank you for this awesome post.
    Unfortunately, I am having a problem.
    I have tried multiples times carefully, while slowly reading your post not to make any mistakes.

    Even though I have successfully overwritten the flash (Basic, Pedal Assist, Throttle Handle), my on-bike display shows the original value (speed limit 24kph) and I feel no change in the assist levels / current changes when I ride it.

    Do you know how to avoid this?

    My bike is Benelli Tagete 27.5 Cross
    with Bafang M400 motor and DP C07.UART display/controller.
    The controller by the way only has assist levels 0-5.

    • Hi Shun,

      I don’t know if the M400 is even compatible, that could be the reason why you don’t feel any difference. Also, have you disabled the speed limit on your display? The display will otherwise overwrite the speed limit. Apart from that, I wouldn’t know why it does not work. I do know that the guide is for the BBSxx series, so the M400 might simply not work. It is however strange that you were able to write in that case.

  24. Hi Geil,

    Is it possible to update the firmware on the display? I have a 750c Bluetooth display and it seems that I am missing some advanced settings options that are listed in the PDF manual. Any help would be appreciated, thanks!

    • Hi Paul,

      I think it is possible, but with specialized hardware and software. I don’t think it can be easily done. I myself have never done it, so I cannot tell you how to do it. I would suggest looking at YouTube to see if you can find a tutorial. If you can’t find a clear tutorial, I would not suggest trying it. If you do something wrong with firmware, you can easily brick your display. The extra features are not worth the risk.

  25. Hi Giel, Your 750w 48v el file with 10%-100% steps assist works perfectly in my 750w motor, Could I use this same .el file also on my wife’s 48v 350w motor or or is there a better option.
    Thanks again for your excellent information,
    Cheers from down here in the South Pacific (NZ)

    • Hi Johannes, yes you can use the same file, the only thing you should change is the current limit [A] setting. Change it from 18A to about 10A for the 350W version. Apart from this you can leave all settings the same.

  26. I recieved a DCP-18 with my new BBSHD, but it is missing the ‘MAX PAS’ setting, instead has a ‘DEFAULT MODE’ setting to allow you to set to either ECO or SPORT mode.
    The problem is that the maximum Power Assist level I can select is 5. Also, the system starts up in PAS 1, which I would prefer to start up in 0.
    I have purchased the USB serial cable and downloaded the BafangConfigTool, but nowhere does it show how to set the MAX PAS default or to show the MAX PAS on the DCP-18’s menu.
    I found a pdf user manual for the DCP-18, and it shows the sections with the DEFAULT MODE – ECO/SPORT marked out with red ‘X’s, leading me to believe this function is deprecated.
    Did I receive an older or obsoleted DCP-18? I just received it a week ago…

    • Hi DJ Far,

      I deleted my previous comment, this is my new comment regarding the photo you sent. The DCP-18 should indeed allow for 9 PAS levels. I also don’t understand why yours does not show this option. I guess that it has some different display firmware, where this option has been disabled. This is not something you can easily change. But like I said, pas levels 1-3-5-7-9 in the programming software correspond to 1-2-3-4-5 on the display. So your maximum power potential will not change.

    • I also used the DPC-18 in a new July 2021 build and mine also appears to be locked to 5 PAS modes, which is actually fine for me. But I was curious about this, researching it online, and I read on an ebike forum somewhere that the newest firmware from Bafang have implemented this change, presumably to simplify it for the user. If you’re programming, just know that in the Bafang configurator tool, this means Assist 1, 3, 5, 7 and 9 are the 5 mode levels being used.

  27. Giel, a couple programming notes that might be interesting for you from my BBSHD build July 2021 that uses a 52V 20ah battery from Unit Pack Power.

    1. I couldn’t program the Low Battery Protection to 44V, as you recommended. The highest I could set it at was 43V. At 44V, an error occurs saying this is out of specification.

    2. The Pedal Sensor Type was set to BB-Sensor-32 from the factory or from Luna, who was the distributor I bought from. I did not change it to DoubleSignal-24, since the default setting was working fine, but I thought I’d mention it as this setting seems to work as well. The sensor looks the same as all the sensors I’ve seen in other builds. I don’t what functional difference there is between BB-Sensor-32 and DoubleSignal-24 and I could find much about this online.

    • Hi Don,

      1. Interesting, it doesn’t make sense that you can’t set it higher. It should give an error if you go too low, so I am not sure what the logic is behind this. The new Bafang firmware from 2021 definitely is causing this.

      2. I think the difference has to do with the number of magnets in the sensor, 24 vs 32, but I am not certain about this. It is interesting that both work though.

      Thanks for sharing your findings, I should get my hands on a controller with 2021 firmware so I can look at it myself and maybe alter the guide a bit. But again, thanks for sharing, really helps me out as well!

  28. Hi, I had installed a BBS02 mid drive two month ago and I was disappointed to learn that it was not torque sentisive. However I was hoping that programming the controller could make the bike enjoyable.

    I tried various program suggestions found on blogs, most of them suggesting increasing speed limits as well as current limits with assistance levels. But none of them gave me satisfaction.

    I was dubitious about suggestions to set the speed limit to 100% for all assistance levels. I had tried a bike with rear hub motor and I found that even at level 1, I was pushed at 23 km/h on level ground. But after reading the various posts on this blog, I decided to try your recommended program.

    At my first try, I found that level 1 at 10% power was too fast. I reduced it to 5% and distribute the 95% over the remaining 8 levels and now I find it very enjoyable. This is the solution I was looking for.

    Thank you

  29. Simply wanted to add my thanks for this help. Your work here and ongoing responsiveness to inquiries makes this is the most up-to-date and relevant resource on this subject available on the internet. Many thanks.

      • I ordered the usb cable stated in this post. It does not fit on the bafang m420. The cable in this post is round and the bafang m420 has a slightly different cable. Its a bit triangle shaped so it doesn’t fit. I wonder if there is a converter or something so i can connect the cable and try to connect my laptop to the m420.

        • Hi Nicky,

          The Bafang M420 is not compatibel with this guide. This guide is meant for the Bafang BBSxx series.

  30. Hey! I do not get any comport in bafang’s programming program .And that there are no drivers for the usb port that the programming cable is connected to Mvh Carl-Martin

    • Hi Carl-Martin,

      I listed all the the drivers that you should need. The only thing I can say is that you should redo and check all the steps. If it still does not work, try another computer.

  31. Hello Giel, I appreciate all the work you have put into this post. My question to you is I am trying to fix the assist levels on a Bafang rear hub motor. No matter what I do with the setting on the 850C display, level one rockets right up to 10mph. Even if the Max speed is 10mph, level one will always go to 10. Will the programming cable and steps listed above work on the hub motor, controller and display? Right now the bike is unusable to its owner because of the way-too-powerful level one. Thank you.
    Greg

    • Hi Greg,

      Unfortunately this tutorial doesn’t work for Bafang hub motors, only for Bafang mid-drives. The hub motors can’t be reprogrammed. The only option would be to get a completely different controller. But it won’t be easy to find a controller that is plug an play. It will likely require some knowledge about wiring and connections. So I think you will be stuck with this behavior.

  32. Thank you for your effort around this tutorial, i bought a bbs02B 750w and at standard settings the engine behaved nervously with sudden jerks and the amps just jumped. I loaded your settings and now the driving pleasure is much better, the 18 amp maximum together with the new pedal assist has made the ride much smoother, with easy transitions between power assist.
    18Ah battery / range cca. 120km

  33. Just found this site, excellent info/interaction. Two thumbs up from me. The reason I was searching/scrolling endless pages of info was, I was trying to find out if my 48v 750w BBS02b will take a 52v battery without changing the controller settings. I am planning to change the settings when my USB cable arrives, but will I damage anything if I use the 52v battery until then?
    Thanks…

    • Hi Mike,

      You can’t really damage it with a 52V battery. If you have some newer firmware, it might give an error code. This will prevent you from using the bike at all, but it will not damage it. If you don’t get such an error code, you are absolutely fine. I suspect you don’t have the error code, otherwise you wouldn’t be able to use it. So you are all good.

  34. Hi Geil
    My Luna BBS02 has only 5 PAS levels, even in the lowest PAS 1 it gives me too much assist. After about three pedal cycles the motor pushes me and it feels like I’m pedaling with no chain (zero effort) I then need to stop pedaling so motor kicks out then pedal again. This jerky pedaling does not give a comfortable ride. How would you suggest I might solve this. Thank you very much -Joe

    • Hi Joe,

      If you use the values recommended in my guide, this should be a lot better. My values keep the power in the lower PAS settings low and less jerky feeling. Try it! Just safe your old settings, so that you can always go back in the unlikely case that you don’t like your new settings.

      • If I only have 5 PAS levels do I ramp can I ramp up like say, 10, 25, 50, 75 then 100 and leave 6-9 at 100.

        • Hi Kenny,

          No, you should increment from levels 1-9 even with 5 PAS levels. If you have 5 PAS levels, it will select levels 1-3-5-7-9.

  35. hi Geil

    thanks so much for the information you have so kindly shared here. I used your suggestions to reprogramme my bbs02 48v 500w bafang and it is running great. since then i have changed my computer and i am now running windows 10. i seem to be unable to get the config programme to find the coms port? i have downloaded the windows 10 driver from your links above but whenever i open the config programme there are no serial ports available. do you have any advice?

    many thanks

    • Hi Chris,

      Unfortunately, these things sometimes happen and can be quite random. I would suggest redoing all the steps, just to be sure. It should definitely work on windows 10 as well. Sometimes other drivers can conflict, causing it not to detect. I have however not pinpointed the exact cause of the problem. So trial and error is the best method at the moment. So redo the steps, if this doesn’t work, try another windows 10 computer if possible. If it does work there, look at the differences in installed drivers.

  36. Hi Giel, during last summer you helped me complete my bike conversion. I fitted and reprogrammed, with the help of your guide and using your recommended profile, a Bafang 750W BBS02 with 48V 17.5Ah battery and everything up until now has been wonderful. So I am forever grateful for the time you spent replying to me and also the time you give to answering other peoples’ questions as it all adds to our collective knowledge. I have a level of independence I never had before.

    My question today is:
    I was riding yesterday and noticed that assistance on all levels stopped at 25km/h it felt like there was real resistance after that and it wasn’t enjoyable. What I did notice though was if I pressed my throttle and continued to pedal my bike went up to around 40km/h and was enjoyable.

    1. Is there a way of increasing the top speed of the assistance levels to 40km/h?
    I considered changing Speed Limit: By Display’s Command but did not want to do something that would change your recommended profile without your advice.

    2 is there any detrimental effect to the motor?

    • Hi Richie,

      Awesome! No problem!

      1. Have you set the speed limit [%] of each PAS set to 100%? And what is your maximum speed setting on your display (check display menu)? You must have enabled a speed limit somewhere. Did you always have this limit problem? Or is it a new problem? You can change “Speed Limit: By Display’s Command” to a fixed value. I recommend “By Display’s Command” since this will allow you to change the speed limit on the fly on your display, it is just more convenient.
      2. No, there is no problem with changing that.

      • Hi I hadn’t noticed a resistance before but maybe I just wasn’t pedalling fast enough :-). Initially I was going to reinstall you profile as I could not guess the display password.

        Eventually I found it by going back to my original purchase and finding the diplay model number. I went into the advance menu set up and found that the limit was set to 25km/h. I changed this and now the resistance/limit has gone and I have assistance beyond this linit ! 🙂

        Thank you once again for the help and support that you you provide. You have saved me many hours of head scratching over these months.
        take care

        P.S. One last thing could you recommend a stabiliser bar for BBS02 the only ones I find are in the USA and very expensive to import to the UK

        • Hi Richie,

          Great that you got it working! Unfortunately the only stabilizer bar that I know of, is also the one in the USA. There unfortunately is not a cheap Chinese seller yet.

  37. Hi Giel,

    Last quick question. you said i could set the current limit to 18 on my BBS01. This has indeed improved performance…especially going up hill. But isn’t the controller only rated at 15? Bit concerned about me prematurely burning it out.

    Felix

    • Hi Felix,

      Your controller has a 18A limit, otherwise it wouldn’t work when you set it to 18A. 18A is the maximum though, so you are running it at full power. It is rated for this, so it shouldn’t be a problem.

      18A could damage your controller faster than 15A, so you can set it at 15A if you don’t want to run it at its limits.

      I would however not worry about it to much, it should be rated for 18A. As long as you don’t use maximum power all the time, you should be fine.

  38. Hi Giel
    A question about models, mine is a BBS02B, is that the same as BBS02 and is programming the same? whats the difference between a BBS02 and BBS02B, Mine by the way is a BBS02B 750w 48vx17.5ah with P850c
    Your replies and info have been a wealth of knowledge for me, Thankyou
    Cheers

    • Hi Johannes,

      There is no difference in programming between the two. The BBS02B is the newer version, which has higher quality mosfets in the controller. But for programming, there is no difference at all.

  39. Hi Giel. Got my bafang BS001 working very well after using your settings….instead of someone else’s
    Quick question. Is there a real benefit to getting the gear assist unit? does it actually save wear on the chain? and where does it plug in?

    • Hi Felix,

      I think the gear sensor is helpful, especially when you switch gears a lot. If you switch gears under high power, you can snap chains or do other damage. If you always make sure you don’t apply power when switching gears, it is not necessary to have. It mostly is for peace of mind an added safety.

      It can be plugged in underneath the controller into the dedicated plug. Not all controller versions have this plug though, you should check this. Otherwise it can be plugged in to the brake lever connectors using a splitter.

    • Hi,

      I just installed a gear sensor last week and am very happy with it. Prior to this I had sheared the derailleur off completely by shifting when I shouldn’t have been. Yikes.

      Since I installed the sensor I notice a huge reduction in noise. The derailleur no longer snaps into position but is instead very quite, indicating there is less torque on it.

      Ben

  40. so why is there no setting for the Walkassist (a way to set speed/current).
    is walkassist controlled directly? no settings possible?

    Thanks.
    R

    • Hi R,

      You indeed can’t change anything about walkassist. I can’t tell you why it can’t be changed, the Bafang engineers chose not to do so. You would have to ask them why :p

      • Thanks for the answer Giel ,
        one extra question:
        the controller (bafang) m400 has a connector for battery and one for battery communication.
        do i need the extra battery communication ,i like to buy a li-ion pack but they come without battery communication connector.
        my bike bat cost around 500 euro, against one from Ali for 100 euro .
        Oh when reading the bike controller it said i have a 20A controller ,so the i look for a battery that can handle 20A bms Right?

        Thanks for taking your time to answer .
        GR,R.

        • Hi R,

          If your bike has battery communication, it is some sort of special system which is unique. Therefore you can’t buy generic batteries without communication, your system would probably give error codes. It might work, but I would stick to the factory batteries.

  41. Hi Giel. Found your site incredibly helpful. I have reprogrammed my BBS01 with a .el file that a bike shop sent me…..but wanted to recheck it with your profile….I changed one or two of the values then realised that….those figures aren’t for BBS01 …are they? Worked i may have made a serious mistake. My battery is a 36v 15ah one. What should my settings for low current protection and current limit…be?

    My set up mostly works really well. Only thing I find is I don’t get quite enough power when gpoing up a steep hill (compared to my wife with a suntour rear hub) now i know the characteristics of the two are very different but i was under the impression that i should be able to get a little more ooomph on 9 with sensible use of gears. Any thoughts gratefully received. Felix

    • Hi Felix,

      I am glad that you find my website helpful. Could you tell me which settings you changed? A lot of settings are interchangeable, because they are relative settings. There are however some settings like current limit and low voltage protection that are specific to your battery and controller. Did you change those? If you can tell me which settings you changed, I can tell you if you did something wrong or not.

      • Hi Giel.
        My BBS01 now running really well thanks to your recommended settings. I’m still wondering whether or not to get the gear sensor. I’m pretty careful about changing gear and always ease off when changing (a habit from older road bikes i guess) but i realise I’m still putting more of a strain on my chain & Derailleur. I don’t use the brake sensors but i also don’t have the newer model with the separate connector for sensor. Do i just need the gear sensor (presumably installed on rear stay)and extension cable to one of the brake connectors? or am I missing something? Felix

        • Hi Felix,

          If you are careful, it isn’t absolutely necessary. Check my other reply to your comment for this.

          Yes you can use an extension cable if you don’t have the dedicated plug. You can also install the gear sensor right after your shifter. This way you don’t need an extension cable. You will need to alter the cable sleeve though in that case, which can be hard.

          So both options are difficult and slightly inconvenient. If you don’t have the dictated plug and shift gears with care, I would just leave it like this.

          • Yes I think I’ll try and manage without. I kind of wish I’d known that I could have got a version of the bbs01 that already had the cable from the controller. Maybe they only released it more recently.

          • Hi Giel, Just to say….i think 18va on the BBS01….whilst really improving climbing…really does seem to impact the charge on the battery quicker

  42. Hi,

    I’ve noticed that several companies sell third party controllers for Bafang motors. Can you breifly explain the advantages of a third party controllers?

    Also, do you think bringing a spare controller on a long distance trip is necessary? My thought was to keep it at home but have a friend ship it to me if something goes wrong.

    • Hi Ben,

      Which third party controllers do you mean exactly? I only know of third party external controllers, but those are really messy to install and not exactly user-friendly. Only meant for enthousiast who want more power out of their motor. Do you mean these external controllers?

      I don’t think you have to bring along a controller all the time. The option of your friend shipping it to you if something goes wrong sounds like an excellent option to me. In that case you have a spare one available but don’t have to carry it around all the time.

  43. Hi Giel,

    Just writing to let you know that your custom configurations have vastly impoved the enjoyment I get from my ebike. Thanks to these configurations I am able to ride 130km on 34.5amph worth of battery.

    I’m gearing up for a long tour and am looking to squeeze even more efficiency from my battery by programming it for minimal assist. My levels now look like this:

    1/10/100
    2/15/100
    3/18/100
    4/20/100

    I dont really use the rest. I did have 2 quick questions I was hoping you could shed some light on. Even though I have each level set to draw a specific current (1.8amps in level 1, 2.7 amps in level 2, etc) the motor seems to draw both over and under this number, sometimes spiking to 3.5 amps in a level that is set to draw 2 amps, although usually it is not far off the number it is set for. Can you explain what this means? If the configurations don’t strictly limit the amperage, are they meant to act as an average amount of average?

    Also, I notice that my display usually displays current is increments of .5. 1.5, 2.5, 3.5 etc. What happens if you set the controller to limit the current to something like 2.25? Does the display round that number up or down? Only asking cuz I’ve never seen the display show something like 2.25 or 3.75 but I have some of the levels set at such limits.

    Hope this all makes sense. My technical knowledge of the subject is limited so feel free to ask questions, and thanks again for your help.

    Ben

    • Hi Ben,

      Good to hear that you like your new setup!

      I believe that the amps that you calculated (with the keep current taken into account) should indeed be maintained and limited to. I think that the problem is that the current sensor in the motor is just really inaccurate and sensitive. Therefore you get these readings which don’t exactly represent the real current. So I believe that if you would install a good external current meter, you would indeed measure your stated currents.

      The display indeed only shows one digit. I do think that the controller also rounds to one digit and tries to maintain that current. So you don’t have unlimited accuracy in that respect. It would cost to much computational power to do so, therefore I think it will just round to one digit in such cases. I am however not 100% sure of this, only the Bafang engineers could really answer this question. This is my take on it though.

      Good luck and have fun riding!

  44. HI,
    about the battery charge.
    Do you think we can improve the battery charging time.
    I have a battery of 48v 17.5A it takes more than 8 hours for a full charge. I think it’s long with the original charger that makes 54.6v for 2A only.
    Thank you
    JIM

    • Hi Jim,

      Programming can’t make your battery charge faster. You can buy a faster charger, a 54.6V 4A for example. If you want to do this, you should ask your battery seller what the maximum charging current is of your battery. You can buy a charger with this maximum current. Then your battery will charge faster. In most cases, 4A chargers will be the maximum. Good luck!

      • Hi G,

        Would a 4A charger shorten the life of tue battery? I hear “fast charging” is bad on batteries.

        • Hi Ben,

          It would shorten the life time of the battery by the slightest bit. 4A still isn’t really consider fast charging though. So I wouldn’t worry about this to much. Simply use the 4A charger if you are in a hurry, otherwise just keep using the 2A charger. If you do this your lifespan of the battery won’t be impacted considerably, it will provide a lot of convenience, which is great.

  45. And my programming attempt came to a halt.

    Finally got my Bafang programming cable, but to my dismay apparently my connector is too big for the display connector.

    They are both green 5 pin connectors, with a notch, but the header on programming cable is just a tiny tad bigger than the display cable.
    Display cable is marked “Julet” and Programming cable is marked 8Fun(most likely just the brand) and then “03”

    Is there a known name for converter for this or do I need to scourge the net for a different programming cable?

    Also, there is another odd thing I realise.
    My “battery” cable (with female plug) is going to the display (where display has the male plug)
    And from display there is the 3 pin cable for the thumb controller (power on/off, assist level)

    If I were to actually use the programming cable, I would program the bike via the display, but then it would not be able to receive battery power, unless display is powered by the programming cable during reprogramming

    • Hi Bjarke,

      That’s weird, I thought that the 8fun and julet cables were identical. Are you really sure that it doesn’t fit?

      Finding an adapter would be nearly impossible. In that case you would have to buy a new programming cable. The cable I listed is the only version I know, so I don’t know if there is another version with the connector you have.

      If you can send pictures to edrivenet@gmail.com, I might be able to help you with finding a correct cable.

      Also, you are trying to reprogram a BBSxx series motor right? If so, you shouldn’t have any issues with the battery being disconnected. You just use the cable from the motor to the display, and leave the battery connected to the motor. The display won’t be connected during the reprogramming. The reprogramming will happen on the motor controller, not the display.

    • Hi,

      I’m not sure if this helps you, but when I got my programming cable the connections were so tight due to the waterproof connecter that they actually got stuck together. I had to carefully make a tiny slit in the rubber around the connector to relieve pressure and get them unplugged

  46. Hi ya .

    Thank you ever so much for all that you do .

    Your guide is fantastic.
    Do you have a 32bit windows 7 driver for the usb at all please .

    I have an old laptop i want to use for fine tuning while i am out and about for a bit .

    Thank you Steve

  47. Hello Giel,

    Everything on my bike works perfectly since I used your guide! Thanks for that👍🏼. The only problem I have is that it doesn’t show the range on the 850C display.. it shows Range:–. Is there a solution/fix for this problem?

    Yours sincerely,

    Dean

    • Hi Dean,

      Awesome! The Bafang BBSxx series in combination with the P850C doesn’t support the range function unfortunately. So there is no way to fix this.

  48. Hi Giel, during last summer you helped me complete my bike conversion. I fitted and reprogrammed, with the help of your guide and using your recommended profile, a Bafang 750W BBS02 with 48V 17.5Ah battery and everything up until now has been wonderful. So I am eternally grateful for the time you spent replying to me and also the time you give to answering other peoples’ questions as it all adds to our collective knowledge. I have a level of independence I never had before. My concern is more for the future really as I would hate for me to not have the freedom. So what I would like to know is:

    1. Do you have any tips/guidance on how to maintain my motor i.e. physically and/or through programming to have many more miles of trouble-free cycling?

    2. Is there anything else like battery charging times or anything else that can help?

    thinkng you in advance 🙂

    • Hi Richie,

      No problem, happy to help.

      1. The following tips can help increasing the trouble-free cycling miles:

      – Immediately clean the motor when it is dirty, don’t leave it dirty. Sand, dirt, etc that stays on the motor will wear out the motor more.
      – Lubricate your chain periodically.
      – When your motor starts to make more noise then usual, regrease the internal gears.
      – Try to avoid leaving your bike out in the rain for long periods.
      – Store your bike inside.

      Apart from these things, you can’t really do much. The Bafang motor is designed to be pretty maintance free. The motor controllers are known to fail sometimes, this is however something you can’t really prevent. Luckily, they are easy to replace once they do.

      2. As far as keeping your battery in good health, you can do the following:

      – Avoid draining the battery to 0%, only draining it to 10 or 20% is better.
      – Don’t charge your battery to 100% everytime you only do small rides. Only charge to 100% if you will need to use it all. Less charging, is less cycles, is increased battery life.
      – If you will not use the battery for a long time, charge it to about 80% and leave it. This way the battery will take a long time to complete drain out itself. Therefore it will be nearly impossible for the battery to damage itself.

      These three things will ensure that your battery will last the longest time.

      Hope this helped, and enjoy the rides to come 🙂

  49. Hi Giel,

    In dealing with my rear derailleur issue mentioned in an earlier comment I rummaged around through the box of gear that came with my used Bafang kit when it was purchased. I found some brake levers that seem to be specially built for brake sensors, as the sensor is housed inside the lever. (I hope you can picture this…I am able to send pics if needed).

    One of the brake sensors I found in the box of used stuff had a frayed wire, so It needs replacing. My question is….do you know if Bafang sells brake sensors without the lever included? I already have a lever so buying one seems wasteful.

    All I can find is this, but as you can see the lever is included. Anything else I find seems to be build for hydraulic disc brakes, not mechanical.

    https://lunacycle.com/parts/bafang-parts/bbshd-parts/bafang-bbsxx-brake/

    • Hi Ben,

      There are three options:

      Built-in sensor:
      https://a.aliexpress.com/_mKG267x

      External sensor (hydraulic): https://a.aliexpress.com/_mL7lIXF
      This one can be used for mechanical brakes as well. Nothing stops you from doing that.

      External sensor (cable brake):
      https://a.aliexpress.com/_mLsCXSd

      The third one is probably what you are looking for. With that version you don’t have to change out your existing lever. It could be that you will have to cut of some of the cable guide, since the sensor will take up some space. If you leave the cable guide the same lenght, the brake cable inside won’t reach the lever anymore. So for that reason, I find that changing the entire brake lever with the one with built-in switches is more convenient. This is up to you though.

  50. Hi Geil,

    I hope you are well and have managed to go for some nice rides this season despite the pandemic. I have been having a couple issues with my bike lately and I wanted to ask you a few questions:

    1. The plastic chain guard that protects the front sprocket has cracked (I suspect from normal wear and tear, it looks quite old) and this has caused the chain to get very tangled a couple of times, so it needs replacing. Apparently, these plastic guards differ depending on Bafang models. How do I tell if I am using a BBSHD, a BBS01 or a BBS02?

    2. Unfortunately, I have ruined my rear derailleur for a second time this season. It is hard for me to diagnose at this point….possibly a bent derailleur hanger? I don’t see the cracked chain guard having anything to do with it. Both times it happened while shifting under power but it didn’t seem unusual at the time. Nontheless I am considering buying and installing a shift sensor sold by Bafang. I’m slightly hesitant to do this though because a sensor can just be another thing to go wrong. What are your thoughts on Bafangs shift sensor? Do many people complain about it?

    3. I ride a recumbent trike so the distance from the rear deraileur to the mid drive motor at the front of the trike is quite far. It does not seem like the shift sensor comes with enough cable to reach the controller. Do you know if Bafang sells extra cables that I could use to span this distance?

  51. Hi,

    I’m the author of the “Speeed” application for Android https://play.google.com/store/apps/details?id=com.mkopa.speeed
    It’s the equivalent of the popular Windows tool “Bafang Configuration Tool 2.0”. The application supports configuration files from “Bafang Configuration Tool 2.0”, it also saves them in this format (*.el).

    To work we need the same adapter i.e. USB-Serial + Julet 5-pin female plug.

    The application is free. I’m making it for our common good 🙂

    In the next version we’ll find support for Bluetooth adapters, and after some time and thorough testing the application will also be available for iOS.

    Could I ask the author to update the post?

    • Hi,

      Amazing tool! I might update the post in the future for the use of this tool. Thanks for creating such an awesome tool.

  52. Hey Giel (and Paul if he is still lurking here).

    I found this page, and was glad to see that Giel was just as upset on how Bafang limits worked (speed limit for each assist level rather than current limit).

    I bought a cheap ebike which came with Bafang 250W RM G010.250.D aka SWXH2
    https://bafang-e.com/oem-area/components/component/motor/rm-g010250d/

    I was hoping to reprogram the controller related to assist levels mentioned here on the page, but I get the impression it is only center/mid-motors that can be reprogrammed and front or rear cannot.
    But yet I stumbled upon Paul’s experience that he managed to re-program certain parts of a rear-motor?

    Any info?

    • Hi Bjarke,

      I was also unaware that there existed Bafang controllers for hub motors that are programmable. But yes, it is possible that you have a reprogrammable hub motor system. It however doesn’t matter which motor you have, the controller is the part that is programmable. So you should look at your bikes controller. If it is a Bafang controller, you have a chance that programming will work. You will just have to try this, because there isn’t any good documantion available for this. If the controller isn’t of Bafang, you will be out of luck. In that case it will definitely not work.

  53. Hello Giel,
    First, your comprehensive replies are great and very generous of you to supply. I have learned a lot reading them. I have a simple question: I have ordered a BBS02B 48V 500W kit with 48V 13Ah battery. I see the .el profile you have supplied above is for the 36V version. What settings would I need to change for this 48V set up? Besten dank!

    • Hi Paul,

      You would only need to change the “low battery protection” and “current limit” setting. You need to set the low battery protection to 41V. The current limit you can set to 13A, this will result in approximately 500 watt peak power. If you want less peak power, lower this value. If you want more peak power, increase this value. The low battery protection should always be kept on 41V though.

        • Hi Paul,

          No, the 13A I choose such that the maximum power will be approximately 500 Watt. I don’t know what amp controller you have, because for the 500 watt version, they use different controllers sometimes. You could check the serial number on the controller and find out. The number you can find, is the maximum you can input there. But this number will probably give you more than 500 watts maximum. So only do this if you want more than 500 watts of power.

  54. Hi, I found your advice on programming great. I have an issue, I took my motor off to re-grease it. As I was taking it apart, it slipped out my hand and fell to the ground. In the process unplugging the wires that go to the controller. I have them installed again, but I have no pedal assist. Could you give me any help with this ? An explanation of where the wires correctly go, a picture or something. Any help would be greatly appreciated. Thanks.

    • Hi Joey,

      All the wires only go in one way. So you can’t really make a mistake in this. But this video exactly shows how to connect them:

      https://youtu.be/19tj9egnUbY

      If you have checked these connections, and it still doesn’t there probably broke something internally. This would be a shame, because it could lead to a complete controller or motor replacement.

  55. I can’t seem to connect. It was working for me last year. Tried connecting to all shown COM ports and will not connect. My bike company thought is was a bad cable and sent me a new one. I still can’t connect and I have tried every USB port on my laptop. What could be wrong?

    • Hi Fred,

      That’s hard to say for me. I would suggest redoing all the steps in the guide. If that still doesn’t work, try another computer. If that still doesn’t work, the problem will likely be caused by the controller. Good luck!

  56. Hi Dave,

    I don’t know what went wrong. But I don’t think it is caused by my settings profile. It is just a profile, nothing special, no different flashing. You could try flashing the provided settings again, making sure to follow all the steps. I suspect it was just a random error caused by the reprogramming software itself, not caused by the actual profile.

  57. Hi followed your instructions- driver gave me problems i have windows 7 – changed setings to what you suggested and hit write Now after hooking up display and turning on I got Error Code 30 and no battery percentage Motor not turning on -I have a BBSHD 1000 watt 48 volt -any suggesting to fix

    • Hi Dave,

      Error code 30 has to do with a communication error between the display and controller. Did this problem occur right after the flashing? Never had any issues before? It is unlikely that is it caused by the reprogramming itself.

      • yes it was right after flashing I plugged cable back in and turned screen on with no
        battery percentage and a second later error code 30 and bike would not move
        I did a firm ware flash and now working no more error code But should i try and
        use your program again ?????????

  58. Hi, thank for all your great help. I have adjusted my settings but the speed shows in km/fr instead of mph. How can i change this.

    • Hi Bob,

      You will probably have to change this on your display. Simply look up your display type on youtube, there will definitely be a tutorial describing how to do that.

  59. I am continuing my journey trying to understand how the Bafang controller works and would appreciate your feedback.
    It seems that the controller has 2 inputs – road speed and cadence and one output – current. I was thinking that speed was the setpoint but am now thinking current. I think speed is used as a limiter and so still has some control capability. E-bikes have (I think) always had speed limits as part of a certification process. On my bike whenever speed > set speed limit motor goes to 0.6A while pedaling and 0 (well not quite due to display) while not – always. Say I have a current limit of 18A, PAS 1-9 as 10-100% power and all 100% speed. Speed limit is 25. In PAS1 (1.8A theoretical) and under 25 current builds to 1.6A and stays there. I can detect no changes due to cadence – maybe I’m missing it. If cadence plays a role in control I was expecting current to drop or at least change with increasing cadence – right? Oher than knowing the pedals are moving why would it care about cadence? What information can be gained? Does increasing cadence mean the less/more power is requied? As I approach a hill and the cadence decreases the power can not
    increase beyond the set limit so that wouldn’t help. I’m trying to picture how the ideal controller would work – the Bosch torque based controller sure seems nice. This makes perfect sense – more rider input gives more motor output – simple. How does cadence map to rider input? (Overall, I am happy with mine – power at 10A, speed limiter at 25 and it works fine although there is speed pulsing 23-25 which I can live with. This setup requires little rider interaction as there is enough power to hande changing conditions and averages ~3A.)
    Any ideas much appreciated,

    • Hi Mike,

      The theoretical 1.8A drops to 1.6A due to the keep current setting (probably at 80% – so 80% of 1.8 A is 1.6 A). I would also say that the overall control indeed is current control, with speed being limiters. I would say that the cadence sensor is mostly used for determining if you are pedalling at all or not. I don’t know how the current to the motor is exactly related to the actual cadence speed. My guess would be that the current increases when cadence decreases in the case that the speed limit isn’t reached yet. If your cadence drops, you probably have a hard time pedalling, therefore it will apply more power (more current). I don’t know the exact internal relationships though, since these aren’t available anywhere and would probably be rather mathematical. If you want to know all these details, you might want to contact an engineer at Bafang. They will probably be the only ones who can answer all these questions. Good luck!

      • Thanks Giel, appreciate the feedback. I’m coming around to the feeling that it is not worth the effort to try to figure out the true nature of the Bafang controller. It works well enough and that’s OK. I know it is tempting to explain that 1.6A based on keep current but more likely it is just what it is and not precisely 10% on 18. My keep current is set at 100%. Of course, it could be something else entirely….

        • Hi Mike,

          If your keep current is at 100%, this indeed isn’t it. It could just be an inaccurate current sensor, who knows. But it indeed could be a lot of other things too. I agree that it isn’t really worth figuring out the true nature of the controllers. These answers will be really hard to get, and it probably won’t be worth your time. Especially when you have it working alright at the moment. Good luck anyway!

  60. Hi
    Great site really useful guides !

    I have a Cortina E-Foss with a Bafang M300 motor etc and like many the speed restriction is driving me nuts.

    From what I can make out the M series can not be accessed with the usb programming cable? And to remove the restriction is via the display/controller?

    That being the case do you know how to access the menu and remove the speed restriction ?

    Many thanks
    Al

  61. Hi
    Great site really useful guides !

    I have a Cortina E-Foss with a Bafang M300 motor etc and like many the speed restriction is driving me nuts.

    From what I can make out the M series can not be accessed with the usb programming cable? And to remove the restriction is via the display/controller.

    That being the case do you know how to access the menu and remove the speed restriction ?

    Many thanks
    Al

    • Hi,

      The Bafang M-series indeed isn’t compatible with this guide. I don’t know if you can remove the speed restrictions via the display on your ebike. I don’t have any specific experience with that motor type. I do know that production ebikes, like Cortina are often completely locked in regard to the firmware. There often isn’t any way to remove the speed restriction, because of legal reasons. Only the manufacturer itself is often able to remove the limiter with special tools that aren’t available to consumers. This is however not a service that they are willing to deliver.

  62. Thanks for this. After 2 days of messing things up, trying to get my ideal configuration, I finally downloaded and flashed your settings file. Works a charm! Just about exactly what I was after.

  63. For anybody wanting to tweak their BBSHD I would highly recommend the “Eggrider”.
    It allows you to reprogram the controller from your mobile phone without any cables.
    You can also store two settings, a legal one and a not so legal one, that you can quickly switch between.

      • Hi Lechu,

        This also works for the BBS02. There is a default settings profile available in the guide. The settings for the bbs02 and bbshd are the same, except for the current limit. But this is stated in the guide as well. So you can use all the recommended settings.

  64. Hi There,

    Thanks so much for your continued moderation of this form….you have helped me fix so many issues leading to increased enjoyment of my ebike! I have a quick question! My bike is equipped with brake sensors that are overly sensitive, meaning slight pressure (even just the weight of the finger or hand) can be applied to activate the sensor and thus cut power to the motor…

    I have always found these sensors to be not very intuitive as I rarely brake and pedal at the same time. Would disabling the sensors all together run the risk of damaging the motor or controller? Or could this be done safely?

    Secondly, I notice that my display for the BBS02 does not stop calculating average speed when the real time speed hits 0….this means whenever I stop for a brake my average speed decreases dramatically. Is there any way to change this? I find it annoying!

    Third, have you come across any studies that calculate the efficiency/calorie burn of ebikes vs. standard bikes? I would like to know how much energy I am spending compared to a bike without pedal assist….wondering if there is a way to do this mathematically.

    • Hi Ben,

      No problem, happy to help 🙂

      Do you use hydraulic brake sensors? I have had the same problem of them being to sensitive. Repositioning these magnets further from the sensor can fix this problem. I have never experienced the issue with the cable brake levers with built-in switches though. But if you do experience this, you can definitely just get rit of them all together or disable them. It will be very unlikely that you can cause damage, since like you said, you intuitively stop pedalling when braking. So you will never be resisting the motor force with the brakes.

      It is however an extra safety feature. The pedal assist doesn’t stop immediately when you stop pedalling. The cut-off does work instantaneously. So it is convenient to have if you want to stop the assistance immediately when approaching a sharp corner for example. I also use it if I want to pedal allong slowly without assistance. I apply slight pressure to the brakes, which engage the cut-off without actually braking all that much. I find that convenient in some situation. If you also do this occasionally, you will lose this feature ofcourse.

      The display thingy definitely is annoying. There however is no way of fixing this. This is controlled by the display firmware itself, which can’t be reprogrammed unfortunately.

      I don’t know any studies about calorie burn on ebikes compared to normal bikes. You could however try to figure out what power is needed for a certain speed. You first use only the throttle to reach the desired speed and see what power you are using. Let’s say the display reads 400 watts. You then reach the same speed by also pedalling along and again see what power is needed for that. Let’s say the display reads 250 watts. The difference between these powers indicates how much power you are putting in yourself (150 watt in this case). You can then convert this wattage to a calorie/hour burn rate. This method might give you an better indication on your own pedalling effort :).

  65. Hi, I just did my first e-bike conversion on a 2015 Fuji Nevada mountain bike. Easy peasy BBS02 install. Got the programming cable and it took a while to find the correct Win 10 driver. It’s for a USB-TTL Serial CH340 Board in case other folks need a driver (just Google it). Even though the downloaded driver said install failed, it worked. Your settings make for a much smoother riding experience, a lot more like my torque sensor store bought e-bike.


  66. how is the reprogramming with this display (5 speeds only)?
    what is the best configuration with the DPC18 ?
    thank you.

    • Hi Jim,

      For your display (5 levels max) the pedal assist levels 1-3-5-7-9 correspond to the 5 levels. You can however just follow the guide. The fact that it only has 5 settings doesn’t matter for the other settings.

  67. Hi,
    i am the owner of a BB02b – 48V 17Ah with a DPC 18 dysplay.
    Who is it for reprogramming with this display ( 5 pas only ) ?
    thank you.
    Jim from France

    • Hi ,I have new controller and display for my bbshd , plugging it in for first time and powering it up I get error 10 overheat, without having ridden it, the error come on straight away, can this be turned off in reprogramming??

      • Hi Marco,

        Error code 10 is an unusual error. With the programming you can’t actually disable errors. You could however rewrite the software, which might fix the problem. It is however unlikely that this will fix it. To me it sounds more like a hardware issue. A faulty temperature sensor for example. The first thing I would try is reconnecting the controller to the motor. Carefully check if all the connectors are properly installed. If that still didn’t work, some temperature sensor will probably be broken.

  68. Hello
    My problem is that the PC does not recognize the USB. I downloaded the driver for both Windows 10 and Windows 7 and configured it on two computers. In both cases, the PC does not recognize the USB and says that there is no driver to use in the USB. It asks me to contact the manufacturer to have the driver updated. Can you help me?

    • Hi Javier,

      If you carefully follow all the steps, it should work. If it doesn’t work, you can try a different pc. Sometimes the USB cable doesn’t get recognized by some PC’s for no reason at all.

  69. Hi, from one week I got throttle problem in Frist my throttle sometime work and some time not. From from 3 days don’t even move ,even I buyed another one throttle too , but still don’t work
    Thank you

    • Hi Kamran,

      If you have replaced the throttle, but it still doesn’t work there can be two things wrong:

      – The cable connecting the throttle might have an internal broken connection. This rarely happens though, but is possible. With a multimeter you could test this if you know which pins to check.

      – The controller part that is responsible for the throttle, is broken. This is something that I know can happen. Often this will lead to further failure of the pedal assist as well. In your case I think this is the most likely. Unfortunately the Bafang controllers aren’t the most reliable and can fail randomly. This might have happened to you.

      I would suggest rewriting the settings, this might fix it, although it is unlikely. If it still doesn’t work, triple check all connections. If this also doesn’t work I am afraid the only options will be to replace the controller.

  70. Hi Giel, I own a Fantic Motor ebike model ISSIMO (Italian Brand), the original engine was the Bafang M500 which I replaced with the biggest model, M600, I would like to know if your tool communicates with the motor controller. I would like to change the service parameters (1-9). You suggest the USB cable to be connected on the display one but the connector is round while the one on the ebike is triangular (canbus). How could I do??
    Thank you
    Charles

    • Hi Carlo,

      Unfortunately, the Bafang M500/M600 is not compatible with this programming software. This guide is only for the Bafang BBSxx series.

  71. Hi Giel, I have another issue you may be able to help with…
    Basically, I want to ride my BBS02 conversion like a normal bike but where I provide 15 km/h power and the motor provides whatever is necessary to stay at 25. The cadence is fairly uniform. It works fine other than a ‘pulsing’ action – powers up to 25, power drops until about 22 and then repeats. I end up with this cycling of speed. Increasing PAS levels just increase the frequency. I am looking for some combination of settings that eliminates or at least minimizes this speed cycling. It seems to work quite well really. I think I will be fine at 25 km/h averaging about 5 -7 wh/km on fairly level roads – 100km range should be achievable on my 48v/17.5ah battery. As is always the case, factors like wind, terrain and speed are significant variables but as I am in control of speed I can always adjust as necessary.
    Thanks. Mike.

    • Hi Mike,

      I find that to solve this issue, just remove all the speed limits. Set all speed limits to 100%. Then find a current limit % setting, that gives you just enough power to reach 25kph when you are pedalling along with a desired amount of effort. This way you can comfortably paddle at 25kph, without this pulsing thing. If you absolutely want speed limits set, there is not all that much that you can do. The motor will change its power output when it approaches the speed limit, which causes the less natural feeling. This behavior unfortunately can’t really be changed in the settings.

      • Thanks for the suggestion and explanation Giel. That is a great idea and I will certainly try it out. So it looks like a setting that would deliver around 160-170w continuously would meet my efficiency goal. I’ll admit though that the pulse and glide feeling with the speed limit was not that unpleasant really so it may be another option. I’ll report back when the weather improves. Thanks again.

        • Well Giel, I tried it out and found that I really preferred the fixed speed approach pulsing and all. With my fixed speed I have the power set to 9A and I can ride in most conditons and take modest hills without have to make changes to either gearing or power. With a fixed power – around 3-4A – I need to either change gearing or power to accommodate the load differences. I wish the controller did a better job controlling around the set speed but it is what it is. There does not appear to be any downside as the average power used is the same as far as I can tell. Thanks for your input.

  72. Hey Ben,
    I was out yesterday on my new BBS02 just up the road from you in Bobcaygeon!!! Mine seems OK but I am still trying to dial in the settings. I have the Eggrider so changes are easy to make but perhaps not so easy to understand exactly what they do. Good luck resolving your problem. Maybe I will see you on the road some day….

  73. Hi Geil,

    I was out for the first ride of the season yesterday here in Peterborough, Ontario and unfortunately experienced an issue with my Bafang. An error code 21 showed up on the display, and the display stopped showing speeds/distances.

    My understanding is that this indicates an issue with the speed sensor. It could mean one of several things:

    1) poor alignment with the speed sensor and magnet.
    2) A bad connection with the speed sensor and controller.
    3) a faulty speed sensor.
    4) an issue with the controller itself.

    I plan on checking magnet alignment and the connection first. The light on the speed sensor still lights up….is this common when the sensor is faulty?

    If my troubleshooting brings me to the controller I will be out of my depths. Do you have any wisdom or sage advice? If I need to look at the controller is there a good place to start?

    Thank you, and thank you for keeping us form active. There’s so much knowledge on here thanks to you.

    Ben

    • Hi Ben,

      The 4 things you name is indeed what could be the issue.

      If the red light lights up when the magnet passes by, you can be fairly certain that the sensor works and that the allignment is good.

      To my knowledge it is not common that the light activates even when the sensor it self is faulty. In the case that it would be faulty, the light probably won’t work as well.

      You can try reconnecting the speed sensor plug and checking if it is connected properly. Apart from this and checking the allignment, you can’t really do much.

      If the problem is with the controller, the only fix would be to buy a new controller.

      I would advise to check the connection and if this still doesn’t work, to buy a new speed sensor. Even though it is unlikely that this would be broken, it will be the cheapest option to try first.

      If this new speed sensor still doesn’t work, I unfortunately think that the only fix will be to replace the controller.

      Another thing that you could try is the reprogramming the controller. Just write the settings once again. It isn’t likely that this would fix it, but if you have a programming cable you could give it a try.

      Hope this helps!

  74. I am a new BBS02 owner trying to understand just how this motor/contorller works. I have an Eggrider V2 as well as my own current shunt installed between the battery and the controller so I know what current the controller is seeing and can make changes to settings very easily. And what I see I don’t understand! But first, can you explain the effect of cadence? I often see this referred to as a cadence controlled motor but have no idea what that means. (I understand cadence in bike terms just fine). As far as can see now it uses the cadence sensor to determine when the pedals are moving but suspect there is more to it than that. Many thanks for any help.

    • Hi Michael,

      A cadence-controlled motor just implies that the amount of assistance the motor will deliver is dependent on the cadence at which you are pedalling. So it indeed uses a cadence sensor to measure at which cadence the rider is pedalling. It will then give a certain amount of assistance depending on the pedal assist level and your current cadence. There are also bikes that can measure the force that is applied to the pedals using a torque sensor, these typically provide more natural feeling assistance because of this. The BBS02, unfortunately, does not have a torque sensor though, only a cadence sensor.

      • Thanks for the reply,l Giel. I guess I am trying to understand just how the controller varies the assistance based on cadence. Say I have the current limit set at 20A , Max speed at 25 and PAS1 at 10% current/100% speed. As I start to pedal the motor starts after the set number of pules at the programmed current rate and I assumed would increase to around 2A (10%) and would stay there until about the speed reaches about 25 where it would decrease based on programmed rates staying at the current keep setting. (forget for now that I do not observe this!) Where is cadence involved? Speed is not directly related to cadence as there are variable gears inolved so I can have a cadence of 60 or 90 at the same speed of 25. The controller has no idea of the gear ratio so how does it know how to vary the assistance? And I don’t see any programmable variable related to cadence so is this not adjustable? I need to do a lot more real world trials when the weather improves here and I can get oustide – it is -15C this morning! Thanks again.

        • Just thinking some more about this… It must have something to do with the actual motor speed (RPM). Unlike tire rpm, motor rpm varies directly as the cadence so it must be related in some way. I think motor rpm can be higher than cadence (through ratcheting clutch) but never less. Anyway, just thinking….

          • Hi Michael,

            The motor RPM can indeed be higher than your own cadence because of the freewheel system that is in place. If the motor RPM is higher, however, you won’t be able to apply any pressure on the pedals. The motor will be doing all the work in that case. This is something that is very noticeable when you paddle very slowly at high speeds, you will just be pedalling in the air (clown-pedalling).

        • Hi Michael,

          You indeed can’t change the cadence-power behavior all that much. You can only adjust things like slow-start, start current etc. Your story about the current should be correct, so it is weird that you do not observe this. The system indeed doesn’t know the gear ratio and therefore speed related to that cadence. It however does know the speed because of the speed sensor. It uses the speed and cadence inputs to output a certain amount of power. How these inputs exactly related to the outputted power is not known, but it will probably follow some sort of preset graph (which can only be changed slightly by some parameters).

  75. Hi Giel,

    Just want to say thanks. I burnt my first controller out on the 3rd ride and after reading this post I can see why it happened. the bay person I bought it off has been amazing and sent a replacement. I have loaded your bbs02 48v settings and I must say I like it, I think it will go well for the style of mounting biking i do.

    Anyway, great post, great software, it just worked.

    Thanks

    Andy

  76. I have read on other sources that the Limit Spd% column under the Basic Tab actually reduces the current going to the motor to maintain its RPM once the Limit Spd% is reached of the road speed. That is, the maximum current supplied to the motor is the Limit Current% of the designated PAS, and then the current is reduced to maintain the motor RPM at the designated LimitSpd% of the road speed. This would seem more efficient at saving battery power opposed to setting LimitSpd% to 100% at all PAS levels and only using Limit Current% where constant current would be applied until the max speed limit is reached which is unlikely to happen in lower PAS levels where the Limit Current% may be set below 50%. Each method would provide a different riding experience. What are your thoughts?

    • Hi Reez,

      What you are saying is correct, it just depends on personal preference. I generally don’t like it when my bike reduces power when I approach a certain speed limit. I want to be unrestricted in my speed all the time, and want to know what amount of power I can expect in a certain assist level. By setting the speed limit to 100% in all assist levels I can achieve this. So it just depends on personal preference on how you should set this, but I think lots of people also prefer this 100% speed limit style, therefore I recommend it in my post.

Leave a Reply