Help with designing PSR A300 graphite push key contacts / switches

Hello dear users and admins; I’m completely new to Kicad and generally PCB designing, so if I messed up explaining some kicad technical terms regarding what I’m doing pls correct me.

I’m trying to design switches like this picture here and add the symbols to the schematics of the project; the exact picture of a single graphite contact

Here’s what I did with the schematics of switches and diodes like the above picture till now:

So the correct order of implementing graphite contacts is first to design a new symbol for them, add it to a new library then place it on the whole schematic? After that I should design the footprint for the switches?

I just wanted to know the general means to design them properly, and since it’s a really long pcb it won’t be a waste of time and energy for me in the end. I can figure the details of every step myself.
Any advice and recommendations would be much appreciated.

Also as you can see in the original board, wiring copper near the contact areas become thicker and wider. How should I differentiate those parts using the kicad so that he final product would be sth close to the original pcb?
Is this sth to be done in the schematics or should I do it in the pcb layout?

By end of day, you’ll perhaps have a handful of options as there are several ways to do this.

My favorite approach is to draw the contacts in a CAD or Graphics program, save as DXF and Import the DXF into Footprint-Editor when making a Footprint…

You can use Graphics and/or Zones (zones with Pads enable easier Trace connections and can draw the Tapers…)

How to do it is part of Self-Education and, stumbling along the way is your friend…

Generally, the scheme is:

Use of a Schematic Symbol is up to user (symbols are Not required if just wanting a PCB layout but, it’s customary to have Schematic).

• Create your Footprint first or, edit it later to link a Footprint (can include Traces made from DXF, a linked 3Dmodel, Silk/etc other graphics)

• Create (or, edit) your Symbol and Link the Footprint to it (in Symbol-Editor)

There may be some hurdles to overcome (for example, DRC seldom likes graphic traces… I don’t use DRC)

I suggest playing around a good bit before investing time to Dial-In exact geometry…

The screenshot below shows quick Graphic made in EZdraw and the Footprint on PCB (also screenshot of a different one from an existing old one…)

You can include the Trace-Taper’s, Circular Pads, etc - whatever stock or custom pads you want… There are many posts on how to do Custom Pads… You can use multiple DXF in a Footprint to get different shapes, widths…etc.

Screen Shot 2022-06-29 at 10.06.57 AM

1 Like

Hello and welcome @PsychoMario

The schematic is just an abstract drawing representing the PCB layout.
Your graphic contact switches are basically just “dual push button” switches. The easiest way to represent these is to just use the standard push button switch in the Kicad library, copy that switch to your personal library and rename it graphic contact switch for clarity.

This is the sort of schematic you would use.
You will find the switches you need in the switches library. You may need to alter the pin numbers later so they match the pads you name in your footprints that have yet to be designed.

So the process would be:
Copy the switch from Kicad to your personal symbol library.
Rename it.
Design your footprint.
Place your footprint in your personal footprint library.
Layout your PCB.
Edit your schematic switch pins in your personal library and on the schematic to match your PCB layout.

1 Like

Indeed, for the schematic they are just momentary pushbuttons.

The tool to do this in KiCad is the Footprint Editor. In the footprint editor you design how a single button looks on the PCB, and then you can insert as many as you need of them. It’s also possible to change that footprint later and then update all instances where it is used on the PCB with a few mouse clicks.

Adding the conductive carbon is a sort of specialization. I’m not sure if it’s cost effective for small quantities. Maybe it’s simpler to use gold plating. KiCad also does not have a method to embed this information in the project, so you should discuss this with your PCB manufacturer before you design the PCB.

1 Like

Maybe the carbon is on a rubber diaphragm and used to short out the copper (maybe plated) fingers, such as a commercial TV remote transmitter.
@PsychoMario has yet to clarify the construction.

1 Like

Psychomario posted links to a (quite big) picture. Apparently from a (musical) keyboard with a row of 25 switches. A part of his photograph looks like:

So it looks like the carbon is deposited directly on the fingers and it’s main use is only to prevent the copper from oxidizing and provide a good contact. I’m guessing the vertical bars are just black silk screen paint and not carbon.

In mass production, carbon bridges are sometimes used as “wires” on single sided PCB’s, or even directly as resistors.

1 Like

@paulvdh , sorry, I hadn’t gone to the links.

1 Like

Just wanted to drop my gratitude to those who replied to the topic, and sorry for the late reply. your guidance’s helping me a lot as I now have designed both symbols and footprints for the contacts and I’m in tracing phase of the schematics.

Yes, that’s exactly the case.

As for the “contact” footprint, I’ve designed it in kicad v.6 footprint editor using 3 SMD pads with F.Cu layer on them with the technical layers “F.Paste” unchecked and “F.Masked” checked cause I don’t want any solder mask and solder paster on the contacts according to the the descriptions of F.Paste & F.Mask here:

I tried to fill the pads with another layer to later define it as “conductive carbon” or “gold plating” just as @paulvdh mentioned. but none of them except F.Cu and silkscreen seems to be shown and printed properly in the output 3d model; I guess I should just use a “user layer” for them and then contact manufacturer to put gold or carbon on all user layers? Right?
And as for each contact I renamed their value properties to match the key sound they produce (e.g: F#5) and in order to do so I changed the value layer from F.Fab to F.silkscreen; because in the output model F.silkscreen got printed but F.Fab didn’t and I also want the text (e.g: F#5) to be printed in the final pcb product bellow every contact.
Don’t know it was the right thing to do nor do know the exact purpose of F.Fab layer, which again I’m asking your advice on the matter. Not to mention F.Fab was the default layer for value text.
Also wanted to know what’s the purpose of “fabrication property” option in the pad properties panel: BGA, fiducial, test point, heat sink, ...

There’s still an issue regarding a specific 3d model connector that I wanna use in the project;
most of the 3d models for connectors are missing showing a red cross on the left side of their footprint properties stating file not found. Is there sth wrong with my version of software or is this normal that some footprints don’t have any 3d model? (see bellow pic):

The connectors which I wanna use are sth like this (bellow pic), including 5 & 12 pins and have a sliding part above them for a ribbon cable to go through and stick inside. (CN1, CN3, CN4 … + a picture of pcb’s backside where connectors are soldered):


the picture of the ribbon cable that sticks inside the 12 pin connector :

Is there any specific connector exactly like that in footprint library or I should go for a similar component?

Though I found sth close to it which luckily has a 3d model (PinSocket_1x05_P1.00mm_Vertical):
PinSocket 5

Again thanks in advance for your thoughts on the matter and sorry for the fact that this reply was longer than the OG topic.