You get your PCB back from the manufacturer. It is a new design, you have of course bread-boarded all the major parts, but you know there are going to be problems. There are just too many things that can cause problems, e.g.:
- Errors in the schematic
- Errors in the layout, not found by the ERC/DRC
- Misplaced parts during soldering
- Shorts and the like during soldering
- any combination of the above
I've had two relatively complex boards lately where I've basically had to de-populate the entire boards after assembly in order to locate the error. I found the errors, but the boards were scrap.
I've tried to start with the bare minimum of parts and the parts that can't be hand-soldered (I'm using paste, stencil and toaster). Typically this would be the MCU, the JTAG connector and a few capacitors. Then I'm gradually populating other areas while checking them for problems.
This approach works, but is really slow. I also have to comment out/comment in any code that assumes the presence of some particular hardware.
Does anyone have tips/suggestions on how to approach newly designed PCBs?
EDIT: I'm mainly thinking about the kind of problems that leaves your board dead, like hidden power rail shorts, or anything that bricks the MCU.