Creating Your Own Keyboard From Scratch – Sum Up

Summary Page

The last few weeks I mentally tried to go back in time to remember everything I did to bring “TheTasTaTur Mark1” to it’s current state. For me it was (once again) an astounding trip and the outcome (more the experience than the working keyboard) was worth the struggle, even when there are still some things far from ideal. This post is about the aspects that are improvable either in the current keyboard or in a future attempt to make an even better one.

I left off with energy saving. So I guess this is a good starting point. There are a few different paths I could follow, so far I couldn’t decide for one. The main question is: do I want to keep the keyboard wireless? The answer is yes and no at the same time. If I ever make a keyboard again it would be wired, I guess. I would use the Arduino Leonardo (back then this model didn’t exist) or a clone as USB HID device and could save some money and hustle.

But for the current keyboard I would keep it wireless and use power saving Arduino clones (maybe this one from Olimex, or maybe a PIC or ARM controller). Further I would spend more time evaluating LiPos as the power source. Olimexes clone already includes a LiPo charge circuit and so ubiquitous as LiPos nowadays are, it can not be that difficult to keep them in control, right? In the course of switching back to LiPos I even would try to remove the wire between the keyboard halves and use some other wireless technology. I experimented a little with ZigBee, that might work better than simple RF.

I also should exploit the power saving capabilities of the BlueSmirf to extend the recharge cycles even more. In conjunction with that, I should add better bluetooth connection behavior. At the moment I have to actively reconnect the keyboard from the host side every time the keyboard is powered back again. Instead the keyboard itself should try to establish the connection to known hosts, simply when you press a key.

I’m thinking about rearranging the keys a little. I more often use ‹backspace› than ‹remove› though they should be switched. When talking about keys some of them are not working that smooth others have flaws in size and proportion. I definitely should replace some of them with new ones. Maybe I could even find a better way to connect them to the key switches. Any ideas are welcome.

Another thing are the key columns: when building a new keyboard I would stagger them, so that they follow the different length and position of my fingers. That way I don’t have to crumple my middle fingers and at the same time stretch my pinkies. Maybe it would be more ergonomic if those staggered columns are moved apart at the top and kept close together at the bottom. This would reflect more the (at least my) hand-opening-motion.  Eventually the keys should have different sizes for each finger, to acknowledge the range, flexibility and accuracy of my different fingers.

I avoided to code a hardware driver. But that means now I only have the limited character-set of the default “QUERTY”-layout. Some characters from the third level and many of the 4th, 5th and 6th level are missing. To use the full power of the NEO2 layout I should write hardware drivers. When doing this I could even switch to two fully independend keyboards, each connected via bluetooth to the host, letting the driver combine the input from both halves. I could even add a third part: an independent number pad or a special gaming part, for example.

One thing that really sucks is the thumb stick. Yes you can move the mouse pointer with it, but if you have ever tried mouse-moving on a game console, you know that it is not working as smoothly as it should. The little red thing on IBM notebooks, the nipple mouse (officially called TrackPoint), might work better. Or maybe a trackball. Back in the 90s I put my mouse aside for some time and used a trackball until the Counter Strike era began. You have no chance with a trackball. But that time is gone and for me a trackball might be the right choice (again).

When making a new one I would invest in a professionally manufactured PCB, now I feel able to draw the basic circuit (at least with Fritzing) and they are not that expensive anymore. In addition I would invest more time and money in properly fitting keycaps. Maybe I could let them make with a CNC machine. There are a few companies that provide CNC services for prototyping and small quantities. Regarding the overall material, I guess I would still stick with wood. It simply feels good.

I guess the next post: I will make a short video showing me type on the keyboard, will be the last post regarding “TheTasTaTur Mark1”. So any questions – whose examination also could be the content of another post – and general recommendations, are welcome.

Summary Page


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s