I want to make completely on my own a keyboard with maximum 6 keys with a USB connection. Can someone tell me what microcontroller should I buy and what specification should I look for?

  • \$\begingroup\$ Any microcontroller with USB capability will do. You can easily do this with an Arduino, or the ATMega CPU its based on. Low speed USB can also be done entirely in firmware in chips as small as an ATTiny. A single ATTiny85 (8 pin package) can do a 4 button HID with USB trivially, and with some cleverness 8 buttons would certainly be possible. \$\endgroup\$
    – RBerteig
    May 8, 2014 at 22:27
  • 1
    \$\begingroup\$ My answer to a related (but not duplicate!) question has some links. Look at the other answers too. \$\endgroup\$
    – RBerteig
    May 8, 2014 at 22:29
  • \$\begingroup\$ We have no idea what your skills or experience are. For some this would be a trivial project, for others it could takes months and go nowhere. \$\endgroup\$
    – David
    May 8, 2014 at 22:35
  • \$\begingroup\$ I am knew with this projects.I know a little about MIPS and circuits but i want to get in this.I want the lowest price and arduino rises it and wont let me learn how to program microcontrollers. \$\endgroup\$
    – konsalex
    May 8, 2014 at 22:38
  • 1
    \$\begingroup\$ I hacked these two projects into a 4 key audio controller for my PC. There are several inspiring projects on that site, most with low component count and friendly priced devices. \$\endgroup\$
    – jippie
    May 9, 2014 at 5:30

1 Answer 1


It really depends on your experience with microcontrollers and also budget you have.
If cost is no issue, any USB capable MCU will do.
If you want to do it as cheap as possible, you can use some AVR MCUs even without HW USB. You can use this library VUSB, which creates SW USB on your AVR device.
You can make your keybord electronics below 5$ with such setup.

Here are some articles about using this library:

I'm sure there are similar libraries for other MCU's from other manufacturers.

  • \$\begingroup\$ I think i am gonna try this.And do you know any good online book to understand microcontrollers cause i dont know what are all this pins doing. \$\endgroup\$
    – konsalex
    May 9, 2014 at 10:06

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.