Building a Better Kerbal Space Program Controller

If you have even the most passing interest in space and what it takes to get there, you’ve probably already played Kerbal Space Program (KSP). If you haven’t, then you should set aside about ten hours today to go check that out real quick. Don’t worry, Hackaday will still be here when you get back. Right now you need to focus on getting those rockets built and establishing a network of communication satellites so you can get out of low orbit.

For those of you who’ve played the game (or are joining us again after playing KSP for the prescribed 10, 12, 16 hours), you’ll know that the humble computer keyboard is not very well suited to jaunts through space. You really want a joystick and throttle at the absolute minimum for accurate maneuvers, but even you’ll be spending plenty of time back on the keyboard to operate the craft’s various systems. If you want the ultimate KSP control setup, you’ll need to follow in the footsteps of [Hugo Peeters] and build your own. Luckily for us, he’s written up an exceptionally well detailed guide on building KSP controllers that should prove useful even if you don’t want to clone his.

Wiring switches and buttons to the Arduino.

At the most basic level, building a KSP controller consists of hooking a bunch of switches and buttons to a microcontroller such as the Arduino or Teensy, and converting those to USB HID key presses that the game understands. This works fine up to a point, but is limited because it’s only a one-way method of communication. For his controller, [Hugo] forked KSPSerialIO, a plugin for KSP that allows bidirectional communication between the game and your controller, enabling things like digital readouts of speed and fuel levels on the controller’s panel.

Once the logistics of how you’ll talk to the game are settled, the rest is really up to the individual. The first step in building your own KSP controller is deciding what you want it to do. Are you looking to fly planes? Control a rover? Maybe you just want a master control panel for your space station. There’s a whole lot of things you can build in KSP, and the layout, inputs, and displays on your controller should ideally reflect your play style.

[Hugo] went with a fairly general purpose panel, but did spend quite a bit of extra time to get some slick LED bar graphs hooked up to display resource levels of different systems on his craft. That’s an extra step that isn’t strictly required for a build like this, but once you see it, you’re going to have a hard time not wanting to include it on your own panel. He also went through the expense of having the panel and case professionally laser cut and etched, which definitely gives it a polished feel.

We’ve covered quite a number of custom KSP controllers here at Hackaday. The overlap between KSP players and hackers seems unusually high, but of course a game that lets you build and fly contraptions of your own design does sound like something that would be right up our alley.

24 thoughts on “Building a Better Kerbal Space Program Controller

  1. Does anyone know if it’s possible to stream a particular view from the spacecraft location in KSP? I’ve been thinking for a while how cool it could be to build a full cockpit simulator, and use a pair of monitors as the “windows”. I’d have to be able to stream the view from two different angles to do it, and I’m not certain if anyone’s figured out a way to do that yet.

    1. they’re a mod that adds cameras you can place all over the ship, and another supports displaying those in the cockpit on some ships. so it’s reasonable to think you could.

      1. you can render to texture but im not sure you can move that texture over the network or whatever for rendering on another device. im thinking one of those screens connected to an esp8266 to receive those textures over wifi (which should be fast enough for a decent frame rate). you still have to get them off the video card somehow and im not sure if unity has that capability.

  2. As a kid, my best friend’s Dad mounted all sorts of switches, indicator lights, levers, dials, buttons etc etc onto a pegboard. We would play on that thing for hours, and usually it was the control panel of a spacecraft. My friend’s Dad was about 50 years ahead of his time, apparently.

  3. Safety covers over switches aren’t really in the true spirit of KSP. And it confuses the kerbals. They think lifting the lid IS activating the switch. Personally I just like two bare wires I can twist together when required.

    1. In KSP you design your own craft. Then you can launch it and hope it won’t explode, crash or explode, crash and explode some more. And there are other things to consider: starting mass, available DeltaV, communications range, parachutes, heat shields, energy production and storage, RCS thrusters, fuel, etc. There are also mods that add more parts, new game mechanics, more realism, less realism, new planets, new solar systems, better graphics, and other things…
      If you want to learn more, then check out Youtube channels of Scott Manley and quill18…

  4. It would be great to have one of these, but then since it’s a Unity creation, the inevitable bugs creep into any game after a while and you either get FPS on the floor or your creations exploding for no reason with their chunks somehow breaking the speed of light as they leave the Kerbal system behind…. the investment just doesn’t seem worth it.

  5. I like space, but from all the mention and pictures and talk of kerbal I never got interested.

    That’s an odd base color for those controls BTW, somehow it doesn’t seem to mix well, especially the slider and those switches above it seem a bad mix with it.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

w

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.