While there are several commercial toy grade FFB steering wheels and some higher end simulator grade producs these are very expensive and and are often not moddable or come with their own expensive ecosystem.
It makes sense to focus this project on a simple open source force feedback interface as this is the part where the community lacks a good and open solution.
Therefore the main goal will be to develop a universal FFB controller (Open FFBoard).
It will provide a modular architecture and interfaces with multiple motor drivers and a reference motor driver board based on the TMC4671.
The FFBoard is just an interface for USB HID, encoders, buttons and pedals. It can interface with almost any sensor or motor.
The software is modifiable for different motor drivers and control outputs.
Also supports 2 axis joysticks with the ODrive.
Currently supported motor drivers:
- FFBoard TMC4671
- ODrive (CAN)
- VESC (CAN)
- PWM (centered, pwm+dir, RC ppm, dual PWM)
- Granite Simplemotion (Ioni,Argon, original Simucube 1)
Currently supported encoders:
- ABN incremental (PWM)
- BISS-C (PWM, TMC, requires external transceivers to SPI3)
- MT6825 (PWM, TMC)
- Encoders supported by VESC and ODrive
- SinCos (TMC)
Hi, i kind of stumbled on your project as i am currently making one myself.
I am using a stm32f4 discovery board, a Xnucleo powerstep01 for control, a hybrid 2 phase stepper that consumes a maximum of 6A per phase, with a 1000PPR encoder.
I am trying to adapt the software from simucube instead of MMOS, as it is supposed to work better, but it seems i still have a very long way to go.
I am also building a 8 speeds H shifter that will be connected to the board.
For now i'd really like to see the thing moving. I will surely follow your example and use the TMC driver when it is released, but for now i'd like to get the first step, with the powerstep.
It does not matter If it fries, or is not good enough. It will motivate me to continue ...
Since you abandoned the powerstep solution, would it be possible to get a look at your code ?
Thanks :)