Pimp My Keyboard: Automatic Lift Kit And More


Wondering what the heck a lift kit is? You know those low-riding cars that bounce? That’s the idea with this hack. [Justblair] added automatic height adjustment to his Cherry G80, and hid a few other extras while he was at it. Since there’s a fair amount of room inside the case of this model he was able to hide everything and keep just a single cord to run it all.

Certainly what catches your eye is the keyboard’s ability to rise to a typing height automatically. This is accomplished with a few servo motors and some 3D printed replacement feet. There were some hiccups along the way with under-powered servos, but bulking up to some HXT 900 9G models provide more power than is currently necessary. The automatic feature is thanks to a capacitive sensor built with a wire that loops the perimeter of the keyboard.

Of course to monitor the sensor and drive the servos you need some kind of brain. For that [Justblair] went with an ATmega32U4 breakout board. Since he had to patch into USB for power anyway he added a USB hub and routed one of the ports out the left side of the keyboard as a convenient way to connect other peripherals. There was even room to include an RFID reader which he uses to unlock his sessions (similar to the desk install from earlier this year). There’s still a lot of potential left in that hardware. To make future improvements easier the hack includes an IDC socket as an auxiliary port.

[Justblair] did a great job of sharing his work. His post links to a Github repo for the code and a Thingiverse project for the 3D printed legs. And it wouldn’t be complete without the demo video which is found below.

41 thoughts on “Pimp My Keyboard: Automatic Lift Kit And More

    1. It took me 2 seconds to fully understand what this post would be about. I like those features for skimming through the posts and get a good idea about the topic and if it could be in intrest for me. A JPG without animation cant communicate this quite well.

  1. NEW from Masturbating with Microcontrollers, former makers of HackaDay!

    Are you tired of your keyboard always being at ideal typing height?
    Missing a loud whirring noise every fifteen seconds to remind you of the mechanistic emptiness of internet comment forms?

    If so, then this project is for you!

  2. Besides the obviously gimmicky and pointless nature of this, how good of an idea is it to add all this shit to a single USB bus? Besides whatever the current draw of the keyboard is, he added a unpowered USB hub, a USB MCU, RFID card reader, and 4x servos. From what i’ve seen in the comments of a store page for those servos they draw 550ma at a unspecified voltage (3-6v). I can only imagine this grossly violates the USB current specs, and quite likely lies to the host about how much current it uses.

          1. No. See justblair’s post below where we both state they can supply more than 500ma without shutting off. And if you still dont believe me, cite a study where corroborates your statement, just as I cited Intel’s specification.

    1. I totally agree about the servo l lift being pointless, this project was supposed to be pointless and fun…

      As per the load on the USB port, the project perhaps does breach the 500ma limit for a single device that is specced in USB 2.0. However every USB port that I have ever seen is fuse protected at a much higher rating than 500ma (1.5A is typical, 2A is not uncommon) I did add 1500uf on the power to soak up sudden loads on the USB port. So far on any equipment I have tried the keyboard on there have been no issues.

      As to the figures you quote on the servos, those sound like near peak measurements. As a servo approaches stall it’s current draw rises to those kinds of figures, My Servos are nowhere near to stall, so will be drawing nothing like that.

      In the code, i switch the Servos off when they have finished moving the keyboard. So they draw no current at this time. I should have mentioned that in the article perhaps.

      1. if it floats your boat then good job I guess. I’m aware that USB ports can source more than 0.5A, but I dont consider it good practice to violate specifications needlessly. You could take this a step further, have the MCU handle switching the power on and off to the servos if it doesnt all ready, measure the current draw and report its value to the host.

        Even if the 550ma is the stall current draw, and something much less like 100ma is the norm for the load it is lifting, because you’re running 4, you’re all ready approaching/exceeding the peak current with all the other devices connected to the bus.

        And finally I was wondering how sturdy are those servos? With the force exerted by typing, especially when playing games when you may press harder than normal, what is the chance the plastic gears in them are going to get stripped?

        1. When the servos are switched off, it is only the stiffness in turning the servo mechanism that holds the keyboard up. The weak point is probably not the servo mechanics, but rather the friction fit between the servo shaft and the soft ABS foot. In a sculpture that I worked on recently, that fit caused us so much grief that I twitch a little thinking about it.

          In terms of force, I tried giving it a normal levels of force and it is rock steady. In practice though this keyboard uses Cherry MX mechanical switches. Unlike rubber dome keyboards, you don’t need to bottom out the key at all to type, the key registers during the key travel, not at the end. The “blue” the switches that come on this board are more suited to typing than games

        2. Are you the usb police or something? But serously this is a home project that he has made it isnt like they are being sold in shops so if he wants to violate some specification then thats his choise.

          1. @matt or maybe, just maybe i think that of it is a home project and you dont want to follow specificstions then that is your choice and it doesnt really matter. Now if it was a comercial product then that would be a different story. If large companys think they dont need to follow specifications the why should we have to in our home products that sre only going to be used by us…

          2. It isnt just a home project. By advertising it on the internet and publishing the source code he is inviting others, who quite likely have less knowledge than himself, and likely arent aware of the consequences of their actions to do the same. And yes, specifications do matter, otherwise companies would have devoted large amounts of resources to develop them. And your last sentence is just asinine.

          3. And to follow up on my post, if you look at the other articles on his blog, such as the hard drive silencer via gel packs, he informs the user that it isnt the best idea because it will increase operating temperatures and decrease the drives life. It is simply a responsibility issue to inform potential copycats with lesser knowledge than the author of the pitfalls. I hope he updates this article to include a note that it may cause a over current condition which could (although unlikely) result in damage to the USB bus.

  3. Im still confused as to why, considering this is a site devoted to changing the “norm” , why people feel the need to “flame” someone for doing something that HE wanted to do. Get your head out of your arse and do something different then !

    1. Hi, thanks for your kind comments. FWIW I don’t feel that the commenting has been particularly flame ridden. I can see one comment at best that makes pretty blunt criticism for no particular reason.

      Other criticism is most definately done with respect and intelligence (Looking at you Matt :)) and that is fine with me, especially when it is an educational discourse.

  4. The idea with an ergonomic keyboard is you are suppose to be trying to keep your wrist straight. Raising the back of the keyboard is only warranted if your elbows are positioned below the level of the keyboard so that your hand is doing a / instead of a ^.

    This is a cool build but he either needs to lower his seat or raise the keyboard for this to be doing anything but setting him up for repetitive stress syndrome.

  5. don’t get me wrong, i LOVE projects that don’t have any practical purpose, or are whimsical. seriously, i think that stuff is just peachy. who gives a shit if others don’t see the need, if it does something for the maker, then more power to them.

    THIS shit though, is just pants on head retarded. no purpose, no problem solved, no improvement of function or looks, just a waste of time. what’s next ? a chair that shifts one inch to the left when you go to sit on it ?

    1. An armchair that shifts an inch left when you sit in it /is/ just pants on head retarded.
      An armchair that reclines back into position automatically when you have your home theater fired up though – that’d be as useless but nifty as this hack. This hack doesn’t do anything that you couldn’t do on your own with a small effort, just like a self-reclining armchair would be.

  6. Got an idea : this can be used for detecting the presence behind the keyboard, and automatically change the status in chat/skype programs in A.F.K. (away from keyboard)

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.