BESC - beefed up VESC motor controller for high power ebikes

Electric Motors and Controllers
User avatar
galp   100 W

100 W
Posts: 169
Joined: Mar 22 2014 2:04pm
Location: Slovenia, EU
Contact:

BESC - beefed up VESC motor controller for high power ebikes

Post by galp » Dec 15 2018 5:00pm

Heyo!

I've been working on high power VESC fork for the last couple of months. It uses VESC logic and isolated gate drivers from TI combined with high performance MOSFETs. It is designed to take maximum input voltage of 150V (30S lithium capable) and peak 200A phase/battery current.

Top side of the controller
Image

Bottom side of the controller
Image

Features of my hardware fork:
-Input voltage: 15-150 V
-Max phase / battery current 200 A
-12 MOSFET design with high low Rdson parts
-Isolated Texas Instruments gate drivers
-Allegro 200A isolated hall current sensors
-Copper busbars for electrical and heat conduction
-Rail is decoupled with 8x 560 uF 160V aluminum and 42x 0.47 uF 200V x7r ceramics
-M6 input and output power screws[/list]
-Requires separate 12V supply - recommended Meanwell RSD-60-H
-USB, CAN, serial, I2C, SPI, 2x ADC, RC PPM inputs / outputs
-Automotive JST connectors for I/O signals
-Disconnecting 12V rail shuts down the controller - battery stays connected - no need for high current / voltage switches

Some features of VESC firmware:
-Sensored and sensorless FOC with auto-detection of all motor parameters
-Hall sensor, ABI/SPI encoder
-Current and voltage measurement on all phases
-Regenerative braking
-USB programmable and nice GUI
-Adjustable protection against
---Low input voltage
---High input voltage
---High motor current
---High input current
---High regenerative braking current (separate limits for the motor and the input)
---Rapid current changes (ramping)
---High RPM (separate limits for each direction)
---Motor and driver overheating
---... and much more

What you see on the pictures above is the second version. The first version had some problems with phase transients coupling to control signals and the whole half bridge oscillating every switch cycle. It sill ran on 50V with 70A phase currents though. :mrgreen: I've taken care of that in second version with careful layout and stuff that I learned from the first. The last version is now complete and will be sent in fabrication soon so I can have with soldering and testing during holidays.

Here's how the first version looksed during testing:
Image
Notice one transistor missing? I fried its gate by shorting it to positive input rail with a soldering iron because I forgot to discharge the capacitors first. :|

Video of the first version running when there were still some bugs in the code configuration:


I'll CNC machine / 3d print a housing for it that will double as a heatsink.
Last edited by galp on Feb 25 2019 4:01am, edited 2 times in total.

SlowCo   100 kW

100 kW
Posts: 1196
Joined: Jan 05 2015 5:43pm
Location: The Netherlands

Re: BESC - beefed up VESC motor controller for high power ebikes

Post by SlowCo » Dec 15 2018 7:52pm

Very interesting!
I will follow your progress. Good luck.

User avatar
galp   100 W

100 W
Posts: 169
Joined: Mar 22 2014 2:04pm
Location: Slovenia, EU
Contact:

Re: BESC - beefed up VESC motor controller for high power ebikes

Post by galp » Jan 12 2019 5:36am

In second version I used film capacitors instead of ceramics. Also changed MOSFET gate drivers for isolated ones. Improved high current routing to caps and between gate drivers and mosfets. Filtering to analogue components was also added for improved noise immunity.

First tests look very promising.


I'll CNC / 3d print an enclosure for it. The bottom part will be made from aluminum that will double as heatsink / surface to mount a bigger heatsink to.

Image

ENNOID   100 W

100 W
Posts: 105
Joined: Dec 01 2017 3:26pm
Location: Quebec
Contact:

Re: BESC - beefed up VESC motor controller for high power ebikes

Post by ENNOID » Jan 12 2019 7:12am

Looks good man 👍

Ongar   100 µW

100 µW
Posts: 9
Joined: Jan 18 2019 7:42pm

Re: BESC - beefed up VESC motor controller for high power ebikes

Post by Ongar » Jan 23 2019 8:05pm

This looks like an awesome project. Keep up the great work, I would definitely be interested if you started selling these.

User avatar
ElectronS   10 mW

10 mW
Posts: 30
Joined: Mar 04 2013 2:55pm

Re: BESC - beefed up VESC motor controller for high power ebikes

Post by ElectronS » Feb 14 2019 1:29pm

nice work :bigthumb:

the copper busbars are soldered ??? watch out for the fact the the pcb and the copper have different thermal expansion , so this might cause problems later .

User avatar
galp   100 W

100 W
Posts: 169
Joined: Mar 22 2014 2:04pm
Location: Slovenia, EU
Contact:

Re: BESC - beefed up VESC motor controller for high power ebikes

Post by galp » Feb 15 2019 5:20pm

I was thinking about the same thing when designing but thermal expansion coefficients of both materials are quite close so it shouldn't be a problem... I think. :mrgreen:

Copper 16.5E-6/°C
FR4 12E-6 /°C

User avatar
ElectricGod   100 MW

100 MW
Posts: 2748
Joined: Nov 01 2015 5:24pm
Location: 3 OH 3

Re: BESC - beefed up VESC motor controller for high power ebikes

Post by ElectricGod » Feb 24 2019 12:57pm

Looks good!

Any idea on pricing?

User avatar
galp   100 W

100 W
Posts: 169
Joined: Mar 22 2014 2:04pm
Location: Slovenia, EU
Contact:

Re: BESC - beefed up VESC motor controller for high power ebikes

Post by galp » Feb 25 2019 3:58am

BOM is ~200-300€.

I also made a manual / datasheet with more specifications if anyone is interested. https://e.pavlin.si/wp-content/uploads/ ... manual.pdf

User avatar
ElectricGod   100 MW

100 MW
Posts: 2748
Joined: Nov 01 2015 5:24pm
Location: 3 OH 3

Re: BESC - beefed up VESC motor controller for high power ebikes

Post by ElectricGod » Feb 25 2019 5:14am

galp wrote:
Feb 25 2019 3:58am
BOM is ~200-300€.

I also made a manual / datasheet with more specifications if anyone is interested. https://e.pavlin.si/wp-content/uploads/ ... manual.pdf
In US dollars that's $230-340.

For an FOC VESC based controller that works up to 150v and 200 amps...this could be a great deal.

Maybe you would consider making a higher power version? Something like 400 phase amps?

According to the manual you posted and looking at the wiring, how do I connect a throttle, 3 speed switch, CA and other things? I have never used a VESC of any kind before. Maybe this is obvious?

Image

shaman   100 W

100 W
Posts: 250
Joined: Dec 10 2018 7:03pm
Location: Fort Worth, TX, USA

Re: BESC - beefed up VESC motor controller for high power ebikes

Post by shaman » Feb 25 2019 12:32pm

ElectricGod wrote:
Feb 25 2019 5:14am
how do I connect a throttle, 3 speed switch, CA and other things?
J2 pins 4 and 7 are the inputs for external analog signals. This is where you would connect the signal line for a throttle. You go through a setup wizard on the VESC Tool program and that's where you configure the VESC to accept a throttle signal from one of these inputs. You can even adjust throttle response and tailor it to your liking.

Multi-speed switches aren't a thing for the VESC that I'm aware of but it is possible to set up different speed profiles with the various VESC compatible apps for VESC based controllers.

User avatar
liveforphysics   100 GW

100 GW
Posts: 14134
Joined: Oct 29 2008 1:48am
Location: Santa Cruz, CA, USA

Re: BESC - beefed up VESC motor controller for high power ebikes

Post by liveforphysics » Feb 25 2019 1:01pm

This project is epic!!! Thank you so much for your work!!!

Going to half film caps and isolated gate drivers was how to win at growing the power!
Each carcinogen vapor exposure includes a dice roll for cancer.

Each mutagen vapor exposure includes a dice roll for reproductive genetic defects in your children.

Each engine start sprays them into a shared atmosphere which includes beings not offered an opportunity to consent accepting these cancer experiences and defective genetics life experiences.

Every post is a free gift to the collective of minds composing the living bleeding edge of LEV development on our spaceship.

peters   100 W

100 W
Posts: 276
Joined: Oct 20 2012 11:46pm
Location: Hungary

Re: BESC - beefed up VESC motor controller for high power ebikes

Post by peters » Feb 26 2019 5:05am

I'm wondering a few things, but don't take offense.

It is a nice design, with some optimistic data in the manual ;)
For example the power loss: at 200A phase peak current the RMS current of a FET is 200/sqrt(2)/4 = 35A, and with Rdson=3.4mOhm the conductive loss is Pd = 4.25W for one FET, and that would be only at Tj=room temperature. Are you sure the switching loss and the others altogether are less than 1.17W/FET? (= 65W/12-4.25W)

I'm interested in also the FET turn-off Vds overshoots, because that is the highest voltage you can expect, and I've already measured a similar arrangement (2 FETs placed in parallel and the high/low sides in antiparallel, with HSOF package /IPT015N10N5/ in my case) and it was not very good:
There is a horizontal inductive loop formed of the 4 FETs (of a half-bridge) and the wiring between them: the output wire connecting the high side source with the low side drain, and the power supply bus bars. With the good capacitors the DC bus can be considered as a short at high frequency (freq. of the overshoot and the possible ringing), but the inductive loop is still there with its relatively high inductance that takes effect in the Vds overshoot. Moreover the overshoot of an outer FET is much higher than the overshoot of the other FET closer to the center of the loop. The difference was surprisingly high despite the parallel FETs are just next to each other: if the overshoot on the internal FET was 20V, the same on the outer FET was already 40V (or both more or less, depending on the switching speed).

Can you do Vds measurements at the highest current at MOSFET turn-off with the probe connected just right on the FETs pins/pads?
Can you do this with double pulse test? - It is more simple than setting up a motor with a high load, but need to write a firmware.
Do you have a differential probe?

User avatar
ElectricGod   100 MW

100 MW
Posts: 2748
Joined: Nov 01 2015 5:24pm
Location: 3 OH 3

Re: BESC - beefed up VESC motor controller for high power ebikes

Post by ElectricGod » Feb 26 2019 12:39pm

shaman wrote:
Feb 25 2019 12:32pm
ElectricGod wrote:
Feb 25 2019 5:14am
how do I connect a throttle, 3 speed switch, CA and other things?
J2 pins 4 and 7 are the inputs for external analog signals. This is where you would connect the signal line for a throttle. You go through a setup wizard on the VESC Tool program and that's where you configure the VESC to accept a throttle signal from one of these inputs. You can even adjust throttle response and tailor it to your liking.

Multi-speed switches aren't a thing for the VESC that I'm aware of but it is possible to set up different speed profiles with the various VESC compatible apps for VESC based controllers.
I guess a CA or other monitoring device that uses the CA signals has to be done 100% external to the controller.
I'm sure the apps are pretty good that work with VESC controllers.

shaman   100 W

100 W
Posts: 250
Joined: Dec 10 2018 7:03pm
Location: Fort Worth, TX, USA

Re: BESC - beefed up VESC motor controller for high power ebikes

Post by shaman » Feb 26 2019 12:51pm

ElectricGod wrote:
Feb 26 2019 12:39pm
I'm sure the apps are pretty good that work with VESC controllers.
Yes and there are different ones with different features to pick from. There is an official VESC Tool App form the original designer and then there are 3rd party ones as well. See examples below.

https://play.google.com/store/apps/deta ... tool&hl=en
https://play.google.com/store/apps/deta ... itor&hl=en

TilmanBaumann   100 W

100 W
Posts: 120
Joined: Feb 15 2018 10:32am

Re: BESC - beefed up VESC motor controller for high power ebikes

Post by TilmanBaumann » Feb 26 2019 12:58pm

I think he meant the apps running on the controller. ;)
Like the simple ADC input is an app.

User avatar
ElectricGod   100 MW

100 MW
Posts: 2748
Joined: Nov 01 2015 5:24pm
Location: 3 OH 3

Re: BESC - beefed up VESC motor controller for high power ebikes

Post by ElectricGod » Feb 27 2019 1:04pm

TilmanBaumann wrote:
Feb 26 2019 12:58pm
I think he meant the apps running on the controller. ;)
Like the simple ADC input is an app.
No Shaman was right...I meant android or IOS apps. You don't really need a CA if you have the same thing transmitted via BT to your phone.

Looking at the VESC tool, there's options in there for setting up multiple profiles...essentially identical to having a 3 speed switch. Most smart controllers use a physical 3 speed switch and you program the controller with specific settings for each switch position. This is convenient since you don't need a phone to change modes and you can do it while riding with the flip of a 3 position switch. However, that's an inconvenience that is pretty small. 99% of the time, I'm the rider on my EV's so I set them for maximum performance. It's the rare time I let somebody else ride and that's when I flip to low or medium on the switch.

User avatar
galp   100 W

100 W
Posts: 169
Joined: Mar 22 2014 2:04pm
Location: Slovenia, EU
Contact:

Re: BESC - beefed up VESC motor controller for high power ebikes

Post by galp » Mar 01 2019 5:47am

peters wrote:
Feb 26 2019 5:05am
For example the power loss: at 200A phase peak current the RMS current of a FET is 200/sqrt(2)/4 = 35A, and with Rdson=3.4mOhm the conductive loss is Pd = 4.25W for one FET, and that would be only at Tj=room temperature. Are you sure the switching loss and the others altogether are less than 1.17W/FET? (= 65W/12-4.25W)
It's what I calculated but never measured. I hope you notice the big DRAFT written all over pages. It should be somewhere close with the size of heatsink I currently have installed. :mrgreen:

I have rise time set to about 0,4 us to limit overshoot. I made some measurement here. Unfortunately I don't have proper test setup at home nor funds to build one. Also keep in mind that I never tested this design at 125V and it is quite possible it wouldn't run at such high voltage. But with 84V or 100V there is a lot of room left (50V) for overshoots. I might do the double pulse test.

Design is confirmed though. I made more than 500 km with my bike without a single failure or maintenance with phase current set to 200A and 20S li-ion battery.

I haven't fully decided yet but I'm 80% sure I'll make this project opensource with design files, gerbers and detailed assembly instructions. I'm also planning to make some minor changes to the current design and call it final. It was never in my interest to make money with this design although it would be nice to get some development cost back.

User avatar
galp   100 W

100 W
Posts: 169
Joined: Mar 22 2014 2:04pm
Location: Slovenia, EU
Contact:

Re: BESC - beefed up VESC motor controller for high power ebikes

Post by galp » Mar 01 2019 5:59am

ElectricGod wrote:
Feb 25 2019 5:14am
Maybe you would consider making a higher power version? Something like 400 phase amps?
Maybe in the future. First I'm going to double my battery pack on my ebike. Then I'll then decide if a bigger controller would benefit the whole system. I'm not just going to develop something I'll never need. But yeah, I've looked into it in the past and found LEM current sensors that are affordable and up to the task. Challenge will be paralleling three transistors (18 in total) and taking care of overshoots. I think I could keep the current layout for 400A.

peters   100 W

100 W
Posts: 276
Joined: Oct 20 2012 11:46pm
Location: Hungary

Re: BESC - beefed up VESC motor controller for high power ebikes

Post by peters » Mar 01 2019 12:26pm

Yes, I saw the DRAFT label :)
400ns for Vgs rise time is quite short at this power level, I would expect more by default. The Vds rise/fall time is much shorter, that is only the length of the Miller-plateau.
Anyway it is a good final measure that it works well without failure, congrats for that!

Are you using IPB044N15N5ATMA1?
I may try the same because the HSOF I tried is not very good in several ways.

User avatar
ElectricGod   100 MW

100 MW
Posts: 2748
Joined: Nov 01 2015 5:24pm
Location: 3 OH 3

Re: BESC - beefed up VESC motor controller for high power ebikes

Post by ElectricGod » Mar 01 2019 5:40pm

galp wrote:
Mar 01 2019 5:59am
ElectricGod wrote:
Feb 25 2019 5:14am
Maybe you would consider making a higher power version? Something like 400 phase amps?
Maybe in the future. First I'm going to double my battery pack on my ebike. Then I'll then decide if a bigger controller would benefit the whole system. I'm not just going to develop something I'll never need. But yeah, I've looked into it in the past and found LEM current sensors that are affordable and up to the task. Challenge will be paralleling three transistors (18 in total) and taking care of overshoots. I think I could keep the current layout for 400A.
Open source would be cool, but I bet you will get people who want a built unit. You should be able to make your money back by offering that. While I'm capable of building it myself, I have way too many projects going at any point in time so I'd personally want to pay for you to build me a couple of them.

I know lots of people that run their 100v mosfets/controllers at 22S/90S and personally I think they are nuts. That's too close to the upper limits of the components IMHO and greatly increases the chances of failure. Since your maximum limit is 150v, staying around 20v less than that ought to account for ringing and over shoots. I've never had a problem staying at 20v less than the maximum and everything works well. IE: Test at 32S/131v as your realistic maximum. If you do and it all works well, you've won me over! I'll take 2 please. :)

My next build has been held up due to needing decent controllers that are FOC and can do at least 200 phases amps and run at 131 volts. I'd really like 300+ phase amps continuous so I have some "room" for overloads and cranking the throttle. This build will be running 2 controllers on a 6 phase motor and my expectations are 30-40kw.

Down the road...
I have a motenergy 80kw axial flux motor. It's 6 phase...that pretty much means 400 phase amps at 131 volts.

district9prawn   100 W

100 W
Posts: 261
Joined: Jul 20 2013 10:46pm
Location: Sydney

Re: BESC - beefed up VESC motor controller for high power ebikes

Post by district9prawn » Mar 01 2019 10:18pm

ElectricGod wrote:
Mar 01 2019 5:40pm
My next build has been held up due to needing decent controllers that are FOC and can do at least 200 phases amps and run at 131 volts. I'd really like 300+ phase amps continuous so I have some "room" for overloads and cranking the throttle. This build will be running 2 controllers on a 6 phase motor and my expectations are 30-40kw.

Down the road...
I have a motenergy 80kw axial flux motor. It's 6 phase...that pretty much means 400 phase amps at 131 volts.
Have you ever powered a six phase motor with two vescs? It should work but I've never tried it myself and have not seen it done anywhere online. I've been meaning to rewind a small outrunner to six phase to play around.
Neu 8057 6kW left hand drive hardtail with 18 fet Vesc: viewtopic.php?f=6&t=96754

User avatar
ElectricGod   100 MW

100 MW
Posts: 2748
Joined: Nov 01 2015 5:24pm
Location: 3 OH 3

Re: BESC - beefed up VESC motor controller for high power ebikes

Post by ElectricGod » Mar 04 2019 3:49pm

district9prawn wrote:
Mar 01 2019 10:18pm
ElectricGod wrote:
Mar 01 2019 5:40pm
My next build has been held up due to needing decent controllers that are FOC and can do at least 200 phases amps and run at 131 volts. I'd really like 300+ phase amps continuous so I have some "room" for overloads and cranking the throttle. This build will be running 2 controllers on a 6 phase motor and my expectations are 30-40kw.

Down the road...
I have a motenergy 80kw axial flux motor. It's 6 phase...that pretty much means 400 phase amps at 131 volts.
Have you ever powered a six phase motor with two vescs? It should work but I've never tried it myself and have not seen it done anywhere online. I've been meaning to rewind a small outrunner to six phase to play around.
NO I haven't, but it won't be a problem. Neither controller "sees" the other 3 phases on the other controller. AS far as any one controller is concerned, it is "seeing" the entire motor.

A 12 tooth stator is pretty easy to wind for 6 phases. Give it a shot!

TilmanBaumann   100 W

100 W
Posts: 120
Joined: Feb 15 2018 10:32am

Re: BESC - beefed up VESC motor controller for high power ebikes

Post by TilmanBaumann » Mar 05 2019 2:36am

The benefit of winding it like that is lower phase current per driver only?
Naively I would think that a six pole motor can be hooked up to a three phase driver by hooking up the phases in parallel. Is that so?
Sorry for those questions, I just wondered if I understood that right?

Cuprani   10 mW

10 mW
Posts: 22
Joined: Jan 14 2019 1:56pm

Re: BESC - beefed up VESC motor controller for high power ebikes

Post by Cuprani » Mar 05 2019 7:31am

galp wrote:
Mar 01 2019 5:47am
It's what I calculated but never measured. I hope you notice the big DRAFT written all over pages. It should be somewhere close with the size of heatsink I currently have installed. :mrgreen:

I haven't fully decided yet but I'm 80% sure I'll make this project opensource with design files, gerbers and detailed assembly instructions. I'm also planning to make some minor changes to the current design and call it final. It was never in my interest to make money with this design although it would be nice to get some development cost back.
I'll hope it will be final soon :D
Grtz Nils
ElectricGod wrote:
Feb 27 2019 1:04pm
Looking at the VESC tool, there's options in there for setting up multiple profiles...essentially identical to having a 3 speed switch. Most smart controllers use a physical 3 speed switch and you program the controller with specific settings for each switch position. This is convenient since you don't need a phone to change modes and you can do it while riding with the flip of a 3 position switch. However, that's an inconvenience that is pretty small. 99% of the time, I'm the rider on my EV's so I set them for maximum performance. It's the rare time I let somebody else ride and that's when I flip to low or medium on the switch.
I would never want a hard wire switch because of legal regulations in my country. The only time I ride full power is when I'll take the bike into the woods. But when I use the bike to travel to work I will limit it's power and speed so I don't have to constantly look over my shoulder for law enforcement. If they see me going over 45 km/h (25 mph) they fill fine me for about € 500,- ($600) for driving without a motorcycle license and driving without insurance. And they probably would confiscate the bike too. It would be much more convenient to lie about the power of the bike when I don't have a hardware switch for more power.

I'm using a vesc for my e-skateboard now, and it's just really the best software if you want freedom programming your controller. The ability to log everything with your phone, or even your smartwatch is a nice to have bonus.

Post Reply