While working on SinCos encoders i made a quick test setup from an AS5115 encoder chip and a 2204 drone motor.
Once that worked well i got the idea to use it as a steering wheel and it actually is pretty high fidelity. About 1:8 to 1:10 scale and reacts insanely fast and precise. You feel the curbs and any movement. But if the torque gets cranked up too high the motor will definetly get very hot without cooling.
After the old powerstep based motor controller i improved the idea of an open source force feedback interface for direct drive wheels and other simulation interfaces with high torque demand in a modular way
OpenFFBoard consists of a simple STM32F407VG based usb interface with defined pins for SPI, buttons, leds, encoder input, CAN bus and more.
Take a look at the full development story on hackaday.io
Firmware and hardware design ressources are available on Github
A TMC4671 based motor driver which is also developed in this project as a reference can drive 2 phase steppers, 3 phase servos and DC motors at up to 60V DC and over 20A. It has an active anti backfeed diode circuit for use with power supplies and a brake resistor mosfet included. It also features highly accurate current sense amplifiers and voltage sense dividers. An onboard 5V DC converter can supply the hardware directly from the motor power supply.
The TMC4617 can also use external BISS-C and Magntek encoders by forwarding positions via SPI from the FFBoard since firmware 1.8. This causes a lot of additional load on the microcontroller so it is not ideal but it seems to work pretty well and reliably.
Additionally the ODrive and VESC via CAN and a PWM output with PPM, 0-50%-100% centered, pwm+dir and dual pwm (different pins per quadrant) are supported.
OHSC will be a hybrid stepper motor controller using foc techniques based on the modern powerstep01 driver and a powerful stm32f4 microcontroller.
The goal is to develop a stepper motor controller that can operate at stall conditions smoothly the same way expensive industrial servo motors can. A high resolution rotary encoder with sub microstep resolution is used to provide feedback.
The initial idea came from researching direct drive steering wheels for racing simulators. Servo motors are often used by simracing enthusiasts as they provide accurate and strong force feedback but also come with a hefty price tag. When sacrificing some smoothness a stepper motor can be bought for a fraction of the price but i had to realize that there are no cheap modern hybrid stepper drivers available at all that would be fit for the task.
Another use case of hybrid steppers can be in robotics and automation applications where projects like odrive already allow hobby 3-phase motors to be used. Sometimes a more powerful stepper might be the better or cheaper choice
The first goal is to design a driver able to create some smooth torque and a force feedback application based on usb hid/pid. This will certainly please the simracing community and hobbyists looking to get into force feedback for cheap.
The basic principle of the current prototype is a foc loop that permanently adjusts the current electrical position by sending bursts of step impulses in stepclock mode. This allows to prevent the motor from skipping full steps and always provide the maximum amount of torque.