Let's create the FSSK/FEXT = DONE !!!!
- wcass
- Location: Columbus, OH, USA
- Main keyboard: ibm model m
- Main mouse: kensington expert mouse
- Favorite switch: buckeling spring
- DT Pro Member: 0185
When it comes time to convert your drawing to Gerber files, consider DipTrace. I was never able to properly import DXF into KiCAD, but DipTrace does an excellent job. The "hobbyist" version is free and not limited by size, but by "pins" (under 300). Anything imported from DXF does not count as a "pin", so your total pin count should be under 50 (30 for controller, 4 for LED control, 6 for LEDs, 6 for LED-resistors, a few mount/ground).
- ramnes
- ПБТ НАВСЕГДА
- Location: France
- Main keyboard: KMAC LE
- Main mouse: Zowie AM
- Favorite switch: GPL 104 lubed 62g nixies
- DT Pro Member: -
When you say that no controller is included, do you mean that you're planning to make your PCB compatible with SSK's stock controller, or that it just won't be usable before a controller is made?
- idollar
- i$
- Location: Germany (Frankfurt area)
- Main keyboard: IBM F or M
- Favorite switch: BS
- DT Pro Member: -
I meant that in the long run, it would be perfect to have a xwhatsit controler in the PCB.ramnes wrote: ↑When you say that no controller is included, do you mean that you're planning to make your PCB compatible with SSK's stock controller, or that it just won't be usable before a controller is made?
Bor the time being, it will be a separated PCB, one of the standards used with model Fs.
- idollar
- i$
- Location: Germany (Frankfurt area)
- Main keyboard: IBM F or M
- Favorite switch: BS
- DT Pro Member: -
I am actually a GNU man also. But I wanted to be sure that I could easily produce a Geber. This is why I have followed wcass recommendation.wcass wrote: ↑When it comes time to convert your drawing to Gerber files, consider DipTrace. I was never able to properly import DXF into KiCAD, but DipTrace does an excellent job. The "hobbyist" version is free and not limited by size, but by "pins" (under 300). Anything imported from DXF does not count as a "pin", so your total pin count should be under 50 (30 for controller, 4 for LED control, 6 for LEDs, 6 for LED-resistors, a few mount/ground).
- idollar
- i$
- Location: Germany (Frankfurt area)
- Main keyboard: IBM F or M
- Favorite switch: BS
- DT Pro Member: -
I think that this version, missing the routing to the top of the plate that will connect to the controller resolves all the matrix.
I post the top, bottom and combined layers as well as the table that I am using to track the matrix.
The spreadsheet has a side table counting the number of keys on each row for every column, to ensure that there are not repeated column/row allocations.
I have created a legend for each key in the PCB to track the keys, rows and columns, not only in the table but also in the PCB itself. It consists of three references 1) Column 2) Row 3) key
I will appreciate any feedback
I post the top, bottom and combined layers as well as the table that I am using to track the matrix.
The spreadsheet has a side table counting the number of keys on each row for every column, to ensure that there are not repeated column/row allocations.
I have created a legend for each key in the PCB to track the keys, rows and columns, not only in the table but also in the PCB itself. It consists of three references 1) Column 2) Row 3) key
I will appreciate any feedback
- idollar
- i$
- Location: Germany (Frankfurt area)
- Main keyboard: IBM F or M
- Favorite switch: BS
- DT Pro Member: -
The next step is to route the rows and columns to the xwhatsit controller.
This will not be simple as there is little space between the back plate and the case:
My proposed solution is to use the space in on top of the back plate to solder a flat cable that could be routed between the metal plate and the case as the membrane does.
We will need to isolate electrically this part of the plate.
I plan to use the original layer between the flippers and the membrane under the pcb ....
This will not be simple as there is little space between the back plate and the case:
My proposed solution is to use the space in on top of the back plate to solder a flat cable that could be routed between the metal plate and the case as the membrane does.
We will need to isolate electrically this part of the plate.
I plan to use the original layer between the flippers and the membrane under the pcb ....
- chzel
- Location: Athens, Greece
- Main keyboard: Phantom
- Main mouse: Mionix Avior 7000
- Favorite switch: Beamspring, BS, Vintage Blacks.
- DT Pro Member: 0086
Wouldn't a length of kapton tape work well enough? I'd prefer if the final solution keeps the rubber mat intact, to easily switch back to regular SSK.
- idollar
- i$
- Location: Germany (Frankfurt area)
- Main keyboard: IBM F or M
- Favorite switch: BS
- DT Pro Member: -
I do not plan to modify the rubber may in any way. I will only use under the pcb.chzel wrote: ↑Wouldn't a length of kapton tape work well enough? I'd prefer if the final solution keeps the rubber mat intact, to easily switch back to regular SSK.
- idollar
- i$
- Location: Germany (Frankfurt area)
- Main keyboard: IBM F or M
- Favorite switch: BS
- DT Pro Member: -
All,
I think that I have finalised what could be the final draft for your review (SSK only, the Extended version will come latter).
I have routed the top to the connector and the row number changed to get in line with the controller. The configuration will look odd but we will avoid crossing cables and thus, a ribbon cable could be used.
Please, take a look and comment:
I think that I have finalised what could be the final draft for your review (SSK only, the Extended version will come latter).
I have routed the top to the connector and the row number changed to get in line with the controller. The configuration will look odd but we will avoid crossing cables and thus, a ribbon cable could be used.
Please, take a look and comment:
- chzel
- Location: Athens, Greece
- Main keyboard: Phantom
- Main mouse: Mionix Avior 7000
- Favorite switch: Beamspring, BS, Vintage Blacks.
- DT Pro Member: 0086
I'm a bit confused...Shouldn't
?
About the rubber mat, you mean to use it between the PCB and the metal backplate like the F's use the transparent sheet?
Code: Select all
C21 R7 be ]}
C22 R8 be \|
C21 R10 be ISO
About the rubber mat, you mean to use it between the PCB and the metal backplate like the F's use the transparent sheet?
- idollar
- i$
- Location: Germany (Frankfurt area)
- Main keyboard: IBM F or M
- Favorite switch: BS
- DT Pro Member: -
It is even worst, the complete row is incorrect. I miss the "R" !!!chzel wrote: ↑I'm a bit confused...Shouldn't?Code: Select all
C21 R7 be ]} C22 R8 be \| C21 R10 be ISO
Thanks for pointing it out. I will correct it, both in the table and the references in the PCB.
Yes, this is what I mean.
About the rubber mat, you mean to use it between the PCB and the metal backplate like the F's use the transparent sheet?
- micrex22
- Location: Canada
- Main keyboard: UltraNav
- Favorite switch: BS
- DT Pro Member: -
I know dfj & parak are working on their capsense controller which will hopefully offer more features than xwhatsit. It would be nice to have an agnostic pinout available just in case an alternative controller is desired to be used (or an option to bypass the onboard xwhatsit controller if that becomes built-in). *Or if the early run is going to (only) be like that, that would suit my purposes just fine as well.idollar wrote: ↑I meant that in the long run, it would be perfect to have a xwhatsit controler in the PCB.
Bor the time being, it will be a separated PCB, one of the standards used with model Fs.
I'm down for testing a prototype board. My bolts will be in shortly so I'll be able to dynamically reassemble the back plate as much as needed.
Also, should we create custom printable 'FSSK' labels? I could whip up a template later.
- wcass
- Location: Columbus, OH, USA
- Main keyboard: ibm model m
- Main mouse: kensington expert mouse
- Favorite switch: buckeling spring
- DT Pro Member: 0185
IBM did design all of the F with every column crossing ever row exactly one time. The reason for this is that every crossing introduces not-insignificant parasitic capacitance (Cp). Making every row cross every column exactly once is an attempt to keep Cp uniform for every button.
Another thing you will notice about IBM design is that rows gather and come in from one side (with a ground flood on the flip side of the PCB); columns gather and come in from the other side (with a ground flood on the flip side of the PCB). Again, this is to minimize Cp.
Atmel published a great reference for capacitive PCB design. Anyone considering designing a capacitive input device should consider this required reading. IBM and Topre are both "mutual-capacitance buttons", so study section 4.
http://www.atmel.com/images/doc10752.pdf
In this document sense lines are called "Y electrodes" and signal lines are called "X electrodes". On IBM boards, "Y electrodes" run left and right on the top (rows) vs "X electrodes" run up and down on the bottom (columns).
Another thing you will notice about IBM design is that rows gather and come in from one side (with a ground flood on the flip side of the PCB); columns gather and come in from the other side (with a ground flood on the flip side of the PCB). Again, this is to minimize Cp.
Atmel published a great reference for capacitive PCB design. Anyone considering designing a capacitive input device should consider this required reading. IBM and Topre are both "mutual-capacitance buttons", so study section 4.
http://www.atmel.com/images/doc10752.pdf
In this document sense lines are called "Y electrodes" and signal lines are called "X electrodes". On IBM boards, "Y electrodes" run left and right on the top (rows) vs "X electrodes" run up and down on the bottom (columns).
To avoid false keys, use any of the following tricks:
* Cross the X and Y traces as little as possible and then only at 90°
* If the X and Y traces must run parallel to each other for a distance, separate the traces with a ground trace.
* Generally, keep all the X traces together and all the Y traces together. This way the number of potential false keys is substantially reduced.
- Compgeke
- Location: Fairfield, California, USA
- Main keyboard: IBM Model M 1391401
- Main mouse: Coolermaster Recon
- Favorite switch: IBM Buckling Spring
- DT Pro Member: 0040
Not 100% accurate on the bottom label to an original label. Text is too bold but that can be fixed later.micrex22 wrote: ↑Also, should we create custom printable 'FSSK' labels? I could whip up a template later.
Round label is modeled off an AS/400 badge and as such put at the same angle and font (italic Helvetica).
Last edited by Compgeke on 26 Dec 2015, 20:28, edited 1 time in total.
- idollar
- i$
- Location: Germany (Frankfurt area)
- Main keyboard: IBM F or M
- Favorite switch: BS
- DT Pro Member: -
Thanks a lot wcass !!!wcass wrote: ↑IBM did design all of the F with every column crossing ever row exactly one time. The reason for this is that every crossing introduces not-insignificant parasitic capacitance (Cp). Making every row cross every column exactly once is an attempt to keep Cp uniform for every button.
Another thing you will notice about IBM design is that rows gather and come in from one side (with a ground flood on the flip side of the PCB); columns gather and come in from the other side (with a ground flood on the flip side of the PCB). Again, this is to minimize Cp.
Atmel published a great reference for capacitive PCB design. Anyone considering designing a capacitive input device should consider this required reading. IBM and Topre are both "mutual-capacitance buttons", so study section 4.
http://www.atmel.com/images/doc10752.pdf
In this document sense lines are called "Y electrodes" and signal lines are called "X electrodes". On IBM boards, "Y electrodes" run left and right on the top (rows) vs "X electrodes" run up and down on the bottom (columns).To avoid false keys, use any of the following tricks:
* Cross the X and Y traces as little as possible and then only at 90°
* If the X and Y traces must run parallel to each other for a distance, separate the traces with a ground trace.
* Generally, keep all the X traces together and all the Y traces together. This way the number of potential false keys is substantially reduced.
Here a new version 0.25 taking in consideration your comments.
I had to move the connector to the left to avoid the overlapping that you mentioned.
Let me know you comments
*) I have worked on the FSSK only. The Extended side will come latter.
- idollar
- i$
- Location: Germany (Frankfurt area)
- Main keyboard: IBM F or M
- Favorite switch: BS
- DT Pro Member: -
I like your idea of the stickers.Compgeke wrote: ↑Not 100% accurate on the bottom label to an original label. Text is too bold but that can be fixed later.micrex22 wrote: ↑Also, should we create custom printable 'FSSK' labels? I could whip up a template later.
Round label is modeled off an AS/400 badge and as such put at the same angle and font (italic Helvetica).
Only one comment, It should read Design in Europe. Made in the USA
The round labels are glorious !
- Compgeke
- Location: Fairfield, California, USA
- Main keyboard: IBM Model M 1391401
- Main mouse: Coolermaster Recon
- Favorite switch: IBM Buckling Spring
- DT Pro Member: 0040
A little more work done and some comparisons to original labels. http://imgur.com/a/GkRczidollar wrote: ↑I like your idea of the stickers.
Only one comment, It should read Design in Europe. Made in the USA
The round labels are glorious !
- idollar
- i$
- Location: Germany (Frankfurt area)
- Main keyboard: IBM F or M
- Favorite switch: BS
- DT Pro Member: -
Great !Compgeke wrote: ↑A little more work done and some comparisons to original labels. http://imgur.com/a/GkRczidollar wrote: ↑I like your idea of the stickers.
Only one comment, It should read Design in Europe. Made in the USA
The round labels are glorious !
- wcass
- Location: Columbus, OH, USA
- Main keyboard: ibm model m
- Main mouse: kensington expert mouse
- Favorite switch: buckeling spring
- DT Pro Member: 0185
The flood on the bottom should probably be avoided. IBM left it off for some reason.
From section 4.2.3 of the Atmel design guide ...
From section 4.2.3 of the Atmel design guide ...
We are talking about using a very thin PCB ... 0.8mm or thinner.Bringing ground flood or traces close to Y adds parasitic capacitance (Cp) and can cause loss of sensitivity. Keep this in mind when flooding around keys. ... Be careful when adding ground floods on thin PCBs, as the Cp build-up on Y could be substantial due to the reduced separation between layers.
- idollar
- i$
- Location: Germany (Frankfurt area)
- Main keyboard: IBM F or M
- Favorite switch: BS
- DT Pro Member: -
------ FINAL DRAFT ? -----
Hello again,
I have been working in a new version, which tries to capture and implement all the comments that I have received so far.
Here it is:
Matrix
FSSK
FEXM
I would appreciate comments.
Next steps are to print out the layers, test them, produce the PCB and to enjoy
Hello again,
I have been working in a new version, which tries to capture and implement all the comments that I have received so far.
Here it is:
Matrix
FSSK
FEXM
I would appreciate comments.
Next steps are to print out the layers, test them, produce the PCB and to enjoy
- wcass
- Location: Columbus, OH, USA
- Main keyboard: ibm model m
- Main mouse: kensington expert mouse
- Favorite switch: buckeling spring
- DT Pro Member: 0185
One thing i noticed is that the bottom row (pin 3) does not cross any columns. All of IBM's designs have every row crossing every column exactly one time and I made sure i did that with the XTant, but I'm not sure how much difference this makes or what it does. My best guess is that it is an attempt to make all of the rows/columns as uniform as possible vis-a-vis Cx and Cp.
I think you see what i was talking about earlier; this being difficult to do with IBM's original capacitive pad design due to the number and location of the model M rivets. You might look at some of the other capacitive pad designs that i suggested earlier in this thread that allow the rows to pass through the center of the switch rather than forcing them to always go around. At worse you will have one trace competing with a hole in the space between rows rather than two.
I think you see what i was talking about earlier; this being difficult to do with IBM's original capacitive pad design due to the number and location of the model M rivets. You might look at some of the other capacitive pad designs that i suggested earlier in this thread that allow the rows to pass through the center of the switch rather than forcing them to always go around. At worse you will have one trace competing with a hole in the space between rows rather than two.