community forum

thnikk's Osu! Keypads [Development]

Total Posts
show more
Thanks for clarifying that :D
Topic Starter
Update 7/13

Hello everyone! Since I haven't posted in a while, I thought I'd give a status report.

To start off, I've gotten another job and had less time to do development stuff. There is a reason for this, however, and I'm very close to getting a 3d printer now! For any of you that are curious, I was planning on getting the Printrbot Simple originally, but there Simple v2 comes out this month and I'm looking at that now.

3D Printer
So I've been talking about it a lot, but what does this mean for me any my shop?

Custom parts - This is the biggest thing for me. I'm still working on improving my Project Diva controller by adding things like the PS4 touchpad and analog sticks, but these are hard to add. Being able to make custom brackets would make this dead simple and inexpensive. Who knows what else I could make, the sky is the limit.

Custom cases - This I'm about 50/50 on. I don't want to compromise the quality of my keypads since the cases I've been using the same cases for a year and a half and they've been great and look pretty nice, but being able to print them would give me 100% flexibility of design and lighten my workload. I'll have to print one first to see how it looks, but this would be especially helpful for the 4k keypad since that's a lot of cutting and my hands aren't nearly as precise as a machine. This is the other reason I haven't finished the 4k keypad, since it would be a lot of work to go through all of the effort of taking pictures, writing descriptions, updating my website, taking shipping weight, etc. if I 'm just going to end up changing it in a month. It could also help with slimming them down a bit and helping mounting buttons internally so I don't have to use the panel mount side buttons anymore. Sorry to anyone that's been waiting, but I want to make the best thing I can. If you are still interested in a 4k keypad, PM me and we can work something out.
This may seem like a stupid question but what is the weight of the keyboard. As if it is light it could be easily knocked around.
Topic Starter
Update 7/27/16

Keypad status
More parts are on the way and the shop will be back up on August 1st.

3D Printer
I got my 3d printer and it's great! I was finally able to finish my project diva controller:

I'm very excited for future projects and the potential for future keypads. I'll be posting more 3d printed stuff on twitter so follow me if you're interested.

reeman123 wrote:

This may seem like a stupid question but what is the weight of the keyboard. As if it is light it could be easily knocked around.
It weighs about 1 ounce. The keypad uses tape (scotch restickable tabs) to stick to your desk and keep it from moving around, and can be cleaned when it gets dirty. I am thinking about trying something new soon, though.
The 4k one interests me if you can offer the rgbw version.
The only caveat I feel is the programmability. When not playing osu!, I'd love to have it act as a small macropad.
Topic Starter

Jau wrote:

The 4k one interests me if you can offer the rgbw version.
The only caveat I feel is the programmability. When not playing osu!, I'd love to have it act as a small macropad.
I haven't completely decided yet, but I'm leaning towards only offering an RGBW version. All of my keypads are completely reprogrammable. My remapping utility lets you remap the keys to any character-printing key, but you could set up macros pretty easily as long as you're willing to get your feet wet with Arduino programming a little bit. I could also help you out with it.

Update 8/23/16

Hello everyone! I know I haven't posted in a while and my shop is currently down, but this has been one of the busiest times in all of my time making keypads.

Thread changes
I've been told by moderation that my thread poses an issue in its current state.
I respect the decision of the osu staff. I'm not sure if this thread will still be around in a week, but I have been told that I can have a thread for development (so basically exactly what this thread is right now) but no promotion or anything of the sort. It's a slight shift, but I may need to make a new thread, no big deal. From now on, no sale related conversation will take place in the thread and links to my Etsy shop will be removed. Just visit my twitter instead ;)

As always, if you do decide to buy from me, consider contributing to the development of the game by becoming a supporter.

3D Printing

I have a new family!

So after about a year, I was finally able to pick up not just one but TWO printers! The Printrbot Play is on the left and the Printrbot Simple is on the right. It took a couple weeks of tweaking, but I'm finally satisfied with both the designs I've come up with and the print quality of the two printers. Now I can introduce what all of my effort of the past two months has gone into (and the project diva controller, but that was just for fun.)

New 2K keypad
Dimensions: 32mm x 52.5mm x 15mm

I'm really happy with how the new cutouts came out.

Some new tape I'm trying and a single screw reliably holds the top and bottom together.

Here it is next to a print from two weeks ago. Amazing what a bed plate and some belt tightening can do.

And here it is next to my current keypads. It's smaller in every dimension!

New 4K keypad
Dimensions: 32mm x 92mm x 15mm

No keycaps

Smooth as a baby's bottom

Pros and Cons of using 3D printed cases:

No more cutting by hand
Machine precision
Cheaper (sort of)
Complete control over dimensions
Complete control over components (no more big panel-mount side buttons)
Very easy to change

Looks. That's about it. Most aspects are within my control, but they will never look as good as a molded part. Honestly though, I think they're looking pretty good right now and it doesn't bother me.
Time, prints take a while.

I'm hoping to have these models available by the beginning of September. There will be one last tiny batch of my current models since I still have some parts, so it'll be your last chance to pick one up until they're gone forever. I'm currently waiting on some more parts to come in, so the shop will be down for the next week.
The Gambler

Thnikk wrote:

Thou hast finally joineth teh 4k race xD.

Also pretty sure you can print batches of the same parts, so that should save on time.
Topic Starter
Update 9/13/16

Hello everyone! Since the thread is shifting more towards a more changelog-style format, I'll be trying to conform to that here. The new keypads are up on the shop and there is one addition to the lineup while one has been taken away.

All models...
now use 3D printed cases. It's been a log time coming, but they're finally here.
are smaller! 65 to 52 mm, 35 to 32 mm, and 20 to 15 mm.
have more accurate cutouts for the switches, micro-USB port, and side button.
use tactile switches instead of the previous panel-mount buttons. These are a bit lower profile and also give tactile feedback wen pressed.
use "suction tape" instead of the previous scotch restickable tabs. In my experience so far it's been a but more resilient and sticks to the keyboard side much better.

All models EXCEPT for the LED model...

can have their switches opened.

No model specific updates, but we can now welcome...

The 4K Keypad!

Thank you to everyone for their patience. I've been wanting to make this for a while now and was finally able to do it with my 3D printers.

Side Projects

There are also some other things I've been working on. Here is the Baka Mouse (name subject to change) and the 1K Keypad.

The Baka Mouse (name subject to change) is intended to imitate the trackpoint experience found on an IBM Thinkpad (no, not Lenovo with their clickpad.) It's meant to sit below your keyboard centered under your spacebar, so you can type and move your cursor without having to move your right hand (or left if you're a lefty) away from the keyboard. This is especially useful when programming or for anything keyboard intensive. It's a bit too tall right now and the buttons are too small, but I've been wanting to make this for about a year now so it's nice to finally have a prototype.

The 1K Keypad was made for someone who wanted to use my keypads for a cognitive science experiment. It doesn't exactly fit for osu, but I designed it so I may as well put it up on the shop! I'm still working out the kinks but that will be coming soon.

I also painted and reprinted some of the parts for my Project Diva controller. Not exactly sure where I'm going with this, but I'm happy to have it to play Future Tone. I do plan on adding some additional lighting effects with the analog sticks soon, but it's kind of low priority at this point.

For more info and updates, please follow me on twitter! [link]
The Gambler

Thnikk wrote:

The 4K Keypad!
That 4K keypad looks *muwah* fantastic!!.. Sigh
Wow the 4k keypad looks really good! Nice job on this!
Topic Starter
Update 11/21/16
Hello everyone! It's been a while since the last update so I just wanted to check in and say all is well. Sales have been good and though I haven't really talked much of new products lately, I definitely feel as though I'm continuing to refine both my 3D modeling/printing and programming skills. Speaking of no new products lately...

Macro Keypad

This was such a spur of the moment project. I got two similar requests -- an arrow key keypad and a 2x3 macro keypad. I had already modeled the arrow keypad when I got the macro request, so I thought one design would work fine for both and there's no downside to getting two extra keys.

The big feature here is that each key can be mapped to a key and up to two modifiers. That means you can use it to play osu or use as WASD or arrow keys, use it in conjunction with autohotkey and open programs or change your volume, the sky is the limit. This is definitely less of an osu specific keypad, but also allows for some more freedom that my 2k keypads don't offer if you'd like additional functionality. You could easily have it set up for z, x, smoke, up, down, and escape. You could even make one of the keys a modifier and reassign the keys in the game to take advantage of that.

Hopefully coming in early December!

Switch Opening Kit
Not much to say here but the parts are on the way! Hopefully also coming in early December. It will come with tweezers, a tool to keep one side of the switch open, and 2-6 switches.

Other Projects
The baka mouse is currently on hiatus as I've had more interesting projects lately. Getting natural-feeling mouse movement was much more difficult than I initially expected and I might be more interested in looking for an alternative to the PSP analog stick all togther. It is still something that I'd like to have though so it's definitely on the to-do list.

The 1K keypad is a great example of something that takes no time at all to work on which is the perfect excuse for not working on it. It's definitely not a priority though and I'd rather spend my time working on the macro keypad for now.

I've wanted an official page for documentation for a while, and I think ReadTheDocs is perfect. I can update everything easily though GitHub and I don't have to waste my time trying to make it look clean and simple, so I can spend more time writing documentation. Check it out here!


With the code I've written for the macro keypad (the 4K too), I think I'm getting much better at writing clean and concise code. Since all of my keypads use the same microcontroller, there's no reason that I couldn't go back and add this serial remapper to all of the other models. While I'm at it, I may rewrite all of the code or edit it if it's simple enough.

Gateron Switches

As some of you have noticed, I'm currently out of Gateron clears. Not a huge problem, just buy some more, right?

Unfortunately, the switches I use for my keypads are no longer being made. The normal Gaterons with the milky white case have been replaced with black bottom and clear tops. These are 100% incompatible with my current setup, but that doesn't mean the RGB keypads are going away. In fact, with the macro keypad, they might be getting an addition to the family.

But if I can't get more of these switches, how am I going to continue? I'll use the SMD LED switches, of course! These have small notches in the bottom that are meant to accommodate surface mount LEDs on a PCB. The only downside is that they may only fit 3535 LEDs instead of the 5050s I use which limits me to RGB. It's not too much of a problem since I only switched to RGBW for simpler code and there's little to no aesthetic benefit, but I'll have to change the code a little bit which I was planning on doing anyway. I'll be getting the switches in later this week (hopefully) and try go get this figured out.

The Gambler wrote:

That 4K keypad looks *muwah* fantastic!!.. Sigh

Cawub wrote:

Wow the 4k keypad looks really good! Nice job on this!
Thanks guys! I'm really happy with how it came out :)
The Gambler

Thnikk wrote:

I've wanted an official page for documentation for a while, and I think ReadTheDocs is perfect. I can update everything easily though GitHub and I don't have to waste my time trying to make it look clean and simple, so I can spend more time writing documentation. Check it out here!


With the code I've written for the macro keypad (the 4K too), I think I'm getting much better at writing clean and concise code. Since all of my keypads use the same microcontroller, there's no reason that I couldn't go back and add this serial remapper to all of the other models. While I'm at it, I may rewrite all of the code or edit it if it's simple enough.
Sigh. my noobius maximus in code is showing... I'll somehow adopt your code to the teensy, one day.
Have been using mine (Basic Keypad/Cherry MX Red) for half a month, so far I'm very satisfied and it gets the job done precisely. Would highly recommend!! 8-)
Topic Starter
Update 12/20/16
Happy holidays everyone! I've been meaning to post an update for a while so I have a lot to post about now.

Switch Changing Kit

I actually wrote this entire post before I remembered that I never even posted about this. The switch changing kit is up on the shop and the guide is up on!

Quick Start Guide
I realize that some things aren't totally 100% clear with my keypads so I wanted to make a quickstart guide for customers to use right when they get their keypad. There are still some things I want to add but it's also available on

Stock Update
Gateron clears and browns are back in stock!

Gateron SMD Switches
As I mentioned in my previous post, Gateron is no longer making their milky-white switches that I've been using for my RGB keypads for the past year and a half. I was initially worried when I couldn't find them from my normal suppliers anymore, but my worries were washed away when I saw Gateron's SMD switches.

These are meant to be used on a PCB with SMD LEDs (hence the name,) but they still work just as well. The only problem is that they only (easily) fit 3535 SMD LEDs and I was using 5050 LEDs which are considerably larger, which leads us to the next update...

Small Hardware Update
Both the RGB and 4K keypads have moved back to RGB LEDs. The RGBW were nice for programming, but the white LED didn't really provide any visual benefit. Whites could get brighter, but the rainbow effect of using the 3 LEDs in an RGB LED is severely mitigated in my keypads because the light is diffused, so it's very difficult if not impossible to even see the individual LEDs when they are white.

I also rewrote all of the code to work perfectly with them so it's no problem. The code is even backwards (forwards?) compatible with RGBW LEDs so you can still use it on your keypads if you have an older model! This is yet another segue...

Small Feature Change
The 4K Keypad has had a slight change made to the LED modes to make it more consistent with the RGB model. The modes are now:

Cycle: Smoothly transitions from red to green to blue and back to red (same as the RGB keypad)
Reactive: Turns white on keypress and goes from white to red to green to blue to off on release
Push-off: Inverted Reactive
Custom: Set the color of each LED individually
BPM: Color of all LEDs change depending on how many times the keys are pressed per second.
Taiko: Taiko color scheme (blue orange orange blue)

Gone is the cascading cycle because I thought it looked too distracting and the per-key BPS because why would you want that? If anyone DOES prefer the old modes, let me know and I can hook you up.

Big Code Update
Since I had to rewrite the code for the RGB and 4K models, I thought it would be nice to make it more worthwhile and invest a bit of time into a feature I've been wanting to expand upon for a while now. Along with some cleanup and uniformity, all models now feature the new and improved serial remapper. This allows each face key to be mapped to up to 3 buttons so you can use it as a macro key. The side button cannot be remapped and I don't plan on changing that since it's a multipurpose button.

There are still some limitations, though. It can still only do printable characters and !#^+ are excluded since those are used for the modifier keys. I am planning on releasing an update that makes it a little simpler to change these manually through the code as a temporary fix, but I would like to have it working 100% soon. Eventually. I'll try.

All code is available on my GitHub: [link]
If you'd like to update the code on your keypad, you can follow my reprogramming guide here: [link]

Side Projects
It's the holiday season and I've unfortunately had less time to work on new products. It's been a busy time and a lot of my spare time has gone to playing around with micropython. However, I am still hoping to get these out there in one form or another with at least one of them coming out in the next month.

Project Diva Mini MINI controller
I still get comments on my youtube video of the Project Diva Future Tone controller I made a while ago, and I would like to eventually sell something that fills the void between the Arcade and PS4 version. I don't have one myself, but I've heard the most recent Hori controller was mediocre and I was fairly happy with the way my controller turned out but it turned out to be WAY too expensive in parts. What I'd like is to either simplify the large design (no more huge transistor board to switch between inputs and elaborate RGB LED setup) or downsize it and use Cherry MX/Gateron switches. Here's my first attempt at the downsized model.

This is just a picture that I posted a while back on twitter, but this design was fairly unsuccessful. It's not particularly comfortable to use (may take some more getting used to) and the Brook PS4 Fight Board I'm using doesn't and apparently will never support analog sticks despite advertising that a firmware update was coming that was going to add the functionality. It is still a LOT faster than padhacking a DS4 though, so I have a lot of experimenting to do. I would really like to have the analog sticks for backwards compatibility with Project Diva X and F 2nd, though. With the new DLC update on the 22nd, I'll have a lot more time to play around with the idea.

Macro Keypad
This hasn't made a whole lot of immediate progress, but the large code update should make it a lot simpler to carry over what I've already written. More coming soon.
I'm really looking forward to the FT controller. So far, it is looking good! I saw a lot of custom controller for that game and it is really amazing. If you are going to sell them, I imagine you are going to make something more simplified.
Topic Starter

SupraKyun wrote:

I'm really looking forward to the FT controller. So far, it is looking good! I saw a lot of custom controller for that game and it is really amazing. If you are going to sell them, I imagine you are going to make something more simplified.
I'm definitely still throwing a lot of design ideas around. This brook ps4 fight board still seems like the best option for its size even if there are no analog sticks, so I'd like to use it to make at least one finished mini-controller (micro-controller? Microcontroller powered LED micro-controller.) I think I should figure out some more major things before going straight back to the case design, like maybe having the the R2 and L2 buttons in the middle of the face buttons for easier access. I can also redesign it a bit since there won't be any anlog sticks. The wiring is also going to be a big hurdle so I think I'm going to try to get a bunch of ribbon cable to clean that up.

You don't think wires are going to take up that much space until you're trying to close it :p

I also tweeted about this but I've been trying to make 3D printed flat keycaps since they're pretty pricey from pimpmykeyboards ($2 each.)

These are great since I can make them super low-profile, but I'm having a hard time getting them perfectly straight and sticking well to the switches. They would be absolutely fantastic for the FT controller and the macro keypad (and my current keypads as well) so I can cut down on cost and not have them be way too expensive.
I see. Well good luck to you! I found a good thread where people posted pic of their custom controller.
If their design can help you: ... lers.1465/

P.S: I bought one of your osu keypad when you first started selling and it is still working great! xD

Topic Starter
Update 01/31/17

Printer Upgrades
These are a lot more important to me than they are to you, but I've finally outfitted both of my printers with heated beds. It's been more of a problem since winter started, but my prints started to curl a bit around the corners (especially when printed in clear.) This is caused by the cold bed making the first layer contract on subsequent layers which reduce adhesion and make printed parts curl. It's a problem that plagued my larger printer forever and now everything comes out perfect. It also helps me get better and more consistent surface quality.

After way too much time and effort, they are finally straight! The stem needed a 0.5 degree counterclockwise rotation to compensate for some 3D printing stuff. The big issue with that was that the problem only comes up when I print more than one so I was printing 6 every time for testing to make the effect as visible as possible, and they have to print pretty slow so it was about an hour each time. Trying to squeeze this in between all of the development stuff was tough, but I finally got through it! They seem to hold up fine from what I can tell, but I think I might throw in an extra with every order just to be safe. I still have a little bit more time for testing before I put them up so we'll see.

New Serial Remapper

This one's really exciting for me. It took a massive amount of time to suss out in my head, but I'm very happy with how it came out and how much more robust it is than the last one. There were a few big changes introduced:

-You now have to enter 0 into the serial monitor of your choice to enter the remapper. This is to avoid false triggers caused by things like the Arduino Create plugin. The if(Serial) command works perfectly to trigger when opening the serial monitor, but it doesn't always NOT trigger when not open so that's the problem.

-You can now use more modifiers! I've added (almost*) everything supported. I've ditched the old ^=ctrl and !=alt and moved to a number preceded by a colon, so now it's something like :19 for backspace. You can then enter your regular keys or enter xx to finish that key. Kind of confusing but I'm still finishing up a nice menu within the remapper itself.

-As I just mentioned, a nicer menu with more feedback from the keypad itself. I added a nice table to show the codes you need to enter for each one (generated and formatted by the code so I can change it and it will still be a nice table.) I'm also hoping to do something nice on all of the LED models with the LEDs while it's waiting for inputs.

*I didn't add caps lock and tab to avoid any unintended effects.


I guess the bigger thing than the remapper is the near completion of the macropad. The easiest way to sum this up is that it adds the new serial remapper along with a page system. You have 6 mapping pages that you can switch between by holding the side button and pressing one of the six keys. This means you can get a total of 36 macros out of it. Not only can you use it for professional applications like photoshop shortcuts as well as games like osu (or even an FPS with QWEASD or even the arrow keys now), but I think the nicest thing is that you can use it for both and switch between them very easily. 6 pages is a lot and probably too much, but why not?

It has (only) one RGB LED under the top left LED. This was mostly done to reduce cost and time for me, but since it's also aimed at general use I figured it was a worthwhile tradeoff to keep the price relatively low. It also serves a nice purpose of showing the current page as well as when it's waiting for an input. I plan on doing a little bit more testing and releasing it within the next week or two!

Wide Keypad

After a recent request, I decided it would be a good idea to carry a wide version of the 2K keypads for index+ring players. I made a few of them before I 3D printed the cases, but I figured I may as well offer it now since it's so much easier to just do the hard work once by modeling it. I plan on adding some iconography to the listing images on Etsy when I add the flat keycaps that shows two icons for the regular 2k and the wide 2k in the corner.

Updated Website, Docs, and Consolidation
I updated by website again with what I think is a much needed change. It's now a bit cleaner and more of a portal to other sites like my Etsy and readthedocs. My goal is to have less redundancy with pages so I don't need to update everything every time I change something or release a new model. I've also been updating my docs with some new pages, including a new buyer's guide to help people pick the right switches and keycaps. I'd also like to add a detailed troubleshooting guide within the next few days. Check it out here!

Future Tone Micro Controller

I almost forgot despite spending the past week working on it-- I finished the new version of my Future Tone controller! It still requires a lot of soldering, but I've managed to cut out the transistor board out entirely and keep the button switcher in! The MCU now takes the 8 inputs to switch in and spits out 8 outputs that it can swap around for the same effect. Kind of complicated to explain but all you need to know is that it can switch between the standard controller layout and the arcade layout along with all of the LEDs.

It currently requires an extra micro-USB cable for power but I'm hoping to figure out a way around that in the future (or have two ports be accessible but one for programming only.) It's only really functional for Future Tone since there are no analog sticks, but it does work very well with support for even the L3 R3 buttons as well as the touchpad button for module selection and favoriting songs. I also saw these recently and thought they'd be awesome as a touch slider, but I'm basically 100% out of pins on the MCU right now so I'll see if I can make it work. I have 3 more and I'd need 3 more, one for the pot and two for the R1 L1 outputs but I'm not sure if the remaining pins will work.

I've been using it a little but and I'm happy to say that it feels as nice to use as my big controller. It took a little bit to get used to the placement of the L and R buttons since there are no analog sticks, but I think that they work well being so close to the main buttons. I'm not sure how the touch slider would fit in but it just sounded like a fun thing to try since the PS4 touchpad wouldn't be feasible at all to try to fit on this and I can also do some fun stuff with the LEDs if it hooks up to the MCU.

I think that's it this time. I feel like I say that every time (this too) but forget a bunch of stuff, but it's definitely long enough so I'll stop here.

SupraKyun wrote:

I see. Well good luck to you! I found a good thread where people posted pic of their custom controller.
If their design can help you: ... lers.1465/
I actually posted on gamefaqs a while ago and someone pointed out to me that my old design was posted in that thread which gave me a good laugh :lol:

Is there gonna be Cherry MX version of the RGB KEYPAD? I would buy that right away tbh
show more
Please sign in to reply.

New reply