Noisy ground on breadboard - Page 1
Forum section: electronics / beginners

author: mayor
author_rank: Regular Contributor
timestamp: July 21, 2014, 11:37:26 pm
content: Hi there,long story short: I have a prototype circuit on a breadboard with an MSP430 microcontroller and a few other digital ICs. There's an AD7219 there to drive an LCD segment display, and it's a good contributor to noise on the ground, but there are others. I need to read back low voltage (0-100mV), and am using one of the uC's ADCs (10 bit).Problem is, there's so much noise on ground that readings are all over the place.Any suggestions? Or do I need to provide more details?

author: nicknails
author_rank: Regular Contributor
timestamp: July 22, 2014, 12:14:02 am
content: Schematic would help. Do you have bypass caps on everything? Breadboards aren't the greatest for noise or power. If you have something that works decently, a protoboard would be better.

author: mayor
author_rank: Regular Contributor
timestamp: July 22, 2014, 12:30:11 am
content: Hi there, thanks for the response. I am bypassing what I can. The 7219 introduces a lot of noise through PWM, but even without it, I'm getting almost 1V PP! I have to admit there are a lot of wires. You can find the circuit here :http://easyeda.com/editor#id=0YSa4mgxPNot too sure how I could properly "lay out" GND and AGND on a breadboard...

author: mayor
author_rank: Regular Contributor
timestamp: July 22, 2014, 12:40:04 am
content: This is a capture of the ADC input; you can see high frequency noise at ~400mV and lower frequency at 100mV... Ach!

author: T3sl4co1l
author_rank: Super Contributor
timestamp: July 22, 2014, 03:44:15 am
content: What kind of breadboard? Pic of layout?

author: mij59
author_rank: Frequent Contributor
timestamp: July 22, 2014, 03:48:21 am
content: Hi,At what voltage is VCC ?The LM317 needs min. 3V between Vin and Vout, so its not properly regulating.

author: rob77
author_rank: Super Contributor
timestamp: July 22, 2014, 07:06:29 am
content: good power supply + lots of decoupling caps - every IC has to have a ceramic + electrolyte/tantalum (low ESR if possible) as close as possible. avoid routing the ground wires all over the place - use a single "side rail" on your breadboard for ground.if there is lot's of noise then add even more decoupling and use shorter wires.the bradboard is much worse (really much) than PCB - so if your design is critical then use a piece of vero-board or proto-board.you will know when to use proto-board by looking at your breadboard... "does it look like hedgehog and still unreliable ?" (because of the decoupling caps everywhere) if the answer is yes, then it's time for a protoboard

author: AndyC_772
author_rank: Super Contributor
timestamp: July 22, 2014, 08:01:51 am
content: This is why the ground plane was invented.I dislike breadboards, and stripboard isn't much better. Both are good ways to hook a few parts together quickly to check that they work more or less as expected, in a very rough & ready way. Once you start looking for accuracy, quietness and precision, they very rapidly become your worst enemy. I've lost count of the number of hours I wasted during my early career trying to make prototype circuits work well using these construction methods, before I eventually realised how futile it was. Please don't make the same mistake I did.The real problem is that there is no common reference between any two points in the layout. One part's GND pin is connected to others via a resistive, inductive path across which substantial voltages can be easily developed, and theonlycure for that is to eliminate that path.You can add all the decoupling / smoothing / filter capacitors you like, but they just won't do you nearly as much good as you'd hope, because you're only ever making a signal 'quiet' with respect to a reference point that's nearby. What you're not doing, is making them quiet with respect to components that are more than a couple of cm away. Also bear in mind that the path length from a ground pin, down into the breadboard, up a capacitor leg and then all the way back down again to a signal pin can easily be a couple of cm.That's why I generally regard a 4 layer PCB as a minimum functional requirement for many designs, and it's highly likely that you'll need to design and fabricate one before your circuit will work as well as you want it to.

author: rob77
author_rank: Super Contributor
timestamp: July 22, 2014, 08:14:55 am
content: agree, but for hobby project the 4 layer PCB is a big no-go. for hobbyist prototyping - the breadboard is usable if you are well aware of all the negative effects of a breadboard construction. and vero/strip boards are much better than breadboard (at least the parasitic capacitance is order of magnitude lower between the adjacent "rows") + solder joints have much less resistance than the breadboard contacts.in addition - if you can make it work reliably on a breadboard - then it will work on a proto-board and it's almost certain it will work on a not well-routed PCB as well. not well-routed PCBs are common among hobbyists , you can't expect that a hobbyist will lay-out a PCB like the pros are doing (pro is a person doing something for living)

author: AndyC_772
author_rank: Super Contributor
timestamp: July 22, 2014, 08:26:39 am
content: Practicalities understood - but I would argue that something doesn't become less necessary just because it's difficult or expensive. There are no 'entry level' laws of physics that someone can choose to have apply to their circuits; we're all playing the game on its hardest level.

author: mayor
author_rank: Regular Contributor
timestamp: July 24, 2014, 11:22:18 pm
content: Answering a number of questions:1. LM317 out of the equation (so is 7805) in my breadboard version. I am using 5V and 3.3V from MSP430 launchpad.2. Decoupling caps: had those everywhere, no change in ADC reading3. Pic included for layoutI am inclined to think/agree I have reached the limit of the breadboard.I imagine adding an RC filter where I point to DAC out / ADC in would be a good idea?Thanks for the responses!

author: AndreasF
author_rank: Frequent Contributor
timestamp: July 25, 2014, 06:32:13 am
content: Would it be an option to deal with the noise in software? You could average across a few samples unless you need the maximum sampling rate. If you go with a power-of-two number of samples it would take a simple accumulate and bit-shift to accomplish this.

author: rob77
author_rank: Super Contributor
timestamp: July 25, 2014, 06:38:41 am
content: actually if we're talking about flickering of the last digit (LSB) then one can get rid of it by averaging as you mentioned. actually when talking about measurements with ADC i'm always making an average of at least 4 samples. same for connecting 4x4 keypad with 1 ADC pin - taking 2 averages 5ms apart (4samples each) and if they match, then it means they keypad "settled" and the value is ready to be translated to a key-press

author: mayor
author_rank: Regular Contributor
timestamp: July 25, 2014, 09:39:46 am
content: Hey there,yep. I'm already taking a number of samples and averaging them. I get "decent" results, but sometimes the reading is off. At this point, I am hoping proper layout on a pcb will reduce noise.