Idea: Force Feedback Flight Yoke with BLDC / ODrive

Hi dear odrivers,
today I get first time in touch with this site and recognized already few features - certainly not all - of this marvelous control. I like to share and discuss an idea of a Force Feedback Flight Yoke for my flightsimulator and I am keen on your comments!

So the idea ist pretty simple: I like to use a pretty cheap brushless motor like mentioned and recommended already here in the community and drive a simple tooth belt to which something like a sledge is fixed. Further the sledge is the base plate for my flight yoke pitch.

I read continuously the simulator rudder control forces by my simulator (X-Plane btw) via UDP into my ESP8266 microcontroller.
My goal is, to use the values to generate a virtual force value and write it from my microcontroller in a simple as possible manner to the oDrive which drives the BLDC motor:

How it works - in theory:

For instance, the flight yoke is in neutral, fully force balanced position - nothing happens with the motor, means (almost) zero current which leads to lowest power consumption and low thermal stress.

When I pull back the flight yoke in normal flying conditions the rudder forcees increases by physics of airstream turbulences on my fligth plane rudder - so I like to ‘tell’ ODrive to increase the current of the BLDC which rotates immediately and try to pull fromward me the sledge back to the neutral position (sorry for my doom english grammar) - this behavior then should give me the force feed back.
While release the flight yoke more and more back to the neutral position the force will be reduced also - until the yoke is back in neutral position an the movement of the BLDC ends.
I am not sure with calling this also an electromechanical generated spring behavior…

Will this generally be possible with oDrive?

In theory a simple, pretty cheap BLDC motor has a pretty high cogging - will this be eleminated/reduced at least by ODrive?

Is the current sensing sensitive enough to detect my applied force or will I need an additional load cell?

More questions than answers, sorry. Now its up to you to comment this idea, many thanks for your contributions in advance, warm regard Dirk

Hi Dirk,

With the new UART interface you should be able to easily interface a microcontroller to the ODrive, and indeed feed it current commands, which should in theory translate linearly to torque and hence force on your yoke. So you can stream force feedbacks from X-Plane in this way.

I think things that might get in your way is cogging torque, uneven back-emf of the motor (hence torque-per-current over rotor angle), and friction.
However all of these can be measured and hence compensated, though the software for that is not there yet.

The current sensors should be accurate to about 0.2% of full scale, so I would imagine that is fine for this kind of application. Maybe design in some space for a load cell if required, and add it later if it turns out to be useful?

Many Thanks!
You pointed me into the right direction,
warm regards Dirk

update:
finally yesterday I ordered a ODrive (24V version) from UK stock. I’ll keep you informed when I receive the board and do the first tests with two hoverboard motors.

cheers

Dirk

1 Like

First tests with ODrive - governed by ESP32, and Hoverboard motor are looking very promising!
I’d like to share my ESP32 code here.

But how to attach a *.zip file?

as a start, cheers,

Dirk

Perhaps put your code on github and share a link here?