You can reach me at
benjamin (a-t) vedder.se
hi. im from Peru
I would like to know how to control brushless motor ( i boguht 4 Turnigy L3040A-480G)(some diagram) and wich sensor used to detect white border
PS:sorry for my english
Hi, If you are going to use the motor for a sumo robot, have to build your own motor controller and mount hall effect sensors in the motor, which can be quite complicated. This is to get good torque at low rpm (which can’t be done with standard sensorless hobby controllers). I’m currently working on a new BLDC controller, so I will most likely post some code, schematics and layout sometime soon.
The sensors I used to detect the edge are called AMA145915, but I will not use them again as they are quite expensive and not that good.
Wouldn’t it also be possible to use a rotary encoder? Then the controller has to let the motor run a few rounds, but after that startup sequence the controller knows exactly where the magnets are. Of course the rotary encoder has to be exact enough, but maybe that method works even better then using hall sensors?
I have done this with a DC motor and a rotary encoder:
It should also work with a brushless motor, but I don’t have one to test with right now. Position control and FOC have high priority now, so I will work more on that soon.
I want to play 2 mp3 files by pressing two seperate buttons in the stm32f4 discovery board. I tried the code you posted here. It only plays one at a time. How can I play two of them at the same time??
Hey, are you going to make some project using FreeRTOS and ethernet?
Hello! I have some question if you can help me,i would like to make a sumo robot and i looked for a lot of videos, i think that your is best that i saw. can you help me with some specification, what motors,sensors,microcontroller did you used? and if is not too much can you give me a sketch. Thanked early soul
I would say that you have a wonderful blog! It helped me a lot.
But I have an issue.
I compile a project for STM with arm-none-eabi-gcc.
Project builded successfully, but doesn’t work, when i write it on board.
I think, that issue in my Makefile:
arm-none-eabi-gcc-4.5.2 -mcpu=cortex-m4 -mlittle-endian -mfloat-abi=softfp -mfpu=fpv4-sp-d16 -mthumb-interwork -std=c99 -Os -D USE_STDPERIPH_DRIVER -D STM32F4XX -D HSE_VALUE=0x8000000 -I. -I./ -Wall -T link.ld main.c system_stm32f4xx.c misc.c stm32f4xx_exti.c stm32f4xx_gpio.c stm32f4xx_rcc.c stm32f4xx_syscfg.c stm32f4xx_tim.c -o main.elf
Please, help me. I’m struggling with this for a long time.
I really like your BLDC controller, it is so compact and such a clean design! I wonder if it can be scaled to a 154V (48S LiFePo4) Ebike controller to drive an up to 2500W Crystalyte HS3540 hub motor? I can use Kicad a bit and could maybe help on a branch for that application. I already found the IRFP4668pbf 200V FET for example that might be good enough if mounted to the right sink. How does your controller compare to a so called sinus controller (Lebowsky http://endless-sphere.com/forums/viewtopic.php?f=30&t=57877)? Sinus controllers are claimed to be quieter and more efficient. How is it done, are those not FET used as switches? Thanks for the great work Ben!
ı am can. ı have some questions.
1.ı have 3.3kW bldc motors but ıdont know ı use what kind of battery using for my motor.
2.ı will use this motor in water so is it enough in water for pulling to person
Hi , im following your website thanks for your all sharing. I have a problem related esc. and im trying to solve it. I have inrunner bldc motor and i bought an esc from the hobbyking. This esc is driving my inrunner bldc motor but it is not running at initial part. If i help to run abit its running perfectly. Can i modfy my esc to solve initial start ?? Please help me !! If i solve a litle bit this problem i want to make your esc but now i dont have enough time.
I want you to design for me BLDC controller and I want you to write specific text on the masking of the PCB.
I will pay for you as much as you want
I am Jaromir Dvorak, we were cooperating on the AVGA project some long time ago… I was just randomly surfing the web and accidentaly, I found your custom ESC. How a co-incidence… Guess what? 🙂 I’ve been working on ESCs in last 4 years! It is awesome to hear that we share the interest even in such a different projects. BTW you’r design is neat. Keep up the great work!
I think it is impressive what you did with an atmega mcu to generate video signal in real time with scrolling and sprites. I noticed that you have been using my old java program for retrowiz as well 🙂
Very impressive work, just wonder is it possible for me to change the MCU to a lower speed one and a lower current MOSFET? as I am just a student do not have that much spare money on top IC. Will this affect the system? I will only use 5065 motor should within the power rating
I read your post on the great dual drive prototype. Great stuff !!
Do you use the same board described here for single drive (v4.7) or is it a custom board for dual drive ?
I use the same board. Just connected two of them over the CAN bus and run one as the master.
I really liked the work you have done on your website, not only is it very useful but it is also presented in such manner that we can implement it ourselves.
I am working to implement websever on a mote with the functionality to parse XML messages. Sadly this is taking too much space and since my program also has tons of other functionality so I was not able to upload it to a SKY mote so I looked at your implementations of porting contiki to stm32fr.
But the thing is I really want to use cooja simulation tool and in I want to use sky mote because of how well collect-view works with it. Since cooja only simulates (emulates) a mote so looking at your port got me thinking that there must be way of changing the limit of RAM & ROM without making major changes to the sky mote.
Eagerly waiting for your reply!
Great projects. I am interested in using your VESC to control a high speed BLDC motor via UART or ADC but has no luck. would you please provide some suggestions on how to make it working? (via BLDC tool working fine)
The best regards.
I really need to write some tutorials about that. You can have a look at the files packet.c and commands.c for the UART (and usb) protocol to get started.
Great but – i am not sure is this switching power supply design?
Switching PSU would be much more efficient than disipating heat on mosfets from batteries.
Have you thought about switching PSU?
Otherwise superb monitoring capabilities… Have you captured data on sdcard or something?
The motor inductance together with the switching behaves like a switching psu, so adding an external one would not help.
The video logging is done in real time with a program that I wrote. You can read the post I wrote about that.
I was wondering about how “scalable” your new skateboard controller is. I have some VERY large RC style outrunners. These are capable of producting 15kw and weigh about 5kg. (you can one on my site).
Normal traction controllers really struggle with the low inductance (approx 9uH) and this makes these motors less attractive. A version of your controller at 72V with a power circuit for 200amps continuous would be ideal.
I am not expecting you to design one, just if you think your design could scale.
It should work if you change the power stage. You can also test that motor with the current design with a bit lower voltage and lighter load. If that works well, scaling the power stage should also work well.
Cool thanks for that. I think I might get involved with the beta test stuff going on. I have a linux machine and the appropriate tool chains.
I would like to order some controllers can you please contact me??
Hi Ben, this may be a stupid question, but how do I download the bldc tool onto my windows computer?
I don’t support windows. I think you may be ably to build it on windows, but I don’t know how. I recommend installing ubuntu 14.04.
Do you have an Auto Insertion file(or pick n place file)for the BLDC Motor Controller brd?
It can be exported from kicad, but different manufacturers require different formats. I have one that I can upload to github soon with some minor changes to the PCB.
I think that its too hard to make this, and i have a question, can you create ones more VESC with integration MPU6050, and sail for me??
please say to me contiki version that you used for implement “A Contiki port for my custom cc2520+stm32f4-boards”
thank for your attention
I just found your esc and Love it
Can I buy this esc from you(I can solder it myself but in my country it’s toooo expensive)
Do you sell your ESC’s or a self soldering package?
Not at the moment, but hopefully I will have another batch soon.
Okay, then let me know, when you have one for me 😉
Hello I am a 4th year Electrical engineering student, and I am interested in working on a final year project which will be an electric skateboard controlled from a mobile app on Android and maybe with an electric glove as a controller.
I have a few questions for you:
1) How much do you estimate the project will cost including all the parts (with the long board, wheels etc.) We have $400 for this project and wanted to know if it is within our budget.
2) how does the live chat work? is there any tutorial on it? I tried messaging there but not sure who got my message and how can I contact you there?
3) what do you think the estimated scope of time we will need to implement such a project? (assuming we have intermediate knowledge with programming, soldering and electrical components )
Thanks a lot for this, this is incredible!
Thanks for this awesome project firstly. I wanted to use this VESC and built it according to latest schematics on the website ( I guess it is version 4.5 ). Although they are connected just like in the schematics, unfortunately, when I power up the ESC with 21 V, there is something going wrong with TVS diode, its getting hot and a little smoke coming out of it naturally. I have several ESC completed for my project, but all of them has the same problem. TVS diode should be working at 5V but when I measure the voltage on it, I saw 3 V exactly. Do you have any suggestion to find the problem?
Thank you so much in advance.
sorry, it is 4.7.
Great project there! However I have a problem with the nunchuk code. I am using the original wii nunchuk instead of Nyko Kama, and it is not working. It seems to work just fine with the Kama. I tried changing the code in app.nunchuk but it does not help.
Can you help me with this problem?
Thank you so much,
Ben, I have a little dilemma perhaps you can advise me on. I have two of your VESC’s and am looking forward to using them. I’ve purchased 2 motors from Dexter at DIY electric skateboard. They’re 5065 170kV motors that are sensored. The problem is that the standard sensor connector is not the JST 2.0mm connector on your board……
Is there some sort of adaptor I can use? I know there are sensor extensions but I’d still have to solder on a JST connector in order to attach to the VESC. I’m a bit frustrated. Can you advise…………any help would be appreciated. The hall sensor wires are pretty small but if you think just trying to resolder a JST 2.0mm on it is my only option I will try.
first of all I want to thank you for your great ESC. I finished my longboard this weekend and of course built in your VESC. The result is awesome and it is so much fun to ride it.
There is just one thing I would like to know. As I use a motor with 2,5 KW and a 10s LiPo battery, the max current can be about 70A. I am looking for a power on switch to avoid the sparks that occur, when connecting the battery plugs to the ESC. I have seen some special high voltage and high current switches from Emotec (SPS SafetyPowerSwitch 70V 100/200A) here in Germany, but I am not sure if it will work properly with the VESC. I have read somewhere, that the max capacity of all capacitors should not be over 1200µF when using the Emotec power switch. As the capacitor used with my VESC has 2200µF this would not be a proper solution. All other (usual) power switches can handle max. 30A and would simply burn out if I used them for my longboard. Any suggestions, what I can use?
Best regards and keep on the great work!
Hi Benjamin. Sorry for confusing your name in my post. Don’t know why I thought it to be Sebastian. 😉
Hi Sascha. I have designed a power switch PCB as well that should work. It is here:
Very nice esc you have designed, I’m also building my own ESC’s especially designed for multirotors. The only thing I never figured out is the phase advance. I using 2300kv motors with high RPM which need phase advance in order to compensate for the phase lag. I do set the phase angle manually based on the RPM. I was wondering how you do that ? I would like to automate that so that I don’t need to adjust the angles for different motors.
I use only sensorless and no current measurement, because they don’t fit on my 15amp 2x1cm ESC.
How much phase advance you need depends on the inductance, speed and load. For the same motor you need different amounts of phase advance for different loads. Doing this automatically is one of the main components of FOC, which requires current feedback. The best you can to in your case is to do it manually.
Firstly, i wanna say to thank you for your blog posts and we got very good topics with your blogs and than i wanna ask a question.
Benjamin,We are a student team and we want to make a quadcopter but we dont want to use typicle escs and we want to design custom esc like you,
And we found you on internet about ESC and we use the 1200KV brushless outrunner without sensor MOTOR and my question is Can we use your esc in own project ?
shortly,for a quadcopter and for 1200KV brushless sensorless can we use your circuit ? your project depends on just for sensorless ? or high currents ?
It will most likely work, bit it depends. How much voltage, which current, how many poles does the motor have?
We will work on quadcopter and for 4 Brushless motor and we will use 11.1V li-po battery and motors KVs is 1200KV and current can be 30A for just one motor but 30A is the Maximum we can’t see this current exactly
We use typical outrunner brushless and I don’t know what can I say about poles maybe 6 I don’t know
that setup should work nicely with the vesc
Does the BLDC TOOL work with windows 10 instead of ubuntu? I am a newbie for this matter.
I just recently purchased the October batch of vesc I cannot get widows bldc to connect to vesc imusing build tool 1.14 I checked the devices it says ChibiOS/RT Virtual COM Port working correctly but when I click properties theres a question mark symbol beside ChibiOS/RT Virtual COM Port and it says no drivers installed is this whyi cant connect I have 9v power connected blue and green led is on what am I doing wrong? ive been at it 3 days reading and trying it over no success can you help please
I don’t have windows on any computer and have never tested the windows versions, so I cannot help with that.
i am making a project to improvise this controller with CAN port and other features which is not implimented please help me out in finding ways to impliment encoders in this specific design..
your reply will be highly appreciated
I’m very interesting in your VESC ! I’ve seen one today, and I’m very surprising by its capabilities !
I would like to know if this ESC is able to handle 12S batteries (or two 6S batteries), with a 10S motor ?
In others words, is it capable to reduce battery voltage ?
It depends. What kind of motor is it?
Dear Benjamin, happy New Year!
Im Sergio, from Colombia.
I want to buy 1 pieces your VESC for my BLDC motor. I’m very need in 1 VESC card assembled and ready to use.
Please, tell me about your possibility to sell for me this one card.
How much is one card and transfer?
With kind regards,
Can you make esc 250 amp 12s for rc 1/5 car ?
Hi, have you tested your ESC with TigerMotors U8?
I need a CAN ESC in my project.
Hej, Benjamin! Could you tell what is STM32 CPU utilization, when running VESC code? I’m in thought, can the processor to execute VESC and APM.Plane autopilot code simultaneously (i.e. read SPI IMU data, calculate filters, etc), or it is a bad idea.
Doing something like this should work without problems, there is more than enough cpu power left. Just make a custom application. I have actually thought about doing the same thing.
I am new to your projects, first of all I want to say, that I am very impressed with all of your products! I wanted to build my own electric Longboard as a finals work at high school. For that I want to control it with another type of wireless controller, thats why I decided to ‘transform’ a wii Nunchuck. Unfortunately, there aren’t a lot of helpful tutorial, how to do that. I stumbled upon your website, with exactly what I wanted. My motor is a Turing sky 190v 2450 watt electric motor from hobby king. I would like to use 2 8000 man 3s 30c batteries, with a 150 amp esc. Would that work?
As of your controller, where can I buy or where can I get those bits and pieces from? Is it programmed using arduino?
Thank you for your help and patience
i have a question regarding your VESC. What happens when you want to brake with the motors and the battery is already full? And when recuperating, the Lipo isn’t balanced right? Isn’t this bad for the pack?
Love to read an answer
Cheers from Germany
How difficult would it be to make the VESC able to use 70V (50A max) ? It would be so useful for a project of diy electric unicycle…
If the input frequency is 200 hz，can VESC support it？thank you very much，looking forward to your reply.
Benjamin.If the input frequency is 200 hz,can VESC support it?
looking forward to your reply,thank you very much.
I was just curious as to what your set up is for your electric longboard. I would really like to build one myself and I’ve been doing some research but I’ve never done anything like this before. I was hoping you could tell me what motor you are using for your electric longboard and what batteries you use and how many you use. So therefore if I buy everything and put it all together I should have a board that functions like yours. Also if you have any help while I am building the board that would be great.
Thanks very much.
Hi, my name is Nickzy. I am planning to build an electric longboard, and therefor use your vesc. However in my country we have a speed limit on these electric vehicles on about 25 km/h. I was wondering if you have any idea on how to make the longboard go up to 25km/h both uphill and flat areas, but not above 25km/h. However want it to still be able to go above this speed limit downhill.
I am really interesting of manufacturing your VESC by my self for commercial purpose’s.
I have a lot of experience with PCB manufacturing with the highest quality control in Israel.
Please contact me if you are interested of douing bussines.
With best regards,
Thank you for this very good projet and blog, I would like buy a assembled VESC board.
Do you have some? How I can proceed to pay and devivery in France?
Could your ESC design run a high current motor?
Like a turnigy rotomax 50 cc?
What’s your lowest kv motor that can be run.
I want to build a ESC to run a decent motor .
I’m a complete noob to the subject .
Could you explain me the procedure to reduce the board speed in BDLC
i have a 6374 moteur and 10sp3 cell
Thanks for your help and for your huge work in developping the VESC
Your email address will not be published. Required fields are marked *
This site uses Akismet to reduce spam. Learn how your comment data is processed.