Hacker News new | ask | show | jobs
by onetimeuse92304 1030 days ago
As an amateur EE, here my thoughts.

If you can do CAD you can probably also design a PCB with a socket for some kind of general purpose MCU or even one of ready-made keyboard controllers.

Through-hole soldering is IMO actually simpler than making these "spiders" (that's how in my country we call circuits with self-supported wire to wire joints, usually with at least some components hanging in air by their leads).

"Spiders" are prone to breaking with any repeatable mechanical strain. In case of this keyboard, what I am seeing is the plastic board will flex and will put repeatable strain on the wires, possibly leading to malfunction at some point. PCB would be much more reliable (if done correctly) as it would take most or all of the load from the joints.

A thicker PCB board would actually be more stiff than the plastic board you have here. Not only materials of PCBs tend to be very tough, the PCB, being below the level of the switches, would need much less cutouts that are weakening your plastic mounting board.

Stiffness of the board the switches are mounted to is important not just for the reliability, but also for the overall feel of the mechanical keyboard. This "feel" is mainly affected by the switches, the stiffness of the board, and the acoustics of the enclosure.

And lastly, as an amateur EE I find "spiders" appealing (if done nicely, artfully). But if you want to showoff for the larger audience that just "don't get it", a custom PCB would immediately score more points.

6 comments

There are certain kinds of fully custom keyboards, such as the one I use (Dactyl Manuform) where the keys do not sit on a single flat plane. Such a build would require a flexible PCB. This is doable for the advanced-amateur EE but the geometry is fiddly, at best, and doesn't allow for easy experimentation on key placement (spacing, offset, radius, etc, the bigger problem for me).

I've found the happy medium with single-switch PCBs ("Amoeba" is a popular one), which are fast and easy to wire up. Most notably you don't have to do the painstaking row wire stripping -- just use a plain wire from one PCB to the next in the key matrix (or an insulated wire if you have to traverse other components, which still only requires two stripped ends).

I have a few pictures floating around from my build(s) if that interests anyone.

Couple years ago I started building my own keyboard from scratch. Custom PCB, custom circuit design, custom MCU, custom programming, custom CNC-ed enclosure, some custom keys... In hindsight I should have relaxed a bit on building everything custom and then maybe I would have finished it.

The main idea was to get a keyboard with built in steno and ability to get programmed any way I want. It would also have a small built in OLED display to aid some of the functionality.

Another idea was to have built in mouse (trackpoint + keys that can be used as mouse keys).

I'm interested in your build ;)
https://imgur.com/a/wyqPSeo (unsure why this is marked 18+, sorry; it's SFW).

You can see my first build (blue) in several of these pictures following similar advice to OP's guide (looping diodes, etc), with one modification where I used copper tape for the columns instead of wires.

Then the first picture you can see how much cleaner the single-switch PCB ends up, and I can assure it was far easier to solder / strip / assemble.

As an non-amateur EE, i fully agree with this. If you can draw a basic circuit for 9 keys on paper, you can draw a full-keyboard one in many of the easy cheap PCB platforms, most of which offer a web interface (no installation of any weird software), rendered 3d views and a very cheap production price.

If you really want to do it without a chinese PCB manufacturer, you can do it on a perf board ( https://en.wikipedia.org/wiki/Perfboard ). If you have more GPIOs than keys (eg when building a very cheap steam deck with 9/12 keys), you don't even need any kind of "matrix" multiplexing, and you can just connect the keys to individual gpio pins. If you take a better microcontroller than a teensy, you also get bluetooth (and wifi) capabilities, like with eg. esp32 (~$5 on aliexpress).

But either way, doing fun electronics, be it on a pcb or when soldering "in the air" is a lot better waste of money and time than many other things most people do.

I think the biggest advantage of point to point wiring for a lot of people is that you can simply go ahead and do it at home. For PCBs, you need to know how to use one of the design tools but more importantly you need to find a place to print them.
It's really easy to do. Particularly the getting them made bit. I just did a quote for a 2 layer board that's TKL keyboard sized and to get 5 made it's about £20 delivered to my door from JLCPCB.
Yeah this on all counts.

Ultimately it's probably better to have a triple-layer for the keyboard from what I can see. The faceplate that the switches are mounted on, the PCB and then the back plate. Could probably sandwich it all together easily.

There's nothing wrong with dead bug though but on this scale and reliability requirements and mechanical stress, it's the wrong solution for the problem.

In English, I think it's "point-to-point":

https://en.wikipedia.org/wiki/Point-to-point_construction

This method is usually referred to as "Dead Bug" style wiring in English, because the end result usually resembles a dead bug with its legs curled inwards.
No, it is not. Although I can't fault you for thinking this as there are so many people using this term incorrectly.

"Dead bug" is referring to mounting chips on their back with wires connected to leads going in all directions. Hence "dead" -- live bugs don't usually spend time laying on their backs. When you see it you immediately know why it is called "dead bug"...

Here, this is how it looks like: http://dangerousprototypes.com/blog/2012/11/15/fine-pitch-bg...

This technique is usually used to connect to leads of packages that usually have their leads hidden on the bottom of the package (for example BGA). These packages usually require a PCB made for them or some kind of adapter. They also require a bit more complex soldering process that might be just out of reach of an enthusiast (like good hot air station or reflow oven, etc.) If you find yourself with a component you want to quickly test and don't have an adapter... you improvise and this may result in a dead bug. I did it a lot of times myself.

This technique is also sometimes used in production where they have an existing through hole board (or other board that is incompatible with the process required to mount the component). Sometimes it is easier to just "dead bug" the component than redesign entire board for the new process.

IMHO 'dead bug' used to refer to transistors, ICs etc soldered upside down, but it's true that lately it's used more generally. I would call this 'free form' soldering, since there's no dead IC in sight.