IMU Based Head Tracker

I have gotten pretty far with my project to develop an IMU-based head tracker to be used to control the POV in a flight simulator or game. The Arduino receives the IMU data just fine and sends it to my main program what processes the IMU data into new values to be sent to the simulator. Although the software isn’t finished, it is ready to be tested in the simulator.

All I need to do now is to send the pitch, roll, and yaw signals to the sim via the USB port. And that’s the problem. After a pretty exhaustive search I can’t seem to find the generic serial commands that any game that supports head tracking will accept?

Any suggestions? You help will be greatly appreciated.

Chevelle

Buy a game with a head tracker and reverse engineer the data stream. Or ask the game manufacturer for the details.

Here are a couple of head mouse projects taking advantage of the 32u4 built-in USB hardware emulating a USB mouse.

https://duino4projects.com/head-mouse-game-controller-disability-aid-using-arduino/

https://create.arduino.cc/projecthub/Gabry295/head-mouse-with-mpu6050-and-arduino-micro-d42878?f=1

gbafamily: Here are a couple of head mouse projects taking advantage of the 32u4 built-in USB hardware emulating a USB mouse.

https://duino4projects.com/head-mouse-game-controller-disability-aid-using-arduino/

https://create.arduino.cc/projecthub/Gabry295/head-mouse-with-mpu6050-and-arduino-micro-d42878?f=1

Thanks for those links but they are great examples of the problem I am trying to over come. In both those examples, the IMU is used to control Mouse.X and Mouse.Y. That would not be difficult to do with what I have so far.

What I need are the commands that move the POV of the user in more complex games and sims. I will need at least six commands to control the position of the users head. Just to pick a syntax, POV.Pitch, POV.Roll, POV.Yaw, POV.X, POV.Y, and POC.Z.

I have no idea how commercial head trackers work. If you are not able to find any other method, consider a Teensy 3/LC is able to emulate a USB Xbox 360 controller. If an Xbox controller can make the game or sim do the desired POV operations, you may be able to make a Teensy send the same Xbox USB commands. This way, the game/sim does not need to be modified to support the head tracker.

https://github.com/dmadison/MSF-XINPUT