Grounding, Return Paths & EMI
Two Roads Home Is One Road Too Many
Your robot hand has been holding a steady reading all morning. The thumb’s force sensor sits at a calm 1.41 V, the fingers are open, nothing is moving. Then the firmware commands a grip and the motor driver yanks two amps off the same battery rail. In that instant the force sensor jumps to 1.46 V, even though nothing is touching the thumb. Let go, and it falls back. Grip again, and it jumps again. The sensor is not lying about pressure. It is lying about its own zero, because the motor’s return current is sneaking home through the wire that defines that zero.
A voltage is only ever a difference, and a difference needs a reference. When two currents share one road home, the road itself becomes a voltage source you never designed.
Most of this course has treated “ground” as a single, quiet, zero-volt place that is the same everywhere on the board. That fiction is good enough until real current flows. The moment a motor, a radio, or a fast logic edge starts pushing amps through copper that has resistance and inductance, ground stops being one place and becomes a landscape of small, shifting potentials. The whole craft of grounding is one ordering idea: decide where every return current goes home, and never let a noisy return share a road with a quiet signal.
By the end, you can
- Explain why current always returns to its source and why the return path, not just the signal trace, sets the loop area
- Distinguish a star (single-point) ground from a daisy-chained shared return, and choose between them for a mixed-signal board
- Predict the millivolt error a shared return injects into a sensor reading using $V = I R$
- Identify a ground loop from its symptoms and name three EMI mitigations: minimum loop area, filtering, and shielding
Intuition first
Think of return current the way you think of rainwater. Every drop that falls on a roof has to get back to the river, and it does not care which downspout it uses. It takes the easiest path it can find. Current is the same: every electron the supply pushes out of its positive terminal must come back to its negative terminal, and it returns through whatever copper offers the lowest impedance. You do not get to wave a hand and say “this is the signal wire and that is just ground.” The ground is a return wire carrying real amps, and those amps drop real voltage across its resistance.
Now picture two houses sharing one downspout. When only the first house drains, the pipe is fine. But when both drain at once, the second house’s water level rises because the first house’s flood is backing up the shared pipe. That backed-up level is exactly the false voltage your sensor sees. The motor (house one) dumps a flood of return current into the shared ground (the downspout), and the sensor (house two) reads its zero against that same flooded pipe. The fix is not a bigger pipe. The fix is to give each house its own downspout and join them only at the river. That is a star ground, and it is the single most important idea in this lesson.
Return current and loop area
A signal does not travel down a wire and vanish. It travels out on the signal conductor and back on the return, and the two together enclose an area, like the two long sides of a running track. That enclosed area is the loop area, and it is the hidden variable behind both the noise you make and the noise you catch.
A current loop is an antenna. Drive a changing current around a big loop and it radiates a magnetic field that other circuits pick up. Leave a big loop sitting in someone else’s changing field and it acts as a single-turn transformer winding, catching an induced current you never asked for. Either way, the bigger the loop, the worse it is. The first commandment of low-noise layout follows directly: keep the return current directly underneath its signal trace. On a two-layer board that means a solid ground plane on the layer below the signals, so every signal’s return flows in the copper immediately beneath it and the loop area shrinks to almost nothing.
Why does the return obligingly flow right under the trace, instead of sprawling across the whole plane? At low frequency it does spread out and take the path of least resistance, which can be anywhere. But at the high frequencies that matter for noise, return current takes the path of least inductance, and the lowest-inductance path is the one that hugs the signal trace, because that is the path that encloses the smallest loop. The physics does your routing for you, but only if you give it an unbroken plane to do it in. Cut a slot in that plane across a signal’s path and the return is forced to detour around the slot, ballooning the loop area exactly where you did not want it.
Single-point ground: tie it together once
A mixed-signal board carries two kinds of citizen that do not get along. The noisy side is the power stage: the motor driver, the switching regulator, anything that slams current on and off. The quiet side is the analog sensing: the force sensor, the ADC reference, the precision amplifier. Both need a return to the supply, and the sin is letting them share one.
The cure is a single-point ground, also called a star ground. You keep the power-stage ground and the sensor ground as separate copper regions and you tie them together at exactly one place, the hub of the star, usually right at the supply’s return terminal or the bulk capacitor. Each region’s return current flows straight back to the hub without ever crossing the other region’s copper. The motor’s two amps drop their voltage along the power return, but the sensor reads its zero against the clean analog return, which carries only its own tiny current. The two grounds are the same potential at the hub, where it matters, and only there.
The opposite of this, the thing that bites beginners, is the daisy chain: power
stage, then sensor, then connector, all hung off one long ground trace one after
another like ornaments on a string. Now the sensor’s return must flow through the
same copper the motor already loaded, and it inherits every millivolt the motor
dropped. The schematic shows one net called GND and looks innocent. The copper
tells the real story.
Ground loops, Kelvin sensing, and ground bounce
Three more pieces complete the picture, and each one is the star-ground idea seen from a different angle.
A ground loop is what you get when two points that are supposed to be at the same ground potential end up connected by two different paths. The two paths form a closed loop, and any stray magnetic field threading that loop, from a nearby motor, a transformer, or the mains wiring in the wall, induces a circulating current in it, just like a one-turn transformer winding. That circulating current drops a voltage along the very ground conductor your signal references, and your signal inherits the noise. The classic symptom is the one from the Hook: a sensor reading that shifts the instant a motor rail loads a shared return. If a measurement moves when an unrelated high-current load switches, suspect a ground loop before you suspect the sensor.
Kelvin sensing is how you measure a small voltage across a part that carries large current without the wiring resistance corrupting the reading. The trick: run two separate pairs of wires to the part, one heavy pair to carry the current and one thin pair, carrying almost no current, to sense the voltage right at the part’s terminals. Because the sense wires carry negligible current, they drop negligible voltage, so the voltage you read is the real voltage at the part, not the part plus the cabling. You use this every time you measure a current-sense shunt: tap the voltage across the shunt with a dedicated Kelvin pair brought right to its pads, not off the fat power trace where it would read the shunt plus a chunk of trace.
Ground bounce is the fast cousin of the slow ground-loop offset. When many logic outputs switch at once, they dump a sharp current spike through the package’s ground pin and its bond-wire inductance. That inductance momentarily lifts the chip’s internal ground above the board ground, so the chip’s idea of “zero” bounces for a few nanoseconds. A quiet input sampled during that bounce can read the wrong logic level. The cures are the same family: minimize the inductance of the return (short, wide, low-loop) and decouple close to the pins so the spike’s current comes from a local capacitor instead of all the way from the supply.
A force sensor on a robot hand reads 1.41 V at idle but jumps to 1.46 V every time the firmware commands a grip and the motor driver pulls 2 A off the shared battery rail. What is the most likely cause?
-
The sensor tracks correctly when the motor is off, so its element is fine. The error appears only when current loads the shared return, which points at the wiring, not the part.
-
Correct. The 2 A of motor return current drops a voltage along the shared ground copper. The sensor measures its zero against that same copper, so the offset is added straight to its reading. This is the textbook ground-loop / shared-return symptom.
-
Sample rate would blur a fast reading, not add a clean repeatable 50 mV step that tracks the grip command. The error is correlated with motor current, not with timing.
-
A supply sag would move the sensor's supply and reference together if it is ratiometric, and in any case the fix is still to separate the returns, not to blame the battery. The shared-return offset is the specific mechanism here.
You are laying out a two-layer mixed-signal board with a motor driver and a precision ADC. Which grounding choice best protects the ADC reading?
-
A daisy chain forces the ADC's return through copper the motor already loaded, so the ADC inherits every millivolt the motor dropped. This is the failure mode, not the fix.
-
Correct. Separate copper keeps the motor's return current out of the analog return, and a single tie point sets them to the same potential where it matters without letting either current cross the other's region. This is the star (single-point) ground.
-
Never joining the grounds leaves them free to drift apart in potential, which breaks the shared reference the ADC needs and can build up a dangerous or noisy difference. The grounds must meet at exactly one point, not zero.
-
Connecting them everywhere recreates the shared-return problem in full and also invites ground loops between the multiple tie points. One deliberate tie, not many accidental ones.
Lab: find the shared return on a real board
On any board with both a motor or switching load and an analog sensor, you can catch
the shared return without a schematic. Put your scope probe across the sensor’s
output, set a tight vertical scale, and watch while you command the high-current load
on and off. If the sensor’s baseline steps in lockstep with the load, the returns are
shared. To confirm and locate it, clip the scope ground to the sensor’s ground pad and
touch the probe tip to the supply’s ground terminal: with the load running you should
see a few millivolts of difference between two points that the schematic swears are
the same GND net. That millivolt difference, growing with load current, is the
shared-return IR drop. Trace the copper from the sensor pad back to the supply and
look for the spot where it merges with the motor’s return before reaching the hub.
Splitting that junction and re-tying at a single point is usually a one-cut, one-wire
fix.
The voltage-divider math behind a ground loop, and where the millivolts come from
The cleanest way to see a ground loop is as an accidental voltage divider. Take two circuits that share a length of ground conductor with resistance . Circuit 1 is the noisy load and pushes current through that shared ground. Circuit 2 is your quiet sensor, with output , and its own series resistance to the shared node. Ideally is zero and the shared node sits at true ground, so circuit 2’s output is just
But real copper has . The current from the noisy circuit drops a voltage
across the shared ground, lifting that node off true zero. The shared ground and circuit 2’s own resistance now form a divider, and the corrupted output becomes
Put numbers from the robot hand on it. Suppose the shared ground trace has and the motor pulls of return current through it. The offset injected into the sensor’s reference is
There is your 50 mV jump, dropped across 25 milliohms of innocent-looking copper. A 12-bit ADC on a 3.3 V span has a least-significant bit of about , so that 50 mV of ground error is roughly 62 counts of pure lie, swamping the real signal. The star ground removes it not by lowering to zero (you cannot) but by making sure , the motor’s current, simply never flows through the copper the sensor references. If through the sensor’s ground is near zero, then is near zero regardless of .
This same loop, seen at AC, is also why ground loops hum. The closed loop formed by two ground paths behaves as a single-turn secondary of a transformer whose primary is every current-carrying conductor nearby. An ambient field oscillating at the mains frequency links flux through the loop and induces an EMF
which drives a circulating current through the low, sub-ohm loop resistance and drops a 50 or 60 Hz voltage right where your signal references it. The induced EMF grows with the loop area, which is why minimum loop area is both an emissions cure and an immunity cure: a small loop both radiates less and catches less. Broadband EMI scales with three things you control in layout, switching node count, edge rate (how fast and ramp), and loop area, and you fight it with the same toolkit every time: tight layout for loop area, filtering (decoupling capacitors, ferrite beads, common-mode chokes) for conducted noise, and shielding for radiated noise.
One note where the authoritative facts and the grounding literature meet. Wikipedia’s “Ground (electricity)” article spends most of its length on mains earth grounding, the green-and-yellow safety wire that trips a breaker on a fault, which is a different job from the signal-integrity grounding this lesson is about. Both are real and both are called “ground,” but do not confuse them: the safety earth protects people and is mandated by code, while the single-point signal ground protects your sensor reading and is a layout choice. They are tied together deliberately, at one point, for exactly the reasons above.
Grounded in Wikipedia: “Ground (electricity)”, “Ground loop (electricity)”, “Electromagnetic interference”, “Electromagnetic compatibility” (CC BY-SA).
Key takeaways
- Current always returns to its source; the return path is a real wire carrying real amps and dropping real voltage across its resistance.
- Loop area is the hidden variable: keep the return directly under its signal trace (solid ground plane) so the loop is tiny, because a small loop both radiates less and catches less.
- Use a single-point (star) ground for mixed-signal: keep noisy power return and quiet sensor return on separate copper, tie them at one hub. A daisy chain shares the return and is the bug.
- A shared return injects $V_G = I R_G$ into your reference; tens of milliohms times a couple of amps is tens of millivolts of pure error, dozens of ADC counts.
- A ground loop is two roads home: noise takes the detour through your signal. Suspect it when a reading shifts as an unrelated high-current load switches.
- Kelvin-sense your shunts, decouple to fight ground bounce, and mitigate EMI with layout, filtering, common-mode chokes, and shielding.
A microcontroller drives a fast logic signal across a board to a sensor 8 cm away. You can route the return either straight back underneath the signal trace on a ground plane, or the long way around the board edge. Which choice gives lower EMI, and what is the one-word reason?
Show worked solution
Route the return directly underneath the signal trace on the ground plane. The one-word reason is loop area. The return-under-trace path encloses almost no area between the signal and its return, so the loop is tiny: it radiates little and picks up little. The long-way-around return encloses a large area, turning the pair into an effective antenna that both emits noise and catches it. At high frequency the return current actually wants to flow under the trace on its own (least inductance, least loop), so an unbroken plane lets the physics minimize the loop for you.
A sensor’s ground and a motor driver’s ground share a single PCB return trace with a resistance of between the sensor’s ground node and the supply return hub. When the motor draws , that current flows through the shared trace. How much offset does this inject into the sensor’s reference, and if the sensor feeds a 12-bit ADC on a 3.3 V span, roughly how many counts of error is that?
Show worked solution
The motor current through the shared ground resistance drops
That 60 mV is added straight to the sensor’s reference, so the reading is off by 60 mV whenever the motor runs. The ADC’s least-significant bit is
So the error is
About 74 counts of pure error that switch on and off with the motor. The fix is a star ground: route the sensor’s return to the hub on its own copper so the motor’s never flows through the sensor’s reference, driving toward zero regardless of the trace resistance.
You inherit a board where a 16-bit ADC reads steady on the bench but shows a clean 60 Hz wobble of a few millivolts once installed in a chassis next to a mains transformer. The signal cable’s shield is bonded to the chassis at both the sensor end and the ADC end. Name the likely mechanism, explain why bonding the shield at both ends matters, and give a layout-level fix that does not remove the safety ground.
Show worked solution
The mechanism is a ground loop. Bonding the cable shield to the chassis at both ends creates a second ground path: one through the shield, one through the chassis metalwork and safety wiring. Those two paths form a closed loop. The nearby mains transformer’s 60 Hz magnetic field threads that loop and induces a circulating current (the loop acts as a single-turn transformer secondary). That current drops a 60 Hz voltage along the shield, which is part of the signal’s reference, so the ADC sees the hum. A 16-bit converter resolves microvolts, so even a few millivolts of induced loop voltage is plainly visible.
A layout-level fix that keeps the safety ground intact: break the loop without breaking protection. Bond the shield solidly at one end only (typically the source or the chassis hub) so there is a single ground reference and no closed loop, while leaving the equipment’s safety earth fully connected for shock protection. Equivalently, reference all the vulnerable signal grounds to a single point (star), and where two boxes must each be earthed, use differential signaling so the receiver rejects the common-mode ground difference. What you must not do is lift the safety ground to kill the hum, since that removes the protection the earth connection exists to provide.
The quiet 1.41 V was never the sensor’s truth and the jumpy 1.46 V was never its lie. Both were honest reports of a reference that moved underneath them, because two currents were sent home down one road. Give the motor its own road and the sensor its own road, join them once at the river, and the number stops lying. Ground is not a place you connect to. It is a set of roads you choose, and the whole art is making sure the loud traffic and the quiet traffic never share a lane.