↓ Skip to main content
  1. posts/

Nine schematic mistakes that only show up when the boards come back

··Index: 9·View as Markdown·

Source: 9 Schematic Rules to NEVER Break (YouTube), with a companion article

John Teel reviews hardware designs, and this is his list of the nine schematic rules he sees broken most often. The mistakes are small enough that most people never notice them until the boards come back. Fixes on the schematic cost nothing, Teel says, while after the prototype they mean a board spin, a new build and about a month of waiting.

The article numbers the rules 9 down to 1, and the floating MOSFET gate comes last since that one can hurt somebody. At 3:58 an image was accidentally removed from the video, so Teel put the flyback diode path online as a separate file.

TL;DR

  • ESD diodes on every connector: chip’s built-in ESD survives only factory handling -> ESD diode at each signal entry (low-capacitance for USB data), TVS on power (adapter can nearly double input voltage)
  • Never drive a load from an MCU pin: pin gives ~8-20 mA, coils kick back spikes -> BJT, MOSFET or driver IC, flyback diode across every coil
  • Define every boot/strapping pin: weak internal pulls lose, some units stick in bootloader (ESP32 GPIO0, GPIO2, MTDI; STM32 BOOT0) -> real resistor to the level
  • Add test points: QFN and BGA pins can’t be probed, factory fixture needs pads -> pads on power rails and debug signals, none on crystal or USB lines
  • One set of I2C pull-ups: four 4.7k modules in parallel make ~1.2k, too low for 5V -> keep one set, remove the rest
  • Read the pin table before assigning a GPIO: ESP32 input-only pins leave an LED dark, ADC bank dies with Wi-Fi on -> check pins first
  • Level-shift between voltage domains: 5V into 3.3V input feeds the rail, 3.3V misses the 3.5V high threshold -> divider down, MOSFET with pull-up up, translator IC if fast
  • Crystal load caps from the datasheet: two 18 pF caps in series give 9 pF -> subtract strays, double the rest (~30 pF each), else radio drifts off channel and USB may not connect
  • Never float a MOSFET gate in reset: pins are high-impedance, motor/heater/pump runs before firmware -> 10k resistor holds gate off, check boot behavior

Teel also offers a design review checklist.

Related