Hacker News new | past | comments | ask | show | jobs | submit login
Guide on how to design keyboard PCBs (github.com/ruiqimao)
90 points by Adrock on Jan 15, 2017 | hide | past | favorite | 24 comments



Shameless plug: We just launched an affordable PCB prototyping service in Europe with native KiCad support. The PCBs are manufactured in Germany with a manufacturer usually working for the automotive and medical industry. See https://go.aisler.net for details.


What are the benefits of accepting kicad files instead of gerbers?

I understand people can make errors when generating gerbers but they can also make tons of errors when sending you the kicad files (like not including custom libraries).


KiCad Pcbnew files contain all required footprints etc., unlike the schematic files you need no libraries or such.

Creating Gerber files is sometimes hard as different fabs require different Gerber files. Starting with the file extension ending with floating point precision.

One argument against uploading KiCad files is copyright as the fab could reverse engineer the PCB. But this does not count for open source projects and is really unlikely to happen.


All these PCB manufacturers are super cool, but does anyone know any services which come closer to making complete products for you based on design files?

I'm thinking about flashing microcontrollers, soldering components, inserting PCBs I to cases, putting them into packaging?

Obviously the holy grail would be for them to do everything in small batch runs and handle shipping for you too, but I'm also interested in services which may do only parts of this.


I've used macrofab.com with great success.

Their end-to-end webapp is phenomenal and a great break when you finish a design for a client and the premium is just worth getting off your back.



We're going to start assembly with shipment in march. Drop us a line if you're interested in our pilot.


Nice KiCAD tutorial.

"Once you receive your PCBs, you can simply use some solder paste and a hot air rework station to put everything together!" Right. Soldering SMT parts is not easy and takes practice. You need to practice on junk or practice boards (there are $3 kits for this) to get the technique.

Here's somebody who's good at it doing it.[1]

I sometimes do this stuff, but the magnifier and tweezers thing is hard work.

The pros all use lead-free solder now, but most hobbyists are still using leaded solder, which is much more tolerant of temperature variations.

[1] https://www.youtube.com/watch?v=2Z7nCAxS2Rg


Honestly though, SMD is not that difficult once you learn the technique. If you can handle screen-printing a t-shirt, you can handle the hardest part of doing SMD properly: using a mask/screen to deposit solder paste onto the PCB is just as simple as a screen-print for t-shirts, and once that is done its just a matter of having a patient hand for parts placement, stick it in the oven, and off you go .. a lot easier than you might think, at first.


If you have a stencil printer, yes. Simple SMT stencil printers for unframed stencils are unreasonably expensive.[1][2]

I'd been using TechShop's SMT equipment, which is junk. It's getting better since I got a Puhui T-962 oven with all the mods to make it sort of work. I've gone lead-free, which makes it tougher. But I keep getting solder bridges between pins.

[1] http://www.stencilsunlimited.com/protoprint-e-manual-smt-ste... [2] http://www.smtsolderpaste.com/product-list.php?SMT-Stencil-P...


Eh, the 0805 passives he's using and the relatively coarse-pitched package on the Atmega32U4 shouldn't be too bad. This seems like a fairly reasonable project to learn SMT soldering with.


starting from $1, world-wide shipping included:

https://www.aliexpress.com/wholesale?SearchText=smd+practice...


Not sure about his paranoia over the crystal routing - it's an Atmega, the crystal is 16 MHz. Anyway, I think this is more of a KiCAD tutorial than a keyboard design tutorial (not something particularly high on my list of designs I'd like to do).

I keep trying KiCAD but with a paid alternative (Altium Designer) through work it doesn't compare. The key to electronics design is the library. There are a few alternatives which are tied to vendors, like DigiKey's Schemeit. They have decent libraries of parts. I would have figured that KiCAD would too, but the last time I tried it was pretty bad. Hope that's changed.


The crystal routing is pretty critical (and personally, I think the layout detailed here is not optimal either) --- it's a low-amplitude, high frequency signal, and getting it marginal means the oscillator might not always start up reliably..

http://www.atmel.com/Images/Atmel-8128-Best-Practices-for-th...


It's not really changed.

To be honest, I don't think it so much of an issue any more. I have a library of parts I use regularly and just design footprints for new parts.

I'm my case, I doubt that Altium would have footprints for many of the parts I want to use anyway (quite often cheap connectors, switches etc). I feel like being comfortable with footprint design is an important part of the design process.

That said, there are many features of Altium that look very attractive. For example the push and shove routing.


KiCad has push and shove routing, now, unless I'm misunderstanding what you mean by that.

This is a nice overview of the KiCad router: https://youtu.be/CCG4daPvuVI


The standard footprint libraries have improved substantially. Additionally there are quite a large number of 3rd party libraries. I have started collecting them all at: https://github.com/monostable/kicad_footprints#kicad-footpri....

For anyone using KiCAD also check out Xess's list of third part tools: https://github.com/xesscorp/kicad-3rd-party-tools.


kicad libraries are open source and maintained by the community. they are generally okay but if you don't like them feel free to contribute with better ones:

https://github.com/kicad

there are also a number of third party libraries with a great number of common components. See for example this one by olimex:

https://github.com/OLIMEX/KiCAD


This is a really nice tutorial, not just on keyboard PCB design but Kicad in general.

I also recommend the excellent "getting to blinky" videos:

https://contextualelectronics.com/learning/getting-to-blinky...

Which teach the basics of Kicad too.



Layout the keyboard here: http://www.keyboard-layout-editor.com/

Convert to PCB here: http://kalerator.clueboard.co/


I don't understand the decap network: why not go something more classical 10n, 0.1u and 4.7u, i.e. just a cap for each frequency range?


I think its to place them near each VCC to minimize effect of wire parasitics. Dave probably explains it better:

https://youtu.be/BcJ6UdDx1vg?t=5m58s


Pretty sure each cap is associated with a particular pin on the microcontroller.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: