> ## Documentation Index
> Fetch the complete documentation index at: https://docs.elata.bio/llms.txt
> Use this file to discover all available pages before exploring further.

# Elata EEG Overview

> Open-source, low-cost EEG hardware for precision psychiatry and neuroscience research

<Warning>
  This device is not FDA-approved. For research use only.
</Warning>

## What is Elata EEG?

Elata EEG is an open-source electroencephalography platform built around a [Raspberry Pi 5](https://www.raspberrypi.com/products/raspberry-pi-5/) and the [Texas Instruments ADS1299](https://www.ti.com/product/ADS1299) analog front-end. The goal is to democratize EEG hardware with a fully open, right-to-repair design that any lab or hacker can build, modify, and extend.

The system supports 8+ channels of 24-bit EEG at research-grade resolution, with real-time streaming, a plugin-based DSP pipeline, and a browser-based kiosk UI.

<Card icon="github" href="https://github.com/Elata-Biosciences/elata-eeg" title="GitHub Repository">
  Source code, schematics, and build instructions (GPLv3)
</Card>

***

## Hardware

| Component      | Details                                                      |
| -------------- | ------------------------------------------------------------ |
| **Controller** | Raspberry Pi 5 (quad-core Arm Cortex, 40-pin GPIO)           |
| **ADC**        | TI ADS1299 EEGFE: 8-channel, 24-bit analog front-end via SPI |
| **Electrodes** | Wet Ag/AgCl or gold-cup with conductive paste (e.g. Ten20)   |
| **Display**    | 5-inch or 7-inch HDMI touchscreen (optional)                 |
| **Cables**     | Dupont jumpers (2.54 mm), optional shielding / ferrite beads |

Two board configurations are supported:

* **V1**: Single ADS1299 EVM (8 channels)
* **V2**: Four synchronized ADS1299 EVMs with shared clock and SPI (32 channels)

***

## Software Stack

| Layer                  | Technology                                                       |
| ---------------------- | ---------------------------------------------------------------- |
| **OS**                 | Raspberry Pi OS (Debian)                                         |
| **Firmware / Backend** | Rust workspace: `sensors`, `boards`, `pipeline`, `daemon` crates |
| **Frontend**           | Next.js kiosk with WebSocket data streaming                      |
| **Hardware Interface** | `rppal` crate (GPIO / SPI / I2C)                                 |
| **Plugin System**      | Event-driven DSP plugins on a shared `EventBus`                  |
| **License**            | GPLv3 (strong copyleft)                                          |

***

## Quickstart

```bash theme={null}
git clone https://github.com/Elata-Biosciences/elata-eeg
cd elata-eeg
bash scripts/install.sh
```

The install script handles system dependencies (Rust, Node.js, Chromium), builds all crates and the kiosk, configures systemd services for the daemon and kiosk, sets up auto-login and kiosk mode, and reboots when complete.

### Development Mode

```bash theme={null}
# Stop kiosk mode
bash scripts/stop.sh

# Terminal 1: daemon (from repo root)
cargo run --bin eeg_daemon -- --mock   # --mock for testing without hardware

# Terminal 2: kiosk
cd kiosk && npm run dev
```

The kiosk UI is available at `http://localhost:3000`. The WebSocket data endpoint runs at `ws://localhost:9000/ws/data`.

***

## Next

<CardGroup cols={2}>
  <Card icon="compass" href="/home/elata-eeg/eeg-architecture" title="Architecture">
    Crate layering, plugin system, and WebSocket API
  </Card>

  <Card icon="microchip" href="/sdk/eeg-web/getting-started" title="SDK — eeg-web">
    Browser-side EEG signal processing with WASM
  </Card>
</CardGroup>
