PiEEG-16
16 channels of EEG on a Raspberry Pi.
PiEEG-16 is an open-source shield that plugs straight onto the Raspberry Pi 40-pin header and turns it into a 16-channel brain-computer interface. Two Texas Instruments ADS1299 chips read up to 16 channels of biosignals (EEG, EMG and ECG), and the Pi streams, records and processes the data in real time. Hardware, SDK and server software are all open source.

PiEEG-16 is not a medical device. It is a tool for research, education and engineering. Run it from a 5 V battery only, never from the mains. Read Safety before the first recording.
At a glance
| Channels | 16 biosignal inputs, plus reference and bias |
| Converters | 2 × TI ADS1299, 24-bit, 8 channels each |
| Sample rate | 250 SPS (default) |
| Signals | EEG, EMG, ECG |
| Host | Raspberry Pi 4 or Raspberry Pi 5 |
| Link to the Pi | SPI0 on the 40-pin GPIO header, one chip-select and one DRDY line per chip |
| Electrodes | Dry or wet Ag/AgCl, 2.54 mm headers |
| Software | PiEEG Server (default device), Python SDK |
| Power | 5 V battery (power bank) only |
How it works
Two converters, one shield, one Raspberry Pi, all on battery power.
Electrodes 1–8 ─► ADS1299 #1 ─┐
Electrodes 9–16 ─► ADS1299 #2 ─┼─SPI─► Raspberry Pi ─► PiEEG Server
Reference + bias (ear clips) ──┘ 4 or 5 │
▲ ├ dashboard :1617
5 V power bank ─────────┘ ├ WebSocket :1616
└ CSV · LSL · OSC- Measure: each ADS1299 digitises its 8 channels at the same moment, 250 times per second.
- Transfer: the Pi reads chip 1, then chip 2, over the same SPI bus, each when its data ready line signals.
- Use: PiEEG Server joins the two halves into one 16-channel frame, filters it, shows it in the browser and streams it to your own code.

PiEEG-16 or PiEEG-8?
| PiEEG-8 | PiEEG-16 | |
|---|---|---|
| Channels | 8 | 16 |
| ADS1299 chips | 1 | 2 |
| Head coverage | Key areas (front, centre, back) | Full 10-20 coverage |
| PiEEG Server | --device pieeg8 | --device pieeg16 (default) |
| BrainFlow | Yes (PIEEG_BOARD) | No |
| Best for | Getting started, focused experiments | Mapping activity across the head, research |
See PiEEG-8 for the 8-channel version.
What you can measure
| Signal | What it shows | Typical first test |
|---|---|---|
| EEG | Brain rhythms across the whole head: delta, theta, alpha, beta, gamma | Close your eyes and watch alpha (8–13 Hz) rise at the back of the head |
| EMG | Muscle activity | Clench the jaw or a fist |
| ECG | Heart activity | Electrodes on the chest or wrists |
See real recordings in Signals & Datasets.
Where it's used
Read signals from the brain, process them on the Pi, and control something in the real world: a robotic arm, a computer, an exoskeleton, a drone or a toy car.

Get started
Related
- PiEEG Server: streaming, dashboard and recording
- PiEEG-8: the 8-channel version of this shield
- Noise elimination: getting a clean signal
- GitHub: PiEEG-16 (opens in a new tab): SDK scripts, datasets, 3D-printable case
Citation
If you use PiEEG-16 in research, please cite:
I. Rakhmatulin. PiEEG-16 to Measure 16 EEG Channels with Raspberry Pi for Brain-Computer Interfaces and EEG devices. arXiv:2409.07491, 2024. arxiv.org/abs/2409.07491 (opens in a new tab)
Support
- Discord: discord.gg/5Ps24p47 (opens in a new tab)
- GitHub: github.com/pieeg-club (opens in a new tab)
- Email: pieeg@pieeg.com