A field guide to designing your PCBs, learned the hard way #makerbusiness
Nick Price put together 200+ boards for the 26th DEF CON conference, and hit a few hiccups along the way. For posterity (and to help others design their own PCBs), he compiled a list of some helpful tips he came up with after the fact. And while these are useful for anyone putting together a small handmade batch of boards, they have implications for industrial manufacturing as well.
1)Cut some holes in your boards
2)Add proper programming and debugging interfaces
3)Align all of your pin headers to be on the same 0.1″ grid
4)Think about component dimensions
5)Eliminate as many assembly steps as possible
6)Rename your components once your board layout is finalized
7)Add a test cycle to your firmware
A few of them you might have already thought of, but simple things like adding holes to your boards, even if not for through-hole mounting, are helpful when doing something as simple as alignment. It’d be prudent to repeat these before you set out on a manufacturing journey.
A theme through all of these is that, if you’re dealing with one or two units, what can seem relatively simple and efficient is going to cost you a lot of time when multiplied by whatever your production factor is. Will it take 15 minutes for one of your QA processes, like a test cycle? Well, you’re going to have to do that for 50 hours if you’re making 200 boards.
I also really wished I’d added some sort of proper debugging/programming interface to the each of the boards. I had every pin for every device broken out on the board, but I didn’t realize what a pain it would be to reprogram them en masse if the firmware I burned onto the microcontrollers wasn’t perfect. The first step was to forcibly disable 1) the display, 2) the radio, and 3) the flash chip from using the SPI bus by adding three jumper wires to tie their CE pins to VCC. With those three jumper wires in place, the next task was to wire up the four SPI bus lines, the reset line, and VCC and GND. It would’ve been a massive pain to solder wires or pins into the through-holes to do this, even temporarily, so the end result was a bodge of ten leads going to various places on the board, all being held in place by thoughts and prayers.
This concern is true for all levels of industrial manufacturing, and magnifies astronomically. While not always dealing in quite such time consuming hands-on tasks, if a process for a board requires 10 seconds of attention, vs 5 seconds, that’s going to really add up over 10,000 units, let alone hundreds of thousands. It pays to keep the process as simple and lean as possible.
Sometimes you have to learn all this the hard way, but thanks to Price, you don’t have to! Check out the whole post over at his site spun.io
We are angry, frustrated, and in pain because of the violence and murder of Black people by the police because of racism. We are in the fight AGAINST RACISM. George Floyd was murdered, his life stolen. The Adafruit teams have specific actions we’ve done, are doing, and will do together as a company and culture. We are asking the Adafruit community to get involved and share what you are doing. The Adafruit teams will not settle for a hash tag, a Tweet, or an icon change. We will work on real change, and that requires real action and real work together. That is what we will do each day, each month, each year – we will hold ourselves accountable and publish our collective efforts, partnerships, activism, donations, openly and publicly. Our blog and social media platforms will be utilized in actionable ways. Join us and the anti-racist efforts working to end police brutality, reform the criminal justice system, and dismantle the many other forms of systemic racism at work in this country, read more @ adafruit.com/blacklivesmatter
Stop breadboarding and soldering – start making immediately! Adafruit’s Circuit Playground is jam-packed with LEDs, sensors, buttons, alligator clip pads and more. Build projects with Circuit Playground in a few minutes with the drag-and-drop MakeCode programming site, learn computer science using the CS Discoveries class on code.org, jump into CircuitPython to learn Python and hardware together, TinyGO, or even use the Arduino IDE. Circuit Playground Express is the newest and best Circuit Playground board, with support for CircuitPython, MakeCode, and Arduino. It has a powerful processor, 10 NeoPixels, mini speaker, InfraRed receive and transmit, two buttons, a switch, 14 alligator clip pads, and lots of sensors: capacitive touch, IR proximity, temperature, light, motion and sound. A whole wide world of electronics and coding is waiting for you, and it fits in the palm of your hand.