Any geek worth their salt dreams of hacking together some components and making their own spy gear. We've done it since we were 10 and we're still doing it now. However, Samy Kamkar (@samykamkar) has done exactly that.
KeySweeper is a stealthy Arduino-based device, camouflaged as a functioning USB wall charger, that wirelessly and passively sniffs, decrypts, logs and reports back (over GSM) all keystrokes from any Microsoft wireless keyboard in the vicinity.
Samy gives a great background on the project and then a step by step narrative on how he setup a simple Arduino to sniff a wireless keyboard. Putting aside the debate on right vs wrong, Samy's breakdown of the project should be a template for how any hardware hacking project should be described. Samy gives the steps, the logic and the background information on how he made nearly every step. Even if you don't decide to build one yourself (and why wouldn't you), going through Samy's steps and methodology on the project is worth the read.
Project details: KeySweeper
Project Source Code: KeySweeper (GitHub)