Author Topic: Arduino Uno R3 as controller for keyboard project?  (Read 4935 times)

0 Members and 1 Guest are viewing this topic.

Offline sublime

  • Thread Starter
  • Posts: 87
Arduino Uno R3 as controller for keyboard project?
« on: Sun, 20 July 2014, 01:56:36 »
Are any of the libraries available for running keyboard firmware compatible with an Arduino Uno R3?

Offline Hundrakia

  • Posts: 172
  • Location: Northwest Territories, Canada
Re: Arduino Uno R3 as controller for keyboard project?
« Reply #1 on: Sun, 20 July 2014, 02:07:53 »
The Arduino Uno R3 doesn't work as a proper USB HID right out of the box, but there is a plethora of information out there about how to flash custom firmware onto the secondary chip, I am pretty certain using a DFU programmer. As for a full keyboard integration? I haven't come across a person or post that intrepid yet, although I imagine it'd just be registering keystroke events to input events. Good luck! If I am still on later i'll link you up to what I've found in the past.

Offline Hundrakia

  • Posts: 172
  • Location: Northwest Territories, Canada
Re: Arduino Uno R3 as controller for keyboard project?
« Reply #2 on: Sun, 20 July 2014, 02:13:51 »
http://pmb.neongrit.net/blog/?p=1
http://www.kevindemarco.com/2014/01/02/arduino-uno-as-a-usb-hid-interface/
I had those saved in my favorites I guess. Haha! Good luck and keep us posted!

Offline sublime

  • Thread Starter
  • Posts: 87
Re: Arduino Uno R3 as controller for keyboard project?
« Reply #3 on: Sun, 20 July 2014, 02:21:09 »
Neat, thanks for the information. If I go further I'll be sure to let everyone know of my findings.

Offline bcg

  • Posts: 112
Re: Arduino Uno R3 as controller for keyboard project?
« Reply #4 on: Sun, 20 July 2014, 02:37:53 »
Coincidentally I've been working on just that

I think the Arduino Uno R3 is actually a really interesting board for a keyboard project since it is easy to program and the two chips give it a lot of processing power to work with.  The disadvantage is the unnecessarily large size.

My plan is to program the 16u2 with a version of hasu's firmware that receives keyboard and mouse reports from the 328p and writes them out over USB.  One interesting thing about the 16u2 is that it has registers for direct drive of the D+ and D- USB pads, which I presume is to be able to support functionality such acting as a PS/2 device if hooked up to a PS/2 port via a passive adapter.  AFAIK the 32u4 that most people use does not support that.

Reprogramming the 16u2 means that you won't be able to upload new programs to the 328p via the USB so it might be worth it to get a ISP programmer or a FTDI cable to program the chip.
:wq!

Offline Hundrakia

  • Posts: 172
  • Location: Northwest Territories, Canada
Re: Arduino Uno R3 as controller for keyboard project?
« Reply #5 on: Sun, 20 July 2014, 02:40:09 »
You can flash back the normal serial firmware to upgrade the Arduino software, then flash the 16u2 HID firmware back on, that should save you getting an ISP programmer (at the cost of a little more time spent)