[Sprite_TM]‘s Keyboard Plays Snake

Hackaday Prize judge, hacker extraordinaire, and generally awesome dude [Sprite_TM] spends a lot of time at his computer, and that means a lot of time typing on his keyboard. He recently picked up a board with the latest fad in the world of keyboards, a board with individually addressable LEDs. He took this board to work and a colleague jokingly said, ‘You’ve had this keyboard for 24 hours now, and it has a bunch of LEDs and some arrow keys. I’m disappointed you haven’t got Snake running on it yet.” Thus began the quest to put the one game found on all Nokia phones on a keyboard.

The keyboard in question is a Coolermaster Quickfire Rapid-I, a board that’s marketed as having an ARM Cortex CPU. Pulling apart the board, [Sprite] found a bunch of MX Browns, some LEDs, and a 72MHz ARM Cortex-M3 with 127k of Flash and 32k of RAM. That’s an incredible amount of processing power for a keyboard, and after finding the SWD port, [Sprite] attempted to dump the Flash. The security bit was set. There was another way, however.

Coolermaster is actively working on the firmware, killing bugs, adding lighting modes, and putting all these updates on their website. The firmware updater is distributed as an executable with US and EU versions; the EU version has another key. Figuring the only difference between these versions would be the firmware itself, [Sprite] got his hands on both versions, did a binary diff, and found only one 16k block of data at the end of the file was different. There’s the firmware. It was XOR encrypted, but that’s obvious if you know what to look for.

flashdata The firmware wasn’t complete, though; there were jumps to places outside the code [Sprite] had and a large block looked corrupted. There’s another thing you can do with an executable file: run it. With USBPcap running in the background while executing the firmware updater, [Sprite] could read exactly what was happening when the keyboard was updating. With a small executable that gets around the weirdness of the updater, [Sprite] had a backup copy of the keyboard’s firmware. Even if he bricked the keyboard, he could always bring it back to a stock state. It was time to program Snake.

The first part of writing new firmware was finding a place that had some Flash and RAM to store the new code. This wasn’t hard; there was 64k of Flash free and 28K of unused RAM. The calls to the Snake routine were modified from the variables the original firmware had. If, for example, the original keyboard had a call to change the PWM, [Sprite] could change that to the Snake routine.

Snake is fun, but with a huge, powerful ARM in a device that people will just plug into their keyboard, there’s a lot more you can do with a hacked keyboard. Keyloggers and a BadUSB are extremely possible, especially with firmware that can be updated from a computer. To counter that, [Sprite] added the requirement for a physical condition in order to enter Flash mode. Now, the firmware will only update for about 10 seconds after pressing the fn+f key combination.

There’s more to playing Snake on a keyboard; Sprite has also written a new lighting mode, a fluid simulation thingy that will surely annoy anyone who can’t touch type. You can see the videos of that below.

Continue reading “[Sprite_TM]‘s Keyboard Plays Snake”

We’re Hiring

The Hackaday crew has done some amazing things this year, and we’re finding ourselves a bit stretched. Want to lend a hand while making some extra dough to plow back into your projects? This is a work-from-home (or wherever you like) position that affords you the opportunity to guide what we cover on Hackaday.com. We hire writers for their judgement, which helps keep our subject matter fresh. But don’t worry, we do have a very active tips line from which many of our story leads come.

Contributors are hired as private contractors and paid for each post. You should have the technical expertise to understand the projects you write about, and a passion for the wide range of topics we feature. If you’re interested, please email our jobs line and include:

  • Details about your background (education, employment, etc.) that make you a valuable addition to the team
  • Links to your blog/project posts/etc. which have been published on the Internet
  • One example post written in the voice of Hackaday. Include a banner image, 150 words, the link to the project, and any in-links to related and relevant Hackaday features.

Words of encouragement

First off, we won’t be discussing compensation publicly. Want to know what we pay? Send in a successful application and we’ll talk about it.

Secondly, don’t pass up this opportunity. I watched one of these posts go by and waited another year before I saw the next one and applied. Now I’m running the place. Our team is made up of avid readers. If you’re passionate about the stuff you read here and you have a few hours each week to do some writing you need to apply now!

So what are you waiting for? Ladies and Gentlemen, start your applications!

Artisanal Vacuum Tubes: Hackaday Shows You How

Homemade Vacuum Tube
Homemade Vacuum Tube

About a decade ago I started a strange little journey in my free time that cut a path across electronics manufacturing from over the last century. One morning I decided to find out how the little glowing glass bottles we sometimes call electron tubes worked. Not knowing any better I simply picked up an old copy of the Thomas Register. For those of you generally under 40 that was our version of Google, and resembled a set of 10 yellow pages.

I started calling companies listed under “Electron Tube Manufacturers” until I got a voice on the other end. Most of the numbers would ring to the familiar “this number is no longer in service” message, but in one lucky case I found I was talking to a Mrs. Roni Elsbury, nee Ulmer of M.U. Inc. Her company is one of the only remaining firms still engaged in the production of traditional style vacuum tubes in the U.S. Ever since then I have enjoyed occasional journeys down to her facility to assist her in maintenance of the equipment, work on tooling, and help to solve little engineering challenges that keep this very artisanal process alive. It did not take too many of these trips to realize that this could be distilled down to some very basic tools and processes that could be reproduced in your average garage and that positive, all be it rudimentary results could be had with information widely available on the Internet.

Continue reading “Artisanal Vacuum Tubes: Hackaday Shows You How”

Interview With A Printer

The Hackaday European tour continues, this time in Prague with Josef Průša (Google translate), core developer in the RepRap project, feature at all the Maker Faires and cons, and creator of his namesake, the Prusa Mendel and i3 printers.

[Prusa]‘s involvement with the RepRap project started with a RepRap Mendel, the second iteration of RepRap hardware, but the first popular and easy to build version. [Jo] found the Mendel rather difficult to build, so he loaded OpenSCAD and started to design his own version of the hardware. This version became the de facto standard RepRap for a few years, with many inspired by and derivative printers making their way to hackerspaces and workshops around the world.

The first Prusa printer, derived from the RepRap Mendel.
The first Prusa printer, derived from the RepRap Mendel.

A few years ago, [Prusa] was one of the first to make a complete break with the traditional ‘threaded rod and nut’ construction of RepRaps with the introduction of the Prusa i3. This was the first model that had a metal plate as the frame, another feature that would be seen in dozens of other models. It’s not something that was without controversy, either; using a metal plate for the frame doesn’t allow for as much self-replication, something that’s a core value of the RepRap project. That didn’t matter to the community; the Prusa i3 or a similar design is the third most popular printer on 3Dhubs.

The first Prusa printer showing off its Makerbot heritage
The first Prusa printer showing off its Makerbot heritage

What’s the future of the Prusa name? There is an i4 in the works, and I’m pretty sure that’s all I can tell you. Someone already bought the Prusai4 domain, so there may be a name change.

In the interview below, [Prusa] goes over his involvement with the RepRap project, his business, what he considers to be the latest advances in 3D printing for the past year, what the worst things about the 3D printing scene is (it’s Kickstarter), the state of the RepRap project, and thoughts on SLS, DLP, and SLA printing technologies. Video below.

Continue reading “Interview With A Printer”

Thalmic Labs Shuts Down Free Developer Access Update: It’s Back Again

The Thalmic Myo is an electronic arm band with an IMU and myoelectric sensors, able to measure the orientation and muscle movements of an arm. This device has uses ranging from prosthetics to Minority Report-style user interfaces. Thalmic is also a Y Combinator company, with $15 million in funding and tech press gushing over the possible uses of this futuristic device. Truly, a remarkable story for the future of user interfaces and pseudo-medical devices that can get around most FDA regulations.

A few months ago, Thalmic released a firmware update to the Myo that blocks raw access to the myoelectric sensors. Anyone wanting to develop for the Myo now needs to submit an application and pay Thalmic and their investors a pound of flesh – up to $5000 for academic institutions. The current version of the firmware only provides access to IMU data and ‘gestures’ – not the raw muscle data that would be invaluable when researching RSI detection, amputee prosthetics, or a hundred other ideas floating around the Thalmic forums.

Thalmic started their company with the idea that an open SDK would be best for the community, with access to the raw sensor data available in all but the latest version of the firmware. A few firmware revisions ago, Thalmic removed access to this raw data, breaking a number of open source projects that would be used for researchers or anyone experimenting with the Thalmic Myo.  Luckily, someone smart enough to look at version numbers has come up with an open library to read the raw sensor data. It works well, and the official position of Thalmic is that raw sensor data will be unavailable in the future. If you want to develop something with the Myo, this library just saved your butt.

Thalmic will have an official statement on access to raw sensor data soon.

Quick aside, but if you want to see how nearly every form of media is crooked, try submitting this to Hacker News and look at the Thalmic investors. Edit: don’t bother, we’re blacklisted or something.

Update: Thalmic has updated their policy, and will be releasing a firmware version that gives access to the raw EMG sensor data later on. The reasons for getting rid of the raw sensor data is twofold:

  • Battery life. Streaming raw data out of the armband takes a lot of power. Apparently figuring out ‘gestures’ on the uC and sending those saves power.
  • User experience. EMG data differs from person to person and is hard to interpret.


The Future of the Internet of Things

When buying anything, you’re going to have a choice: good, fast, or cheap. Pick any two. A plumber will fix a drain good and fast, but it won’t be cheap. The skeezy guy you can call will fix a drain fast and cheap, but it won’t be good.

Such it is with radios. You can have long-range (good), high bandwidth (fast), or a low price (cheap). Pick any two. The Internet of Things demands a cheap, long-range radio module, but until now this really hasn’t existed. At Electronica last week, Microchip demoed their IoT solution, the LoRa. This module has a 15km (rural) or ~3km (heavy urban) range, works for a year on two AAA batteries, and is very cheap. Bandwidth? That’s crap, but you’re not streaming videos to your shoe.

Continue reading “The Future of the Internet of Things”

SatNOGS Wins the 2014 Hackaday Prize

The Grand Prize winner of the 2014 Hackaday Prize is SatNOGs. The project is a thrilling example of the benefits of a connected world. It opens up the use of satellite data to a much wider range of humanity by providing plans to build satellite tracking stations, and a protocol and framework to share the satellite data with those that cannot afford, or lack the skills to build their own tracking station. The hardware itself is based on readily available materials, commodity electronics, and just a bit of 3D printing.

The awarding of the Grand Prize caps off six-months of productive competition which started in April with a first round reaching to more than 800 entries. Once the field had been narrowed and sent on to our judges the narrowed it to just 50 projects vying for a trip into space (the grand prize), industrial-grade 3D printer and milling machine, a trip to Akihabara electronics district in Japan, and team skydiving.

Congratulations to all 5 top winners


SatNOGS – Grand Prize


You already know this but such an accomplishment is well worth mentioning again!

ChipWhisperer – Second Prize


The ChipWhisperer is a hardware security testing platform that allows developers to explore side-band and glitch vulnerabilities in their hardware projects. The existing technologies for this type of testing are prohibitively expensive for most products. The availability of this tool plays a dual role of helping to inform developers of these potential attack vectors, and allowing them to do some level of testing for them.

PortableSDR – Third Prize


The form and function of the PortableSDR move forward both Software Defined Radio and Ham. The SDR aspect fully removes the need to use a computer. The wireless functions provided can be called a modernization of portable amateur radio hardware.

Open Source Science Tricorder – Fourth Prize


Inspired by the future-tech item found in the Star Trek franchise, the Open Source Science Tricorder uses currently available technology to produce a handheld collection of sensors. The design provides modularity so that the available sensors can be customized based on need. Equally importantly, the user interface gives meaning to the data being measured, and allows it to be uploaded, graphed, and otherwise manipulated on the Internet.

ramanPi – Fifth Prize


Raman Spectroscopy is used to help determine what molucules are found in test samples. One example would be determining possible contaminants in drinking water. These tools are expensive and the ramanPi project will mean more labs (at University or otherwise) as well as citizen scientists will be able to build their own spectrometer. One particularly interesting aspect of the project is the parametric 3D printer file used for mounting the machine’s optics. The use of this technique means that the design can easily be adapted for different types of lenses.

2015 Hackaday Prize


With the great success of these five projects, and the potential that Open Design has to move the world forward, we hope to host another round of The Hackaday Prize in 2015. When you’re done congratulating the winners in the comments below, let us know what you think the subject of the next challenge should be.

Thank you to our sponsor


Hackaday would like to thank the generosity of our sponsor, Supplyframe Inc., who supported the cost of all prizes. Supplyframe is Hackaday’s parent company and their values are closely aligned with our own.