Bafang BBSHD How I repaired my controller and how you might do it!

fja2

1 mW
Joined
Nov 7, 2019
Messages
18
Hey guys, this is some kind of advanced troubleshooting guide for the BBSHD controller.

:bolt: There's a capacitor that's connected in parallel to the + and - terminals. After the controller has been disconnected from the battery do the following:
1. Turn on your display.
2. Measure the voltage between the + and - terminals.
3. If it's low like in my case (5v) I'd simply short the poles for a second to make sure there wont be any sparks when working inside it. If it's higher you may want to look for alternative ways to discharge that capacitor in a safe way. Maybe a high value resistor, but be aware that I had a resistor in there for a long period of time before my mosfet broke, it's probably not related, but I have to mention this. :bolt:

Just so I don't waste your time, here's how this issue played out: Screen turned on without errors but the throttle didn't do anything but show a few watts. And there was one faint click from the controller, motor didn't spin or make any sounds.


Background:
A few days ago I decided to follow the "50A mod" found here https://endless-sphere.com/forums/viewtopic.php?t=83778
After swapping one of the shunt resistors (and accidentally shorting the capacitor with my soldering iron and drilling into the temperature sensor wire) I noticed that the motor still received about 30A after doing some quick math, so I decided to replace the second shunt as well, this time I pulled out the battery connector and powered on the screen to drain the power, then i placed a 300 ohm resistor across the terminals to drain the rest. I replaced the other shunt which took a lot of heat from my soldering iron and some hot air and after I put everything together the motor ran extremely slow and stopped at times, eventually it just refused to do anything when I applied throttle, but the display still worked fine and didn't throw any errors.
I decided to google for answers but didn't find any information on how you actually fix these controllers, all threads basically tell you to buy a new one, sure that might be an option, but it would cost me about $150 to get a BBSHD controller, that crappy square wave controller ain't worth that much.

Here's the best steps you could take to test it.
1. Make sure it's the controller and not some brake sensor, you know the basic checks everyone tell you.

2. The mosfet check and not so fun replacement. (This is why my controller didn't work.)
2.0 Start measuring the resistance on each of the 3 motor phase wires against the + and - terminals, they should all show a similar values and act alike when you measure. If you ever see 0 ohm, that's a burnt mosfet.
2.1. If one of the phase wires didn't give you the values expected note what phase that was and if it was the + or - terminal that showed it.
2.2. In my case it was the yellow phase that was shorted to +. It's time to remove the controller PCB and the potting of the affected area and locate the mosfet that might cause it. In my case it was the one that's close to the shunt resistors. (To get the BMS out I drilled tiny holes into the mosfet heatsink and put screws in there to lift it out, don't do what i did and slip with the drill into the temperature sensor hole. :lol: )
2.3. Yup, just get the suspect out and measure it, my mosfet was a dead short. Just have to get one of similar spec, or same spec if possible and pop it back in.
2.4. Measure everything again and confirm that things seem fine by connecting it to your battery and the hall sensor and measure the AC voltage between two phases at a time, it should increase as you pull the throttle. (In my case one of the combinations didn't give me the values i expected, but I moved on and it worked fine.)

3. If the phase wires measure good. (Just some tips on what you could try)
3.1. Remove the potting and look at the led flashes you get when the battery is connected and the screen is turned on. There's probably some kind of error code that's displayed by the flashing. When I had a bad mosfet I got 5 blinks in a row, after the bad mosfet was replaced I got 1 blink/second. Sadly I haven't been able to find any information about this.
3.1.1 Does it give you 1 blink/second? Then I believe it's not detecting any errors and you may start looking for loose wires, bridges, cracked solder joints.

And yes, my motor still only gives 30A even after the shunts, I got no idea why it's doing that, but at least it works. Also I got no idea what caused the mosfet to die.


If anyone want to ask anything about mine or your BBSHD please do. And any additional comments on how one may troubleshoot it would be great! :D
 
How are you measuring the current?

If you are looking at the display, it will still be 30A even after the shunt mod, but the actual current will be higher. The current measurement on the display is based on the shunt.
 
fechter said:
How are you measuring the current?

If you are looking at the display, it will still be 30A even after the shunt mod, but the actual current will be higher. The current measurement on the display is based on the shunt.

I measure current on my Eggrider, Im aware that there's a certain multiplier I have to apply to its reading. I get about 15A on the eggrider. And it sure don't go higher no matter what I do. My speed sensor isn't even connected so its not a speed thing, and not even inclines can get it any higher.
 
You might want to try a regular wattmeter between the battery and controller. Or a clamp-on ammeter on the battery output wires.

Then you will be able to see if the current is really still increasing, and the display/controller simply can't provide a reading above the limit you're seeing.
 
amberwolf said:
You might want to try a regular wattmeter between the battery and controller. Or a clamp-on ammeter on the battery output wires.

Then you will be able to see if the current is really still increasing, and the display/controller simply can't provide a reading above the limit you're seeing.

Sadly I haven't got a clamp-on ammeter at home, and I'm not going to buy one since I don't find then useful. However today I added 2 10000µF 63V ELNA capacitors in parallel to my BBSHD power harness and I did notice a difference, the display now show up to 25A when starting, and it slowly goes down to the 15A range. I guess my battery can't supply more than 30-35A.
I'm now very happy with the way it is, it keeps me from burning the motor out or melting the gear and when I need the extra power it will accelerate big time. Also the battery don't get the initial sag with those huge caps so I believe they do a lot of good, I'd recommend anyone with a BBDHD to get a few beefy capacitors! :D It sure changed the way it drives.
 
fja2 said:
I guess my battery can't supply more than 30-35A.
If the battery was the actual limiting factor, it would be shutting off due to overcurrent when you reach that, either as a direct overcurrent protection, or as low-voltage-cutoff from excessive sag during those current levels.

If that's not happening, the battery isn't directly limiting and causing this.


It could still be sagging a huge amount to the point the controller goes into a "low power" mode due to it thinking the battery is close to empty, but I don't know if this controller has such a mode, and even if it did, you'd be seeing the voltage sag that much on the display, like the bars going down to one or zero, and the actual voltage being down near empty, while under that load.

If you don't see that with the voltage, then it's not the battery sagging and limiting you indirectly either--it's something directly in the controller itself.
 
amberwolf said:
fja2 said:
I guess my battery can't supply more than 30-35A.
If the battery was the actual limiting factor, it would be shutting off due to overcurrent when you reach that, either as a direct overcurrent protection, or as low-voltage-cutoff from excessive sag during those current levels.

If that's not happening, the battery isn't directly limiting and causing this.


It could still be sagging a huge amount to the point the controller goes into a "low power" mode due to it thinking the battery is close to empty, but I don't know if this controller has such a mode, and even if it did, you'd be seeing the voltage sag that much on the display, like the bars going down to one or zero, and the actual voltage being down near empty, while under that load.

If you don't see that with the voltage, then it's not the battery sagging and limiting you indirectly either--it's something directly in the controller itself.

I replaced the BMS that em3ev put in my battery with a huge 100A one, I don't have any issues with my new BMS, it works perfectly and the sag I get isn't that crazy.
At 58.8V I get about the same amount of power as when its at 30%, so there shouldn't be some low-voltage protection at play unless one of my cells are dying, but it don't seem to behave like somethings bad it just wont go past a certain current.
 
fja2 said:
At 58.8V I get about the same amount of power as when its at 30%, so there shouldn't be some low-voltage protection at play unless one of my cells are dying, but it don't seem to behave like somethings bad it just wont go past a certain current.
Then that's the controller itself limiting the current at that point.
 
Back
Top