Accessing an SD card through a parallel port, just because

[Vinod] sent in a very cool build he says is somewhat of a ‘mad project’: he mounted an MMC and SD card under Linux using the parallel port on his computer. Even though parallel ports are getting rarer these days, we absolutely love [Vinod]’s dedication and willingness to dig around the Linux kernel.

The hardware portion of the build is very simple – just an SD/MMC header and a few resistors wired up to a parallel port. The software side of the hack gets pretty interesting with [Vinod] building a kernel module, something we rarely see on Hackaday.

We’d have to agree with [Vinod]’s ‘mad project’ sentiment, if only because of the terrible throughput of [Vinod]’s adapter; it takes him more than a minute to transfer a 1.5 MB file onto the SD card – terribly slow, to put it mildly. Nevertheless, we’ve got to respect [Vinod] for pushing the limits of uselessness and still building something cool in the process.

IR helicopter controller hacked into a Linux game pad

syma-linux-joystick

[Mike Kohn’s] Syma S107 helicopter wasn’t flying as well as it used to due to a broken gear, he figured he might as well find some use for the toy’s controller, since it was currently sitting around collecting dust. Having done a bunch of work with Syma IR protocols earlier this year, he decided it would be pretty easy to get the remote working as a game pad for his Linux desktop.

He patched an IR receiver into an MSP430 board, which decodes the incoming IR signals, sending them to his computer over a serial connection. [Mike] dug around in the Linux source for some good joystick driver code to borrow and found something that was close enough to work. After a bit of tweaking he loaded up his driver module and fired up Mame to give [Ms. Pacman] a try.

He says that the controller worked without much trouble, though as he discovered in previous projects, there are some quirks in the controller that make it somewhat less than convenient to use full time. Check out his site if you’re interested in taking a look at the code that he used to get things running.

Whistle controls for you home electronics

You know how to whistle don’t you? You just put your lips together and blow. But do you know how to make the electronics around you react to your whistled commands? Well [Befi] figured out a system that allows him to assign a whistled command to various home electronics.

He’s using a set of RF remote control outlets to switch power to various devices like a desk lap, or a turn table. The board you see in the image above is the remote control that came with the system, but that chip is an ATmega8 which he added to give round-about USB connectivity using a serial-to-USB converter. The technique is simple enough that we’d bet you can get this to work with an ATtiny2313 and the V-USB project but that’s another story.

The additional piece is the use of embedded Linux to detect and process whistled commands. In the video after the break [Befi] explains that he’s using a Dockstar along with a microphone to capture audio input. It uses a Fast Fourier transform algorithm to process the clip and pushes commands to the remote control after processing is complete. [Read more…]

Building the worst Linux PC ever

Linux is generally considered the go-to OS for under powered computers. Wanting to challenge the preconceived notion that Linux requires ‘a computer made in the last 20 years,’ [Dmitry] built the worst Linux PC ever around a simple 8-bit microcontroller.

The ATMega1284p [Dmitry] used doesn’t have a lot to offer as far as RAM and storage goes; just 16 kilobytes of SRAM and a paltry 128 kilobytes of Flash storage. While this may be voluminous in the embedded world, it’s peanuts compared to the gigabytes of RAM and hard drive space on even a low-end netbook. To solve this problem, [Dmitry] threw an antique 30-pin RAM SIMM at the problem. It’s wired up directly to the microcontroller, as is the 1 Gigabyte SD card that serves as the PC’s hard drive.

Linux requires a 32-bit CPU and a memory management unit, something the puny microcontroller doesn’t have. For [Dmitry], the best course of action was emulating an ARM processor on an AVR. We’re not sure if we’re dealing with genius or madness here, but it did prove to be a valuable learning exercise in writing a modular ARM emulator.

How fast is it? [Dmitry] tells us it takes two hours to boot up to a bash prompt, and four more to load up Ubuntu and login. If you want a Megahertz rating, good luck; the effective clock speed is about 6.5 kilohertz. While the worst Linux PC ever won’t win any races, its simple construction puts it within the reach of even the klutziest of hardware builders; the entire device is just a microcontroller, RAM, SD card, a few resistors, and some wire.

If you’d like to build your own worst Linux PC, [Dmitry] has the firmware and disk image available to download. If you want to watch the time-lapse of this thing booting, check out the video after the break.

[Read more…]

The first Raspberry Pi build is a MAME machine

The Raspberry Pi was launched nearly a month ago, but these wonderful cheap single-board computers are still on their way from China to the workbenches of hackers and builders around the globe. Although they haven’t shipped yet, plenty of people are chomping at the bit to do something useful with the Raspi. [Nicholas] figured he should hit the ground running, so he emulated a Raspberry Pi to get everything ready for the MAME machine he’ll build when his new toy arrives.

[Nick] found a Raspi VirtualBox image on the official Raspberry Pi forums. After getting a web browser up and running with a few console keystrokes, he turned his attention to a MAME emulator. It’s a relatively simple install (although it did take six hours to compile), but we’re sure the Raspi will be featured in quite a few MAME builds so it was time well spent.

Sure, the Raspberry Pi you ordered a month ago is probably on a container ship in the middle of the ocean right now, but that doesn’t mean you can’t start planning your build. Just load up a VirtualBox image, check out a few of the tutorials, and you’re ready to go.

Android rolled into Linux kernel 3.3

The latest version of the Linux kernel was just released on Sunday, and there’s a little bonus which we think is worth considering. It seems that many changes from Android made their way into version 3.3 of the Linux kernel.

This may not sound like much, but it’s a great example of the power of open source. Since device specific changes based on the Linux kernel must be released under the same license, hardware manufactures are compelled to release their sources. But normally this would only help you if you have the expertise to slog through their code and find the parts that you need for whatever purpose you have in mind. But with these changes being rolled into the main kernel you should be able to run your own distributions on Android devices relatively easy; hardware support is already in there. Of course there’s still a lot of expertise that goes into cross-compiling an OS.

This may have the potential to open up old Android hardware as a development platform. Think of how Chumby hardware has been used in robotics projects. Now what if your old Bluetooth and WiFi enable cellphone had a stock kernel that was as easy and open to use in your own projects?

[Thanks Adam]