Embedded STM32 BLDC Control Development
Budget / Salary$250–750
TypeFreelance project
LocationRemote
Posted1 hour ago
I have already built and assembled the electronics for a new line of ALMAZ-CNC engraving machines: an STM32-based control board driving a TI DRV8323RS three-phase stage and reading rotor position from an AS5047P magnetic encoder over SPI. What I still need is production-ready firmware—and that is where your expertise comes in.
The goal is a closed-loop, Field-Oriented Control implementation that can deliver both precise positioning and very fast bidirectional swings in the 200–300 Hz range. Because the machine relies on high-frequency oscillating motion to achieve clean, chatter-free cuts, every millisecond of latency or overshoot matters. You will be writing C/C++ code for the STM32, bringing up the FOC algorithm, integrating the SPI encoder feedback, and then tuning current, speed, and position loops until the motor meets those demanding dynamics.
I expect an engineer already comfortable with the STM32 toolchain, DRV83xx gate drivers, and low-level debugging on real hardware. You should be able to probe phase currents, capture traces, hunt down glitches, and iterate quickly on control-law parameters—essential skills when precise position control, high-frequency oscillation, and system debugging all converge in the same task.
The hardware is on my bench and ready for you to remote in (via ST-Link, scope screenshots, and live video) or to receive a development kit if you prefer working locally. Once the firmware reaches repeatable performance on a single axis, we will roll your work into our multi-axis controller, so clean, well-documented code and a concise tuning procedure are part of the deliverable.
Acceptance criteria
• Closed-loop FOC locks and tracks position with ±0.1° accuracy across the full speed range
• Continuous oscillation at 200–300 Hz with stable amplitude and no thermal runaway after 30 min burn-in
• Source code, CubeMX (or equivalent) project files, and a short tuning guide committed to our Git repo
• Brief performance report including scope captures of current, velocity, and position loops
If we hit those milestones smoothly, there is plenty more ahead—additional axes, power-stage variants, and eventually sensor-fusion work for our gantry. Let’s get this motor humming and see where the collaboration takes us.
The goal is a closed-loop, Field-Oriented Control implementation that can deliver both precise positioning and very fast bidirectional swings in the 200–300 Hz range. Because the machine relies on high-frequency oscillating motion to achieve clean, chatter-free cuts, every millisecond of latency or overshoot matters. You will be writing C/C++ code for the STM32, bringing up the FOC algorithm, integrating the SPI encoder feedback, and then tuning current, speed, and position loops until the motor meets those demanding dynamics.
I expect an engineer already comfortable with the STM32 toolchain, DRV83xx gate drivers, and low-level debugging on real hardware. You should be able to probe phase currents, capture traces, hunt down glitches, and iterate quickly on control-law parameters—essential skills when precise position control, high-frequency oscillation, and system debugging all converge in the same task.
The hardware is on my bench and ready for you to remote in (via ST-Link, scope screenshots, and live video) or to receive a development kit if you prefer working locally. Once the firmware reaches repeatable performance on a single axis, we will roll your work into our multi-axis controller, so clean, well-documented code and a concise tuning procedure are part of the deliverable.
Acceptance criteria
• Closed-loop FOC locks and tracks position with ±0.1° accuracy across the full speed range
• Continuous oscillation at 200–300 Hz with stable amplitude and no thermal runaway after 30 min burn-in
• Source code, CubeMX (or equivalent) project files, and a short tuning guide committed to our Git repo
• Brief performance report including scope captures of current, velocity, and position loops
If we hit those milestones smoothly, there is plenty more ahead—additional axes, power-stage variants, and eventually sensor-fusion work for our gantry. Let’s get this motor humming and see where the collaboration takes us.
Apply on Freelancer →
Project sourced from Freelancer.com. Applications happen directly on the original platform — we never collect your data.