Bench modeSteps, parts, and safety only. Big type for a phone at the bench.
Phase 2: Build the instrumentProjectOne weekendAbout $30Tier 2

Project D: The phantom head

Saline gelatin with buried wire dipoles driven at known amplitudes. Now you can measure your amplifier's noise floor, crosstalk, and rejection instead of guessing. The difference between 'I made an EEG' and 'I characterized an EEG.'

AssumesProject A: The ADS1299 boardSpineAnalog / mixed-signal hardware

You are skimming: the title, the first figure, and the short version. Switch to Read in the header for the full page, or Deep to open every deep dive.

You cannot characterize an amplifier on a head, because you do not know what the head is doing. A is a head that you control: a bowl of salty gelatin with the conductivity of tissue, and inside it two or three tiny current sources you drive from a signal generator at any frequency and amplitude you like. With it you can measure what your system records when the truth is known, which is the only kind of measurement that means anything.

Predict before you look

You drive a buried dipole with 10 µA and a 5 mm tip separation. Three centimetres away, on the surface, roughly how large is the potential?

About 10 microvolts, in the range of real EEG. For a current dipole in a medium of conductivity σ, the potential at distance r along the axis is roughly I·d / (4π σ r²); with 10 µA, 5 mm, 0.33 S/m, and 3 cm that is about 13 µV, a bit more near a boundary. You can now inject an EEG-sized signal with a known amplitude, which is the whole point.

Parts

PartWhereQtyApprox.
3D printing access (campus makerspace) or a Bambu A1 Mini
Free on campus after the safety certification. Buying your own is ~$250 and is worth it by Phase 2 if you use it weekly.
Marriott Library or Lassonde makerspace; Bambu Lab if buying1free
Signal generator (cheap DDS module, or use the scope's built-in)
Drives the phantom head dipoles at known amplitudes.
Amazon1$20
Unflavored gelatin or agar, table salt, plastic bowl
Saline concentration around 0.9% by weight matches tissue conductivity to within a factor you can calibrate.
Grocery store1$10
USB oscilloscope (Hantek 6022BE class) or a Rigol DHO800 if budget allows
A real bench scope is better; the engineering building has them. A USB scope on your desk is what you will actually use at midnight.
Amazon, Rigol1$70
Total (prices drift; treat as a ceiling)$100

Building it

The medium. Brain tissue has a conductivity around 0.3 siemens per metre. A 0.2 percent salt solution by weight (2 grams per litre) is close; physiological saline at 0.9 percent is about five times too conductive, which is fine for an amplifier test but wrong if you want the potentials to match a head. Dissolve unflavored gelatin at about 8 percent by weight in the warm salt solution, pour into a bowl a bit smaller than a head, and refrigerate overnight. Agar works too and does not melt on a warm day.

The dipoles. Twisted pairs of insulated wire, with 5 mm of insulation stripped from each conductor at the tip and the two bare tips held 5 mm apart with a dab of epoxy. Make three. Push them into the gelatin before it sets, at different depths and orientations, with the wires leaving through the bottom or side. Note their positions.

The current source. A signal generator output in series with a 100 kΩ resistor. The resistor makes the current nearly independent of the phantom’s impedance: 1 volt peak gives 10 microamps peak, and you can dial the generator down to 10 mV for 100 nA, which produces potentials of a fraction of a microvolt for noise-floor work.

The electrodes. Your own Ag/AgCl wires from the electrodes project, or gold cups, pushed a millimetre into the surface at marked positions. Eight in a ring around the top plus a reference at the rim and a bias electrode at the far side.

The measurements

Each one gets a row in the characterization report.

Noise floor. All inputs shorted to the reference at the connectors, no phantom. Sixty seconds. RMS in 0.5 to 40 Hz, input-referred. Then the same with the electrodes in the phantom and the dipoles unpowered: this adds the electrode noise, and the difference tells you what the electrodes cost.

Gain and bandwidth. Drive one dipole with a sine at 10 µA. Step the frequency from 0.5 Hz to 100 Hz. Plot recorded amplitude against frequency on the channel nearest the dipole. The flat part is your passband; the frequency where it falls to 70 percent is your bandwidth. Compare to the filter settings you thought you had.

Common-mode rejection. Drive the bias electrode against the reference electrode with a 60 Hz sine of 100 mV through a 1 kΩ resistor, so the whole phantom’s potential swings, equally at every electrode. Record. The 60 Hz amplitude you see, divided by 100 mV, is your common-mode gain; its ratio to your differential gain, in dB, is the CMRR of the system, electrodes included. Repeat with the bias drive on and off.

Crosstalk. Drive one dipole at 20 Hz. Measure the 20 Hz amplitude on every channel. Channels far from the dipole should see only what volume conduction predicts; anything more is crosstalk in the amplifier or the cable.

Linearity. Drive at 1, 3, 10, 30, and 100 µA. The recorded amplitude should scale exactly. Where it stops, you have found the input range.

A spatial map. Drive one dipole and record on all eight electrodes. Plot amplitude against electrode position. This is a forward model measured rather than computed, and in Phase 4 you will compute it and compare.

  1. Mix and pour the phantom with three dipoles at recorded positions. Refrigerate overnight.
  2. Build the current source. Verify with the multimeter that 1 V into 100 kΩ into a 10 kΩ dummy load gives about 10 µA.
  3. Measure the shorted-input noise floor and the in-phantom noise floor. Record both.
  4. Sweep frequency for gain and bandwidth. Plot.
  5. Measure CMRR with and without bias drive. Compute the dB values.
  6. Measure crosstalk and linearity.
  7. Record the eight-channel spatial map for one dipole and save the CSV; you will need it in Phase 4.
Recall
Why can't an amplifier be characterized on a real head?
Because the true signal is unknown. A phantom lets you inject signals of known frequency, amplitude, and location, so the recording can be compared to the truth.
Recall
How does a series resistor turn a signal generator into a current source, and why do you want one?
A large resistor in series makes the current approximately V/R regardless of the load's smaller, variable impedance. A known current into a known medium gives a computable potential.
Recall
How do you measure the CMRR of the whole system rather than just the chip?
Drive the entire phantom against the reference with a known common-mode voltage (all electrodes see the same signal), record, and compare the recorded amplitude to the injected one, in dB, relative to the differential gain.