PCB Design Feedback - Page 1
Forum section: electronics / general

author: SenSeS
author_rank: Contributor
timestamp: December 28, 2014, 10:35:10 pm
content: Hi,This is my second PCB prototype and and I would like to get some feedback on it. Basically there is a BLE113 to send receive BLE commands. These commands get transmitted via UART to an ATmega328p. Furthermore the Atmega can control a DC motor. The first one I made behaved as expected but now I added decoupling caps, an H-bridge and changed some other things. There is a copper pour on the bottom which is the ground plane. VCC is 5V and VDD is 3.3V. My goal is for this PCB to be as robust as possible while not really caring about budget constraints. I've read the EMC Design Considerations note (http://www.atmel.com/images/doc1619.pdf) and Hardware Design Considerations (http://www.atmel.com/Images/Atmel-2521-AVR-Hardware-Design-Considerations_ApplicationNote_AVR042.pdf) as well as a lot of other forum posts on good design. It would be nice to get some feedback from the EEVBlog community so if you have any remarks please let me know (and no need to be sparse). What I personally don't like about the current design is that I have too many traces on the ground plane. I also I have a couple of questions:1) The AVR EMC Design Considerations note describes a circuit for an external reset button (page 15) which contains a diode and cap. Should I use this setup for all resets or only for the ATmega? On the BLE113 for instance I implemented what I found in its datasheet and this does not contain a diode and a cap. Would it be better to add this here as well?2) I have a big cap (470uF) at the power supply. I used this value because it seems to be common but I'm not sure whether that's a good value for my design. Sometimes I also see 4x100nF caps in parallel at the power supply. Which one is better for my design?3) For the ATmega power decoupling I use an LC for each VCC and then one for AVCC. Can't I just use one LC for both VCC's? Also AVCC comes after the LC from VCC, is this good or could it just come directly off my voltage regulator? Also for BLE113 I just use C (no L) because thats how it is in the datasheet.4) I have a lowpass filter for reading analog inputs with cutoff frequency fADC/2 (from datasheet). Should I also have a filter on my UART signals?5) I have two 5V voltage regulators on the PCB, 1 for the DC motor and 1 for the ATmega. Could I get by with using only 1 for both atmega and DC? Also, should the ATmega net and the DC motor net each get there own "big" cap?6) My trace width for power is 0.024in and for all the rest 0.012in (saw these values in a tutorial). Is this ok? Seems like big traces to me.7) I read somewhere (http://electronics.stackexchange.com/questions/15135/decoupling-caps-pcb-layout/15143#15143) that it’s better to have a local power net for the ATmega (for any uC really) and have only one connection between this local net and the ground (with a via) and power planes. This would supposedly limit radiation and prevent the ground plane from becoming a patch antenna. I’m not sure about this though so I didn’t implement this on the PCB, any thoughts?Thanks in advance!

author: T3sl4co1l
author_rank: Super Contributor
timestamp: December 29, 2014, 01:58:47 am
content: There's ground pour in there too, right? It's not shown...It should be stitched top to bottom with pour on both sides, but even just stitching around gaps will help a lot. Those longer traces above IC1 and below and left of IC2 break up the ground pour, and with the via positions, it won't be contiguous.I also see badly placed vias, like whatever three components are just above IC1. They're not quite via-in-pad, but they're awfully close or touching, and will suck solder. Also, is the white circle diameter actually the via hole, or is that the OD of the copper and the ID is much smaller? Because if it's as drawn, there's NO annular ring to connect to the vias.Almost all the silk labels suck, but maybe you haven't touched those yet? Value or part number is rarely placed on the PCB these days, and if nothing else, wastes space; designator under the part doesn't help anyone.1. Diode doesn't do anything. Maybe if it's coming from an external source. An RCD network can be helpful for making a one-shot or debounce action, but it's not clear if that is desired, intended or useful here. Whether the BLE wants debounce, I don't know. You may consider wired-ORing (with a diode perhaps?) the reset to the MCU (both resets together, or to an IO pin so the MCU can reset it under software control)2. Depends on source and requirements. If it's just for dampening onboard signals, not much is required: perhaps 2-10 times the total onboard bypass (all the 0.1uF or whatever) plus a little resistance (or ESR), or 10-50 times for aluminum electrolytic. If you actually need line frequency filtering, or more bulk capacity (low ESR, high C), even more may be necessary.Note that excessively large C / small ESR is undesirable, because that will allow the power supply network to resonate at some frequencies (combined with trace inductances). Resistance is desirable for damping.3. These values of L and C are undesirable because they have rather high impedances, which will not be damped by any resistance in the circuit. In other words, the filtering is actually significantly worse, at the resonant frequency of the filters. If you add, say, 0.47uF + 4.7 ohm (or an equivalent value + ESR tantalum) in parallel with the 'output' side bypass cap, that will improve significantly.Hardly a problem though -- the MCU core at least is digital like everything else in this circuit, so you don't need to filter it specially. The ADC probably should be filtered (it can be RC filtered for cost savings), but maybe that doesn't even matter too much because, I'm guessing from IC3 that the analog signal will be rather noisy and low accuracy anyway.4. This should be an RC filter, or a much lower impedance LC (again, to avoid resonance). Onboard logic signals don't need filtering; some series resistance is often desirable in large layouts (traces many inches long), which reduces risetime or reflections (transmission line effects), when it is acceptable to do.5. How much does the motor require? What is your power input?Isolating it with a small LC filter and some heavy bypass is usually better than using a regulator for heavy loads.6. I use default 10/10 mil trace width/separation for generic layouts; there shouldn't be any fab that can't handle that, even the cheapest Chinese ones. 6/6 mil is typically the limit for mainstream fabs, which cheap Chinese fabs are usually capable of (but beware if they make unchecked mistakes -- inspect your wares if you insist on cheaping out). 24 mil should be okay for up to an ampere or so. No idea if that's enough, you didn't mention the size of your motor...7. It's almost never desirable to split ground planes. Isolating power supplies can be helpful from time to time, but isn't likely to be important for digital logic (as I talked about above).The best way to avoid patch antennas is to short everything together in one big massive ground, i.e., by stitching ground plane on top and bottom. This makes a two-layer board almost as good as a four-layer board with solid internal planes. Whether this is necessary for a particular design might vary, but the only reason it might be undesirable is if you need unusually low capacitance / high impedance traces. The advantage of having self-shielding and somewhat lower impedances is usually advantageous.Tim

author: SenSeS
author_rank: Contributor
timestamp: December 29, 2014, 02:19:12 pm
content: First of all, thanks for your response!Yes there is a copper pour on the bottom, I just removed it for clarity before posting.I did indeed not touch the silkscreen labels yet. I know value is rarely placed on PCB's but this seems to make it easier when placing components, otherwise i need to sit there with my BOM to see what value goes on what identifier.3) I might get rid of the L for decoupling VCC and just use C. I would only use an LC for AVCC. Not sure if that is a good idea though.5)The motor requires 0.1A when continuously rotating at max speed.