I have started some time ago my idea of building a force feedback yoke, or generally speaking, a force feedback device.
I have studied some documentation, which is unbelievably poor and difficult to find, and start looking at some examples, as I never worked with USB -and I can’t say I missed anything.
So I came out with a test platform, someone might remember from another discussion where I participated, I don’t use AVR and all the Arduino stuff, but I work with PIC. So I got a demo board for one of the PIC with USB support, a couple of demo board for motor drivers, an LCD to get some debugging information (when you stop the program, the PC disconnects the USB and everything stops…), and then I had the idea to use two motorized potentiometers to simulate the yoke, as I needed something real to see the effect of the movement and implement all the effects.
I have made a couple of simple video a few days ago where I was testing the constant force effect, you can see them here
I made some progress since then and now also spring, friction and damping are working.
I am still working on the periodic waveform effects, but I wanted to give it a try with MSFS2020 and XPForce… and it worked well!
The reason why I’m writing now is that I’m a bit stuck and maybe someone can give me some indication.
The tool I’m using to generate the effect, called ForceTest, is very limited and it is missing a number of effects. I could not find anything else online, and even this one was difficult to find. Since from the documentation of USB.org is impossible to understand what really arrives to the other end of the USB cable and how the different effects are specified (I have just discovered by sniffing the USB packets that the effect “grooves” is just the effect “sine” with some fixed parameters, for example, but it’s not written anywhere…), I need to have something on the PC that I can use to send the request of the effects and see what I’m getting.
Is anyone aware of a tool of this kind?
Just for curiosity, it’s still very much work in progress and at the moment I’m more focused on the USB implementation, but I have modified the descriptor to have 16 bit resolution on axis, I plan to include also a number of buttons and switches for any use, and I’m thinking also to add a separated module for the throttle control. But before that I need to get the USB part done and also put together some prototype for the mechanics.
I have been reading that people normally suggests brushless motors for force feedback design, but I’m a bit reluctant. Torque control on normal DC motor is fairly easy while on brushless is more complicated, and also I’m not sure if a brushless that can’t move as it’s commanded will lose the synchronization with the phases like a stepper motor and lose torque. I don’t know, I need to investigate more on that anyway.
But if this works, the project can easily be adapted to yokes, sticks or any type of control, possibly even dual commands. That would be interesting, actually.
Well, I hope someone can give me some hint about this testing program I need, that is the most urgent part. I’ll see if I can make some new short video of the other effects.