Can we design the teensy alternative for keyboards?

User avatar
Wodan
ISO Advocate

06 May 2016, 08:43

Oh I just did that with a Wyse WY-30 and a Cherry G80-0904. Had to hand-wire a few connections though.

User avatar
matt3o
-[°_°]-

06 May 2016, 09:46

got some specs. M2 head is usually between 3.5 and 4mm diameter. M2.5 between 4.5 and 4.8

mohitgarg

06 May 2016, 10:24

matt3o wrote: got some specs. M2 head is usually between 3.5 and 4mm diameter. M2.5 between 4.5 and 4.8
Should keep it M2 then. It's going to be very hard to to get 4.8mm clearance.

User avatar
flabbergast

06 May 2016, 10:46

I agree. Because of the 4mm clearance disc, people who know what they're doing and are really desperate for M2.5 can just re-drill themselves; knowing to not to tighten the screws too much.

I thought for a bit, and I think we should design the board to be as 'newbie-proof' as possible. People do crazy stuff with their micros if it looks even remotely possible/'allowed'.

Related to this, I would really prefer if we stick to 10mil traces for the power nets. We are potentially powering things like 300mA wifi modules and whatnot. Even if it means not routing out all the pins to through-hole pads. Definitely for the VBUS and ground nets; maybe I can be convinced for 8 mil for the 3.3V net (since that one's usually limited by cca 100mA by the MCU regulator).

{About the power options: the recommended schematics are on pages 502-504 of the datasheet. Hopefully all are now possible with the 2 solder jumpers. Finally I'd like to keep the power pins on the leftmost column, so that we can attach modules 'on the left', possibly detachable using pins and headers.}

Matt_

06 May 2016, 13:07

I'm curious, will you be using a ground plane, or just ground traces?

mohitgarg

06 May 2016, 13:11

- All the power lines on the board I routed are 10mil.
- Also, I used KiCAD's differential pair routing wherever possible and thus there shouldn't be an issue as far I understand.
- I was able to place in the one jumper and route it into the current board, just working on finding a way to retain the Reset pad and also have the Power_Out pin.

EDIT, @Matt_, the top layer has just about zero space for a ground plane, the bottom layer has a ground plane.

User avatar
flabbergast

06 May 2016, 14:29

This is great!

I think you can make the reset pad smaller, maybe the size of the solder jumpers (I mean both pads together).

Yea, a ground plane on the bottom should be more than enough.

EDIT: reset pad: or even just a 1mm disc - it's really there just for edge cases so that people don't have to solder to the switch pad ;)

mohitgarg

06 May 2016, 14:54

My only reason for having the reset pin is for those wanting to connect a debugger.

User avatar
flabbergast

06 May 2016, 15:54

Actually you don't really need to connect the reset line to a SWD debugger. I normally connect only gnd,swdio,swclk (some ebay knockoffs don't even have the reset line out) and everything works fine; you can reset the chip through the SWD protocol (see e.g. here).

mohitgarg

06 May 2016, 16:57

Ah we, what's done is done,

Image
Image

Ignore the slightly different 3d shapes, this was the best I could find.

- All 34 I/O pins still available
- Implemented the new power circuitry
- Normal pin header for Reset
- M2 screws with clearance for 4mm diameter head
- Pins on the left most are GND, 3.3V, VBUS, PWR_IN, TX, RX
- Dimensions - 32.9 x 15.9 (+2.6)mm

User avatar
matt3o
-[°_°]-

06 May 2016, 17:06

this is fantastic!

doesn't the reset button come a little on the way?

also wouldn't the alternate pads be a problem in case one would use headers or a breakboard?

PS: are you on github?

User avatar
flabbergast

06 May 2016, 17:43

Awesome! (I think the button render is not the right one - Mohit said 'best he could find' :)

Staggered headers - the point of these is that when you insert a standard row of pins, they insert without problems, but 'tightly', i.e. they will be making contact with the sides of the holes. So it's possible to use this 'solderless' for testing, by just inserting standard headers.

I know it doesn't look pretty (especially because we have more that one row of pads). If you guys really don't like this, I won't complain too much about converting to the standard ones. {BTW mchck did get one 'bad review' of the sorts "these guys could not even line up the pads properly"}

mohitgarg

06 May 2016, 17:51

That's an oversized switch, don't have the 3D model for the exact one (I've thus removed it in the render below to prevent confusion.

Not sure what you mean by alternate pads.

Github: https://github.com/mohitg11



I didn't want to make vvp unhappy that we weren't listening to his complaint about that mount hole position, so,
2016-05-06_17-48-00.png
2016-05-06_17-48-00.png (52.05 KiB) Viewed 5467 times

User avatar
matt3o
-[°_°]-

06 May 2016, 17:53

flabbergast wrote: Staggered headers - the point of these is that when you insert a standard row of pins, they insert without problems, but 'tightly', i.e. they will be making contact with the sides of the holes. So it's possible to use this 'solderless' for testing, by just inserting standard headers.
oh now I get it. They are staggered just enough to make the headers fit without solder. That is just fantastic!
flabbergast wrote: I know it doesn't look pretty (especially because we have more that one row of pads). If you guys really don't like this, I won't complain too much about converting to the standard ones.
hell no! why would you want to remove them?! I really see no harm, but maybe that is against the Holy Book of the Good Electrical Engineer
flabbergast wrote: {BTW mchck did get one 'bad review' of the sorts "these guys could not even line up the pads properly"}
who?! where?! I want names! :P

Matt_

06 May 2016, 18:26

matt3o wrote: oh now I get it. They are staggered just enough to make the headers fit without solder. That is just fantastic!
They are, but one little word of caution though. I love offset header pads too, but if the fab drills the holes a little too small, you'll end up with a board in which headers will not fit, which can be problematic. And if you set a larger drill value to avoid this... they may not contact the headers anymore, in which case there is no point in offsetting them.

That happened to me once — I had a batch of boards coming from OSH Park with this feature, and they worked great. But the following batch (same gerber files, same fab) had holes drilled a little too small (but still within their tolerances I believe), and I ended up with a handful of unusable boards.

So... maybe moz and flabbergast have fool-proof footprints that can withstand a bit of drill variation and still be usable (mine were custom, so it's possible they were part of the problem), but if we order a big batch of those controllers, we'd better be sure that we won't encounter this issue.

This being said, mohitgarg's last proposal looks great! Good job on aligning the mounting holes, that may add stability if the controller is attached with those and the USB port used directly.

User avatar
matt3o
-[°_°]-

06 May 2016, 19:10

and that is very worrying. considering also the communication issues with China it would be very difficult to be 100% sure they can do them right...

mohitgarg

06 May 2016, 19:14

One problem I see with our current board is that I tried to see how to place this around a switch and it seems impossible. There are too many pins in a small area.

Matt_

06 May 2016, 19:23

mohitgarg wrote: One problem I see with our current board is that I tried to see how to place this around a switch and it seems impossible. There are too many pins in a small area.
I was preparing a lenghty writeup with pictures and such, but your way is simpler :D

Basically, the current layout is good if you want to place the controller under the spacebar (provided the area is not cluttered by alternate switch locations), or beyond the upper switch row. Things get more complicated if you want to place it under the top switch row — many pads are blocked by switches, and I am not sure if the screw holes fall properly between switches as well.

User avatar
matt3o
-[°_°]-

06 May 2016, 19:27

mohitgarg wrote: One problem I see with our current board is that I tried to see how to place this around a switch and it seems impossible. There are too many pins in a small area.
the board stays below the switches, if you place the board directly on the top side to use the onboard USB port you definitely need a taller case on the back (but that is always the case). Otherwise you can put it under the spacebar (if you have one big enough).

mohitgarg

06 May 2016, 19:31

Screw holes won't be needed if mounting to a PCB any way, but the issue with the position of the pads is still there.

@matteo, we are assuming the primary use to be hardwired? If not, the current pad positions clash with the pads of the mx/alps switches when placed under a switch

User avatar
matt3o
-[°_°]-

06 May 2016, 19:39

scenario 1: hand-wired
you can put the board wherever you want based on case type mostly. best spot is still under the spacebar but you can also use the onboard port if you have room on the upper part of the case

scenario 2: pcb mounted
you cannot use the onboard port. this is the same as any other board of this kind. there's simply not enough space on the PCB. you have to put the board anywhere on the PCB where you have enough room and route an extension to the USB. If I read your schema right, this might be a bit complicated since we don't have a +5 pad and you'd have to add a small patch cable.

hope I'm not missing something obvious here.

mohitgarg

06 May 2016, 19:59

+5 hole? You mean 5V for USB? If yes, there is a VBUS pad.

User avatar
matt3o
-[°_°]-

06 May 2016, 20:00

mohitgarg wrote: +5 hole? You mean 5V for USB? If yes, there is a VBUS pad.
ok, just missed that :) the other points still stands

mohitgarg

06 May 2016, 20:06

Both the scenarios can be catered to fine with the current design.

User avatar
matt3o
-[°_°]-

06 May 2016, 20:08

now that I think of it, I'm not sure we can use through hole USB port if we want the board to be positioned flush on another PCB

User avatar
flabbergast

06 May 2016, 20:11

If I read this right, Mohit is concerned that this can't be mounted on a PCB directly underneath a switch, like the Teensy or his original design could. This is a valid point; I thought that it's supposed to be mounted primarily underneath a spacebar.
I think if we want to make it mountable directly underneath a switch, a 'taller' board is much better (i.e. pretty much Teensy 2.0 dimensions).

User avatar
matt3o
-[°_°]-

06 May 2016, 20:17

flabbergast wrote: If I read this right, Mohit is concerned that this can't be mounted on a PCB directly underneath a switch, like the Teensy or his original design could.
this makes sense. sorry, I'm slow. I don't think this is an issue with hand wired keyboards, but having the option to mount the board on some headers directly over the switches would be a great plus (if you have a PCB for switches).

User avatar
flabbergast

06 May 2016, 20:18

The USB connector for this footprint has legs that are 0.8mm long, so well below the PCB thickness (usually 1.6mm). So they'll not protrude out unless a lot of solder is used.

User avatar
vvp

06 May 2016, 20:19

matt3o wrote: now that I think of it, I'm not sure we can use through hole USB port if we want the board to be positioned flush on another PCB
There are micro USB connectors which go only half into the PCB depth (about 0.8 mm). They may be enough. The bottom side of the PCB will be planar.
http://www.farnell.com/cad/1913060.pdf

Edit: At least part of the metal casing must go into a hole so that it holds somewhat. Pure SMD USB port would break off in no time.

mohitgarg

06 May 2016, 20:22

vvp and flabbergast are correct, this is the one that the board is designed for, http://www.digikey.com/product-detail/e ... ND/2350357

Other microusb receptacles are similar to this design

@flabbergast, yes, that is correct, however I think designing it with the intention of using it under the spacebar is by no means wrong, just wanted to make sure we were all on the same page in terms of feasible applications.

Post Reply

Return to “Workshop”