NES Controller To USB Gamepad

Regular Hackaday reader [Osgeld] is at it again with this USB conversionĀ for an NES controller. This is a ubiquitous hack that we started seeing very early on, sometimes involving an adapter kit, and other times including things like a thumb drive and USB hub. But this time around is truly a bare-bones version. He’s using an Arduino but it’s really just an AVR ATmega168 running the bootloader. We’d wager this can be done with an ATmega8 just as easily. Grab a couple of diodes (we never seem to have the 3.6v zener diodes around when we need them), a couple caps and resistors, a crystal and you’re in business. The hack wires each button to a pin and implements a keyboard HID that can be mapped for any purpose you desire.

Working With The AT90USBKey

The Genearic HID tool is meant as an easy way to create your own human interface devices. The project has the added benefit of showing us how to hack the hardware on the AT90USBKey developement board. The AVR-based device, which we saw used to make an SNES cartridge reader, comes in at just over $30 but with a few caveats. First, the breakout pads for the pins are not 0.1″ pitch and require some creative soldering to get at them easily. But the walk through also covers converting the board to run at 5v when in USB host mode, and altering the populated components to reclaim pins on the AT90USB1287 chip. The fun isn’t limited to this board, there’s also a home brew alternative based around the same chip.

[Thanks Juan]

Nexus One As USB Host

[youtube=http://www.youtube.com/watch?v=3-bLOc1qnMM]

[Sven Killig] Has managed to get his Nexus One into USB host mode. This allows him to plug in all kinds of peripherals such as web cams, keyboards, even a displaylink unit. This is fantastic as it really opens up the possibilities of this device. You can see that he now has an amazingly functional and portable system running. He mentions that it is pretty stable unless he runs big programs, we wonder if he has added any RAM to it. It is worth noting that the Droid can be USB host as well.

USB Hub Used For In System Programming

Did you order that 4-port USB hub because it was almost free but now it’s just sitting in your junk box? Why not turn it into an In System Programmer for AVR chips? [Paul] came up with HUB ISP as an answer to the chicken-or-egg problem we’ve seen with other diy programmers. It uses the data wires from four different USB cables to program AVR chips, enlisting the help of a 74HC00 NAND gate along the way. You do not need to have a programmed microcontroller as all the magic happens on the software end of things. The one caveat is that [Paul’s] method currently only works on Linux machines.

HID Crafting With A PIC And A Joystick

[Amr Bekhit] converted his gameport joystick to use as a USB joystick. Much like a universal USB joystick interface, this uses an additional microcontroller to talk to the serial bus while monitoring the controls on the stick. [Amr’s] discussion about creating HID descriptors is clear and easy to understand. What he’s laid out can be translated to any custom HID your heart desires. Give it a try with that old peripheral that’s been gathering dust in the corner.

Mass Storage Business Card

Just snap off the corners and this business card can be used as a mass storage device. Well sort of. The tab left over has four traces on the back to make it USB compatible. The PIC 24FJ64GB002 microcontroller on the card registers as a storage device and launches [Ramiro’s] resume and a cover letter loaded as an HTML file. He’s made it as useful as possible by including access to the SPI and I2C bus connections but he’s also included some firmware to act as a data logger or an oscilloscope. At about 5 euros a piece you won’t be distributing these willy-nilly but it’s not too much more than handing out breakout boards with your name all over them.

DB9 Form Factor USB-RS232 Replacement

If you’re attached to that favorite DB-9 interfaced device you should look into this part. FTDI is selling a USB-RS232 adapter as a replacement for DB-9 connectors. They come with USB male or female connections depending on the application and have the same serial footprint and pinout to which you’re accustomed. Using converter cables is just fine but this simplicity requires a few minutes of desoldering, rather than redesigning, etching, and populating a board in order to give that older design built-in USB connectivity.

[Thanks Juan]