What the Happy Hacking Keyboard should have been

The Quest for the Perfect Hacking Keyboard is indeed an eternal one. Over the years, I had great many keyboards and most of them went the way of the dodo. Recently, despite not having other Apple products, I tried the (wired) thin Apple aluminum keyboard. As I prefer very thin keyboard over thick ones, and laptop-style keys to the big M Type keys; it was a very good match. However, after a while, I got unnerved by the extra, useless keypad. In short, the keyboard is too long: as I am right handed, it’s always somehow in the way of the mouse so I started looking for a better keyboard. Again.


So I got the Apple aluminium keyboard, wireless version.

Another compact keyboard that I liked a lot, despite its being very thick (compared to the Apple keyboard) is the Happy Hacking Keyboard. The layout is incredibly compact, yet retains all the functionalities of a large 105+ keys keyboard. One thing that is clearly missing is the set of arrow keys (well, they are only accessible through key combinations). While this doesn’t pose much of a problem in EMACS or VI.

The Happy Hacking Keyboard, Top View

The Happy Hacking Keyboard, Top View

The Happy Hacking Keyboard, 3/4 View

The Happy Hacking Keyboard, 3/4 View

So I decided to get the Apple wireless version, the much shorter version of the aluminium keyboard. It is as thin, and this feature-rich keyboard is what the happy hacking keyboard should have been all along: compact, yet sporting all necessary keys, including the arrows, plus an extra row of function keys that lets you navigate your desktop quite efficiently. Although I am not using OS/X but Linux, I find the function keys quite convenient.

The Apple Aluminium Wireless Keyboard

The Apple Aluminium Wireless Keyboard

Well, you might say that it’s missing the insert toggle, the forward delete, page up, page down, home, end, but it’s not.

Combination   Result

fn+←         home
fn+↓         page down
fn+↑         page up
fn+→         end
fn+delete    "forward" delete
delete       backspace
insert       <not available>

Configuring your keyboard locale so that caps lock, the useless key, becomes an extra control key, you’re set for much happy hacking. You could also map insert, if you so need it, to one of the unused keys, like the F5 key (which per default isn’t the F5 key until you press the combination fn+F5).

* *

The Linux Bluetooth support for the keyboard is complete, except for the battery charge status. I have looked at the device itself using hcitool, but I have yet to find a way to get to the power status.

Apple claims a ludicrous 9 months on the same batteries for the “typical user”. Well, no. With my use pattern—apparently I type a lot—it’s more like 4 or 5 days on top-of-the-line rechargeable batteries. I do not know if there is some mismatch in configuration from Linux that prevents the keyboard from going into sleep mode; all I could ascertain is that the keyboard does stop transmitting after a while.

So, whatever the reasons of this, be prepared have have a few spare sets. That’s what I do: I run on a set and put the other on charge, minimizing downtime down to merely switching batteries. Also keep in mind that rechargeables are rated for 1.2V, they rarely charge more than 1.4V, so they won’t last nearly as long as fully charged normal batteries, which are rated at 1.5V. The keyboard stops working when any one of the batteries hits 1.0V or so.

* *

But I got quickly tired of the frequent battery swapping ballet, so I got the wired version that came out two days ago (at the time of writing). The wired version offers two USB 2.0 ports and the exact same efficient layout of the compact thin keyboard. Moreover, it’s considerably less expensive than the wireless version. You may prefer the USB version—I do, I got a refund for the wireless version.

The Apple wired mini keyboard

The Apple wired mini keyboard

* *

(added jan 11, 2012)

Apple seems to have discontinued the wired version of the keyboard. Why? There are possible replacements, like the (inexpensive) Mini Slim that you can get from Amazon. Turns out they also distribute variants of the happy hacking keyboard, including the HHK lite (although they seem rather expensive?).

27 Responses to What the Happy Hacking Keyboard should have been

  1. James says:

    Hi, I like the post.

    how did you configure your system so forward delete, page up and page down keys can be accessed through the “fn” key? I understand this is automatic on Macs, but in other OS’s like windows or linux you need the keyboard driver. for example, this is currently not working in ubuntu 8.10.

    Thanks in advance for your or anyone else’s help.

    • Steven Pigeon says:

      For the wireless keyboard, I had nothing to do, it was supported already. As for the wired version, you need to patch your keyboard drivers. There are two problems with the wired versions, first, it has a USB ID that is not (yet) recognized as an Apple (mini) Alu Keyboard, and second, because the Apple keyboard driver knows nothing about the ID, it defaults to some PC-105 keyboard emulation.

      I have performed the patch experimentally on my machine, and I’m still testing that it’s working properly. I suppose it won’t be too long before an official patch comes.

      I filed a bug already for Ubuntu (8.04) https://bugs.launchpad.net/bugs/339382

    • Steven Pigeon says:

      This was fixed (today?) in the kernel


      I expect backports sooner or later

    • Steven Pigeon says:

      You need to set the pb_fnmode flag for your keyboard. If =1, it behaves like a mac keyboard, that is, you need to press fn to get the function to work “windows style”. If =2, it does the opposite (iirc).

      In the file /sys/module/hid/parameters/pb_fnmode (exact location varies from distro to distro), you can set the desired value by simply writing to it. Say, echo "1" > /sys/.../pb_fnmode.

      You can also try to install the driver enabling the back ports in your distribution (that's what I did). Otherwise, you need to get a hold of the diff files, compile the keyboard driver, and overwrite the existing driver with the newly compiled one (that's a lot of trouble).

      The patch doesn't seems to be incredibly stable. On my other (laptop) computer, I didn't get the keyboard to work properly yet. I do not know what I'm supposed to do with it.

      • James says:

        I actually attempted to replace my kernel with an updated one. I was able to get the keyboard functioning, but i also got other undesired behavior, completely unrelated to the keyboard. I believe I configured the kernel incorrectly. I actually ended up returning the apple keyboard and ordering a happy hacking keyboard lite 2 online. I’ve been using it for the past few months and have been pleased, especially since it is recognized as a standard 110 key keyboard by all OS’s

  2. CoffeeTurtle says:

    Found this article while searching for a good keyboard to use that was similar to the happy hacking keyboard

    I need some help applying the patch to the kernel though
    If you could drop a comment here I would greatly appreciate it



  3. graig smith says:

    instead of buying 3 different keyboards, you should have went straight for the expensive and awesome keyboard. give the kinesis contoured keyboard a try. nothing is more comfortable or speedy to type on. it has real hardware switches like the happy hacking, and even though the keys are thick, they are recessed into the keyboard, and it is by far the most comfortable and easy to type on keyboard i have ever used.

  4. Steven Pigeon says:

    I tried some weird keyboards and I must say they have one major fault: they’re not compatible with any other keyboard; you have to re-learn how to type with them, and in the long term the benefits are unproven. The Microsoft “natural” keyboard is one such keyboard.

    Anyway, the key to reduce stress and injury, is just to not type for too long nor too intensively. As to minimizing hand displacement while typing, I’m sure that this alien keyboard of yours works cromulently; but as I said, only after a period of reeducating yourself to this new layout. If you have been using “regular” keyboards for more than 10 years, I bet you’re on for a pretty rough reeducation curve.

  5. Steven Pigeon says:

    for those wondering :

  6. Steven Pigeon says:


    While the Apple Aluminum Mini keyboard didn’t work right out of the box with Ubuntu 9.04, it works most cromulently with 9.10. With 9.04, I had problems; on a box it was detected correctly, on another it wasn’t, and even with tweaks, I could’nt get it to work. (I still think it’d be silly to dist-upgrade just to key the keyboard to work right)

  7. Steven Pigeon says:


    The insert key is accessible using fn+enter

  8. Mike says:

    You are nuts if you think that Mac wireless keyboard can even begin to compare with the god like qualities of the Happy Hacking Pro. My girlfriend has that Mac keyboard on her imac and it makes me want to throw it through a window. It is like a Fisher Price Keyboard, but since you are using a toy computer anyway I guess it fits.

  9. Ciam Bum Bum says:

    Yeah this guy comparing HHKB with apple keyboard is clearly american, fat and retarded.

    • Steven Pigeon says:

      Let’s see… Canadian, fit, Ph. D,… hmm wrong on all counts. Maybe you’re wrong about a few other things as well.

      This post (amongst the 300-ish so far) is the only one that triggers retarded hate comments. I dont like M type keyboards, deal with it like adults. If you prefer M Type keys, well, good for you.

      • rei says:

        Topre switches, while also mechanical, are not the same as Model M’s buckling springs in any way.

        Preferences are preferences, though there are objective qualities in which you can measure a keyboard, and durability and ergonomics will almost certainly favour the HHKB’s Topre switches.

        Though really, it’s good to see you’ve found a solution that works for you. You should also give the HHKB Lite a try – it features arrow keys, and membrane switches (which is a downside to me, but might be a benefit to you)

        • Steven Pigeon says:

          I have a student in the lab here that has one, although not sure if it’s the latest version or not. I will give it a try, although I suspect that since I got ‘unused’ to thick keyboards, it’ll ask for some adaptation. I didn’t like the very early versions with no arrow keys (while this proves only a minor inconvenient)

    • Wow that’s some fine argumentation style you have got there Cletus. I will try that too.

      You don’t agree with Steven so you are clearly scrawny, dirty and uncultured. I suggest you stick with beating your Brandine as it probably suits your level more.

  10. gicxjo says:

    I’ve been using a HHKB lite 2 since about three years. When I bought it (it was around €100 at the time), I was expecting to be blown away by a keyboard with such a cult status. Well, I was not. I like it a lot, but it is not amazing (except for the size).
    OK, the lite version is not mechanical, but anyway after this I’ve got quite sceptical about what people say on topic keyboards in the internet.
    Well, now I got a macbook and after some days I got really hooked by its keyboard. The tactile response feels delicated and precise, and the short distance travel of the keys make it feel like you are writing extremely fast (although I guess I’m not). Writing on the hhkb feels now like doing so much effort and the noise of its space bar got very annoying!. So now I ordered an usb iMac keyboard (found one for €25) to use at work instead of the hhkb. Let’s see if I like it so much as the one from the macbook.

    • gicxjo says:

      OK after some weeks using it, I cannot decide if I like the hhkb lite2 more or less than the apple alu. They are both good in different ways. I’m anyway disappointed by the alu keyboard because it is not as good as the one in the macbooks: the keys feel more cheap, they are flat (in the macbook they are slightly carved for the fingers) and a bit too hard (in the macbook it feels a little bit cushioned and more delicated), and BTW the cable is extremely short (you need an extension unless you have a usb in the monitor).

      • Steven Pigeon says:

        I did not notice the curve vs flatness of the keys… you had me check my MBP… and yes, they are slightly concave.

        As for the “cushionedness” I can tell the difference, but I do not feel it’s objectionable, either way.

        And, yes, I noticed that too about the cable. But, lo! they do give you a USB extensions… something like an extra 50cm (18in, more or less). I guess they designed it to be used with their monitor/all-in-one computers, in which case, it kind of makes sense to have a rather short cord. For all the rest of us that have computers that are made of many parts from different manufacturers, a 50cm usb cable is bordering the daft.

  11. rjrich says:

    Please note that the HHKB Lite 2, which is a cheap membrane keyboard, is nothing like the HHKB Pro 2, which uses Topre switches. However, I find the HHKB layout too alien and its lack of dedicated arrow keys too inconvenient. An interesting alternative is the Leopold FC660C, which has a 60+% layout and uses Topre switches. Unfortunately, the Leopold lacks the elegant dye-sub PBT keycaps of the HHKB Pro 2, so I have returned to my IBM SSK, at least for now.

  12. Scoox says:

    All keyboards suck. Especially Apple keyboards are the worst because they lack important keys e.g. forward delete like on PC keyboards. Also, they still subscribe to the traditional placement of some keys e.g. CapsLock to the left of A. The Japanese are way smarter, they have been using thumb modifier keys since forever. Their Ctrl key is where our CapsLock key is.

Leave a Reply

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

WordPress.com Logo

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

Google photo

You are commenting using your Google 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 )

Connecting to %s

%d bloggers like this: