SimploFOC in a Low cost Simulator Stepper motor Wheel driver

Hi Guys and first of all thanks for the outstanding solution.
One year ago I started by my self a development of a Very Low Cost Sim racing wheel since I´m in Brazil and the situation are very critical here as well the Brazilian Real went down so much that everything that is imported is unbelievable expensive for us.
I tried a solution with a Toshiba newest Stepper driver TB67S128FTG that after a lot of work it worked but to make it smooth I had to use a very high micro stepping (128) and the noise is unbelievable loud. Impossible to play with this noise.
My alternative is use SimpleFOC since I used a Nucleo64-f446RE to read the PWM signal and match it with how much I have to move, with how strong torque and with a proportional speed.
I saw that the SimpleFOC was hardly based in BLDC/SERVO oriented but in the last upgrade Stepper and current control was available. BLDC and Servo Motor are out of question since here they are expensive as well.
Now the questions that I didn´t find in any place:
1 - Is the BTS7960 bridge with current sensor in IS pin working in the in-line implementation since the Datasheet says that it 100% proportional to motor current? Did someone already test it?
2 - Is there any limitation regarding stepper implementation that is not available in the documentation.

The docs have a step by step configuration but there aren´t examples to see a practical implementation with a stepper. May be I will be the first.

If BTS7960 is working well I will buy 2 to replace the the Toshiba Driver and rewrite the software in Platformio.

The alternative is use TI C2000 LAUNCHXL-F28069M or similar with the 3 phases BOOSTXL-3PHGANINV. This option I will have to move from a HW that I used a long time (STM32) for a new one and a new IDE and libraries as well.

Thanks in advanced,


Both the current sensing and the stepper support are fairly new in SimpleFOC.

Steppers are being actively used by different people, this is working well as far as I can tell (didn’t try myself).
Current sensing is very new, and chances are there will be some “debugging” to do, but the SimpleFOC PowerShield being developed by @Antun_Skuric uses the BTN8982 - another NovaLithic Infineon Half-Bridge IC. So I think the current sensing is in fact currently best adapted to these chips.

My opinion is that it should work for you.

Hey guys,

Ok so, steppers will work with BTNs for sure.
Now in terms of current sensing, steppers are not supported out of the box at the moment. The reason is mostly because the benefits of current control for steppers is very limited. current sensing is mostly intended for high velocities and there lie the biggest benefits and stepper motors will not be able to achieve them really.

The good news is that in most cases you do not really need the current sensing to control the torque of the BLDC or Stepper motor. For lower velocities you can do it very well using the voltage control. Which is implemented in the library and works pretty well so far :smiley:
The other good news is that we will implement the full current control for the stepper motors as well. It is not a big change but since there isnt really many drivers that would support it we have put it on a side a bit.

Now in terms of BTNs and current sensing using the IS pin.
They do have current sening interated and they use the High-side shunt reisitors which means that they can be used for the FOC and I hope we will be able to support the high-side current sensing soon. However, we do not support neither low-side or high side for the moment.
However there is a but. BTNs were not desiged to contorl BLDC motors or to be used specifically for FOC or current control applicaitons. And there fore I am no 100% sure that he IS pin gives us the bipolar current measurement. From my initial tests it think that BTNs only give you the magnitude of the current passing through the IC and not the direction. If this is true then we will not be able to use the IS pin for the current sensing. I’ll test this soon I hope and I’ll let you guys know.
Or if someone else has the time I’d love to hear your thoughts.

In the PowerShield board I am stepping away from BTN’s IS pins and I’ve added inline current sensing which works great and is already supported in the library. For the stepper motors you’d need 4BTNs and 2 inline current senors (one for each phase). You can look into the PowerShield for reference.

Hi Antun. Thank you for a very quick answer.
I´m think to give up of use stepper and try to find an ebike 48V BDLC here for a reasonable price.
Force feedback is a different application where torque control in hard locked situation since the player is holding the wheel.
I saw your PowerShield board and it has an easy compatible header with my nucleo64-F446RE so it could a good solution. I will need to replace my PS 48vDC with a 40VDC.
Is there any idea when it will be available to order full assembled?
BLDCSHIELDIFX007 would be an option as well.

I will keep on stepper since I can not find a good BLDC with 12Nm for a good price here.
Let me know if you want a person to test and help to implement the current control over the stepper.
I know that It´s a very specific solution and you have to drive your effort to implement it.
As soon I could understood PowerShield boardwill drive stepper as well. Is it correct?
I can give a try with BTS7960 board since it is cheap and I already use for DC control.


Why didn’t you try hoverboard BLDC motors ? They are incredibly cheap (people throw away hoverboards now !)
Many attempts to make DD wheels with these motors are working and are said to produce 12Nm torque