Alps plate spring custom build log (work in progress)

User avatar
snacksthecat
✶✶✶✶

30 Mar 2019, 00:47

Image

Hi guys, I'm embarking on a new journey. I'd like to do a custom Alps plate spring keyboard. Hasu's PCB library includes footprints for this type of switch so I'm very happy to find that out. But I'm wondering: why are there so many pins? I'm used to switches having just two pins so I'm both personally curious as well as interested for the purpose of this project. Can anybody out there enlighten me? Thank you
Last edited by snacksthecat on 31 Mar 2019, 18:50, edited 1 time in total.

User avatar
snacksthecat
✶✶✶✶

30 Mar 2019, 04:49

I wasn't finding any photos of these switches online so I decided to take some. Sorry for the poor quality. I was using a broken lens.

Image

Image

Image

Image

Image

User avatar
E3E

30 Mar 2019, 05:25

The extra pins are fixing pins for the PCB-mount variant of these that do not have plates. So, if you have plate-mount switches along with a plate, you don't really need to worry about them.

Findecanor

30 Mar 2019, 10:09

Another issue is that many older keyboards were built with one-sided PCBs. Because rows and columns would naturally cross each-other, this made routing the traces on the PCB more difficult.
Many PCBs have jumper wires in at least a couple places to achieve that. But to avoid shorts, you would want to avoid having them exposed.

It looks like the extra pins for PCB-mounted variant act as a jumper: you see that two pads are labelled with the same number.
You will see the same thing on Cherry G80-series keyboards with one-sided PCBs and PCB-mounted switches but not NKRO: each MX switch has a jumper wire inside. Almost all jumper wires are connected and used as jumpers, not merely to stabilise the switches.

Some other switch types have instead a terminal with two pins: making the terminal also act as a jumper, but then a diode for N-key rollover would need to be connected to the other terminal that isn't a jumper.

User avatar
snacksthecat
✶✶✶✶

30 Mar 2019, 16:02

Thanks fellas. Since mine are platemount, I edited the footprint to look like this:

Image
  • Removed the additional pads
  • Added the cutout as a reference point for placing diodes
I know I've encountered switches that had pins acting as jumpers but I can't remember what kind of switches had that.
Attachments
ALPS_PLATE_SPRING_PLATE_MOUNT.zip
(619 Bytes) Downloaded 20 times

User avatar
snacksthecat
✶✶✶✶

30 Mar 2019, 16:06

By the way, these bind pretty badly and will definitely need lubing. I'm wondering if there's any way to do it without opening the switch. They're quite tedious to open but maybe I'm just doing it wrong.

User avatar
Drclick

30 Mar 2019, 19:38

I made a alps plate spring pcb before and I think you'd better set pads' position X to -6.25 :D

User avatar
snacksthecat
✶✶✶✶

30 Mar 2019, 20:51

Drclick wrote:
30 Mar 2019, 19:38
I made a alps plate spring pcb before and I think you'd better set pads' position X to -6.25 :D
Thanks for the tip! I made the adjustment. Probably it would work either way but maybe this is a more true fit based on your experience.

User avatar
snacksthecat
✶✶✶✶

31 Mar 2019, 00:56

I'm using Toper again for autorouting. This is what it looks like while it's working its magic:

Image

User avatar
snacksthecat
✶✶✶✶

31 Mar 2019, 19:23

Decided to try something different this time around. I've used Lasergist three or four times in the past with great results. Every plate has come out perfectly from them. However, those each took weeks to cut and deliver and I'd like to get something a bit sooner than that.

So this time I'm trying out the service from LaserBoost. The website is very intuitive and offers instant quotes based on a design file, which is great. My design actually came out much cheaper than I expected, so I hope I did it correctly. These guys claim to offer quick turn around so we'll also see how that pans out.

Here's my plate design. I'm hoping that I got the stabilizer cutouts right because it's a bit funky with these fatter switches. I know that the outline cuts are good because I had these prototyped in PETG from Ponoko for a different project and reused those cuts here.

Image

In the meantime, I'm playing around with different PCB component placement and Topor autorouting settings. I totally redesigned the key matrix to optimize routing so it comes out much cleaner now (shorter overall track length and via count). It also looks more aesthetically pleasing. I'm still a little bit frustrated that the Topor output usually has about 100 design violations after running. These are easy enough to clean up but it'd just be nice if it had more respect for those rules.

Anyways, this is my new schematic. It more closely resembles the actual layout of the keyboard.

Image

In order to stay within the constraints of Topor Lite, I had to reduce the total number of nets by just a few. So I simply looked for columns with fewer switches and shuffled those switches to nearby empty spots, in order to eliminate those sparse columns. Now the ratsnest looks like a nice spiderweb.

Image

There are of course other things I could do to optimize the design but those may be above my skill level. For instance, the pins used on the MCU could be shuffled around to route more optimally to the connected row/col positions. Topor has a tool/option called "pin swaping" which (I think) may do this automatically, but I'm not sure. Maybe I'll pop on a movie today and reassign the pins manually.

From time to time I've been using Hasu's Alps64 PCB design as a reference. I have major respect for how well thought through that design is. I'm making tweaks here and there in certain areas but that design has been thought out in a holistic sense.

Another thing I might do is add support for additional layouts. Since the lowest order quantity I can find for PCB fabrication is 5 units, it's pretty wasteful to toss the 4 extra PCBs (this layout is probably not very useful to most people). If this supported another, more standard layout; maybe I'd be able to offload the extras to some other people. Would anyone be interested in one of these Alps plate spring PCBs if I were to do that? Price would be $10.

User avatar
snacksthecat
✶✶✶✶

01 Apr 2019, 18:42

I found out that I can buy a single board from EuroCircuits. In order to get the most bang for my buck, I'm going to have two boards printed together.

The second board I routed by hand since it exceeds the limits of TopoR Lite. It actually wasn't as painful as I expected. Kicad does a really nice job suggesting paths. And as long as you follow your own rules and stay consistent, things don't get too crazy.

Image

User avatar
snacksthecat
✶✶✶✶

05 Apr 2019, 14:18

In the end, I decided to place an order using Gold Phoenix's PCB pool service. I'm really excited because this is exactly the service I've been looking for. They're able to accommodate orders as small as 1 pcs and you only pay for shipping once. So I separated the designs back into two separate boards (to avoid any problems).

User avatar
snacksthecat
✶✶✶✶

19 Apr 2019, 23:04

Image

I got the pcb and plate in this week. I'm really happy with how both turned out.

User avatar
JP!

19 Apr 2019, 23:10

This is gonna be good :)

User avatar
snacksthecat
✶✶✶✶

20 Apr 2019, 01:56

JP! wrote:
19 Apr 2019, 23:10
This is gonna be good :)
I'm excited as well! Hopefully this weekend I'll get it built.

For now, just having fun with lighting and a new camera lens. This plate looks pretty.

Image

Image

Image

Image

Image

Image

Image

User avatar
abrahamstechnology

20 Apr 2019, 17:50

How did you design the plate? Manually or with a tool like swills?

User avatar
snacksthecat
✶✶✶✶

20 Apr 2019, 17:56

I did it manually mostly in kicad using Hasu's footprint library.

https://github.com/tmk/keyboard_parts.pretty

Then switched over to Inkscape to tweak things.

User avatar
snacksthecat
✶✶✶✶

21 Apr 2019, 01:18

Image

User avatar
snacksthecat
✶✶✶✶

23 Apr 2019, 00:51

THERE ARE TWO KINDS OF PLATE SPRINGS?!

(sorry if everyone already knew this)

Delirious

23 Apr 2019, 01:27

There are and there arent. There are 3 types of alps plate springs but they are mostly just the usual inconsistency of Alps Electric. They function exactly the same from one to another. So you have:
1. 2-pins Plate mount APS
2. 6-pins Square pcb-mount APS, sometimes the top housings are black, sometimes they are grey
3. 4-pins Battleship pcb-mount APS

Image
Image
Image

User avatar
swampangel

23 Apr 2019, 04:16

snacksthecat wrote:
23 Apr 2019, 00:51
THERE ARE TWO KINDS OF PLATE SPRINGS?!
Uh oh :|

User avatar
snacksthecat
✶✶✶✶

23 Apr 2019, 04:45

Delirious wrote:
23 Apr 2019, 01:27
Spoiler:
There are and there arent. There are 3 types of alps plate springs but they are mostly just the usual inconsistency of Alps Electric. They function exactly the same from one to another. So you have:
1. 2-pins Plate mount APS
2. 6-pins Square pcb-mount APS, sometimes the top housings are black, sometimes they are grey
3. 4-pins Battleship pcb-mount APS

Image
Image
Image
Thank you for those pictures! The reason I freaked out is because I tried to mount a switch and it went right through the hole. So I assumed that the cutout measurements were wrong or something. I had bought ~100 extra plate spring switches for using in this project. The reason I bought these extra switches was because I wanted to keep my original keyboard intact.

Luckily the APS switches on my board are the plate mount variety so I was able to desolder those. Here's a little clip of what I was talking about in the paragraph above.
This evening I put on a movie and desoldered the plate mount switches. I got them mounted on the plate and took a few photos:

Image

Image

Image

Image

User avatar
snacksthecat
✶✶✶✶

24 Apr 2019, 02:51

I'm done!!!

This is my first time actually building a keyboard from the ground up (never actually used my mini alps thing). Some day I hope to do the case as well.

Here are some pictures of the finished product

Image

Image

Image

Image

Image

Image

Image

Image

Image

User avatar
JP!

24 Apr 2019, 03:49

:o :o :o

User avatar
abrahamstechnology

24 Apr 2019, 03:52

Great job!

User avatar
ZedTheMan

24 Apr 2019, 04:17

Wow snacks!

That is an excellent custom!

User avatar
//gainsborough
ALPSの日常

24 Apr 2019, 04:20

You finished!!! Looks amazing, dude!!!

edit: requesting typing vid!!!!

User avatar
depletedvespene

24 Apr 2019, 04:22

Woah.

I mean... WOAH.

niveker2

24 Apr 2019, 04:45

Good job, David!

User avatar
swampangel

24 Apr 2019, 15:52

Beautiful!
//gainsborough wrote:
24 Apr 2019, 04:20
edit: requesting typing vid!!!!

Post Reply

Return to “Workshop”