geekhack

geekhack Projects => Making Stuff Together! => Topic started by: Kestrel_ on Sat, 18 May 2019, 16:47:32

Title: Running into issues designing a multi-configuration 75% PCB
Post by: Kestrel_ on Sat, 18 May 2019, 16:47:32
I'm fairly new circuit design, and while I think I've done pretty well for a beginner, the configurable top and bottom rows have made it seemingly impossible to find a decent place to slap down a micro controller, as well as figuring out how to wire the overlapping switch holes for the top and bottom rows. For the controller I originally planned to use an Elite-C, but as I made progress I realized there wouldn't be enough room/pins, and I'd need to have the 32u4 chip and a usb-c port soldered directly to the PCB. but, because nothing is ever easy, there's just never enough room to fit and route all the components. Is there a trick to getting everything to fit neatly? any advice you guys could provide would be really appreciated.

(https://i.imgur.com/VaAmADS.png)

Also, If I ever end up finishing this, Is it something some of you guys would enjoy using? I could share the files when it's done.

UPDATE:

found a place for the elite c, and added a split Lshift for better Iso support, and wired everything up. Here's what it looks like now. (traces hidden)

(https://i.imgur.com/xDxf8zG.png)
Title: Re: Running into issues designing a multi-configuration 75% PCB
Post by: Lanrefni on Sat, 18 May 2019, 19:23:56
You could use a Teensy++ and put the pins for it under the Tab,Q,and maybe the W key,you'd have to solder in the switches,then the Teensy.
Title: Re: Running into issues designing a multi-configuration 75% PCB
Post by: nevin on Sat, 18 May 2019, 19:36:31
Look at the tutorials for keeb.io's boards. All are plain pcbs, all trough hole & pro micros. Mount pro micro under 3 switches (ortho)
Title: Re: Running into issues designing a multi-configuration 75% PCB
Post by: Kestrel_ on Sun, 19 May 2019, 20:27:39
You could use a Teensy++ and put the pins for it under the Tab,Q,and maybe the W key,you'd have to solder in the switches,then the Teensy.

Look at the tutorials for keeb.io's boards. All are plain pcbs, all trough hole & pro micros. Mount pro micro under 3 switches (ortho)

Thanks for the advice, you two. I managed to get everything wired up with a teensy++, and keeb.io's docs really helped. the only thing missing is usb-c and the placement on the side is a little strange, but I guess that can't be helped. ;D
Title: Re: Running into issues designing a multi-configuration 75% PCB
Post by: Findecanor on Sun, 19 May 2019, 21:12:59
An Elite-C (24 GPIO pins) or surface-mounted ATmega32U4 (26 pins) should be enough.
You have only around 84 keys there, only that some of these have multiple alternative switch positions.

The Teensy 2.0 with 25 pins was used for the Phantom tenkeyless keyboard, which has a 17×6 matrix (23 GPIO pins) + 2 LEDs.
You could optimise a keyboard matrix by making the logical matrix closer to a square, i.e. the number of rows and columns closer to the square root of the number of keys.
The smallest theoretical matrix for a 84-key keyboard would thus be 10×9 = max 90 keys, 10+9=19 GPIO pins.
A more reasonable optimised matrix (easier to reason about :) ) would be to let each logical column map two physical columns: instead of 16×6 (22 pins) you would then need 8×12 => 20 GPIO pins.

BTW, Did you intend to have a 2u key in the top right corner, or did you intend to allow the Backspace key to be split?
BTW 2. To support the ISO layout, the left Shift would also need to be split into two keys.
Title: Re: Running into issues designing a multi-configuration 75% PCB
Post by: nevin on Sun, 19 May 2019, 21:22:25
If you build out a case or spaced plates, the controller can be relocated where ever you like. Some use mini usb extension cables to relocate the jack in the housing. Another option would be to wire in your own connector to the pads the micro usb connector uses.
Title: Re: Running into issues designing a multi-configuration 75% PCB
Post by: Kestrel_ on Sun, 19 May 2019, 21:47:33
An Elite-C (24 GPIO pins) or surface-mounted ATmega32U4 (26 pins) should be enough.
You have only around 84 keys there, only that some of these have multiple alternative switch positions.

The Teensy 2.0 with 25 pins was used for the Phantom tenkeyless keyboard, which has a 17×6 matrix (23 GPIO pins) + 2 LEDs.
You could optimise a keyboard matrix by making the logical matrix closer to a square, i.e. the number of rows and columns closer to the square root of the number of keys.
The smallest theoretical matrix for a 84-key keyboard would thus be 10×9 = max 90 keys, 10+9=19 GPIO pins.
A more reasonable optimised matrix (easier to reason about :) ) would be to let each logical column map two physical columns: instead of 16×6 (22 pins) you would then need 8×12 => 20 GPIO pins.

BTW, Did you intend to have a 2u key in the top right corner, or did you intend to allow the Backspace key to be split?
BTW 2. To support the ISO layout, the left Shift would also need to be split into two keys.
Thanks for the advice on matrix layouts and the elite-C. I'll look into that.
The top row supports two different layouts, one with a 2u key, one with 1u's all the way across. However I can see how some people would like to mix and match, which my current wiring doesn't support. I'll fix that real quick. As for the iso, layout, that's easy enough to fix. Are there any other special conditions that need to be met?
Title: Re: Running into issues designing a multi-configuration 75% PCB
Post by: equalunique on Mon, 20 May 2019, 09:10:14
75% layout

Split Spacebar

Uses common socketable microcontroller

This is an exciting project!

Sent from my LG-H918 using Tapatalk

Title: Re: Running into issues designing a multi-configuration 75% PCB
Post by: Kestrel_ on Mon, 20 May 2019, 10:53:53
75% layout

Split Spacebar

Uses common socketable microcontroller

This is an exciting project!

Sent from my LG-H918 using Tapatalk

Don't forget Iso compatable! ;)
Title: Re: Running into issues designing a multi-configuration 75% PCB
Post by: Kestrel_ on Mon, 20 May 2019, 21:31:56
I have one more question for you guys, actually. The screw holes its using are designed to work with the custom case I plan on using, but I plan on giving the extra boards to a few friends. With that in mind, I think I should add more standard mounting holes, and maybe an onboard usb-c port that would match up with any 75% case they chose. Where can I find the right measurements for that stuff?
Title: Re: Running into issues designing a multi-configuration 75% PCB
Post by: equalunique on Tue, 04 June 2019, 15:44:41
Where can I find the right measurements for that stuff?

The presence of the Elite-C on the bottom of the PCB might interfere with some cases, but it's possible that it could be made to fit with some modification. I don't have the measurements for KBD75 cases, but maybe you could ask either ReDsNoTDeAd (https://geekhack.org/index.php?action=profile;u=68984) of the PLA75 IC (https://geekhack.org/index.php?topic=100699.0;topicseen); or PlastikSchnittstelle (https://geekhack.org/index.php?action=profile;u=57401) of the SKBXX GB (https://geekhack.org/index.php?topic=95113.0;topicseen).

Maybe by the end of the month I will have a KBD75 V1 PCB to take measurements with.