MeC64 Keyboard

User avatar
tlt

04 Dec 2012, 23:58

MeC64 Keyboard
MeC64-19.jpg
What kind of switches do you have in your C64?
MeC64-19.jpg (292.37 KiB) Viewed 27376 times
MeC64 is a mechanical replacement keyboard for the Commodore 64 (bread bin model).

Features:
  • Compatible with the original Commodore 64 motherboard
  • Diodes on all switches i.e. no ghosting. (The C64 does not seem to benefit)
  • Light and sturdy mounting plate made of aluminum.
  • MX Lock switch for caps lock.
  • Can be easily used as a USB keyboard by adding a controller
  • When in USB configuration, it supports two digital joysticks
  • Can control the C64 power LED.
  • All the flexibility of a programmable controller (e.g. remapping, layers)
  • Use your great looking C64 double shot keycaps on a Cherry MX switch of your choice
The project

In the beginning of 2012 a nostalgia for the look of the old bread bin Commodore 64 hit me. I wanted to have a computer that is built into the keyboard again, the Amiga 1200 being the latest one. So I bought a broken C64 with the intent of putting a Raspberry PI in it. The bread bin was as cool looking as I remembered it. I really like the brown double shot keycaps with all the strange symbols. I googled and found the Keyrah and both a avr and a pic based DIY project. But I thought it might be fun the make my own keyboard controller and got the idea of making a Arduino shield. I soldered the shield, made a basic firmware and happily started to use the keyboard with my pc.
MeC64-20.jpg
Arduino shield for connect a C64 keyboard.
MeC64-20.jpg (146.87 KiB) Viewed 27376 times
The experience was horrible, I needed to really hammer the keys to get them to register, the project started to feel like a failure. The C64 looked great as a nostalgia thing but I could not use the keyboard :-(. Then for some reason I decided that I was not going to give up, I was going to get my retro keyboard not matter what.

I found a cheap mechanical keyboard with Cherry MX red switches and thought that it would be a perfect fit. I like soft switches and they are linear like the switches in the C64. The red switches fitted my memories of the C64 keyboard better the the real thing ;-). So I made a list of what was needed.

Keycap adapters

I started with the keycap adapters as that seemed to be the hardest thing to make. I made a prototype by gluing a the top of the stem of the C64 keyboard together with a mount of a Cherry type keycap. I tried to make a silicon form and mold copies of the prototype in plastic but it was hard to get an even quality and I only managed to make 1 to 3 that was good enough each day.
MeC64-3.jpg
Silicone forms filled with plastic resin.
MeC64-3.jpg (354.1 KiB) Viewed 27376 times
When I got enough adapters to try them I found out that my prototype was not completely straight so it did not look very nice.
MeC64-4.jpg
Test of molded keycap converters.
MeC64-4.jpg (278.85 KiB) Viewed 27376 times
When I was looking for ways to make a mounting plate I found out about Shapeways and got the idea of 3D printing them so I made a 3D model and it turned out pretty good.
MeC64-7.jpg
3D printed keycap converters from Shapeways.
MeC64-7.jpg (228.26 KiB) Viewed 27376 times
Mounting plate

The mounting plate is designed to be the only part needed to hold the keyboard in the case, this is achieved by having bends along the sides with holes for the screws. My first thought was to mill the mounting plate but that just show how much I know about milling and after some tips on Elektronikforumet I understood that water or laser cutting was the way to go if you only want to make a small number. It took a lot of asking around to find a laser cutting company that could also do bending and that was willing to take this job without charging a ridiculous sum for doing it but in the end I found one.
MeC64-8.jpg
Aluminum mounting plate for.
MeC64-8.jpg (369.86 KiB) Viewed 27376 times
PCB

Then it was time for the PCB. I thought this would be the easy part but I had only done small PCBs in a paint program before and now I needed a real design tool. It took some time to become friends with KiCad but I managed to make what I wanted and ordered the PCBs. After a month or so I got the PCBs and there was no major design flaws :shock:.

I needed custom stabilizers and I found a video on Youtube on how to make them and bought the tool and piano wire.
MeC64-11.jpg
All the parts before assembly.
MeC64-11.jpg (385.3 KiB) Viewed 27376 times
The assembling was the most fun part as I got to solder which I really like and see the thing come together. When it was finished the C64 looked exactly as it did before I began (which was the intent) and it felt a little stupid to say “look, I built this!” ;-)
MeC64-15.jpg
Finished MeC64.
MeC64-15.jpg (362.13 KiB) Viewed 27376 times
MeC64-16.jpg
Keycaps on.
MeC64-16.jpg (258.82 KiB) Viewed 27376 times
MeC64-18.jpg
Backside.
MeC64-18.jpg (379.76 KiB) Viewed 27376 times
I’m not finished with the firmware but I got the basic functionality working and the keyboard feels great now! I have bought another working C64 with a much better keyboard that registers keys when you press them but I still really don’t like the feel of it.

The reason I did this project was mostly to learn new things and to prove to myself that I could realise an idea and not stop at thinking “I could do this”.

The great documentation of the C64 keyboard at Waitingforfriday.com was a big help during the project. I also want to give credit to Elektronikforumet.com, AVR Freaks and Deskthority for providing valuable information. The firmware uses LUFA which is a great framework.

I'm making kits and keyboards for this project. If you are interested in getting a keyboard like this for yourself look in the Group buy thread

Keycap adapters on ShapeWays (previously called converters)

This is the firmware files for the project
MeC64_firmware.tar.gz
MeC64 firmware
(15.56 KiB) Downloaded 226 times
Use it at your own risk, under the MIT license (like the rest of LUFA).

Download a copy of LUFA (I used release 120730) and extract this files in the LUFA-120730/Demos/Device/ClassDriver/Keyboard directory.

All project files on GitHub

MechBoard64 is a keyboard developed in 2018 by MtnBuffalo that is very similar to the MeC64 but that focuses on being used with the Commodore 64 and therefore doesn't have USB. But the great thing about it is that it can be purchased!
Last edited by tlt on 12 May 2019, 16:08, edited 12 times in total.

User avatar
HzFaq

05 Dec 2012, 00:06

Love it, are you still adding the RasPi?

User avatar
webwit
Wild Duck

05 Dec 2012, 00:08

Great show, top points!

Aleksander

05 Dec 2012, 00:14

Some top notch work here!

rodtang

05 Dec 2012, 00:27

Great work with both the keyboard and the post!

REVENGE

05 Dec 2012, 01:02

Awesome project! I see great ideas at every turn!

The key-cap converters are particularly interesting, could you let us know how much it cost to get that full set printed by Shapeways?

User avatar
dirge

05 Dec 2012, 09:23

Stunning stunning stunning. C64 was my first computer as a child. Whatever happens you need a boot background with "shift runstop press play on tape" :)

User avatar
7bit

05 Dec 2012, 11:28

WOW!

I like the key cap converters!

So maybe we could use Cherry keys on ALPS!*

-----------
*) But first let me sell my switches.

User avatar
Ascaii
The Beard

05 Dec 2012, 11:34

These converters remind me of the ones Kbdfr found in his old LCD-key keyboard, ive been wanting these for aa while. Please give us more info on what they cost to make.

User avatar
kbdfr
The Tiproman

05 Dec 2012, 11:43

7bit wrote:WOW!

I like the key cap converters!

So maybe we could use Cherry keys on ALPS!*
Or ALPS keycaps on Cherry switches!

Please provide info!

User avatar
Mrinterface

05 Dec 2012, 12:09

That's just fantastic work.

You even managed to get those cap converters right!

User avatar
fossala
Elite +1

05 Dec 2012, 12:12

I agree with everybody, amazing work.

User avatar
CeeSA

05 Dec 2012, 12:17

unfortunately it's to late for the Awards 2012!?

Awesome Project. Have you got a cost overview?

User avatar
7bit

05 Dec 2012, 12:19

kbdfr wrote:
7bit wrote:WOW!

I like the key cap converters!

So maybe we could use Cherry keys on ALPS!*
Or ALPS keycaps on Cherry switches!

Please provide info!
ALPS keycaps do not make sense. It is the other way round.

Must get rid of my Round 4 and CherryMX stuff as quickly as possible!
:evilgeek:

BTW: I also like the mount plate and wonder how much it costs, becuase it would be ideal to have something like that istead of a case.

Just that plate with feet underneath!

User avatar
tlt

05 Dec 2012, 12:59

Thanks everyone!
HzFaq wrote:Love it, are you still adding the RasPi?
Yes, that's the plan but right now I'm testing it out with my pc. I hope I can make a nice C64 emulator installation on the RasPi.
REVENGE wrote: The key-cap converters are particularly interesting, could you let us know how much it cost to get that full set printed by Shapeways?
12,65€ for 73 converters
8,86€ for shipment

I'll post some more info about keycap converters soon.
7bit wrote: BTW: I also like the mount plate and wonder how much it costs, becuase it would be ideal to have something like that istead of a case.
I payed 40,5€ for setting up of tools and 46,3 € for the mounting plate.
CeeSA wrote: Have you got a cost overview?
For all my costs? or the cost of the parts? or for what it would cost to make a small batch?

User avatar
CeeSA

05 Dec 2012, 13:17

costs for you, from the scratch. What would you differ from "cost of the parts" and "costs"? Batch costs would be interesting too.

User avatar
philpirj

05 Dec 2012, 15:22

Huge respect for bringing C64 to live in such a manner.
It would be cool to put RPi inside the case and have HDMI, USB and Ethernet on the corner.

User avatar
7bit

05 Dec 2012, 15:40

tlt wrote:I payed 40,5€ for setting up of tools and 46,3 € for the mounting plate.
46 EUR per plate is not too much. Might go down with higher volumes.

Did they have a per-hole price? We might end up doing them with more holes than the C64 needs.

User avatar
RC-1140

05 Dec 2012, 17:54

Fantastic work!

Did you have to modify the case in any way to make the mounting plate fit? Or in other words: Is this mod reversible? So could you mod a C64 to use this keyboard, and mod it back to original afterwards without damage?

I really would feel bad to hurt such a nice thing.

But on the other hand: Now we only need a way to build a case, looking like the old one, which has a mounting option for a Raspberry Pi…

Maybe we could get Cream on Brown Sphericals from GMK…

User avatar
Half-Saint

05 Dec 2012, 19:44

The original C64 keyboard can easily be removed. He built a replacement so he could just take out the new board and put the old one back in.

User avatar
Half-Saint

05 Dec 2012, 19:51

How about a teensy based PCB instead of Arduino?

Findecanor

05 Dec 2012, 21:15

Awesome stuff!

User avatar
tlt

05 Dec 2012, 22:36

7bit wrote:Did they have a per-hole price? We might end up doing them with more holes than the C64 needs.
I don't think the number of holes is that important for the price, more holes takes a little more machine time but the laser cutter is fast. The overhead of machine setup, invoicing, quotation and shipping for small volume is probably the biggest cost for them. The aluminum should be cheep. The offers I got was a little random like 250€ and 50€ (even though he had not managed to open the design file) but most companies didn't even answer my e-mails. I don't think they make any money of an order like mine but it reduces there costs if they are between orders and sometime people do stuff just to be nice. If the order has some volume so that the company can make some money then I think offers will change hopefully to lower prices ;-)

I have used just the mounting plate as a keyboard and I think it's steady enough at least for a small keyboard. The bends makes it stronger. I think a design basted on this concept could make a good looking keyboard. Lets see some design ideas!

Half-Saint wrote:The original C64 keyboard can easily be removed. He built a replacement so he could just take out the new board and put the old one back in.
Thats right, It can be used as a USB keyboard or a replacement keyboard for the original C64 computer.
Half-Saint wrote:How about a teensy based PCB instead of Arduino?
I used Sparkfun ATMEGA32U4 Breakout, a board with the same controller as the Teensy. You can see it in the last picture. It was easier to get hold of in Sweden. I'm not using the Arduino shield any more but it could do the same thing together with a Leonardo.

User avatar
tlt

05 Dec 2012, 23:41

CeeSA wrote:costs for you, from the scratch. What would you differ from "cost of the parts" and "costs"? Batch costs would be interesting too.
This is a approximate cost of the parts used in the keyboard.
Converters 22
Mounting plate 140
PCB 138
keycaps (keyboard) 58
Controller 24
Other components 35
sum: 417 €

I also bought some tools I needed and the experimentation with plastic molding was fun but costly too :-). So the "costs" is even more but I don't know if I like to know the total sum ;-)

If I make keyboard out of the 5 pcbs I got they would end up some where around 200 € I think.
Last edited by tlt on 06 Dec 2012, 07:54, edited 1 time in total.

User avatar
tlt

06 Dec 2012, 07:53

I miscalculated its not 220€ more like below 200. But it much depends on how good quotations I could get on mounting plates.

User avatar
Half-Saint

06 Dec 2012, 13:36

I'd be interested in a PCB and mounting plate but with Teensy instead of this Sparkfun thing :D

I have 5 breadbins, one C64-G and two C-64C back at my parent's house.

User avatar
tlt

06 Dec 2012, 19:25

Half-Saint wrote:I'd be interested in a PCB and mounting plate but with Teensy instead of this Sparkfun thing :D

I have 5 breadbins, one C64-G and two C-64C back at my parent's house.

Great! I got some PCBs, lets see if there is interest for a micro group buy to get mounting plates.

the Sparkfun breakout is basically the same thing as the Teensy with another form factor. You can use a Teensy that only downside is that the PCB has soldering pads for the footprint of the Sparkfun.

User avatar
Half-Saint

07 Dec 2012, 08:55

tlt wrote:
Half-Saint wrote:I'd be interested in a PCB and mounting plate but with Teensy instead of this Sparkfun thing :D

I have 5 breadbins, one C64-G and two C-64C back at my parent's house.

Great! I got some PCBs, lets see if there is interest for a micro group buy to get mounting plates.

the Sparkfun breakout is basically the same thing as the Teensy with another form factor. You can use a Teensy that only downside is that the PCB has soldering pads for the footprint of the Sparkfun.
Well that's not much of a problem. You could still solder the wires from Teensy to the correct pads and glue Teensy to the PCB with some hot glue :D

User avatar
Half-Saint

13 Dec 2012, 22:30

Any news? :)

User avatar
tlt

14 Dec 2012, 07:28

No, should I put up an interest check in the marketplace?

Post Reply

Return to “Workshop”