Category Archives: Allgemein

My first working mechanical keyboard

When designing little computers, one of the most interesting aspects is the dimension and functionality of the keyboard. Do you want to use it rarely and the screen real estate doesn’t matter? You can use an on screen keyboard. With little devices such as the PocketPi, it is okay to have a small keyboard, but that’s not for writing code, it’s okay for messages etc. Recently I bought a Psion Series 5 mx pro, that is a keyboard with 17cm length and a phantastic trade-off between usability and size. But I was also experimenting with self-built keyboards for a while and discovered that I’m not alone.

For building a sub-notebook or netbook powered by a Raspberry Pi, I was looking into 40% keyboards, my first experiment was a NIU PCB with Kailh Choc low profile switches just to find out that the NIU doesn’t support this form factor. I kind of hacked it by modifying the switches and soldering on the back side:

And it kind of worked. But it’s not beautiful and you have to mirror the default keyboard mapping. For my taste, the key caps are also too far apart, on the plus side, it has LEDs (the key caps are the “natural” color, i.e. semi-transparent which is also good for lights):

But then, after posting this on reddit, another forum member hinted that there would be the Pancake PCB that would “natively” support the low profile switches, so I ordered the pancake PCB together with the white key caps.

To save some more height, I decided to solder the Arduino Micro Pro directly on the PCB without a socket or pins, luckily, there’s also a QMK layout for it already and flashing with the QMK tool is a breeze (just press the button WHILE plugging in the USB cable to the computer).

That yields a total height of 18mm which is, in notebook terms, still quite a lot, but for mechanical keyboards it’s the best I can achieve for the moment.

The alternative would be to design and print a switch holder grid and connect the switches directly without a PCB. Whatever, this is the end result:

A much cleaner and tighter look compared to the NIU:

To learn how to type on an ortholinear keyboard, I practise on this sensational website. I was not very fast after 30min practise but improving fast:

So just as an outlook for the sub-notebook (10.1 inch screen, 21x15cm), here’s the hardware collection that I had half a year ago (yes, that’s a dedicated touchpad with mouse buttons in the middle). I’ll change the LiPo for a dual 18650 UPS I recently found which is way more compact.

absolutely fascinating organic display by ferrolic

here’s a liquid magnetic display by ferolic around a really bright guy named zelf koelman:

i was immediately fascinated by the organic movements of the drops and my brain couldn’t stop thinking about how to build one. we know magnetic particles from adaptive dampening in cars and we also know liquid displays as well as e-paper that turns pixels by a little magnetic current.

so this display is a combination of these and my feeling is that the display consists of little electro-magnets and some fluid that contains magnetic particles in oil. the trick has to be that these particles stay together.

i would guess that each pixel is one magnet that can be controlled individually, i thought this would be four seven segment digits with two mangets per line, i.e. 4x7x2 pixels = 56. then you also need some pixels to lift them from the soup at the bottom, for example 10 or so that would be 66. on the other hand you see that this is a full pixelated display, so if they are using 10×20 pixels, that would be 200.

first of all i did some research on the magnetic material called ferrofluid invented by NASA: “Ferrofluid was invented in 1963 by NASA’s Steve Papell as a liquid rocket fuel that could be drawn toward a pump inlet in a weightless environment by applying a magnetic field.” again, this interesting connection to my first association to the automotive application. it seems that these two materials are different in their properties due to their particle size though.

anyway. quick search on google yielded an article on instructables











interestingly, they also cite a project by martin frey in berlin:

next, we need some cheap and small electro-magnets, here are the cheapest & smallest, i could find on ebay:

two centimeters of diameter. i’m sure there’s something cheaper than 4.66€ because that would lead to 200×5 = 1000€ for the magnets.

finally, we need an arduino i would guess that either you use a nano with pwm per line, i.e. 10 ports, or a mega 20 pwms per column. finally, we need some shift register, for example this little guy: 74HC595, there is plenty of projects using it together with arduinos to drive LED matrix displays. for example this:


this would be a really nice project, would love to do it maybe during the christmas holidays. any further suggestions?