[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”

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

satnogs-rendering

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

ChipWhisperer – Second Prize

KONICA MINOLTA DIGITAL CAMERA

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

hardware-in-use

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

tricorder-interface

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

ramanPi

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

thp-background

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

sf-sponsor-graphic

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.

Hackaday Printing Press Upgrade

There comes a time when your movable type becomes so over-used that you no longer get a legible print off of the printing press. For months now we’ve been at work on a new site design that maintains the essence of Hackaday while ejecting the 10-year-old dregs of the site. With each small success we’ve actually ruined ourselves on viewing the old design. It is with great relief that we unveil a site design built specifically for Hackaday’s needs.

The most notable change is in the content of our landing page. For ten years, loading Hackaday.com resulted in the most recent blog posts. The blog concept is proven, but provides little opportunity to highlight quality original content and information about upcoming events. We have tried the use of “sticky” posts but honestly I find them somewhat annoying. The solution to this is not immediately apparent, but I feel we have found the most efficient solution to our complex set of needs..

We have a lot of community members who participate in Hackaday in numerous ways. Changes found in this design are driven by that fact. The landing page will, from this point forward, be a somewhat more persistent collection of notable content from the blog, our community site (hackaday.io), as well as news regarding live events, store features, contest highlights, and more. Those hard-core fans — a label I also assign to myself — will find the same reading experience as always on the new blog URL: hackaday.com/blog.

Aesthetically, we hope that all will agree the new design far supersedes the old. There was a lot to fix, and the work of the Hackaday crew who designed and implemented this new interface is truly amazing. I hope you will take the time to leave a positive comment about their work. As with any major transition, there will be some bumps in the road. Right now most of our sidebar widgets have not been migrated but that and any other problems will be fixed soon.

In this design we strived to highlight the title and image of each post to immediately convey the core concepts of the projects shown here. The author by-line and comment count remain core to the presentation of the articles, and our link style continues to be immediately apparent in the body of each article. I think we have far surpassed the readability of the comments section, in addition to the content itself. We knew we could rebuilt it… we have the technology… long live articles worth reading.

UPDATE: We are working very hard to fix all the parts that don’t look quite right. Thanks for your patience!

UPDATE 2: Infinite scrolling isn’t a feature, it’s a regression. On our test server all the blog listings were paginated just like always. When our host, WordPress VIP, pushed live the infinite scrolling manifested itself. We’ve filed a ticket with them and are hoping for a solution shortly.

UPDATE 3: Infinite scrolling has now been fixed and the blog layout now paginates. The mouse-over zoom effect has been removed. Slideshow speed has been adjusted and if you hover you mouse over a feature it will pause the scrolling.

An Interview With Tesla Battery Hacker [wk057]

We covered [wk057] and his Tesla Model S battery teardown back in September. Since then we had some time to catch up with him, and ask a few questions.

You’ve mentioned that you have a (non hacked) Tesla Model S. What do you think of the car?

It’s the best car I’ve ever driven or owned, period. Not to get too into it, but, I love it. I’ve put almost 20,000 miles on it already in under a year and I have no real complaints. Software feature requests… but no complaints. After almost a year, multiple 1700-miles-in-a-weekend trips, and an overall great experience… I can never go back to a gas vehicle after this. It would be like going back to horses and buggies.

A salvage Tesla Lithium battery had to be expensive compared to a Lead Acid setup. What made you go with the Tesla?

Actually, if you consider that the Model S battery is already pre-setup as a high-capacity pack, contains the wiring to do so, and the modules are much more energy and power dense than any lead acid battery bank, it’s actually almost cheaper than a comparable lead acid bank and all the trimmings.

I haven’t officially weighed them, but the modules from the Model S battery are roughly 80 lbs. 80 lbs for a 5.3 kWh battery is around 15 lbs per kWh, which is impressive. For comparison, a decent lead acid battery will have a little over 1 kWh (of low-rate discharge capacity) and weigh almost the same.

Also, the Tesla pack is much more powerful than a lead acid bank of the same capacity.
Generally a lead acid battery bank would have a capacity that would only be realized with slow discharges, so, 1/20C. Much over that and you sacrifice capacity for power. 1/20C for an 85kWh pack is only 4.25kW, barely enough for a central air unit and some lights without losing capacity.

Now the Tesla pack can be discharged (based on how it does so in the vehicle) at up to 3.75C for short periods, and at 1/2C continuously without really affecting the overall capacity of the pack. That means I can run 10x more power than lead acid without a loss in overall charge capacity. Leads to a much more flexible battery solution since the loads will, in reality, always be so low that this will not even come into play with the Tesla pack, but would almost always be a factor with lead acid.

Charging is also somewhat better with the Tesla battery. Charge a lead acid battery at a 1/2C and it will boil. Charge the Tesla pack at 1/2C (42kW) and it might warm up a few degrees. Oh, and the charging losses at high rates are much less than lead acid also.
Overall, without continuing to yack about the technical aspects, it’s just a much better battery, takes up less space, weighs less, and has more power available.

There are likely decent arguments for other solutions, but the rest aside, this one won out because it was definitely more interesting.

Click past the break to read the rest of our interview with [wk057]!

Continue reading “An Interview With Tesla Battery Hacker [wk057]”