Monday, November 30, 2015

Revisiting my racing simulator rig

It has been a while since my last post!  That's because work and life have, in general, prevented me from making stuff.  However, over this Thanksgiving holiday Steam had a great sale on games, so I picked up a bunch of them.  The most exciting one was project CARS, which is a racing simulator.  Well, it turns out that 2+ years ago, I built a racing sim and never wrote about it in my blog.

The frame I built is based on one from someone named "Mr. Burns".  His post is no longer online, unfortunately, so I cannot give credit to him other than reference his alias.  It was very helpful in getting me to the point where I was just attacking the build and creating on the fly, rather than evaluating the 10 million different ways I could build a seat frame.  Thanks, Mr. Burns!



For my particular design, I broke up the frame into two sections.  The first part was the steering wheel and monitor mount, and the second was Mr. Burns' seat mount.  This separation allows me to adjust the seat distance for taller players.  The current design is really inconvenient because I have to loosen up t-nuts to separate the frames.  The steering wheel / monitor frame is also not very rigid and stable.

The rear frame is composed of a cheap APR seat (purchased from Amazon), mounted to a frame, which is then mounted on top of another frame through a shock absorber.  Most builders suggested using tie rods to prevent the seat from twisting about the shock absorber, so I added them.  The seat motion is generated by two SCN5 linear actuators, which are connected from the rear of the bottom frame to the rear of the seat frame.  This allows the simulator to generate pitch and roll motions.

The magic is in all in the software, called x-sim.  For non-commercial use, you can download it for free from x-sim.de.  The mastermind behind the software, sirnoname, authors plugins for each of the available racing sims.  These plugins basically hook into the game and can peek at memory locations that represent the car's telemetry data.  Using this data and fancy math, he's able to convert the data into physical motion.  It's brilliant, and for project CARS it works really well.  When I first built this simulator, I only played it with iRacing and Dirt 3, and never spent the time to tune the seat feedback properly.  Well, with project CARS, I am quite happy with the results without having changed a single setting.  :)

In other news, I'm also going to be helping out with a Maker's elective at school, so I will be posting again shortly about a fun little project I'm going to try to complete for the kids (and possibly for kids in other schools, if it works well enough!).