close-circle
Close
0%
0%

Unhappy Hacking Keyboard

Why have a Happy Hacking Keyboard when you can have an Unhappy Hacking Keyboard. Real programmers only need a 1 and 0 key.

Similar projects worth following
close
A familiar product to anyone who browses online mechanical keyboard shops is a Cherry MX switch pack. Ten bucks gets you one each of a Cherry MX black, brown, blue, and red switches. The intent is to try out each switch before you commit to buying an entire keyboard fitted with them.

Of course, it would be nice to have those switches actually do something, and real hackers only need a 1 and 0 key...

Simplicity.

...because real programmers only need a one and a zero. And a space. A return key as well, I guess.

  • 4 × Cherry MX switches Any colour you like
  • 1 × Lasercut acrylic plates See the github \hardware\plates folder

  • Boards Arrived & Assembled

    Benchoff06/19/2014 at 03:47 5 comments

    That is the current state of the Unhappy Hacking Keyboard. More pics:

    I have two copies of this board soldered up with the requisite USB hardware. For some reason, Cherry Black switches are out of stock everywhere, and I can't seem to get a Cherry MX Blue/Brown/Black/Red switch sampler pack. That's sort of a bummer, seeing as how a switch sampler pack is the entire purpose of this device. Mouser did have a bunch of blues, so clack clack clack.

    The only thing left to do is to get the USB keypad working. I have everything compiling and supposedly enumerating on my Windows 8 box. I'm getting a 'Device Descriptor Request Failed' error in the Device Manager, though. This is good news because I'm probably not fucking up the V-USB code too much. I'll update the project when the entire thing works.

  • A description, a board, and a repo

    Benchoff05/29/2014 at 09:44 0 comments

    The point of this project is to do something useful with those Cherry MX switch sampler packs you can pick up at places that sell mechanical keyboards. The idea behind these sampler packs being that you can try out each of the different 'flavors' of Cherry switches without committing to buying a whole keyboard loaded down with one type of switch. It's a neat idea, but why not make something useful with those switches?

    A Brainfuck keyboard would require at least five keys, so I'll have to settle with my version of a 'true programmers' keyboard. There's a 1 key, a 0 key, return, and a space bar. That's all you need. Oh, and it'll actually be a working keyboard.

    There's the board. I'm using an ATtiny85 with V-USB to create a USB keyboard. No switch matrix, just simple pullups on each of the switches. Standard V-USB schematic with zeners and such.

    The switches will be mounted to an acrylic or delrin plate unless I can find someone to cut some 16 gauge stainless for me. Switches will be soldered onto the board. it should look pretty nice when it's all put together. So far, the plastic plates are ordered, the PCB is heading for fab, and I'm here dicking around looking for some nice keycaps for this thing. If anyone has any suggestions, drop a note.

View all 2 project logs

Enjoy this project?

Share

Discussions

Dylan Brophy wrote 07/08/2017 at 14:18 point

The only thing this need is LEDs in the Cherry MX switches for a backlight.  It should be controlled by a secret key combination(s)

  Are you sure? yes | no

Dr. Cockroach wrote 02/12/2017 at 01:32 point

This is an idea that could well be used on my little? project :-) Nice job.

  Are you sure? yes | no

Stuart Longland wrote 08/07/2016 at 02:03 point

Silly question, I see that this project uses V-USB to implement a software USB interface on an ATTiny85.

V-USB documentation seems to suggest you need a ≥12MHz clock and so the internal 8MHz RC oscillator in the ATTiny85 would be insufficient, yet the two pins that would be needed for a crystal (2 & 3) are occupied with one of the USB data lines and one of the keyboard lines.

Is there some trick within the ATTiny85 that lets V-USB run without an external crystal?

  Are you sure? yes | no

Stephen wrote 06/13/2016 at 08:09 point

Hahahahaha!

  Are you sure? yes | no

Stephen wrote 06/13/2016 at 08:09 point

Hahahahahahahhaha snort, spit, choke, hahahahahahaha!

  Are you sure? yes | no

barcellos.alvaro wrote 06/10/2016 at 20:29 point

As space is just another ascii character, i will sugest to substitute it with a backspace, for correct any bit errors.

  Are you sure? yes | no

Benchoff wrote 06/10/2016 at 20:42 point

real programmers don't make missteakes

  Are you sure? yes | no

barcellos.alvaro wrote 06/13/2016 at 14:35 point

I know, I used tame card punchers.

  Are you sure? yes | no

Terry Daniels wrote 06/11/2016 at 21:42 point

Isn't backspace also an ascii character? I guess it really just depends on whether you'd use space or backspace more?

  Are you sure? yes | no

John Boyd wrote 12/22/2015 at 03:31 point

Just curious, did the firmware work as it is on GitHub? I compiled/programmed the firmware using WinAVR successfully, however the device does not enumerate over USB when I plug it into my PC. It shows up as an unknown device because "USB descriptor failed". 

It has been years since I've programmed an AVR, so I was curious if there are any blatant 'gotchas' with an AVR VUSB implementation you know of.

  Are you sure? yes | no

John Boyd wrote 12/22/2015 at 03:35 point

Do fuses need to be set perhaps?

  Are you sure? yes | no

Kenneth Trussell wrote 11/18/2015 at 21:49 point

For 3 years, I have been teaching CS classes at a college as an adjunct prof. We cover binary number systems pretty extensively. After that part of the class, I always have drawings for "binary" prizes, such as a coffee mug with the "There are only 10 people in the world..." saying, a binary wall clock, a binary watch, etc. This keyboard would be a great addition to the prize pool!

  Are you sure? yes | no

Harrison Kyle VE2HKW wrote 02/19/2015 at 03:48 point

Not only for "programmers" this could also be used for morse code "keying". I once came across this keyboard for an android that only had dot and dash. You could always get the period and hyphen key instead of a zero and a one. Just a though.

  Are you sure? yes | no

steeven wrote 02/19/2015 at 00:09 point

I know you made this for programmers but I know alot of people that would find this very useful to play a rhythm game called osu! ( the game requires to keys to click and mechanical switches are a must) https://osu.ppy.sh/

  Are you sure? yes | no

IT-Wizard wrote 08/02/2014 at 16:37 point
Funny ! :o)

  Are you sure? yes | no

davedarko wrote 05/29/2014 at 06:48 point
Nice "recycling"-project! But is there a reason why there are no vcc and gnd connections on your pcb image?

  Are you sure? yes | no

Benchoff wrote 05/29/2014 at 07:24 point
The gnd and vcc are polygons in the board. you can see the dotted outline, but when they're rendered, you can't see much else.

  Are you sure? yes | no

davedarko wrote 05/29/2014 at 07:26 point
ah, ok.

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates