Kerbal Space Program – Science Checklist

UPDATE: I just uploaded Revision 2.  See bottom of post for changes.

Page 1 of 5.

Here’s what it looks like — get the HTML, PDF, or XLSX to see the real thing.

I decided it’s time to get serious about my pretend space exploration (Kerbal Space Program).  I wanted a way to keep track of the various science experiments I’d done, and the built-in interface is so-so about tracking that in one easy to read place.

So I spent today building a script to generate a giant Kerbal Science Checklist!

I basically scraped a lot of rules from the Kerbal Space Program wiki and coded them into a bunch of data structures in Python, then had the script iterate them to generate a giant HTML document.  I wanted to print mine, so I tweaked the output HTML to pagebreak cleanly, and turned it into a PDF.  I also found that it copy pasted into Excel without too much trouble.

The science points shown indicate the base value for returning the results safely to Kerbin (as opposed to transmitting them), and they don’t include the subsequent value of repeating the experiment.  They’re probably not perfect…I didn’t test the math very much.

Updated 29 June 2014 — changes in revision 2:

  • I noticed that the HTML download didn’t have the images — fixed.
  • I’ve been told that you can splash down on Eve, Laythe, and even some non-water biomes of Kerbin.  I’ve added “Splashed” rows for Eve and Laythe.  I didn’t add a separate “Splashed” section for Kerbin, since it would be very long, and few people probably care about splashing down in a puddle in the badlands.
  • I removed the invalid “Surface” row for Kerbol (the sun).
  • Fixed seismic scans in water — they’re invalid.

Download revision 2 here:


Cheap PCB turns 10-pin AVR programmer to 6-pin

wowI’ve been using this cheap $4 AVR programmer to upload Arduino code to bare AVR chips.  The only issue is that it uses the 10-pin programmer interface, which takes up a lot of PCB real estate on my projects.  Instead, I wanted to use the more efficient 6-pin connector standard.

I looked on eBay for a cheap 6-pin programmer, but they don’t appear to exist.  All I find are the same programmer I have, but with an awful, gigantic, ugly adapter that’s designed to go on the project side:

ugly adapter2
Fig.1: Lame adapter for losers.

So you run a giant fatty 10-pin ribbon cable and have this thing jutting out of your project.  That suuuuucks.

Instead, I developed a tiny (half inch square) PCB designed to accept the programmer on one side and a 6-pin ribbon cable on the other.  Because it’s so small, it’s crazy cheap to fab with OSH Park ($1.60 for three), and the headers cost virtually nothing.  Now I can snap it into my programmer and use 6-pin cables, or pop it out and use 10.

I over-engineered mine, hot-gluing the exposed conductors and rounding the corners, but really, none of that’s necessary.

You can get the Eagle design files on GitHub, or order one from OSH park.


TinyBuddy: A host board for the ATTINY84

IMG_1902bI’m going to be making a large 7-segment display clock later, and I needed a control board for it.  Rather than purpose build something, I set out to make a generalized board I could reuse with various projects based on the Arduino-compatrible ATtiny84 microcontroller.

The result is the TinyBuddy: a general host PCB for the ATtiny84. Features two buttons (plus reset), a power LED, activity LED, 16MHz crystal for accurate timekeeping, and USB or DC barrel jack for power. The pins are one-to-one correlated to the pins of the bare chip, so it’s a drop in replacement on a breadboard.  While the prototype (pictured here) used micro-USB for power, I designed a second revision that uses entirely through-hole parts for easy construction. It can be fabricated for about $7 through OSH Park!

You can find the Eagle design files for it on github, or order it directly from OSH Park (Rev1 with micro USB, Rev2 with barrel jack).

IMG_1900bSome build history after the break.  Continue reading