USB is convenient and that makes it desirable in many many projects. [Simon Inns] has the process down and is sharing it with his recent PIC based USB tutorial. Prompted by requests for help on the matter after having published a post about his Commodore 64 interface, he set out to detail the particulars when it comes to using the PIC 18F family as USB input devices. This example uses a PIC 18F4550 with the circuit built on a breadboard. There’s not much required here, an oscillator, a few passives, and a USB B connector. The magic really happens in the code. Take a look at this well-written guide and give it a try with your next project.
Don’t need USB? [Simon's] game hack, the Ultimate Simon is always worth another look too.