Skip to content

Building an arduino-based video game controller

I play a lot of Ker­bal Space Pro­gram because sand­box games in space is pret­ty much the great­est idea ever. So in an attempt to enhance the game and build some­thing pret­ty cool, I’ve spent the last sev­er­al months work­ing towards build­ing a con­sole to con­trol the game and dis­play teleme­try.

My final design is going to be fair­ly large, but to start with, I want­ed to knock up a few of the sim­pler pan­els. That gave me a chance to work out how to make the pan­el hard­ware, and get the basics sort­ed out for inter­fac­ing with the game through the KSPSe­ri­alIO plug­in. It’s tak­en quite a few months on and off to get this far, but this week I final­ly got the first few pan­els fin­ished and work­ing.

ksp control interfaceBasi­cal­ly, you take an Arduino Mega2560, a Mux Shield, and a bunch of switch­es and knobs and but­tons. And then you wire it all up and write some code to make it talk a sim­ple seri­al pro­to­col over USB. And then, hon­est­ly, you gig­gle glee­ful­ly while slid­ing a throt­tle lev­er up and down and watch­ing your rock­et change speed like mag­ic.

Now that I’ve sort­ed out most of the major obsta­cles for this, I’ve start­ed work­ing on addi­tion­al pan­els. There’s still a lot of impor­tant con­trols miss­ing. I’ve got some ideas for trans­la­tion­al RCS con­trols, in addi­tion to the Log­itech joy­stick I usu­al­ly use. And I’m almost ready to get some PCBs man­u­fac­tured for a num­ber of sev­en seg­ment LED dis­plays. In the mean­time, this is already pret­ty fun to mess around with.

I’ve got a few more pic­tures of the cur­rent setup in imgur. And, of course, every­thing is open source. My ksky repos­i­to­ry has all of the source code, pan­el design files, and a bunch of notes on how it’s put togeth­er.

Post a Comment

Your email is never published nor shared. Required fields are marked *