VESC Improvement: read cell voltages

Ideally I would like to be able to monitor the cell voltages on my phone via the Bluetooth adapter on the VESC. Even if there is no cutoff, just being able to read them without opening the enclosure is worth gold.

1 Like

wassup stage is flexiBMS at right now. last i check he was testing them. and it has been a while

2 Likes

:wave:
.
.
.
.
.
:microphone:
@Trampa

6 Likes

Sometimes I feel unloved. Why did I bother

9 Likes

Vedder had a vesc bms in his bag at the last year’s paris event(2019).
Maybe something is coming.

3 Likes

beep boop…

12 Likes

Hey, that is great!
If it could be expanded for 12s and fabricated in a smaller package, this would already be half of what I was looking for!

I would love to see this be merged with the flexiBMS or as a add-on. I would use this on all my boards.

Edit: tagging @SimosMCmuffin: Would you like to work with @Cghelobubba to make this little display a plug n play with your creation?

1 Like

Actually - it IS kinda crappy in one aspect. The voltage divider loses resolution at the higher cell counts but as whole it is pretty accurate. It would definitely highlight a runaway cell.

2 Likes

I assume that the flexiBMS already has accurate readings built in as it needs to balance - if it also could display them, we’re all set for the first part.

Next on the wishlist would be to communicate with the VESC (or have an other means for soft cutoff)

BMS functionality doesn’t belong in the motor controller. Safety cutoffs yes, but not cell monitoring and all of that. You can get a lot of that kind of stuff over uart or Bluetooth with some BMSs. But all you really want is someway to look at it all in the same app, so what you really need is an app that can do vesc shit and BT BMS shit or connect to the BMS over uart or can bus through the vesc.

you’d have to write your own app or get somebody to do it.

6 Likes

Good point.

Honestly, I would be 80% happy if I could just monitor my cell voltages. Either via a display or app.
If I just check in occasionally I can prevent the pack from getting unbalanced or diagnose issues.

For me, a flexiBMS + cell voltage display would be a killer combo.

Everyone not know this exists?

1 Like

I know. I actually have one coming in.
The drawback of that smart BMS is:
Discharge current is far to small for any reasonable battery. So you have to bypass it.
Thus, it becomes a oversized charge only BMS with Bluetooth.
It they offered 80A+ options, or, ideally, a much smaller discharge only option, I wouldn’t have started this thread.

2 Likes

Yeah, if you want to discharge high amps you need size to deal with heat which sucks for most builds size constraints. If you used a much larger heat sink you could probably ignore the discharge ratings and use the medium sized BMS.

Not implemented yet, since it has to be also done on the firmware on the VESC side, but definitely possible

That will be a thing, it already is with DieBieMS using Metr

Still on beta, there was a shipping strike so not everybody got the beta boards yet, me included

Have you ever looked at the Github before talking shit? Lots of mergers and vedder responding to people implementations, 55 pull request closed, 9 still open and some with discussions going on about testing/modifying them before merging

4 Likes

This would exactly meet my expectations once implemented.

It’d be far better to just connect the B- to the VESC power with a high-current wire (as we do now) and connect the BMS’s P- to the VESC with a small current wire.

When the BMS cuts power to P- then the VESC could see this and cut power slowly until off, but leave braking enabled.

This would ensure the BMS was still responsible for managing the battery, by itself, no matter how many VESCs were connected, and ensure that the large currents were still bypassing the BMS.

It’d be win-win-win. Let the BMS manage the battery, but send the signal that somthing is amiss to the ESC. From a port that the BMS already has for this purpose.


Kind-of like this, but with the VESC able to see if the lights are on or not, and cut throttle if not.

5 Likes

I personally hope so see for a simple software implementation of BMS integration to the VESC. By this I mean for CAN equipped BMS’s which are able to communicate to the VESC, and when they notice something wrong based on a set of conditions (cell overheat, p-pack balance issue, etc) a command can be sent to the VESC to allow for reduced acceleration and braking only, effectively putting the board into limp-mode allowing the rider to get to safety.

That would be the best implementation imo, would effectively give us discharge capabilities through charge only BMS’s, while utilising hardware that we already have for the high currents that we run, whilst also keeping size to a minimum

5 Likes

Well, you can set it up for up to 200A discharge. So the current problem will turn into a cooling and connector problem (which will be fine for 99% since you never draw over 60A RMS for more than a couple of minutes; e.g. a 1kwh battery (13S, 20Ah) will only last 20mins on 60A RMS).

Also you can wire up charge and discharge separately and get the double amp rating (by separating charge and discharge mosfets and run each current only through one of the fets than through both). Then you have 120A discharge continous…that’s >5kW…which will be around 10mins for a 13S 20Ah battery (like 13S7P). Cant imagine anyone can put down that energy with a mtb…

Yes but there is no branch or release or tagging. So is impossible for anyone else to working on this or track change.

This codebase is not manage well at all.

2 Likes