Introduction: Osu! Keyboard With Arduino Uno

Picture of Osu! Keyboard With Arduino Uno

Hello. I wanted to get a Osu!Keyboard for the game Osu! for quite a while now. There are already keyboards for Osu! like thnikk's Osu! Keypads or Noodlefighter's nono Keyboard.

I have finally decided to get a keyboard but thnikk charges between $21 for his basic and $36 for his RGB version plus $2 for keycaps. The nono keyboard is $40 plus $12 shipping from the Osu! store.

I liked thnikk's keyboard for his simplistic design, and I figured out that he uses Teensy LC from his website for his RGB version witch is like an Arduino and even uses the same IDE as an Arduino.I have an Arduino Uno laying around that I am not using and decided to use it for this project.

Currently the code only turns on an LED when the button it pushed. I may put an RGB LED in it but for now this is fine.

Step 1: List of Material

Picture of List of Material


  1. Key Switches You can use any switches you want. I got 9 Gaterons for $5.99 but you can also use Cherry MX.
  2. Wire I am going to use breadboard male to female wire but you can use servo extenders or solder wires onto the switches. I received 40 pcs for $1.18 on ebay.
  3. KeyCaps I purchased the WASD Keycap Sampler for $5 plus $2.54 shipping.
  4. Plastic Box I found a plastic box laying around the house that I can use.
  5. Arduino I am using a Uno but if you use a Leonardo, Duo, or Teensy as they have built in USB support.
  6. LED (optional)


  1. Cutters
  2. Soldering Iron if you prefer it.

Total Cost = $14.71

Step 2: Programming an Arduino Uno

First we are going to upload the arduino sketch like we normally would. Feel free to modify to code to how you like it.

Step 3: Uploading Keyboard Firmware for AtMega 16u2

Follow the instructions from to upload the Arduino-keyboard-0.3.hex from to the secondary microcontroller. Incase you want to reprogram your arduino again, you will need to either reflash the 16u2 with this firmware from Arduino or flash the AtMega 328p chip with an ISP like the usbasp.

Step 4: Build the Case

Picture of Build the Case

I took the box and cut two hole for buttons in the middle of the box. I made the holes smaller than the buttons and filed out the hole to make them fix perfectly.

I screwed the arduino onto the bottom of the box to hold it in place.

I soldered the jumper wire to the buttons because the female end does not fit the pins on the button.


rakosi2 (author)2016-09-04

I did put in RGB lighting with the WS2128B a long time ago with lighting affects. If people want it then I can make another instructables

YSYB (author)rakosi22017-03-29

i am interested in the code and would maybe get these leds so could you maybe show me the code per direct message or make another post

VocaloidFC (author)2017-12-23

Can you tell me where to solder wire and switch?

Richuuu (author)2016-09-03

i prefer arduino mini/micro for this

rakosi2 (author)Richuuu2016-09-04

I would preferred to use a Teensy board as there is built in usb host support and is small but I do not own a small board and had the uno laying around doing nothing. I did not want to buy another board just for this project. I only have an arduino uno and a duo and the duo is too large and way overkill.

cuttreetop (author)2015-11-09

Try with a attyny85 chip.

DIY Hacks and How Tos (author)2015-11-09

Great custom keyboard. I have done similar things to make foot switches for gaming.

About This Instructable




Bio: I love to watch Anime and play Osu!
More by rakosi2:Osu! Keyboard with Arduino Uno
Add instructable to: