Review of a novice's first PCB - a Wireless Window Sensor - Page 1
Forum section: electronics / general

author: BeardedBear
author_rank: Newbie
timestamp: November 24, 2018, 08:52:42 pm
content: Hi EEVblog forum members,I’ve started discovering the world of electronics through Arduino about three month ago and decided recently to get a little bit more serious about it. I’m designing my first custom PCB (in EAGLE) which should be used as a base for a little door / window sensor.I’m hopeful to find some knowledgeable guys over here, who could have a quick look at my design, point out flaws, give advice. That’d be awesome!Schematic, top and bottom layer views are attached.The GND on the top layer as well as all VCC routes are 20 mil wide, all other signals are 8 mil wide. Clearances in DRC are 8 mil for everything, distance from copper to board dimensions is at least 16 mil. The bottom layer has a large ground fill, which I tried to keep as clean as possible.Part ListU1:Atmega328PU2:DRV5032FBU3:NRF24L01+(SMD module)C1, C2, C3, C4, C5:0.1 µF Y5V MLCCC6:100 µF 6.3V electrolyticR1: 10k Ω3V CR2032 coin cellConcept and functionalityShould be able to run for (many) years off a single coin cellKeep it as small as possible …… but still solderable by hand (no parts smaller than 0805)The circuit goes into power-down mode by default, where it should consume ~ 2 µA (plus whatever leakage current might be introduced by the capacitors, I expect no more than 1-2 µA extra based on my own tests) - I measured ~ 1.5 µA on prototypes I’m currently running, which feature a mechanical reed switch instead of a digital hall effect sensor. When the hall effect sensor (DRV5032 from TI) detects a change (window opened or closed), it wakes the Atmega via interrupt on INT0. The MCU then sends the current state along with the voltage level over the radio module to the master node and goes back into power-down mode.The Atmega328P will be fused to use its internal oscillator at 8 MHz and divide the clock by 8, effectively clocking at 1 Mhz.Specific questions / uncertaintiesI’ve tried to get each MLCC as close to the corresponding GND and VCC pins of the components they belong to, so that they create their own little "current loop". The sensor and radio each get a single 0.1 µF capacitor, the Atmega one for the two VCC/GND pairs on the "left" side, and the AVCC/GND pair on the "right". That should be sufficient?The 100 µF electrolytic cap should protect the coin cell from sudden current spikes when the radio is in transmission mode (which can draw up to 12 mA). Is it possible to exchange it for a MLCC of similar capacitance to reduce leakage current?I'm using the bottom layer as a large ground plane. The coin cells negative pole will be a circular pad on the top layer. Using a bunch of vias next to that pad to connect to the bottom layer was the best solution I could think of. Are there other concepts / best practices for this?Via placement: Is is a bad idea to have vias below the electrolytic cap (I've read that somewhere, but can't see why this would be a problem)? Having vias close to the pads of some components should be alright, as long as I'm careful to avoid solder bridges between different signals?The DRV5032FB has an push-pull output, which means I don't need an external pull up. The data sheet specifies a maximum output current of 5 mA, so it should be safe to directly connect it to the input pin on the MCU. Am I right?Those are the specific questions I have in mind. I'd really appreciate it, if you could help me out. Besides that, general advice or recommendation on my layout, routing or whatever might be is appreciated.Thanks for your attention!

author: Gribo
author_rank: Frequent Contributor
timestamp: November 29, 2018, 06:21:40 pm
content: Your Vcc line forms a loop for no reason. You can keep it on the top layer, without going to the bottom layer.