๐งฌ
eNI
Neural Interface
Biosignal processing library for neural and physiological signal acquisition. EEG, EMG, ECG processing for brain-computer interfaces and neurofeedback.
Intelligence LayerC/C++, PythonResearch
Key Features
Multi-Modal Acquisition โ EEG (256ch), EMG (16ch), ECG (12-lead)
Real-Time DSP โ IIR/FIR, FFT, wavelets at 1 kHz
Feature Extraction โ Time, frequency, time-frequency domains
BCI Paradigms โ P300, SSVEP, motor imagery
eAI Integration โ Seamless ML pipeline
Artifact Rejection โ Auto eye-blink/muscle removal
Data Export โ EDF+, BDF, CSV, HDF5
Architecture
Application (BCI Control, Neurofeedback, Prosthetics) โโโ Classification (eAI: SVM, LDA, CNN, LSTM) โโโ Feature Extraction (Time, Frequency, Connectivity) โโโ Signal Processing (Filtering, FFT, ICA, CSP) โโโ Signal Acquisition (ADS1299, ADS1298, OpenBCI)
Code Example
c
#include <eni/eni.h>
#include <eni/filter.h>
eni_config_t cfg = {
.channels = 8,
.sample_rate = 250,
.adc_chip = ENI_ADC_ADS1299,
.reference = ENI_REF_AVERAGE
};
eni_acq_t *acq = eni_acq_init(&cfg);
eni_filter_t *bp = eni_filter_bandpass(
8.0, 30.0, cfg.sample_rate, 4);
float samples[8], filtered[8], features[16];
eni_acq_read(acq, samples);
eni_filter_apply(bp, samples, filtered, 8);
eni_feature_band_power(filtered, 8, 250, features);API Highlights
| Function | Description |
|---|---|
eni_acq_init() | Initialize signal acquisition |
eni_filter_bandpass() | Create bandpass IIR filter |
eni_fft() | Compute FFT of signal segment |
eni_feature_band_power() | Extract frequency band powers |