February 2, 2017
| By: Mohamed Ismail
Senior Member of the Technical Staff, Technical Services, Maxim Integrated
The very first time I designed and built my own PCB from scratch was an exciting milestone in my electronics career. It was also a colossal disaster.
Inspired by my love of Guitar Hero, a game that uses a guitar-shaped controller to play rock music, I wanted to design my own string-less guitar. During a summer internship, I had been exposed to a number of touch sensor technologies, so how hard could it be? I had taken an embedded C programming class and loosely knew about the Arduino platform. While I didn't know what I2C was, or that the sensors I ended up choosing used that interface, I found a capacitive touch sensor shield (a function-specific board designed to plug into an Arduino board) and an online code library to exercise the sensor shield.
Getting the shield to work was a breeze—I plugged my board into a computer, attached the capacitive touch shield into the board, and programmed the microcontroller with the un-altered code example. I was registering button presses before I even knew there was a datasheet to read! Engineering was just like the title of the book on my desk—for dummies.
Designing My First Prototype - Why I Believe in Beginner’s Luck
After seeing my proof-of-concept work in minutes, it was time for me to design my own circuit board. Grabbing my guitar, I measured the length and width of each fret (the spacing on a guitar used to separate each note) and estimated the area under each string that should relate to that note. Then I downloaded the Eagle CAD tool and used the free educational license to start my schematic and PCB design, drawing metal pads to match the playing size of each string. Without any knowledge of signal integrity or crosstalk, I connected all 48 metal pads with long, thin, and tightly packed traces to my crowd of capacitive sensor chips at the far end of my PCB. All of the power, ground, and communication traces were similarly long, thin, and tightly packed, and I managed to route them to match the pins on the shield I was using as a reference. I had read in an online forum that I2C devices can share the same communication lines, so I hooked my four sensors together. Miraculously, I figured out how to connect the address pins to communicate with each sensor individually. At this point, my schematic mostly matched the capacitive sensor shield and the layout didn't give any errors…so I must have done it perfectly in one go.
A love of playing Guitar Hero led to a journey to design a string-less guitar.
Finding a board house online that offered bare-bones PCBs at a cut rate, I put in an order to get my guitar sensor board made. The board would get made without soldermask or silkscreen, but who even knows what those are anyway? I placed an order for the components I needed from SparkFun and Digi-Key quite easily.
When everything arrived, trying to assemble all of the components on the board proved to be quite a challenge. I had never used surface-mount components and had gone with the first result I found on Digi-Key. Boy, did I not like soldering those 0402-sized capacitors! It wasn't until later that I found out capacitors actually come in different sizes! The capacitive sensor ICs were in a 20-pin QFN package, so I had fun applying solder paste and finding a hot air gun to use. With no regard to the existence of temperature limits or profiles, I blasted these chips with hot air until the solder melted and it looked like they were lined up. My friend said the surface tension of the solder on the traces would make them self-align, and it was pretty cool watching the chips slide into place. After everything cooled down, I inspected my work. There was solder everywhere! I used solder wick to remove any extra solder that I could see, and eventually I could see a distinction between the pins again. Once all of the components were on the board, I was ready to test everything out. This was an exciting moment.
Why Didn’t My Design Work?
My custom board fit neatly into the Arduino platform, so I powered everything up. What I got was quite shocking: absolutely nothing! Which was odd because I had copied the schematic exactly, put all the components on the board, and used code I know worked (because I didn't write it). I showed it to my friend in the robotics club, and he told me I didn't have any bypass capacitors. What the heck is a bypass capacitor? By pure luck, I had placed some extra ground pads near my ICs. Since I had a bare-bones PCB with no soldermask, the GND pads were exposed and I could place down some capacitors near the sensor ICs. After some more soldering, I tried my board again, and something that is even more shocking to me now happened: it worked! I started pressing all of my different sensor pads and was able to register button presses.
Six years and two degrees later, knowing what I know now about electronics and analog design, I almost can't believe anything I did worked back then. I'm sure if I found that board and looked at it, I would see some layout practices that would make me wince. It was only after my board didn't work perfectly the first time that I actually opened up a datasheet, read about a register map, researched I2C communication, discovered the magic of a bypass capacitor, and figured out how to configure my sensor chips to perform optimally for my application.
Giving Engineers a Head Start on Their Designs
My first embedded design story serves as a reminder of how valuable the ecosystem of tools is to an engineer. I never had to contact any manufacturer for support, since all of the support information I needed was already available. All of the tools are out there for anyone to get started:
Anyone with $50 and an interest in electronics can obtain all of these design tools, order parts, and get a custom board made. This combination of tools has enabled a much larger population with the power to prototype and build products with embedded electronics without being an expert in the field. Maxim, for example, provides technical documents, videos, reference designs, design tools and models, and many other resources to get started on its Design Overview webpage. I couldn’t imagine designing a switch-mode power supply without all of the features built into Maxim’s EE-Sim design generation and simulation tool. Sure, I didn't get my custom application running until I dove under the hood, but the way many creators and makers encounter ICs has changed drastically with this new ecosystem of tools.