Arduino as USB Human Input Device?

I have an old IBM Model F keyboard, which uses an XT protocol. I also have a Model M, using the AT or PS/2 protocol. Neither of these are directly supported by any modern computers. I would love to use either of these keyboards on a modern-day machine. Being a cheap college student, I'd love to use my Arduino and learn more about the protocols while doing so.

After doing a little research, (and please correct me if I'm wrong) the Arduino cannot directly act as a USB-HID. At least any Arduinos with the FTDI chip. I'm not 100% sure about the Uno, but that's why I'm asking. I have come across V-USB from Objective Development, but I'm not sure how easy it would be to use that. It definitely requires a little bit more hardware than is currently available on the standard Arduino.

Is this even feasible? Does the Uno allow more control over USB, enough to make an Arduino an HID? Thanks!

Yes it can be done by reprogramming the chip on the Uno. But even better the Arduino Leonardo is just about to be launched and that will support USB HID out of the box, so just hang on for that.

Where are the official Leonardo details? How about IDE 1.00 release?


Where are the official Leonardo details?

It's on the blog and as such will scroll down the page in time but at the moment it is here:- As I said it is not out yet.

How about IDE 1.00 release?

This will not affect the issue because it is new hardware in the USB / Serial chip (more program space) that makes it possible to have a HID interface and the normal Arduino interface at the same time.