Grab a beverage of your choice, everyone. This ought to be informative!matt3o wrote:I'm taking photos of the whole process, I'm finishing it right now. I'd say in a couple of hours should be ready
Building a custom keyboard from the ground up
- Muirium
- µ
- Location: Edinburgh, Scotland
- Main keyboard: HHKB Type-S with Bluetooth by Hasu
- Main mouse: Apple Magic Mouse
- Favorite switch: Gotta Try 'Em All
- DT Pro Member: µ
- suka
- frobiac
- Location: Germany
- Main keyboard: custom split ergonomic "RedTilt"
- Main mouse: IBM trackpoint
- Favorite switch: MX red
- DT Pro Member: 0046
I expect another outstanding documentary - but judging from the assembly teaser you will not disappoint usmatt3o wrote:I'm taking photos of the whole process, I'm finishing it right now.
Yeah, that's about what it takes to wire up a matrix without PCB, I know - once you're experienced with it! It took me only 2 hours per half this time (plus another one for teensy and cabling) without producing a single error! Hope you have equal success with your fox, looking forward to seeing the results.matt3o wrote: I'd say in a couple of hours should be ready
- matt3o
- -[°_°]-
- Location: Italy
- Main keyboard: WhiteFox
- Main mouse: Anywhere MX
- Favorite switch: Anything, really
- DT Pro Member: 0030
- Contact:
- Muirium
- µ
- Location: Edinburgh, Scotland
- Main keyboard: HHKB Type-S with Bluetooth by Hasu
- Main mouse: Apple Magic Mouse
- Favorite switch: Gotta Try 'Em All
- DT Pro Member: µ
An LED in each switch, all wired up together (for a uniform backlight) with appropriate resistors to the main power rail on the Teensy. I'm not sure how you'd turn them on and off. And you definitely couldn't do fancy animated patterns without a whole second controller.
Has anyone actually gone ahead and backlit their own hand wired keyboard yet? I was thinking of it originally, but got into thick high end caps and forgot all about LEDs.
Has anyone actually gone ahead and backlit their own hand wired keyboard yet? I was thinking of it originally, but got into thick high end caps and forgot all about LEDs.
- Muirium
- µ
- Location: Edinburgh, Scotland
- Main keyboard: HHKB Type-S with Bluetooth by Hasu
- Main mouse: Apple Magic Mouse
- Favorite switch: Gotta Try 'Em All
- DT Pro Member: µ
The keyboard matrix is strobed and sensed. One row gets strobed (set high or low, I don't know which) while the columns are read simultaneously by the Teensy. Then it's the next row's turn, and so on, a thousand times a second.
The firmware I use for custom keyboards (Soarer's Controller) doesn't support a separation between the lock lights and their functions. Besides, I think there is a current limit per pin on the Teensy that would get right in the way of hooking up many LEDs. That limit does not apply to the GND and VCC lines, which go straight to the USB cable and the host, although I think there is an overall power limit to bear in mind as well. I don't know whether this is the usual 100 mA or some lower figure to protect the Teensy.
The firmware I use for custom keyboards (Soarer's Controller) doesn't support a separation between the lock lights and their functions. Besides, I think there is a current limit per pin on the Teensy that would get right in the way of hooking up many LEDs. That limit does not apply to the GND and VCC lines, which go straight to the USB cable and the host, although I think there is an overall power limit to bear in mind as well. I don't know whether this is the usual 100 mA or some lower figure to protect the Teensy.
- gogusrl
- Location: Romania
- Main keyboard: Cherry G80-1851
- Main mouse: Logitech G9x
- Favorite switch: linear stuff
- DT Pro Member: -
I think this is the best thread to ask for some help.
I finally decided to build my first hand-wired keyboard. After pulling my hair out with various cad software, I found swill's plate building tool ( http://builder.swillkb.com/ )
Now I have a few questions :
1. how to I convert the resulting stl/brp/stp to a 2d dwg / dxf / cdr for cnc/laser cutting (everything i've tried gives me a 3d mesh)
2. i plan to use a promicro because i'm cheap and haven't really soldered before. what's the max number row/columns i can use with it ?
3. would anyone be kind enough to take a quick look at the plate and let me know if there's any glaring mistakes ?
Here's the layout I'm looking for and attached is are the 3 output files.
I finally decided to build my first hand-wired keyboard. After pulling my hair out with various cad software, I found swill's plate building tool ( http://builder.swillkb.com/ )
Now I have a few questions :
1. how to I convert the resulting stl/brp/stp to a 2d dwg / dxf / cdr for cnc/laser cutting (everything i've tried gives me a 3d mesh)
2. i plan to use a promicro because i'm cheap and haven't really soldered before. what's the max number row/columns i can use with it ?
3. would anyone be kind enough to take a quick look at the plate and let me know if there's any glaring mistakes ?
Here's the layout I'm looking for and attached is are the 3 output files.
- Attachments
-
- plate.rar
- (417.21 KiB) Downloaded 229 times
- Halvar
- Location: Baden, DE
- Main keyboard: IBM Model M SSK / Filco MT 2
- Favorite switch: Beam & buckling spring, Monterey, MX Brown
- DT Pro Member: 0051
Pro micro:
https://www.sparkfun.com/products/12640
So 18 GPIOs, which means (#rows + #columns) <= 18
Teensy 2.0: 24
Teensy++ 2.0: 36
---
EDIT: 18
https://www.sparkfun.com/products/12640
So 18 GPIOs, which means (#rows + #columns) <= 18
Teensy 2.0: 24
Teensy++ 2.0: 36
---
EDIT: 18
Last edited by Halvar on 29 Jan 2015, 15:27, edited 3 times in total.
- Nuum
- Location: Germany
- Main keyboard: KBD8X Mk I (60g Clears), Phantom (Nixdorf Blacks)
- Main mouse: Corsair M65 PRO RGB
- Favorite switch: 60g MX Clears/Brown Alps/Buckling spring
- DT Pro Member: 0084
You could add some keys to the top right corner, similar to the Leopold FC660M/FC660C, seems to be a wasted space to me.
- swill
- Location: Canada eh
- Main keyboard: FC660C / Filco TKL (Browns)
- Main mouse: Logitech G9X
- Favorite switch: Topre / MX Browns
- DT Pro Member: -
- Contact:
I just saw this. My plate building tool (builder.swillkb.com) has been updated since you last used it and it now supports the export of a DXF file. The DXF file format I am using is R12 though, so it does not include the units of measure (UOM). The plate is built in millimeters, so if you open it in a CAD program and you default UOM is inches, you will have to change the UOM to 'mm' and then resave it. I have added help text to on how to do this when you download the file. I have added a bunch of features recently including all the layers for a sandwich case. Maybe check it out again. Cheers and I am glad it was helpful.gogusrl wrote: ↑I think this is the best thread to ask for some help.
I finally decided to build my first hand-wired keyboard. After pulling my hair out with various cad software, I found swill's plate building tool ( http://builder.swillkb.com/ )
Now I have a few questions :
1. how to I convert the resulting stl/brp/stp to a 2d dwg / dxf / cdr for cnc/laser cutting (everything i've tried gives me a 3d mesh)
2. i plan to use a promicro because i'm cheap and haven't really soldered before. what's the max number row/columns i can use with it ?
3. would anyone be kind enough to take a quick look at the plate and let me know if there's any glaring mistakes ?
Here's the layout I'm looking for and attached is are the 3 output files.
Here are some screenshots for reference...
- scottc
- ☃
- Location: Remote locations in Europe
- Main keyboard: GH60-HASRO 62g Nixies, HHKB Pro1 HS, Novatouch
- Main mouse: Steelseries Rival 300
- Favorite switch: Nixdorf 'Soft Touch' MX Black
- DT Pro Member: -
Really cool tool, thanks a lot for developing it! I've had no excuse to actually use it through to manufacturing yet, but I had a look at a DWG produced and it's great.
- matt3o
- -[°_°]-
- Location: Italy
- Main keyboard: WhiteFox
- Main mouse: Anywhere MX
- Favorite switch: Anything, really
- DT Pro Member: 0030
- Contact:
too many screw holes you need far less than that. but great tool anyway!
-
- Location: Kentucky, USA
- Main keyboard: ErgoDox
- Main mouse: Roccat Kova+
- Favorite switch: Cherry MX Blue
- DT Pro Member: -
This is an awesome tool! Any chance that you can update the application to support layouts like the ErgoDox or something similar to it? I'm working on a gamepad layout that is similar to the hand layout of the ErgoDox.
- swill
- Location: Canada eh
- Main keyboard: FC660C / Filco TKL (Browns)
- Main mouse: Logitech G9X
- Favorite switch: Topre / MX Browns
- DT Pro Member: -
- Contact:
I already support the ergodox alphas, but I currently do not support rotated groups of keys. I have had lots of requests for that and it is on my roadmap, but I have not had a chance to add that support yet.Ninhalem wrote: ↑This is an awesome tool! Any chance that you can update the application to support layouts like the ErgoDox or something similar to it? I'm working on a gamepad layout that is similar to the hand layout of the ErgoDox.
- swill
- Location: Canada eh
- Main keyboard: FC660C / Filco TKL (Browns)
- Main mouse: Logitech G9X
- Favorite switch: Topre / MX Browns
- DT Pro Member: -
- Contact:
Haha... That is all configurable. For the sandwich case you need at least 4 and it supports any even number greater than 4.matt3o wrote: ↑too many screw holes you need far less than that. but great tool anyway!
- swill
- Location: Canada eh
- Main keyboard: FC660C / Filco TKL (Browns)
- Main mouse: Logitech G9X
- Favorite switch: Topre / MX Browns
- DT Pro Member: -
- Contact:
Not to pollute your thread, but I figured I would add a quick note since some people seem interested. I added support for the standard Poker case as well now, so you can cut replacement plates for your poker (or GH60 or whatever other 60% PCB you have). I will hopefully be able to get universal TKL and full sized cases up there soon too.
- chzel
- Location: Athens, Greece
- Main keyboard: Phantom
- Main mouse: Mionix Avior 7000
- Favorite switch: Beamspring, BS, Vintage Blacks.
- DT Pro Member: 0086
You couldn't have better timing! Thank you!swill wrote: ↑I added support for the standard Poker case as well now, so you can cut replacement plates for your poker (or GH60 or whatever other 60% PCB you have).
-
- Main keyboard: Macbook Pro built-in :P
- Main mouse: Kensington Orbit trackball
- Favorite switch: Buckling spring
- DT Pro Member: -
So since it's just an idea so far I decided to resurrect this thread instead of opening a new one...
I'm thinking about the merits of going the pcb mount route vs. plate mount. There is plenty discussion on the merits of plate vs. pcb and vice versa from a user's perspective, it seems like an individual taste thing... It definitely seems simpler to reliably build a pcb mount one though. For one, no plate to cnc. Even if one cnc's a case, a lot less can go wrong with that than with a switch mount plate..
I'm wondering if anyone has used this approach in diy, and what might be the best approach for mounting / securing the pcb itself - just on the edges, or with some kind of support -, what's the "standard" pcb thickness for a keyboard...
I'm thinking about the merits of going the pcb mount route vs. plate mount. There is plenty discussion on the merits of plate vs. pcb and vice versa from a user's perspective, it seems like an individual taste thing... It definitely seems simpler to reliably build a pcb mount one though. For one, no plate to cnc. Even if one cnc's a case, a lot less can go wrong with that than with a switch mount plate..
I'm wondering if anyone has used this approach in diy, and what might be the best approach for mounting / securing the pcb itself - just on the edges, or with some kind of support -, what's the "standard" pcb thickness for a keyboard...
- Wodan
- ISO Advocate
- Location: ISO-DE
- Main keyboard: Intense Rotation!!!
- Main mouse: Logitech G903
- Favorite switch: ALL OF THEM
- DT Pro Member: -
Actually I believe a PCB mount custom keboard is much more difficult to make. For one, you will need a PCB which you don't need when hand wiring a freaky plate mounted custom design. Then you will have to add mounting points to that PCB. There is a quasi-standard for 60% PCB monting points which is just pathetic so you might want to go your own route.
Then you need a plate to fix your pcb on - or a case to rest your pcb in. Either way this will be quite a task as a PCB isn't exactly a very even component and it has to sit perfectly in the case to give you a nice typing experience.
Then you need a plate to fix your pcb on - or a case to rest your pcb in. Either way this will be quite a task as a PCB isn't exactly a very even component and it has to sit perfectly in the case to give you a nice typing experience.
-
- Main keyboard: Macbook Pro built-in :P
- Main mouse: Kensington Orbit trackball
- Favorite switch: Buckling spring
- DT Pro Member: -
Actually, getting a pcb is as easy (or easier) than getting a steel or aluminum plate cnc'd. There is a huge industry for prototyping pcbs, and prices have dropped through the floor. As for mounting points, the fab shop does drilling and cutting based on the CAM files you send them, so it's nothing you have to worry about (unless they mess up).
In the electronics maker community, using pcbs as front panels is kind of a trend - as you'll have to get a pcb fabbed anyway, and it's guaranteed by the fab shop to be accurate down to a mil (1/1000th of an inch)...
Yes, cases need to be considered.. I'm wondering if a layered case design with the board as one of the layers, and a solid backplate for solidity and protection would give enough stability.
In the electronics maker community, using pcbs as front panels is kind of a trend - as you'll have to get a pcb fabbed anyway, and it's guaranteed by the fab shop to be accurate down to a mil (1/1000th of an inch)...
Yes, cases need to be considered.. I'm wondering if a layered case design with the board as one of the layers, and a solid backplate for solidity and protection would give enough stability.