Home Posts Links Notes Now

PCB design



Circuit design

Turn schematic on paper into a real circuit.

Components aren't ideal

Capacitors have parasitics, ESR (resistance) and ESL (inductance) in series to their ideal capacitance. These are small, usually visible at very high frequencies. There are also many other small nonlinearities.

Inductors have parasitics and nonlinearities too. They're sensitive to heat and high current.

Resistors heat up (P=I^2R), have tolerances.

Diode voltage de-ratings. LED Vf tolerance. Silicon saturation. Thermal limits. Magnetic saturation. Electrolytic capacitor shelf life. MOSFET body diodes.

See also component selection guide.

Undefined control signals

We always need to ensure that control signal are always in a defined state. MCUs can take longer to activate than other components. This problem can be solved with pull-downs and pull-ups to define the state of a node when left floating. Push-pull switches need a pull-down. Open-drain (aka open-collector) need a pull-up.

Edge cases

They usually happen when a circuit is powered on and off.

Capacitive loads, sparks when plugging in a circuit due to very high dV/dt. Can be avoided with load switches that delay the startup controlling dV/dt. Another solution is NTC thermistors. High resistance when plugging in, low when at steady state. This isn't a good solution for quick turning off and back on again.

Inductors have flyback issue when we turn them off. Inductors store energy, when unplugging them it needs to go somewhere causing very high voltage, which could break MOSFET switches. Inductors include also solenoids, motors and relays. This can be avoided adding a diode to have the current spin around in circle till dissipated.

ESD. There are ESD protection ICs.

Voltage levels. When connecting different components make sure they agree on the voltage levels. Can be solved adding a voltage divider.

Design for testing

PCBs are not breadboards.

Test points need to be specifically broken out.

Can add 0 Ohm resistors that later can be replaced with other resistors or as connection point for other components.

Add status LEDs that can be used for debugging.


There are many alternatives KiCAD (open source) or Altium (commercial) are popular ones. Introduction to KiCAD.


Thanks for reading. Feel free to reach out for any comment or question.