BBS-FW: Open Source Firmware for BBSHD/BBS02 Controller

Is there an Open Source Firmware project for the BBS01B? Specifically, I am interested in firmware which only allows the throttle to be engaged while pedalling.
Is the 01 that different from the O2, that it could not use the same firmware? I thought it was just a current limited motor. If that is the case, this firmware already has an option where the throttle only works with peddling.
 
Is the 01 that different from the O2, that it could not use the same firmware? I thought it was just a current limited motor. If that is the case, this firmware already has an option where the throttle only works with peddling.

Unfortunately, the BBS01B firmware doesn't have that option. Because of UK law, I don't currently have a throttle on my bike. Ideally, I want the non-pedalling throttle speed limited to UK legal 6km/h, until pedal assist, at which point the throttle's speed limit with pedalling is increased to the UK legal 25km/h speed limit.

bbs01b-throttleless-settings.jpg


BBS01B-Firmware-Settings-16.8.23-5.jpg
 
Last edited:
Unfortunately, the BBS01B firmware doesn't have that option. Because of UK law, I don't currently have a throttle on my bike. Ideally, I want the non-pedalling throttle speed limited to UK legal 6km/h, until pedal assist, at which point the throttle's speed limit with pedalling is increased to the UK legal 25km/h speed limit.
Does the bbs have 'walk assist' like the tsdz2, as that is effectively a binary throttle that gets you up to 6kph or whatever you set it to. Try holding 'down' on the button pad for a few seconds and see if the motor runs.
 
Does the bbs have 'walk assist' like the tsdz2, as that is effectively a binary throttle that gets you up to 6kph or whatever you set it to. Try holding 'down' on the button pad for a few seconds and see if the motor runs.
Yes it does, and that's only UK legal while walking the bike, via a long button press on the keypad. If you release the button, walk assist stops. It's useless while riding, because there's a long pause before PAS subsequently kicks in - by that time the bike has slowed down again. If there isn't such a long pause on the TSDZ2 between the cease of walk assist and PAS activation, I can well imagine that being useful when pulling away after being stopped at traffic lights and junctions etc.
 
I am interested in this firmware but I have two questions:

I hava a Bafang 750w bbs02 motor.

- Does this firmware already work with the Eggrider?
- I can't find it, does this firmware also remove the "power saving mode" that keeps you at full power even below 47 volts?

Regards Michael
 
Is it normal for PAS to slowly creep up after about 30 seconds when riding at 39 km/h in 40t:13t gear (motor programmed to have maximum power and cadence around 50% only in order to minimize ghost pedalling)?

It results in loss of speed when shifting gears. When riding slowly it doesn't seem to behave in that way.

Might be because shift sensor threshold current is currently set too low.

Have nothing else to compare to since cadence sensor stopped working with stock firmware.
 
Last edited:
I am interested in this firmware but I have two questions:

I hava a Bafang 750w bbs02 motor.

- Does this firmware already work with the Eggrider?
- I can't find it, does this firmware also remove the "power saving mode" that keeps you at full power even below 47 volts?

Regards Michael
It "works" with the Eggrider.
I mean you can connect to the display and get the real time info as usual but you can't edit the controller settings (Basic, Pedal, Throttle) on the go as this is completly different from the Bafang Firmware.
The Road/Offroad button on your screen won't work either, you'll need to use the "Operation Mode Toggle" from the BBS-FW Tool.
"Immobilizer" is still usable in the Display Settings. Max speed Road and Offroad won't affect anything from now if you flashed Daniel's FW
 
Last edited:
Hello there!

I bought the new SW102/T display (also named SW102-T) to replace the Eggrider because I considered it was useless from now with this BBS-FW

I did struggled a bit to get it work at first because I was getting no PAS and no throttle. After a bit of testing and flashing sessions, here are how to set your Assist Level from the BBS-FW tool:

- Level 0 -> works if you want to set PAS, throttle or Cruise but you probably should not use it
- Level 1 -> doesn't work
- Level 2 -> PAS 1
- Level 3 -> doesn't work
- Level 4 -> PAS 2
- Level 5 -> doesn't work
- Level 6 -> PAS 3
- Level 7 -> doesn't work
- Level 8 -> PAS 4
- Level 9 -> PAS 5

1720884196597.png
 
Unfortunately, the BBS01B firmware doesn't have that option. Because of UK law, I don't currently have a throttle on my bike. Ideally, I want the non-pedalling throttle speed limited to UK legal 6km/h, until pedal assist, at which point the throttle's speed limit with pedalling is increased to the UK legal 25km/h speed limit.

View attachment 354822


View attachment 354826
What app is that?
 
Got the itch to try this fw on a BBSHD 52v, can anyone upload thier config file please ?
 
Does 52v only go up to 30a? It won't let me go to 33a (bbs02 v1). 30a is completely stable it would do 33a easy.
 
Last edited:
My BBS02 only runs on say 25 % of power with a 52 volt battery when using the 1.4 firmware. I ran the utility and set the measured voltage to 58.7 The MCU is of type- STC15F2K60S2 - I can read and write and update settings using BBSFWTool - and have tried various max amp settings 18-25 - none of these give me full power until I drop the battery voltage to 56 volts by running it down using the USB port. If i put a 48 volt battery in then I get full power always - it is only when my 52 volt battery is fully charged that I run into the almost shutdown mode. If I flash the version - crr1094824e010015.3_170815 from Bitrix then my 52 volt battery works fine on full charge. Has anyone encountered similar issues? I prefer the 1.4 firmware as it is better than the Bitrix - but it seems I maybe need to change a setting that I have not yet found. My max voltage is set to 60 (I have tried 58.7 also) and my min is 44 - anyway none of those settings helped. Now I am stumped as I thought others on this thread have used 1.4 version with 52 volt batteries - perhaps I am missing a trick - be grateful for any help ?
 
Hi All,
I'm following the steps from Daniel's guide to update firmware but looks like there is no "Check MCU". Is this automatic now?
Also can't connect to the configuration tool despite following the steps =(.
I can connect no problem to the Penoff software though.

Please help.
Thank you in advance.
 
Hi All,
I'm following the steps from Daniel's guide to update firmware but looks like there is no "Check MCU". Is this automatic now?
Also can't connect to the configuration tool despite following the steps =(.
I can connect no problem to the Penoff software though.

Please help.
Thank you in advance.
did you Download the right version of the Program?
 
As Daniel calls for in the notes, use version 6.88 and don't update it - the RAR archive can be downloaded from the STC site here.

  1. Download and start the STC ISP Programming Tool (v6.88, do not update).

The "Check MCU" button is / should show near the lower-left corner:

Screenshot 2024-09-12 101730.png

Double-check all of the presets (which I did not do for this screenshot).
 
did you Download the right version of the Program?
As Daniel calls for in the notes, use version 6.88 and don't update it - the RAR archive can be downloaded from the STC site here.

  1. Download and start the STC ISP Programming Tool (v6.88, do not update).

The "Check MCU" button is / should show near the lower-left corner:

View attachment 359473

Double-check all of the presets (which I did not do for this screenshot).

Thanks! I downloaded the software directly from the link and guess that it's automatically updated.
 
For me, on Windows 11, it won't auto-update, when I use the following steps:
  1. First, verify that the firmware will work (as best as known) with your motor and controller.

  2. Unpack the executable from the .RAR archive file downloaded.

  3. Double-click on the executable .EXE file. Here's where a few fun alert boxes pop up:

    Screenshot 2024-09-13 084615.png

    I've no idea what this alert is trying to tell me, so I just "X" it. The following alert box is a notification to update the version (via the"download" link), which I ignore, and again, "X" through.

    Screenshot 2024-09-13 084536.png

    After a few moments, the executable finally launches, with the desired 6.88 version displayed in the upper-left corner:

    arrow.png

    Now set all of the flags and settings, and off you go.
I applaud Daniel's efforts, and the firmware works pretty well. I found the optional throttle lock function clumsy to use, and I wish it worked in a similar way to the Cycle Analyst function. I urge sending some funding love for Daniel's time spent. Maybe he'll come back and continue work on it.
 
Last edited:
two questions: to communicate with the display, are the command bytes in the original FW the same in this FW? Is there a way to backup original firmware before flashing?
 
Last edited:
two questions: to communicate with the display, are the command bytes in the original FW the same in this FW? Is there a way to backup original firmware before flashing?
Daniel states in the notes, "This firmware is compatible with all displays that works with the original Bafang firmware" (UART, not CAN bus displays), and some display-related code tweaks are mentioned in the release notes. Note that while the Eggrider will display the data feed from the controller, the Eggrider cannot be used to alter the controller's settings.

I've yet to see any way/mention made on how to save the currently loaded, stock controller firmware. To revert back, I suspect most use the firmware files available via a few kit vendors (such as California Ebike or Biktrix).
 
Last edited:
I've yet to see any way/mention made on how to save the currently loaded, stock controller firmware. To revert back, I suspect most use the firmware files available via a few kit vendors (such as California Ebike or Biktrix).
looking better, I've seen that these mcu hadn't thr ability to extract the firmware. The issue is not about protection but a design of the microcontroller that by default does not allow the memory to be displayed. So the only way is to flash the firmware if there's one. i saw those firmware files in the link you posted but it's specified that they are for the bbshd controller. Are they good for the bbs02 controller?
 
i saw those firmware files in the link you posted but it's specified that they are for the bbshd controller. Are they good for the bbs02 controller?
No, the BBS0X and BBSHD firmware are specific. I recall seeing BBS0X firmware links out in the interlands, but I don't remember where.
 
in the instruction ther's written to set mcu to 20 mhz and that it's a bit unstable at the end but I saw in many procedures that the frequency is 18.432mhz. Could it be that the higher frequency causes the instability?
 
Back
Top