
Summary
[Tony Goacher] has worked with a lot of cheap brushless DC motor controllers built in China. They can be very cost-effective, but sometimes limited in performance or capability, particularly when it comes to low-speed operation. Thus, he’s been working on a project to make cheap controllers more capable. The prime problems [Tony] has faced are jerkiness, throttle deadspots, and inconsistent torque delivery at low speeds. This is especially the case when running brushless motors on heavier vehicles, where the greater inertia can compound any minor problems to the point things become undriveable. [Tony]’s solution has been to create a signal interceptor that lives in between a throttle and the cheap motor controller to change their overall behavior. The demo vehicle for this build is TrakTrike, a sort of bicycle-half-track hybrid that [Tony] built for EMF Camp 2022. After blowing up some nicer controllers, [Tony] specced some cheaper parts from AliExpress. Only, the low-speed control was terrible, and the dual motor controllers didn’t respond identically to throttle and would cause the vehicle to steer or crab, making driving difficult. This was fixed by dropping in an Arduino Nano after the throttle, and before the two motor controllers. It allows calibrating the throttle output from the Arduino to eliminate dead spots, while also tuning the throttle output to left and right motors individually so they respond more similarly. There are also custom acceleration and deceleration curves that make the controllers respond more smoothly, and a precise crawling speed for consistent low-speed maneuvering. Just by doing some fancy throttle smoothing and control, [Tony] was able to greatly improve the usability of these cheap controllers, for the price of an Arduino Nano and little more. Files are on GitHub for those eager to attempt the hack themselves. There are other ways to go about this of course, like diving into field-oriented control, if you’re so inclined. Alternatively, speculate on how you’d tackle this engineering challenge down in the comments. Why not simply use a mechanical gearbox? No need to deal with chinese chabuduotronics. A mechanical gearbox doesnt very motor speed, it varies gear ratio. Apples and oranges buddy. Damn autocorrect. very should have been vary. It’s called a transmission and literally varies the engine speed by using ratios by design. A controller with low speed response issues will perform better with a lower gear ratio and be cooler on the windings to boot. And don’t call me buddy pal. Okay slopoke. If you apply current to a motor without a speed controller (assuming its a motor that can run without a controller) your rotational speed will be relatively constant. If you rely on gearing alone, unless you have a system capable of minute and gradual changes across the entire desired speed range (CVT) you will have a system that jumps uncomfortably from one rotational speed to another. A speed controller controls speed, gearing controls the drive ratio. Each has its place but in all honesty you can usually get away without the multigear transmission easier and more effectively than you can get away without speed control. PS unless you post under multiple nicks I never called you buddy dumbass. Just adds mechanical complexity and weight. EVs do have gearboxes but they are single speed and reductional. I knew the motor had enough slow speed torque to get it going. The problem was the slow speed handling of the ESC itself. There is about an 8:1 reduction on the sprocket drive.