• Hello ES! We could use some help to get us past the finish line on building the new knowledgebase for the forum.
    Can you donate? Please see our fundraising page. Thank you!

VESC based INNOTRACE M620 Simple motor controller

TPEHAK

🚴‍♂️ Mega poster
Joined
Jun 9, 2023
Messages
834
Location
Twin Peaks
The archive with the current versions of the motor controller files (KiCAD version 10.0.5), Gerber files, BOM file, components placement file, CAD files and firmware files can be downloaded here (updated on 2026-07-24).


If you want to purchase this controller the process is explained here


A few extra parts CAD models necessary to install the controller into Bafang M620 motor (insulation layer, thermal pads, 3D printed rotary encoder bumper and some fasteners) can be found in the folder "M620 CAN Simple Controller\Idividual Parts Footprints, Symbols, 3D CAD\Extra parts" in the controller files archive

Controller firmware file is "M620 CAN #5 (2026-07-05).bin" is in the "M620 CAN Simple Controller\Firmware" folder. This firmware does not require applying the motor configuration file. Please note the motor battery amperage is set quite high, adjust the battery amperage if necessary. Do not forget to adjust the battery cells and voltages limits. Run rotary encoder calibration for proper motor work and to stop the errors messages popping on the display screen.

If you do motor detection make sure the Bafang display support level is set to the "Eco" mode (lowest support level), otherwise some motor parameters will be detected wrong and the the walk assist mode will not work properly (the wheel will spin faster than the walk speed).

More details about the controller firmware and Bluetooth can be found in the "Readme.txt" file in the "M620 CAN Simple Controller\Firmware" folder.

1784961884317.png




===========================================================================



I got quite some questions regarding the motor controllers we designed recently and it looks like people are afraid to solder it and want something ready to purchase without touching a soldering iron, or at least something easier and cheaper to fabricate.

And it looks like there is a possibility to design such a motor controller for Bafang M620 motor that would be possible to easily order from JLCPCB for cheap or at least solder it home in your kitchen on your cooking hot top in one single step.

Here are the requirement we probably can meet for such controller:

- The controller must consist of one single PCB (to reduce the price and simplify the fabrication)
- The controller PCB assembly must be single sided (to reduce the price and simplify the fabrication)
- The components spacing must be regular (to reduce the fabrication diffculty)
- All the PCB assembly components must be SMD components including connectors, terminals and so on (to make the fabrication one single soldering step with no soldering wires, no soldering through hole components and no post processing to reduce the price and to ease the fabrication)
- All the components must be pick and place components including the terminals and connectors (to make fabrication through JLCPCB cheaper)
- All the components sizes must be 0805 or bigger (for easier placement and soldering and no need for a microscope and such)
- All the components must be sourced and available from JLCPCB and be accessible through their PCB assembly service (so you just simply load the BOM and pick and place files on their website and be ready to purchase the controller without extra hassle managing the parts).
- The components must have common packages (so you can find replacements in case of lack of the exact parts)
- No integrated Bluetooth module (a Bluetooth module can be purchased as a separate dongle and connected to the PCB with a connector)
- The controller PCB size must be 100x100 mm or smaller (to reduce the PCB price)
- The controller must be plug and play and be able to come from JLCPCB as a complete unit without a necessity of extra work (so a person who has no idea what soldering iron is does not need to touch it and just need to install the complete controller in the motor using the existing parts)

So if we will be able to meet those requirement anyone should be able to purchase a complete controller PCB assembly from JLCPCB without a hassle and spending too much money and no need to find a middle man.

I starter moving the parts around and it looks like there is a chance we can design such a motor controller. Do you think we can make it?

1783584949476.png

1783585105730.png
 
Last edited:
it looks like people are afraid to solder
I guess 99.99% of the users just buy and ride their bikes.
0,01% will buy a BESST to tune the original controller
0,001% will tinker with alternative firmwares, if there is no need to open the motor for that.
0,0001% will open the motor for maintenance or controller mods...

🤷‍♂️
 
INNOTRACE X1 was a quite popular motor controller. Maybe we will bring back those good old days.
 
Last edited:
I do not know, but there was a lot of people were talking about those controllers in the Internet and there was a few bicycles sellers were selling those controllers.

Even the VESC guys were mad because of Krasnodar used VESC for the INNOTRACE X1 controller and planned to use VESC for the INNOTRACE X3 (M600, M560) controller and did not share the firmware. I am sure the VESC guys could not care less if INNOTRACE would not be popular and successful. INNOTRACE sertanly sold enough controllers to take the VESC attention.
 
Last edited:
Aren't you concentrating on the wrong motor, the M560 will put out nearly the same power, smaller format and much more available as its now the latest motor from Bafang ( waiting for a ECVT, it can't be far away ). If you put all the above criteria into the M560 layout you would also cover the M510. KISS is great for the most builders.
 
It is impossible for the M560 motor, there is not enough space. The existing design of the INNOTRACE M560 controller is already crammed. M620 is the only our chance to design something simpler.

But even for the M620 there is not much room left for the remaining parts, it is going to be quite a challenge even for M620.

1783679680834.png
 
Last edited:
If you can make an electronics newbie-friendly 'take and bake' controller, that's also super compact, i may be interested.
 
I am not sure if 100x100mm PCB is super compact but if it is then this is the one. It can not get significantly smaller than this without using smaller footprint components and jamming those closer to each other which is more difficult to solder.
 
Last edited:
It is time to 3D print this bad boy and check the fitment before moving with tracing

1784099096067.png

1784100010804.png
 
The controller has been printed!

1784110797616.png

The new easy cheap INNOTRACE vs the old difficult expensive INNOTRACE

1784110955947.png
 
I looks like we nailed it guys! The controller fits the motor just perfect! The cable management can't get any better

1784112412604.png

1784112509929.png

1784112644160.png

1784112720255.png

1784112756163.png
 
The high current tracks are mostly complete! That should be able to handle quite a punch!

1784269972138.png

1784270025472.png
 
the M560 will put out nearly the same power,
no it will not. The one way bearing starts to fail at 2-3kw of power. M620 can put out twice that.

waiting for a ECVT, it can't be far away
ECVT by bafang would be nice indeed, but aftermarket controllers with ecvt control would be way more complex, not to mention the open-source code to control an ecvt does not exist yet. You need 3 independent foc controllers working together instead of just one.
 
Last edited:
This is huge. The barrier for most of us was never actually doing it, it was the SMD soldering, hot plate, microscope setup. A JLCPCB pick and place take and bake controller removes all that. I'm planning an M620 build myself and would way rather drop in a fully assembled board than spend weeks building a reflow station I'll use once. Definitely buying a complete unit once it's validated 🤞
Any progress on the impact wrench throttle-from-standstill issue?
 
No, it will work the same as the old one. But if it will become more popular maybe there will be a familiar with the VESC firmware user who can fix the VESC firmware issues.
 
The controller design has been complete! And we managed to squeeze it is 4 layers, so this motor controller should be dirt cheap!

1784791155435.png

1784791516679.png

1784791861805.png

1784792113555.png
 
Working on the PCB assembly files for JLCPCB. The good news is all the parts are available! Still a lot of stuff needs to be fixed though, but we are getting closer so we can purchase the complete controller directly from JLCPCB without touching a soldering iron guys!

1784857020820.png
 
Last edited:
The assembly files have been finished and the order have been placed. That means only one thing - it is the time for the first release of the controller files. The KiCAD files are for KiCAD 10.0.5


So if you want to purchase this controller here is the process (of cause regardless our 100% success rate there is no guarantee it will work, no one tested it).

1) Go to the PCB Prototype & PCB Fabrication Manufacturer - JLCPCB website and register an account if you do not have one. If you have one log in with your account.


2) Select "Get Instant Quote"

1784957056364.png

2) Select "Add gerber file"

1784956834550.jpeg

3) In the opened Windows browser go to the folder "M620 CAN Simple Controller\Production files" in the controller files archive and select the file "M620_CAN_Simple_V0.01_Gerbers.zip"

1785004045704.png

4) Wait until the JLCPCB finished processing this file and select PCB thickness 1.0mm

1784957546457.jpeg

5) Scroll the page a little down and select Material Type "S1000H TG155".

Also select Via Covering "Epoxy Filled & Capped"


1784957649854.jpeg

6) Scroll down and click the switch against the PCB Assembly


1784958367772.jpeg

7) Selct "NEXT"

1784958419375.jpeg

8) On the next page select "NEXT" again

1784958485570.jpeg

9) Select "Add BOM File"

1784958540190.jpeg

10) In the opened Windows browser go to the folder "M620 CAN Simple Controller\Production files" in the controller files archive and select the file "M620_CAN_Simple_V0.01_BOM.csv"

1785004156296.png

11) Select "Add CPL File"

1784958678717.jpeg

12) In the opened Windows browser go to the folder "M620 CAN Simple Controller\Production files" in the controller files archive and select the file "M620_CAN_Simple_V0.01_CPL.csv"

1785004236468.png

13) Click "Process BOM & CPL"

1784958766722.jpeg

14) On the next window check the bill of materials list and make sure JLCPCB has everything in stock. Then select "NEXT"

1784958810826.jpeg

15) On the next page wait until JLCPCB processed the BOM and CPL files and check the parts placements in the 3D view. Make sure all the parts are oriented and positioned correctly. I adjusted the KiCAD files so the assembly files work without issues and no extra action as is with the JLCPCB, but if you replaced some parts with different parts on the previous page for some reason make sure those parts are oriented correctly because of orientation of the parts may differ even the parts have the same footprint.

If everything looks good select "NEXT"

1784958956682.jpeg

15) Select Product Description as "Research/Education/DIY/Entertainment/D... "

Select "SAVE TO CARD"

1784959318605.jpeg

16) Select "Continue" and finalize your order with your shipping address and payment. As you can see 5 of INNOTRACE M620 Simple motor controllers cost about as one EXFORCE M620 motor controller. And if you order more the price per unit goes down. You can offset your expenses just selling the rest of the batch you ordered for the people who wants it.

1784959421138.jpeg

You also can make it real cheap if you will order only bare PCB and stencil with the parts and solder it home on a hot plate. The controller design allows to solder it without a microscope (it is still nice to have it though).
 
Last edited:
The design for manufacturing inspection has been passed with 0 warnings! The controller is 13% complete! Less go!

1785008595285.png

1785008763751.png
 
Back
Top