Author Topic: Pedantic hacker keyboard  (Read 16531 times)

0 Members and 1 Guest are viewing this topic.

Offline regicide

  • Thread Starter
  • Posts: 70
  • Location: Wellington, New Zealand
  • Software developer and Open source hacker
Pedantic hacker keyboard
« on: Thu, 10 March 2011, 03:16:16 »
Just another "keyboard from scratch" project.

More of a work in progress thing right now, hope its ok. Should eventually be something interesting here :)

Basically I wanted a 'quiet' (compared to my MX blue das keyboard), portable (compared to a full sized keyboard), and minimal mechanical keyboard.
The happy hacker keyboard came close, but I couldn't justify the price and it had a lot of things that I didn't find necessary (1 million layers) as well as using Topre switches which I have no experience with.

I was inspired to find out there are similar projects, Humble Hacker Keyboard and the Crappy Keyboard.

So my solution was to spend far more money on making my own keyboard to the exact specs I want it...

Specs:
    [*]Tactile cherry switches
    [*]usb, 6-key rollover
    [*]portable
    [*]'hardware' (on the keyboard) dvorak/qwerty toggle (can actually toggle between any two layouts specified at compile time)
    [*]No wasted keys or space (caps lock removed along with windows key and right modifiers, seldom used keys (delete, f-row, home, end, etc.) moved to another layer
    [*]Portable
    [/LIST]


    Here is my key layout as it stands (please excuse the roughness of it...)

    Black is standard (dvorak), blue is things that I have changed, and red is the second layer (at this point).
    Nothing too exciting... Just all the features I want (or could ever want) in a compact form factor.

    Here are my gorgeous keycaps (only the relevant ones of course, this is basically the look of my keyboard but with the spacing off )


    The recipe so far:
      [*]Cherry MX clears
      [*]Ducky blank keycaps (PBT)
      [*]Teensy 2.0 ++ microcontroller
      [*]Custom PCB (printed by ExpressPCB)
      [*]A lot of time well spent
      [/LIST]


      Things still to solve:
        [*]design of the PCB board
        [*]Write the firmware (already have my teensy and have started, but haven't finalized pcb yet so can only get so far)
        [*]figure out what I'm going to do for a case (rubber, wood, build-into-desk, etc.)
        [/LIST]

        I have started work on the PCB, but it is a lot of slow and manual work to get all the keys into the right position with the correct alignment, spacing, etc.
        « Last Edit: Sat, 12 March 2011, 22:14:03 by regicide »
        2 Kinesis advantages (MX browns)

        Offline Half-Saint

        • Posts: 371
        Pedantic hacker keyboard
        « Reply #1 on: Thu, 10 March 2011, 07:25:55 »
        Interesting project! I suggest you don't bother with a proper case. Just get a metal/plastic rectangular base and attach the PCB with some screws.

        Cheers
        SainT
        IBM Model M (6) - Acer Alcatel 6312-KW - IBM Model M Space Saver - IBM Model M 122-key - Cherry G80-3000 (2) - IBM Model F AT - TG3 BL82A (2)

        [SIGPIC][/SIGPIC]
        _______________________________________________
        My geek blog: http://onlyageek.blogspot.com/
        Flickr: http://www.flickr.com/photos/mr_mayhem/

        Offline regicide

        • Thread Starter
        • Posts: 70
        • Location: Wellington, New Zealand
        • Software developer and Open source hacker
        Pedantic hacker keyboard
        « Reply #2 on: Thu, 10 March 2011, 14:57:19 »
        Quote from: Half-Saint;309050
        Interesting project! I suggest you don't bother with a proper case. Just get a metal/plastic rectangular base and attach the PCB with some screws.

        A 'real case' is damn expensive, just look at the Humble Hacker Keyboard project to see just how much.
        That could work quiet nicely. My dad suggested either a wooden case or to just mount it into my desk >.>

        My PCB wont have solder mask, so I will definitely need to give it a clear coat or something, maybe some rubber feet, but a simple case on the bottom would be great...

        Quote from: acfrazier;309068
        Since you're using a teensy for the controller, you can get full NKRO over USB with some hacks. Ask dfj / Soarer for more about that, as they've written code to do such.


        I remember reading something like that somewhere, but never looked into it. I would love NKRO but need it to be usb for portability (laptops not having ps2 and I cant reboot the uni computers everytime I want to use them, etc). so its fantastic I can have the best of both worlds. Thanks!
        2 Kinesis advantages (MX browns)

        Offline nanu

        • Posts: 290
          • http://T-T.be/portal
        Pedantic hacker keyboard
        « Reply #3 on: Thu, 10 March 2011, 18:20:02 »
        Nice! It seems everyone who isn't buying an compact layout kbd is making their own (I plan to as well!)

        It shouldn't be that difficult to fabricate a nearly bezelless case. You could also consider 90deg angled aluminum (as I've done before) to essentially frame it like a picture.

        Offline digitalleftovers

        • Posts: 645
        Pedantic hacker keyboard
        « Reply #4 on: Thu, 10 March 2011, 18:45:47 »
        The aluminium isn't a bad Idea.  No point in CNC though.  That guy who built the Xbox laptop a few years ago, had a sign shop make the case for him.  Just something to think about.  If I recall correctly it was sheet aluminium of a decent thickness.

        I find the idea of the rubber case intriguing.  It would definitely change the switch sound, and you might be able to cast it yourself.
        Keyboards:
        Filco 104 MX Brown (Otaku) - FKBN104M/NPEK 黒い空
        Ducky TKL MX Brown/Blue 80% (White) - 1087-F 白の空
        KBC Poker MX Red with PBT Key Caps - PFCN6000


        "Consumers use touch screens.  Producers use keyboards."

        Offline regicide

        • Thread Starter
        • Posts: 70
        • Location: Wellington, New Zealand
        • Software developer and Open source hacker
        Pedantic hacker keyboard
        « Reply #5 on: Thu, 10 March 2011, 23:03:47 »
        Quote from: nanu;309494
        Nice! It seems everyone who isn't buying an compact layout kbd is making their own (I plan to as well!)
        Yea it does seem to be a popular trend, but eventually I also plan to buy one (or a few) at later date.
        But the act of making it is equally as important as the end goal, the process is educational (and for me, fun).

        Quote from: nanu;309494
        It shouldn't be that difficult to fabricate a nearly bezelless case. You could also consider 90deg angled aluminum (as I've done before) to essentially frame it like a picture.
        I'm sorry I don't quiet understand what you mean, but I certainly like the idea of it. Mind elaborating?


        Quote from: digitalleftovers;309526
        The aluminium isn't a bad Idea.  No point in CNC though.  That guy who built the Xbox laptop a few years ago, had a sign shop make the case for him.  Just something to think about.  If I recall correctly it was sheet aluminium of a decent thickness.
        A sign shop? that is borderline genius... CNC is far to pricey >.>

        Quote from: digitalleftovers;309526
        I find the idea of the rubber case intriguing.  It would definitely change the switch sound, and you might be able to cast it yourself.
        I like the idea of rubber because it would dampen any sounds as well as provide a nice protective (non-conductive, shock absorving, etc.) cover.
        2 Kinesis advantages (MX browns)

        Offline Ekaros

        • Posts: 942
        Pedantic hacker keyboard
        « Reply #6 on: Fri, 11 March 2011, 09:19:32 »
        Possible to add on pcb desing place for extra key for ISO-layouts? Possible placements on either sides of either Shift keys...
        So I should add something useless here yes? Ok, ok...
        Filco 105-key NKRO MX Browns Sw/Fi-layout|IBM Model M 1394545 Lexmark 102-key Finnish-layout 1994-03-22|Cherry G80-3000LQCDE-2 with MX CLEAR
        [SIGPIC][/SIGPIC]
        Dell AT102W(105-key SF) (Black ALPS)|Steelseries Steelkeys 6G(MX Black) ISO-FI-layout|Cherry G84-4400 G84-4700 Cherry MLs

        Offline Soarer

        • * Moderator
        • Posts: 1918
        • Location: UK
        Pedantic hacker keyboard
        « Reply #7 on: Fri, 11 March 2011, 10:24:58 »
        Scratch built minis are proliferating indeed! I'm quietly doing one as well :)

        For the PCB layout, I'm going to use either PCB or KiCAD - they both use text-based file formats, so it should be a fairly easy job to write a script to get all the switches in the right place. Some of the offsets are a real nightmare otherwise!

        Offline nanu

        • Posts: 290
          • http://T-T.be/portal
        Pedantic hacker keyboard
        « Reply #8 on: Fri, 11 March 2011, 21:00:22 »
        Quote from: regicide;309714
        Mind elaborating?

        Locally-available extruded angled aluminum is cheap. Online you will find ridiculous prices and unclear product descriptions since most raw material suppliers are dumb about non-commercial sales and e-commerce websites.

        Found a link http://www.brunnerent.com/Tools/Portfolio/frontend/item.asp?type=5&size=0&lngDisplay=0&jPageNumber=3&strMetaTag=

        Actually, thinking back on it, it's very straightforward but executing it well is laborious, for a DIY thing. Here's one of my first keyboard mods (from ~2005), which I'm embarrassed to share for obvious reasons.




        As unclearly shown, I cut the aluminum for miter joints. To join them I cut 4 flat L-shaped brackets, 1 for each corner, from not-so-thin sheet metal, and drilled holes. Having not obtained a pop riveter, I used machine screws, sawing them short. Having not wanted to try Bondo or some putty-type filler at the time to hide the screws, I made do with epoxy. I finally followed some ancient painting guides.

        You could alternatively make it a one-piece frame, by bending a single piece of channel after having 45-45-90 trangles cleanly removed at the right intervals, but it's too easy to mess up, and bending weakens it anyhow.

        Offline digitalleftovers

        • Posts: 645
        Pedantic hacker keyboard
        « Reply #9 on: Fri, 11 March 2011, 21:21:15 »
        Your keyboard handle, nanu, made me think that you had used a piece of a 3U rack-mount case.  That looks just like the pulls on the Chenbro server cases that we use at my work.
        Keyboards:
        Filco 104 MX Brown (Otaku) - FKBN104M/NPEK 黒い空
        Ducky TKL MX Brown/Blue 80% (White) - 1087-F 白の空
        KBC Poker MX Red with PBT Key Caps - PFCN6000


        "Consumers use touch screens.  Producers use keyboards."

        Offline laden3

        • Posts: 594
        Pedantic hacker keyboard
        « Reply #10 on: Sat, 12 March 2011, 01:54:06 »
        Have you ever considered integrating the atmega controller with the custom pcb? It makes the final product "cleaner".
        I rrrove brrracks.

        Offline regicide

        • Thread Starter
        • Posts: 70
        • Location: Wellington, New Zealand
        • Software developer and Open source hacker
        Pedantic hacker keyboard
        « Reply #11 on: Sat, 12 March 2011, 21:46:34 »
        Quote from: Ekaros;309867
        Possible to add on pcb desing place for extra key for ISO-layouts? Possible placements on either sides of either Shift keys...

        I'm sorry I don't quiet understand?




        Quote from: Soarer;309898
        Scratch built minis are proliferating indeed! I'm quietly doing one as well :)

        I wish you the best of luck!
        Quote from: Soarer;309898
        For the PCB layout, I'm going to use either PCB or KiCAD - they both use text-based file formats, so it should be a fairly easy job to write a script to get all the switches in the right place. Some of the offsets are a real nightmare otherwise!

        At this point I am using expressPCB because I am thinking of getting them to print my board for me (standard, so no silkscreen or soldershield, but its a LOT cheaper).

        There program uses some proprietary format though, so it's all 'by hand'. However I think they allow you to create a component and then just stamp it around, however the stamping is still manual.

        Quote from: laden3;310305
        Have you ever considered integrating the atmega controller with the custom pcb? It makes the final product "cleaner".

        My teensy will be soldered directly onto the pcb yes, is that what you meant? Or were you talking to nanu?




        Quote from: nanu;310219
        Locally-available extruded angled aluminum is cheap. Online you will find ridiculous prices and unclear product descriptions since most raw material suppliers are dumb about non-commercial sales and e-commerce websites.p

        Thank you for that, and I quite like the finish of it too.
        As for using aluminium, care will have to be taken to not contact anything electrical on the pcb...

        Quote from: nanu;310219

        Actually, thinking back on it, it's very straightforward but executing it well is laborious, for a DIY thing. Here's one of my first keyboard mods (from ~2005), which I'm embarrassed to share for obvious reasons.

        You could alternatively make it a one-piece frame, by bending a single piece of channel after having 45-45-90 trangles cleanly removed at the right intervals, but it's too easy to mess up, and bending weakens it anyhow.

        Is that... dome? Or maybe scissors?
        I quite like the look of it, very professional (looking down on it anyway :p), I really like how the edges of the keys are the edge of the board, as in there is no obvious protruding edge, very clean.
        What spacing did you use between the keys?

        I think using 4 pieces is the way to go, hopefully I can find somewhere/one locally here to do it for me.

        If my board comes even close to the look of yours, I will be very happy!
        2 Kinesis advantages (MX browns)

        Offline nanu

        • Posts: 290
          • http://T-T.be/portal
        Pedantic hacker keyboard
        « Reply #12 on: Sun, 13 March 2011, 08:10:07 »
        Everyone was imitating the bezelless Apple Keyboard that came out in ~2005. Dell's infamous trayed keyboard design, you have surely seen it. I hated typing on both of these boards lol

        These are scissor-switches, which I much prefer over normal rubberdomes. Tactile, shorter stroke, quieter, more consistent actuation force. The frame I cut is more or less flush with the keys. I only retrofitted the Zippy WK-711 onto it because of an earlier failed attempt with some no-name keyboard, where it looked cleaner because I had cut past/under the keycaps so it would sit right inside of the frame.

        I consider the project a failure since I had cut the unused multimedia key membranes but inadvertently also cut the line for the Shift keys, and now it's pointless to fix since I've discovered mechanical keyswitch keyboards ;)

        Good luck if you decide to go this route. I cut my thumb using a Dremel for this mod (expending plenty of cutting wheels, especially for the inclined sides), so if you can get someone to do it for you I wonder what they'd charge.

        Miter-joining aluminum should be a common thing to do for picture frames, I imagine. If you can find a different extrusion profile for the aluminum channel (like a modified T-track) that would make it easier too.
        « Last Edit: Sun, 13 March 2011, 08:47:00 by nanu »

        Offline Soarer

        • * Moderator
        • Posts: 1918
        • Location: UK
        Pedantic hacker keyboard
        « Reply #13 on: Sun, 13 March 2011, 09:15:16 »
        Quote from: regicide;310840
        At this point I am using expressPCB because I am thinking of getting them to print my board for me (standard, so no silkscreen or soldershield, but its a LOT cheaper).

        Seems to be what a lot of people use! I'm thinking of using PCBwing to make mine. They aren't much cheaper for small batches of basic boards (i.e. standard), but they are for boards with solder mask and silk screen etc. (pricing mine up, it only came to about $30 more than the basic setup).

        Quote from: regicide;310840
        There program uses some proprietary format though, so it's all 'by hand'. However I think they allow you to create a component and then just stamp it around, however the stamping is still manual.

        Yes, you should be able to make a component. But still, ouch - some of the calculated positions on mine were down to 0.00005 of an inch (beyond the resolution of the software, so rounded to 0.0001). KiCAD has its flaws, but scripting the positions worked great! I also scripted the tracks going between the switch and the diode part of the Cherry switch. (Both just with Perl scripts modifying the saved file).

        Can ExpressPCB do auto-routing, or at least design rule checking (DRC)? Because then it would be worth drawing a schematic as well, even with simple designs it's easy to make a mistake that's hard to spot.

        Offline bpiphany

        • Posts: 1033
        • Location: Stockholm, Sweden
        • bpiph is a special type of crazy. //mkawa
        Pedantic hacker keyboard
        « Reply #14 on: Sun, 13 March 2011, 10:16:02 »
        I'm trying out the eagle cad program for pcb designing myself. It outputs gerber files which many of the custom pcb companies seems to handle. It has autorouting and schematic functionality. I think expressPCB at least has some schematic thing, which I didn't try when I was tinkering with it. ExpressPCB is pretty user friendly at least although proprietary file formats feels sort of like a dead end. I've read that eagle's autorouting isn't very good but it seems to at least be able to do the relatively simple layout of a keyboard without any problems.

        I found this site here somewhere http://batchpcb.com/ They also seem as expensive as expressPCB's budget boards but then comes with solder masks and everything extra.


        I think that soldering a teensy board to the pcb is the easy and straight forward route. Putting the ATmega controller directly on the board requires soldering a lot of extra tiny components and getting some kind of programmer for the chip. I don't know if it would even be any cheaper at all.
        « Last Edit: Sun, 13 March 2011, 10:18:35 by PrinsValium »

        Offline regicide

        • Thread Starter
        • Posts: 70
        • Location: Wellington, New Zealand
        • Software developer and Open source hacker
        Pedantic hacker keyboard
        « Reply #15 on: Mon, 21 March 2011, 05:10:13 »
        Quote from: Soarer;310943
        Seems to be what a lot of people use! I'm thinking of using PCBwing to make mine. They aren't much cheaper for small batches of basic boards (i.e. standard), but they are for boards with solder mask and silk screen etc. (pricing mine up, it only came to about $30 more than the basic setup).
        Just looked at batchPCB now...

        Quote from: Soarer;310943
        Yes, you should be able to make a component. But still, ouch - some of the calculated positions on mine were down to 0.00005 of an inch (beyond the resolution of the software, so rounded to 0.0001). KiCAD has its flaws, but scripting the positions worked great! I also scripted the tracks going between the switch and the diode part of the Cherry switch. (Both just with Perl scripts modifying the saved file).

        Also looking at KiCAD now (if the download ever finished...), after trying to place all the parts by hand in expressPCB I have realised it's (many) flaws and would love to be able to do it by script (I am a perl/python/c programmer) just need to figure out the format.



        Quote from: PrinsValium;310956

        I found this site here somewhere http://batchpcb.com/ They also seem as expensive as expressPCB's budget boards but then comes with solder masks and everything extra.

        At this point in time I might be trying them instead of express, will let me use any software I want rather than some proprietary hunk of junk as well as having a lot of good stuff being said about them around the interwebs.

        Quote from: PrinsValium;310956

        I think that soldering a teensy board to the pcb is the easy and straight forward route. Putting the ATmega controller directly on the board requires soldering a lot of extra tiny components and getting some kind of programmer for the chip. I don't know if it would even be any cheaper at all.

        I don't even think this is feasible, especially because I already have a teensy sitting next to me and it makes everything much simpler...


        I have spent a LONG time trying to get the dimensions just right for my keys, something never quiet adds up. Currently the width for a row (all keys with 1mm spacing between keys) means every row is 283mm ESCAPE the row containing the space bar, this is beginning to drive me insane.... micrometers, vernier calipers, and even a damn ruler have been thrown into this problem and there are still inconsistencies >.>
        I guess being off by a small amount isn't the end of the world...
        2 Kinesis advantages (MX browns)

        Offline Soarer

        • * Moderator
        • Posts: 1918
        • Location: UK
        Pedantic hacker keyboard
        « Reply #16 on: Mon, 21 March 2011, 07:56:27 »
        Couple of attachments you might find useful... the few symbols and footprints I've made for MX stuff in KiCAD (extract .mod to KiCAD/share/module and .lib to KiCAD/share/library), and my Perl script for doing the layout. The script repositions and annotates footprints already in the PCB file, so they need adding first (either by export from the schematic or manually in the PCB editor). Of course, the script is for my layout so it will need changing!
        « Last Edit: Mon, 21 March 2011, 08:07:14 by Soarer »

        Offline heedpantsnow

        • * Esteemed Elder
        • Posts: 3692
        • Location: Orlando, FL
        • Old enough to know better
        Pedantic hacker keyboard
        « Reply #17 on: Tue, 22 March 2011, 03:35:42 »
        Wow, I SO love this thread!
        I'm back.

        Espresso machine overhaul: https://geekhack.org/index.php?topic=78261.0

        Carbon Fiber keyboard base: https://geekhack.org/index.php?topic=54825

        Offline DaemonRaccoon

        • Posts: 333
        Pedantic hacker keyboard
        « Reply #18 on: Tue, 22 March 2011, 10:19:10 »
        Soarer, thanks for the MX symbol, that's going to be helpful for my mini. Now I just need to figure out how KiCAD works...
        122-Key Model F 6110345 1985-03-01 | Model M SSK 1391472 1991-01-22 | Rosewill RK-9000 v1 | KBC Poker X | Filco FKBN87M/PWE2

        Offline regicide

        • Thread Starter
        • Posts: 70
        • Location: Wellington, New Zealand
        • Software developer and Open source hacker
        Pedantic hacker keyboard
        « Reply #19 on: Wed, 23 March 2011, 02:24:17 »
        Quote from: Soarer;315184
        Couple of attachments you might find useful... the few symbols and footprints I've made for MX stuff in KiCAD (extract .mod to KiCAD/share/module and .lib to KiCAD/share/library), and my Perl script for doing the layout. The script repositions and annotates footprints already in the PCB file, so they need adding first (either by export from the schematic or manually in the PCB editor). Of course, the script is for my layout so it will need changing!

        Awesome work!
        The cherry mx module works great, perfect for my needs xD Should have the pcb done in no time.... just need to get those damn key measurements correct. Printed out your perl script and will hopefully be able to have a look at it tomorrow on the train.
        Great work, and thanks again!

        Quote from: heedpantsnow;315793
        Wow, I SO love this thread!

        I have received lots of great help from the geekhack community, the project is coming along nicely and I am glad there are so many interested people willing to share their experience!

        Quote from: DaemonRaccoon;315922
        Soarer, thanks for the MX symbol, that's going to be helpful for my mini. Now I just need to figure out how KiCAD works...

        I was sitting their in expressPCB trying to get something similar to this, its just fantastic! Now I can just stamp them at the appropriate locations and then do the routing :)
        2 Kinesis advantages (MX browns)

        Offline PikachuDX

        • Posts: 37
        Pedantic hacker keyboard
        « Reply #20 on: Fri, 25 March 2011, 18:56:35 »
        I thick aluminuim shell would be great.

        Or a really nice piece of wood. ;)

        Offline regicide

        • Thread Starter
        • Posts: 70
        • Location: Wellington, New Zealand
        • Software developer and Open source hacker
        Pedantic hacker keyboard
        « Reply #21 on: Fri, 25 March 2011, 23:35:18 »
        Quote from: PikachuDX;318605
        I thick aluminuim shell would be great.

        Or a really nice piece of wood. ;)

        My mate at uni the other day mentioned PVC or some other plastic that you can heat and then bend, so I could lay it out and just heat around the PCB to get a case to fit nice and snugly, so we will have to see what I decide to go with... Could even try both and decide what I like better.

        One point in favour of aluminium is I could also make a slightly larger shell that I could use as a lid of sorts (like some pencil cases), guess I could do the same thing with plastic as well though...
        If I did go with aluminium, I would probably have to put some rubber on the underside so it doesn't amplify the sound and/or slide around the desk like crazy.
        2 Kinesis advantages (MX browns)

        Offline PikachuDX

        • Posts: 37
        Pedantic hacker keyboard
        « Reply #22 on: Sat, 26 March 2011, 06:16:01 »
        Ah yeah, I remember using some similar vacuum acrylic stuff at school. That could also work.

        Offline bpiphany

        • Posts: 1033
        • Location: Stockholm, Sweden
        • bpiph is a special type of crazy. //mkawa
        Pedantic hacker keyboard
        « Reply #23 on: Sat, 26 March 2011, 16:08:34 »
        Quote from: Soarer;315184
        Couple of attachments you might find useful... the few symbols and footprints I've made for MX stuff in KiCAD (extract .mod to KiCAD/share/module and .lib to KiCAD/share/library), and my Perl script for doing the layout. The script repositions and annotates footprints already in the PCB file, so they need adding first (either by export from the schematic or manually in the PCB editor). Of course, the script is for my layout so it will need changing!

        I took the liberty to play around with your library file. I added the teensy controllers and made footprints for more of the MX variants. I also added outline frames for many key widths. The c-c distance on the lines are 0.75" vertically and N x 0.75" horizontally, meaning they should overlap if placed correctly. I think I did it all right... Changed some names and probably did some other damage (-;

        It took a while to get the hang of this KiCad thing but I'm liking it more and more =)

        Edit: And also, there is no need to put the library files under the program directory path. At least I was able to add libraries to my project under preferences in the schematics and pcb program windows.
        « Last Edit: Sat, 26 March 2011, 16:24:24 by PrinsValium »

        Offline Soarer

        • * Moderator
        • Posts: 1918
        • Location: UK
        Pedantic hacker keyboard
        « Reply #24 on: Sat, 26 March 2011, 17:35:41 »
        Ah, cool - it's true, I only did the one I wanted to use :-)

        Not sure about the key outlines, because my script expects all switches to be the same.
        Tweaking the script is waaaay less tedious than placing switches precisely :-)

        I started thinking about making some proper stabilizer footprints, but I couldn't get the measurements to match up between the Cherry docs and real Cherry PCBs - it seemed ok for the double width one (shift, backspace, enter etc), but for spacebars it seemed slightly off :-/
        edit: Never mind, it's just the Compaq MX11800 one that's a little strange, and the stabilizers have plenty of slack in them anyway :-)
        « Last Edit: Sat, 26 March 2011, 21:23:42 by Soarer »

        Offline bpiphany

        • Posts: 1033
        • Location: Stockholm, Sweden
        • bpiph is a special type of crazy. //mkawa
        Pedantic hacker keyboard
        « Reply #25 on: Sun, 27 March 2011, 02:23:40 »
        The frames are thought of more as a safety procedure, to see that key distances are correct. I like to have them when I place keys of different widths next to eachother. The distance between two keys should of course be half the width of the first plus half the width of the other, or equivalently their average width. I somehow manage to mess this up from time to time =P

        When I used eagle's pcb program I first did different devices for each key width. That made a mess when I wanted to change some keys. Had to replace them in the schematic with the new one to not mess up the schematics check and then place them again by hand. Then I changed to having frames and all keys the same device. The frames can be placed afterwards in the PCB editor to see that everything looks correct.

        And, yes, everyone seem to do their stabilizer widths differently..

        Offline Soarer

        • * Moderator
        • Posts: 1918
        • Location: UK
        Pedantic hacker keyboard
        « Reply #26 on: Sun, 27 March 2011, 07:11:15 »
        Ok, I understand what you mean now :) I wonder if it would be worth adding some with the origin where the switch would be (since space bars are often off-centre)? Although, what I did on my layout was simply make sure the space switch was on the 25 mil grid, which made placing the stabilzer pieces easy, and that would likely work just as well for the frame.

        Offline regicide

        • Thread Starter
        • Posts: 70
        • Location: Wellington, New Zealand
        • Software developer and Open source hacker
        Pedantic hacker keyboard
        « Reply #27 on: Sun, 17 April 2011, 23:49:02 »
        All my rows (with 1 mm spacing between keys) seem to add up to the same number EXCEPT for my space bar row which is shy by a few mm, im using ducky PBT key caps.
        Does anyone have measurements of their keys (doesn't have to be the same keys, but if they are it would help) and/or information on key spacing?

        I will  re-re-re-re-re-check my measurements tonight and post the results here.
        2 Kinesis advantages (MX browns)

        Offline bpiphany

        • Posts: 1033
        • Location: Stockholm, Sweden
        • bpiph is a special type of crazy. //mkawa
        Pedantic hacker keyboard
        « Reply #28 on: Mon, 18 April 2011, 01:55:38 »
        Quote from: regicide;332542
        All my rows (with 1 mm spacing between keys) seem to add up to the same number EXCEPT for my space bar row which is shy by a few mm, im using ducky PBT key caps.
        Does anyone have measurements of their keys (doesn't have to be the same keys, but if they are it would help) and/or information on key spacing?

        I will  re-re-re-re-re-check my measurements tonight and post the results here.

        The spacing is probably not supposed to be as much as a full mm, then the larger amount of spaces in the other rows make them wider than the space bar row. Keys should as you probably know sit at 0.75" intervals. I take it you dont own a caliper to measure them? You might try to scan a key next to a good ruler. I find that technique useful sometimes when it's hard to get a good measurement with calipers. I think every basic image editors should have some sort of distance measuring tool.
        « Last Edit: Mon, 18 April 2011, 02:11:16 by PrinsValium »

        Offline regicide

        • Thread Starter
        • Posts: 70
        • Location: Wellington, New Zealand
        • Software developer and Open source hacker
        Pedantic hacker keyboard
        « Reply #29 on: Mon, 18 April 2011, 02:36:27 »
        Quote from: PrinsValium;332588
        The spacing is probably not supposed to be as much as a full mm, then the larger amount of spaces in the other rows make them wider than the space bar row.

        Spacing of 1mm is the only way I could get the other rows to be of the same length, also: see below.

        Quote from: PrinsValium;332588
        Keys should as you probably know sit at 0.75" intervals.

        I had to use google to convert that to mm >.>
        When you say 0.75" intervals I presume you are only talking about alphanumeric.
        That makes 19mm (19.05 actually) my alphanumeric keys are just shy of 18mm (very close, sometimes .02 of a mm off) so with a 1mm space that math adds up :thumb:

        Quote from: PrinsValium;332588
        I take it you dont own a caliper to measure them? You might try to scan a key next to a good ruler. I find that technique useful sometimes when it's hard to get a good measurement with calipers. I think every basic image editors should have some sort of distance measuring tool.

        Haha nice tip, however I am measuring with both a micrometer and vernier caliper (in case either is off).



        I found some of my old measurements laying around my room
        row |keys |with spacing(1MM)
        1----271---284
        2----270---283
        3----271---283
        4----272---283
        5----278---285

        and then some later measurements gave me (again, with spacing of 1mm)
        284, 284, 283.5, 284, 282
        Both aren't too bad.
        I don't like dealing with such fine measurements :yuck:
        2 Kinesis advantages (MX browns)

        Offline bpiphany

        • Posts: 1033
        • Location: Stockholm, Sweden
        • bpiph is a special type of crazy. //mkawa
        Pedantic hacker keyboard
        « Reply #30 on: Mon, 18 April 2011, 04:02:19 »
        Two alphanumeric keys (or 1x width) are mounted on 0.75" center-to-center, that is some kind of standard. (Or 19.05mm, but it looks like the standard is in inch... other than that I usually prefer metric.) Alll other keys are usually in 1.25X, 1.5X 1.75X 2.0X 2.25X 2.75X widths and two keys should be placed with their average width center-to-center. Signature plastics list their spacebar (<- link) of width fitting the setup with seven 1.25x keys as being 6.20X wide, so if the duckys are alike their should be 0.05X key widths missing on that row, or 0.9525mm.

        Offline Soarer

        • * Moderator
        • Posts: 1918
        • Location: UK
        Pedantic hacker keyboard
        « Reply #31 on: Mon, 18 April 2011, 04:04:33 »
        Quote from: regicide;332596
        When you say 0.75" intervals I presume you are only talking about alphanumeric.

         
        All the key spacings are based on 0.75" intervals in some way; consider it the unit, rather than inches or mm. Then, for example, Tab has a width of 1.5 units, and the switch centre is offset 1 unit down and 0.75 units left of the centre of the '1' key. The centre of Q is (1.5 + 1) / 2 units to the right of Tab. Gaps are usually based on that as well: 1 unit between Esc and F1, 0.5 between F4 and F5, 0.5 between right ctrl and the left arrow of the cursor block etc.

        The small gaps between keys can be ignored when working out where the switches go on the PCB, just think of the switch centers, which makes it a lot easier :-)

        Offline bpiphany

        • Posts: 1033
        • Location: Stockholm, Sweden
        • bpiph is a special type of crazy. //mkawa
        Pedantic hacker keyboard
        « Reply #32 on: Mon, 18 April 2011, 04:09:03 »
        Quote from: regicide;332596
        I don't like dealing with such fine measurements :yuck:

        I own a 1800mm spirit level, nothing is straight with that sucker... But it is great for getting shelves and kitchen tops visibly straight.
        « Last Edit: Mon, 18 April 2011, 06:07:33 by PrinsValium »