First PCB design - How do I go about testing before production?

Thread Starter


Joined Dec 28, 2022
As the title states this is my first PCB I have designed purely through documentation, I have this designed through breadboards and breakouts but am attempting to put it all onto a single board so I can scale it down after I know it all works. Are there any people I can talk to to fix design errors, programs I can simulate a potential result, or other testing methods I should go through before sending it off for production? I have also attached the gerber file.

Thanks all for the help



Joined Oct 2, 2009
Welcome to AAC!

Product testing, verification, code compliance, etc. are all part of the engineering design and manufacturing process.
Apart from full functional verification there are numerous other tests and code compliance requirements such as vibration, temperature, high voltage, EMI radiation, EMI susceptibility, UL and CSA certification.

We cannot advise without knowing the actual product, market and application.

Fixing design errors and program errors comes much earlier in the design process and requires the original designers and engineers to be a part of the test process.


Joined Mar 30, 2015
Welcome to AAC!
other testing methods I should go through before sending it off for production?
Once you've done all of the verification that you can, you need to do a small run to verify that the design actually works correctly before doing your production run.


Joined Jul 10, 2017
You can not design a device and simulate the testing. It must physically built and tested in the real world. A good designs includes testability.
The normal procedure is to first make a prototype. That is tested for compliance with the specification. This includes the functionality of the device and whether it works correctly and accurately within the limits of the environmental specification. It is modified until it meets all the specification requirements.
Then a pre-production model is made. This is again tested to its specification limits and it is also checked to ensure that it works in a real life environment to ensure that the user interfaces including buttons, switches touch screens, displays, etc work as expected. This version is modified until it works satisfactorily.
Once this process is complete, the device can be sent to production with some confidence.


Joined Dec 5, 2011
How are you prototyping your circuit, or have you started with schematic and pcb capture?
You have gerbers so which program did you use, and does it have any simulation options?

I normally breadboard my circuits with special IC's in their own breakout carriers however it depends on the type of circuit. Sometimes you need to go straight to PCB manufacture if, for example, signal integrity at high speed is important, and copper clad or breadboard can't perform.

With the cost of PCBs currently, I always do a prototype run, just to satisfy feature creep or unforeseen bugs. Rarely do I have a single PCB manufacture project (without design iteration), but again it depends on complexity.


Joined Nov 29, 2009
The first thing that strikes me is that you seem to have no ground plane.

The second is to echo the comments above; have a small run (5 - 10) of PCBs made up and test your design. I have to do this from time to time and always have a significant number of modifications to make to the original design, some because of errors, some because I can simply see a better way of doing it!


Joined Jan 19, 2022
There are probably some big money software packages that could simulate your design. But you already have a working breadboard, so the only thing simulation would do is maybe point out issues with trace lengths and ground planes. It would certainly be cheaper to do a test run, as other people have suggested, and just try it out. Also, per best practices, I don't know anyone who cares about the quality of their product that would go into full production without doing at least one test run and testing it.


Joined Mar 17, 2012
Some software allows you to specify the types of pins as i/o, power, ground, etc. so you can run your design through an ERC (Electrical Rule Check) and it'll flag any traces/pins that don't match up to what you've told it they should be. It's a good double check.

2nd thing I noticed (1st was ground plane too) was how big the board is especially since you don't have any standoff holes for mounting the board (which usually dicate a larger PCB to accomodate them). If no holes are desired, this design could easily be made about half the size while still keeping all the surface mount components on the top. It could be made even smaller by moving some of the easily hand-solderable components (like U3, U4, U5, etc.) to the bottom side. I gotta admit that my OCD bounced off the rev limiter when I saw that all of your resistors and capacitors next to the SD card slot are NOT in a neat little line.... there isn't any reason why C18, R9, R10 thru R13 and C17 cannot be lined up next to the pinout of the SD card slot for a more compact layout. PCB software usually has a grid allowing you to snap traces and parts so they line up, use it! ...and the reason why I mention this is because you could use OSHPark's prototyping service to get 3 copies of your design for $5 per sq in. They have downloadable design rules for many software packages too.

3rd thing I've noticed is the vias connecting the top traces to the bottom look very small. The PCB fabrication company you choose will have drill specs for minimum holes and trace sizes too, make sure you run the DRC (Design Rule Check) based on these specifications to see if any trace sizes, vias, etc. are under their minimum sizes.
Last edited:


Joined Dec 30, 2022
It's a good idea to test your PCB design before sending it off for production to ensure that it functions as intended and to identify and fix any potential issues. Here are some steps you can follow to test your PCB design before production:
  1. Verify the design: Use PCB design software to check for errors and ensure that the design meets your specifications.
  2. Create a prototype: Use a prototyping method, such as etching or milling, to create a physical version of your PCB. This will allow you to test the actual hardware and make any necessary adjustments to the design.
  3. Test the prototype: Connect the prototype to a power source and test it using appropriate test equipment, such as a multimeter or oscilloscope. This will help you identify any issues with the design, such as incorrect component placement or wiring errors.
  4. Debug and make adjustments: If any issues are identified during testing, use the test results to debug the design and make any necessary adjustments.
  5. Repeat the process: Repeat the testing process until the prototype functions as intended and meets all of your design specifications.

It's also a good idea to create a test plan that outlines the specific tests you will perform on the prototype and the expected results. This will help you stay organized and ensure that you thoroughly test the prototype before moving on to production.


Joined Jan 19, 2021
So let me start by saying that if that's your first design, you did a pretty good job but with room for improvements. First as others have mentioned, you have a 2 layer board and your ground, (return lines) are way too small to be effective. Your power and ground lines should be the largest to limit impedance issues if this is a higher speed design. I would make them at least the same size as your 2 lines going to the USB connector if you are not doing a 4 layer PCB. If you go with a 4 layer board, that's another discussion, but for what you have, increase all of the power and ground lines. Next, move U5, C3 and C16 closer to U1 and connect the grounds from the two caps are tied together and the sides going to U5, (a crystal) close to the output pins of the device. Those caps are load caps and should be very close to the crystal and the U1 device to keep noise down. I don't know what U4 is, but if it has unused inputs, check with the datasheet to see if you can ground or tie the unused inputs to either your ground or power rails. We typically use a 10K or even 100K resister to do that or at least a trace you can cut after the part is soldered down in case you need one of the devices inside. I noticed that the right 2 pins of that USB connector are connected to R2 and R1 and the end pads of the connector, is that correct? Not saying it's wrong, just haven't seen that before. As was also mentioned, some holes to attach some standoffs would be a good idea so you can set the board on a bench and test without it flopping around, just a thought. Also, U1 has a thermal pad in the center but you don't have any/much heat sinking for it. I would add copper to the bottom side and put about 5 to 9 vias from the pad to the bottom copper you add to get the heat out and away from the device. That's assuming it's going to get hot, that I don't know based on your usage and the device. Now for good design practice, make your trace entries to the pads either at 90' or 45' to the corners. Acid traps are not all that much of an issue any more but it's good design practice. Avoid "Y" connections in your traces and try to make the connections at pads or vias. I've done it in a bind but I don't like it. :) You can do "T" connections if you need to but I try to avoid them also. As was alos mentioned, lining up parts can be nicer looking and that includes keeping vias in a nice line/row etc. It's not required, but there was a reason we called it "Artwork" back in the day. :) Looking nice doesn't make it work better, (for the most part) but it makes the design look more finished and like you knew what you were doing. ;-) Again, not required, just a thought. I've been doing PCB designs for 30+ years and they are all different and all have something you need to do just because it seems. Good luck and have fun.

Thread Starter


Joined Dec 28, 2022
Thank you all so much for the help, I have taken all the feedback and greatly improved my design. Hopefully getting it printed soon and if all works as intended start on a production model :)

If anyone is interested the updated file has been attached



Joined Jan 19, 2021
Pentinic, You are correct, that is greatly improved indeed, good job! I do have some additional comments that you can use now or in the future as you see fit, but in either case, what you have will work for you I'm sure. I attached a screen shot of an area that has some of the issues, but there were a few more on the board, but like I said, you can leave as is and not have any issues. Comments.gif
In the screen shot above, the areas I pointed to without letters are things to avoid. These examples are the trace entry to the pads that create an acute angle. You should try to avoid them. In "A" I pointed to areas that are good pad entry and should keep as good practice going forward. (C25, C26, etc.) In "B" above, I have done this when I had no choice, but it is generally good practice NOT run a trace between 2 pins like this. The reason is that during inspection of the board assembly, it may not be clear to someone that the pins are connected and they may think it is a solder short/bridge after assembly. If you can, it's better to have the trace come out away from the pin and loop back down to the pin next to it so the connection is seen as a U shape and not a bar between the pins. In "C" I notice that it looks like the trace running from C29 to the first pin of OLED1 is connected to a via that connects to your ground plane on the back side? If so, you can avoid running the traces between the pins and simply add a via from each pin(s) to the plane and not need that looping trace between all those pins of the connector. It is just an observation and not wrong by any means. In the early days of PCB design, the number of vias/drilled holes added cost as you added more to a board. Today that's not the case until you start getting into the thousands of holes and then it becomes a little more of a factor. Todays drilling machines can drill thousands of holes and do drill changes in no time so adding 50 vias on your board is nothing in the big picture. ;-) Overall I think you did really well and I noticed you used an oscillator and dropped the Xtal and load caps. ;-) Lastly, the wide lines from R3 and R4 are a bit too large for the pads. I would reduce the trace to no larger than the pad width and if you really need to jump back up to the larger width, do it away from the pads. This type of issue can cause solder issues for the part by sucking solder away from the pad with the larger trace along with heating for solder reflow. I'm guessing you are looking to meet a 90 Ohm impedance requirement for the USB connection which is fine, but I don't think your trace length is long enough, (traces are less than an inch) to be a factor. That said, where did you get the data to use traces that size, datasheets, calculator? Impedances like this are controlled by several factors, PCB material and the Dk or Er of the material, trace width, trace spacing between the pair and distance from the trace to the plane below, etc. This can also add cost if you specify an impedance requirement. If you got the info from a datasheet, it's likely that they were using more than a 2 layer board and unless they called out the material, you can't be sure of the Er value. I don't think you'll have any issues if you reduce your width to pad width or less. If you really want to have controlled impedance for those lines, you will need the material Er, distance to the plane below the traces and with that you can use a number of calculators to give you trace width and space for the pair. Good luck and let us know how it works when you get it put together. ;-)


Joined Mar 17, 2012
As PadMasterson mentioned, your design is MUCH better, nice job!
I have a couple other layout suggestions after you get your prototype boards back and confirm everything works :)

I try not to route the power trace from component to component. PadMasterson or one of the other senior designers can correct me if I'm wrong, but I would rather jump to the bottom side of the board and route a thicker main power trace and branch off of it in order to feed the various ICs as long as it doesn't cut up the ground plane too much. Speaking of which...

Try to reduce ground plane peninsulas. Two examples are circled blue below:
If you move the bend in the two traces (yellow) up so they come out of the vias at a 45deg angle, that will eliminate the peninsula on the left-hand side. Then move the via (red) up and route that trace as shown and that will eliminate the other peninsula on the right-hand side.

Another layout suggestion is to play around with the location of the passives so you aren't trying to snake traces in between pads on a component to connect them. Like the R14 and C15 supporting D4, they can be arranged to make the traces enter and exit at better angles while also eliminating the need for that via near R14.
Arranging the caps on X1 and using two vias rather than just one to the ground plane would clean up those traces a lot and eliminate that trace T connection between C3 and C16.

Using the pads of a component for the junction (to a certain extent): You could eliminate the via between R19 and C30 (blue) by just exiting the top of either R19 or R20 (yellow) to your DNP switch:

Good luck with your project!


Joined Mar 17, 2012
One other thing I forgot to mention. Don't forget to put a date and/or revision number on your board either in the silk screen or copper!


Joined Jan 19, 2021
The things Hemi mentioned are all good valid points and ideas. Those peninsulas he mentioned can be a bad thing in some cases especially with high speed circuits. If it is a ground area if you don't have at least 2 vias connecting it to a ground plane or power, it's worthless and should be removed if you can. They can turn into antennas in high speed circuits and cause more problems than you want. Since you are using a 2 layer board, as he mentioned, you could run larger/wider traces between components which helps in reducing the impedance of the power to the pins on the bottom side. Another idea if you plan it right with your placement is use a power plane on the surface and flood the top side with that ground and the bottom side with power. What that does for you is reduce the power distribution impedances to the components but, and here is that but, you need to be able to ensure you can get the ground to all of the pins that it connects to. That's where placement comes in. Placing components is every bit as important as the routing and what you will find, is good placement makes for good and or easier routing. Having the ground on the top even with all the parts on top can work if you plan your placement with that in mind. If you have areas that you just can't get ground to with a plane, run a trace as needed to the part(s) as needed, it's the best you can do at that point. By having ground on the top side and power on the bottom is good since traces running next to the ground plane like that keeps the return loop close and you keep your EMI and noise down. If you ever do a 4 layer board, make both internal layers ground planes and route your power on the surface layers as much as possible. Because of how most fabricators build a 4 layer board, you will have a much better design and you can get better controlled impedance if needed that way. Anyway, Hemi's changes are good and if you can do them, it will help open things up some. And yes, put a part number or revision on the board in copper or silkscreen to keep track of the design, you will be glad you did in time... :) Good Luck...