Jump to content
FreeRide

King Song 14C Balance Issue

Recommended Posts

Posted (edited)
20 minutes ago, esaj said:

Actually, my understanding is that on most wheels, the BMS balances the cells only by bypassing them once they reach full voltage, so if not charged all the way to the "brim" every once in a while, the cell voltages might start to drift, and eventually one or more of them could actually discharge too far. This is one of the example circuits I found:

---clipped--

I sure hope with the cheap chips these days that they use active balancing, but I guess it's worth checking as some of the wheels do get made without a lot of quality to keep the cost as low as possible.

Edited by FreeRide
  • Upvote 1

Share this post


Link to post
Share on other sites

I use processors in many DIY projects.  They have sleep states where they dissipate much less than 1 uA (that's 1/1000000 of an amp), but still can be awakened from the sleep whenever the voltage on a specified pin changes.

So, a single pull-up resistor to that one pin is all that would be required to wake the processor, which could then turn on pass device to allow battery power to be applied to the control board.

You'd be surprised how many young electrical engineers lack very basic analog circuit design skills.  I would NOT be surprised to see some poor circuit design in the circuits that scale the voltage down do the analog to digital conversion.

 

 

  • Upvote 1

Share this post


Link to post
Share on other sites
Posted (edited)
13 hours ago, DaveThomasPilot said:

I use processors in many DIY projects.  They have sleep states where they dissipate much less than 1 uA (that's 1/1000000 of an amp), but still can be awakened from the sleep whenever the voltage on a specified pin changes.

So, a single pull-up resistor to that one pin is all that would be required to wake the processor, which could then turn on pass device to allow battery power to be applied to the control board.

You'd be surprised how many young electrical engineers lack very basic analog circuit design skills.  I would NOT be surprised to see some poor circuit design in the circuits that scale the voltage down do the analog to digital conversion.

Although it probably works differently from the KS-boards, I've been slowly tracing the Firewheel board (in another thread), there the voltage scaling seems to occur with 750K + 33K -resistors in series, with of course a bypass cap of "some value" in parallel with the lower-side 33K -resistor. It should give out about 2.832V when divided from 67.2V (battery max), guess they left headroom vs. 3.3V as the voltage can spike higher during regenerative braking. Also, there the power-button works by pulling one (Ron) of the LM5007 step-down controller -pins to ground, so it actually shuts down the step-down. The button is the "normally closed" -kind, I was wondering why the wheel turned on with the button removed... Guess the idea is that in case the switch connector would become loose it wouldn't turn off, but should water enter the switch and short it, I guess it could actually shutdown the entire wheel  :facepalm:  Unless there's something still in between the power-button and the pin that can cut off the button from the circuit (so for example the CPU could prevent shutdown in case the motor is still turning faster or something).

Edited by esaj
  • Upvote 2

Share this post


Link to post
Share on other sites

So, a resistor divider for the scaling.  Increased leakage on a bypass cap on the lower side would make the scaled voltage measure lower than it should.

What kind of cap?  Is it poloarized?  If so, it's leaky (prob. aluminum electrolytic or tantalum) and shouldn't have been used with a high value resistor like 750K.

We could look up the leakage spec if you have a P/N for the cap.

  • Upvote 1

Share this post


Link to post
Share on other sites
Posted (edited)
20 minutes ago, DaveThomasPilot said:

So, a resistor divider for the scaling.  Increased leakage on a bypass cap on the lower side would make the scaled voltage measure lower than it should.

What kind of cap?  Is it poloarized?  If so, it's leaky (prob. aluminum electrolytic or tantalum) and shouldn't have been used with a high value resistor like 750K.

We could look up the leakage spec if you have a P/N for the cap.

Just to underline, this was on my old Firewheel-board, not KS, don't know if it's different there. The cap was some "normal" SMD MLCC, so not polarized and no markings as usual, so cannot tell the value... There's a schematic of what I've figured out of the board in the other thread, if you're interested into taking a closer look: Firewheel PCB tracing   (the PDF-version's much more readable, the screenshot is pretty crappy, I can also put the KiCad-files available if needed)

The relevant parts are C21, R12, R13 in this picture, left edge near the horizontal center-line of the picture.

7wWbgP4.jpg

 

Edited by esaj
  • Upvote 1

Share this post


Link to post
Share on other sites

C21 looks like a ceramic cap.  Close enough to zero leakage.

I checked the schematic, but couldn't figure out where it goes.  Input leakage current of that part would have to be very low to not cause an error through 750K.

 

  • Upvote 1

Share this post


Link to post
Share on other sites
Posted (edited)
9 minutes ago, DaveThomasPilot said:

C21 looks like a ceramic cap.  Close enough to zero leakage.

I checked the schematic, but couldn't figure out where it goes.  Input leakage current of that part would have to be very low to not cause an error through 750K.

Here's a closeup on the schematic (also linked the whole schematic as PDF here, in case you didn't notice it at the end of the post in the other thread ;) ):

bwafRG2.png

So the resistors sit just between the battery + and ground (battery negative), the output from the middle goes straight into one of the ADC-pins on the CPU (the CPU isn't drawn in the schematic, I've just marked the CPU-pins as "STM32_pinname"). I could desolder the cap and use my crappy LC-meter to check the value, but don't know if it matters that much here, and it can't measure ESR or such... And now I feel I'm taking this topic way off-topic from the original issue of the KS14C... ;)

-- PDF attachment --

FirewheelBoard.pdf

Edited by esaj

Share this post


Link to post
Share on other sites
Posted (edited)

Yes, I saw that in the schematic.  But where does STM32_PA3 go?

I don't think you could get a valid measurement meter with your meter.  You'd need to use a bridge.  Besides, a given part on a specific card might not be leaky, while others could be in spec but too leaky for an accurate voltage measurement.

Consider that a leakage (or input bias current) of just 1 ua would cause .75 volts of error in the input measurement.

It seems pretty dumb to use a very high value resistor to scale an analog voltage value in a design where power dissipation isn't critical.  With 65 volts, the resistor would dissipate about 5.5 mW.  On a card that will be dissipating many watts!

Seems like it could be an order of magnitude (or more) lower.

Edited by DaveThomasPilot
  • Upvote 1

Share this post


Link to post
Share on other sites
Posted (edited)
14 minutes ago, DaveThomasPilot said:

Yes, I saw that in the schematic.  But where does STM32_PA3 go?

Right, sorry, I edited the post afterwards so you probably didn't see it:  the CPU isn't drawn in the schematic, I've just marked the CPU-pins as "STM32_pinname". The PA3-pin can be used as and ADC (among other things), my best guess it's what they do there. Since the firmware's of course closed source, no idea what sort of filtering (if any) or other things they do with the measurements.

 

Quote

I don't think you could get a valid measurement meter with your meter.  You'd need to use a bridge.  Besides, a given part on a specific card might not be leaky, while others could be in spec but too leaky for an accurate voltage measurement.

Consider that a leakage (or input bias current) of just 1 ua would cause .75 volts of error in the input measurement.

It seems pretty dumb to use a very high value resistor to scale an analog voltage value in a design where power dissipation isn't critical.  With 65 volts, the resistor would dissipate about 5.5 mW.  On a card that will be dissipating many watts!

Seems like it could be an order of magnitude (or more) lower.

Don't know the real reasons, but there are lots of resistors with same values used over and over the board (like 750k, 33k and 3.74k), maybe it's simply to keep down manufacturing costs (less tapes to feed into the pick & place -machines)? Or maybe the engineer designing the board just didn't know any better... I would have probably picked some pretty high value too, without realizing the consequences of leakages :P But then again, I'm just a hobbyist ;)

2 minutes ago, DaveThomasPilot said:

What is the processor?

STM32F103VBT6, in an LQFP100 -package.

Edited by esaj

Share this post


Link to post
Share on other sites

Page 62 of the STM32F103VBT6 spec states input leakage current of +/- 1ua.  That corresponds to a voltage delta of +/- .75 volts.

That's a typical maximum input leakage specification.   Frequently, it's the result of an ESD protection diode on the input.

Typical leakage is normally well below the specification.  On the other hand, a bit of flux left on the board after the soldering operation or other contaminants can cause leakage currents of sufficient magnitude to cause unacceptable voltage accuracy errors when large impedences are used.

I understand this is not the KS14C design, but is a representative example of a poor analog design on what should be a simple circuit.

I'd consider trying to find a similar divider on my KS14C and "fixing" it.  But, it has that coating all over it.   I wonder about that coatings resistance---could be a source of leakage too.

 

  • Upvote 1

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


×