DocsBCILattice User Manual
Download DOCX
BCILattice Documentation

BCILattice User Manual

Complete guide to every module, from installation to publishing your first pipeline.

v1.0BCINexus Platform · 2026-05-20support@bcinexus.io

Overview

BCILattice is a professional desktop application for brain-computer interface (BCI) and neuroscience research. It provides a complete offline workflow, multi-modal signal import, preprocessing, paradigm design, machine learning pipeline construction, experiment tracking, and report generation, in a single application for Windows, macOS, and Linux.

BCILattice runs entirely locally. All signal processing and ML training happens on your machine. Internet access is only required for cloud sync, community pipeline downloads, and the AI assistant feature.

BCINexus Platform, BCILattice is the desktop app. BCINexus is the platform layer: the community website, pipeline library (340+ published pipelines), cloud storage, and team workspaces. Think of BCILattice as the tool and BCINexus as the network.
SpecificationValue
Supported modalitiesEEG · fNIRS · EMG
PlatformsWindows 10/11 · macOS 12+ · Linux (Ubuntu 20.04+)
Python version (bundled)3.10 – 3.11
DatabasePostgreSQL 14+ (local, installed by the installer)
GPU supportNVIDIA CUDA · Apple Silicon Metal
Session format.bcinexus ZIP archive

Installation

BCILattice ships as a single installer (~800 MB) that bundles Python 3.10, all dependencies, PostgreSQL, and the BCILattice application itself. No separate Python installation is required.

Windows

  1. Download BCILattice-Setup.exe from bcinexus.io/download.
  2. Run the installer. Accept the license agreement.
  3. Choose install location (default: C:\Program Files\BCILattice\).
  4. BCILattice installs PostgreSQL locally, allow it when prompted by Windows Firewall.
  5. Click Install and wait ~3 minutes for completion.
  6. Launch BCILattice from the Start Menu or desktop shortcut.
  7. Check the status bar at the bottom: Server: Running confirms the local FastAPI backend started successfully.
A user-level installer is available for Windows environments without administrator rights. Download it from the same page.

macOS

  1. Download BCILattice.dmg.
  2. Open the DMG and drag BCILattice.app to your Applications folder.
  3. On first launch: right-click → Open (required for macOS Gatekeeper the first time only).
  4. Allow BCILattice through the macOS Firewall when prompted (for the local backend server).
  5. Apple Silicon (M1/M2/M3) is natively supported, PyTorch uses Metal acceleration automatically.

Linux

chmod +x BCILattice-installer.AppImage
./BCILattice-installer.AppImage

The AppImage bundles all dependencies and runs on any modern Linux distribution (glibc 2.31+). No root access required.


BCINexus Account

BCILattice works fully offline. A BCINexus account is optional but gives you cloud backup, access to 340+ community pipelines, and team collaboration (Lab+ plans).

  1. Click Sign In / Create Account in the BCILattice top-right corner.
  2. Or register at bcinexus.io/register.
  3. Verify your email address, then return to BCILattice and sign in.

Your sign-in is remembered automatically. You remain signed in across sessions until you explicitly sign out.


Dashboard

The Dashboard is the home screen shown when BCILattice opens. It displays:

  • Recent Sessions, your last 10 sessions with quick-open links.
  • Quick Stats, total experiments run, pipelines saved, and subjects processed.
  • Community Highlights, trending pipelines from BCINexus (requires internet).
  • Status Bar, server status, active training jobs, and sync state.

From the Dashboard you can create a new session, open an existing session file, or jump directly to any module via the left sidebar.


Data Manager

The Data Manager is where you import, preview, and organise your datasets. All data stays local until you explicitly sync to BCINexus cloud.

Importing Files

Single file import:

  1. Click Data Manager in the left sidebar.
  2. Click Import Files → select your EEG/fNIRS/EMG file.
  3. BCILattice previews the file: raw signal on the left, file metadata on the right.
  4. Confirm the label column if this is a supervised learning dataset.
  5. Click Add to Session.

Multi-subject folder import:

  1. Click Import Folder.
  2. Select the root folder containing your subject directories.
  3. Set folder depth (1–5 levels) matching your directory structure.
  4. BCILattice scans recursively and lists all compatible files.
  5. Set session name and label configuration, then click Import All.

Supported Formats

ModalityFormats
EEGEDF · BDF · GDF · FIF · VHDR · SET · CNT · CSV · XLSX
fNIRSSNIRF · FIF · TXT · CSV · XLSX
EMGEDF · BDF · GDF · FIF · TXT · CSV

Custom EEG device formats can be supported via a custom MNE reader. Enterprise customers can request custom reader development.


Preprocessing

The Preprocessing module applies signal conditioning to your imported data before feature extraction and ML training. Preprocessing is non-destructive, the original files are never modified.

EEG Pipeline

SettingRecommended Starting ValuesNotes
Bandpass filterLow: 0.5 Hz · High: 40 HzRemoves DC drift and high-frequency noise
Notch filter50 Hz (Europe) or 60 Hz (USA)Removes power-line interference
Re-referencingCAR (Common Average Reference)Reduces shared noise across channels
Resampling250 Hz (if original > 500 Hz)Reduces data size and training time

Click Preview to see a before/after signal comparison before applying. Click Apply to Session to persist.

The Preprocessing module includes a Custom Python Code Editor where you can inject your own MNE or NumPy/SciPy code at any pipeline stage. Existing MNE scripts can be ported with minimal modification.

fNIRS Pipeline

Enable the full fNIRS pipeline with a single toggle:

  • TDDR, Temporal Derivative Distribution Repair (motion artifact removal)
  • Optical Density, raw intensity → optical density conversion
  • Beer-Lambert Law, OD → HbO/HbR (haemoglobin) concentration

EMG Pipeline

  • Full-wave rectification, absolute value of the signal
  • Envelope extraction, low-pass filtered rectified signal

NeuralFlow Designer

NeuralFlow is BCILattice's visual timeline-based paradigm designer. You arrange experiment blocks left-to-right on a canvas to define the temporal sequence of a BCI experiment, rest periods, motor imagery tasks, cues, feedback, and trial markers.

Canvas & Blocks

The block palette on the left contains 28 block types organised into six categories:

CategoryBlocks
StateRest, Activity
Motor ImageryMI Left Hand, MI Right Hand, MI Feet, MI Tongue
Motor ActionWalk, Run, Grip, Jump
CognitiveAttention, Memory, Relaxation, Math Task, Visual Search, Mental Rotation
Cue / FeedbackVisual Cue, Auditory Cue, Tactile Cue, Olfactory Cue, Visual Feedback, Auditory Feedback, Haptic Feedback
Control / UtilityStart Trial (-1), End Trial (-2), Marker LSL/TTL (-3), Fixed Time, Loop Block (-4)

Each block has three editable properties: Label (display name), Label Code(integer marker sent to EEG hardware), and Duration (epoch length in seconds). Special control blocks have reserved codes that cannot be changed.

The Loop Block is a container that repeats a set of sub-blocks. Configure the total repeat count and add sub-block rows (each with their own per-sub-block repeat). Duration is computed automatically from sub-block sum × repeat.

Compile & Export

  1. Click Compile in the top toolbar.
  2. BCILattice validates the paradigm, errors appear in the inspector panel.
  3. Click Export → choose format:
FormatExtensionUse case
NeuralFlow Binary.nflowFastest load for BCILattice sessions
JSON.jsonHuman-readable, version-control friendly
CSV.csvFlat table of blocks with labels, codes, durations

ML Suite

The ML Suite is a visual node-graph pipeline builder. Drag blocks from the left panel onto the canvas, connect output ports to input ports, then Compile and Train. All training runs on your local CPU or GPU , no cloud compute is used.

Pipeline Canvas

The block catalog contains 5,400+ blocks across 24+ categories:

  • BCI EEG Models, ATCNet, EEGNet, DeepConvNet, EEGConformer, ShallowConvNet
  • Sequence Models, LSTM, GRU, BiLSTM, TCN, MambaSSM
  • Transformer Models, EEGTransformer, BrainBERT, PatchTST, ViTEEG
  • Edge Models, MobileEEGNet, QuantizedEEGNet, TinyEEGNet
  • ML Ensemble, Random Forest, Gradient Boosting, AdaBoost, Bagging
  • ML Linear, Logistic Regression, SVM, LDA, Ridge, Lasso
  • Feature Selection, RFE, SelectKBest, VarianceThreshold, RFECV
  • Dimensionality Reduction, PCA, ICA, NMF, UMAP, t-SNE
  • Evaluation, accuracy_score, f1_score, roc_auc_score, confusion_matrix
  • Model Interpretation, SHAP explainers (63 blocks)
  • Signal Processing (MNE), 273 MNE classes and functions
  • Deep Learning Models, 3,376 torchvision models

Custom built-in blocks: Channel Selection, Custom Labels, Signal Projection (GAF/MTF/RP), Input Block, Output Block, Loop Block, and Custom Code.

Training

  1. Click the Workflow Designer tab, assign subjects and sessions to the pipeline.
  2. Click Compile (Ctrl+Shift+B / Cmd+Shift+B).
  3. Click Train.
  4. The Batch Training Dashboard opens with live progress bars per subject.
  5. Per-subject accuracy, F1, and AUC appear as training completes.

BCILattice automatically detects NVIDIA GPUs (CUDA) and Apple Silicon (Metal) and uses them for PyTorch training. It falls back to CPU automatically.

Model Export

Available on the Researcher plan and above. Supported formats:

FormatExtensionTarget
PyTorch.ptPython / server inference
ONNX.onnxCross-platform runtime (TensorRT, OpenVINO)
TFLite.tfliteMobile (Android / iOS)
MATLAB.matMATLAB workspace integration

Exported models support edge deployment on Raspberry Pi, NVIDIA Jetson, and similar hardware.


Experiment Hub

The Experiment Hub automatically saves every training run as a versioned experiment. Each run is labelled v1, v2, v3, … and stores the full configuration alongside results.

  • Click any experiment row to see per-subject accuracy, F1, and AUC.
  • Select two experiments and click Compare for a side-by-side view.
  • Right-click → Restore to roll back: choose which components to restore (Preprocessing / MLFlow / Workflow / Results).
  • Right-click → Publish to BCINexus to share your pipeline with the community.

Reports

The Reports module generates a standalone document summarising your full experiment session.

  1. Click Reports in the left sidebar.
  2. Click Generate Report.
  3. Choose HTML or PDF format.
  4. The report includes: session metadata, Data Manager summary, preprocessing configuration, NeuralFlow paradigm, and per-subject training results.

HTML reports are fully standalone (no external dependencies) and can be emailed directly. Keyboard shortcut: Ctrl+R / Cmd+R.


Teams & Collaboration

Available on the Lab plan and above.

  • Team Workspace, shared dataset library, projects, and pipelines accessible to all team members.
  • Roles, Owner, Admin, Member, Viewer with granular permissions.
  • SHA-256 Integrity, checksums computed on upload and verified on download to detect corruption.
  • Activity Feed, timestamped log of all dataset and project changes.
  • Real-time Collaboration, see teammates' active sessions and shared pipeline edits.
  • Team size, up to 5 members on Lab; larger teams on Institution with a seat count defined per contract.

Each team member trains locally on their own machine, cloud sync handles sharing datasets and sessions, not compute.


AI Research Assistant

The AI Research Assistant (BYOK, Bring Your Own Key) integrates GPT-4o, Gemini, or Claude directly into BCILattice. Configure your API key in Settings → AI Chat.

  • Ask questions about your pipeline results in natural language.
  • Get preprocessing recommendations based on your signal quality.
  • Summarise experiment comparisons across multiple runs.
  • Generate Python code snippets for custom preprocessing steps.
AI Chat requires an active internet connection and a valid API key. API usage costs are billed directly by the provider, BCILattice does not charge for AI usage.

Analysis Suite

The Analysis Suite provides 17 statistical time-series features computed per channel and epoch:

FeatureDescription
MeanArithmetic mean of signal values
VarianceSignal variance (spread)
KurtosisTailedness of the signal distribution
SkewnessAsymmetry of the signal distribution
Max / Min / RangeSignal amplitude bounds
Standard DeviationRMS deviation from mean
EntropySignal complexity / information content
MedianMedian value (robust to outliers)
Zero-Crossing RateNumber of zero crossings per second
EnergySum of squared signal values
RMSRoot mean square amplitude
Hjorth ActivitySignal power (variance)
Hjorth MobilityMean frequency approximation
Hjorth ComplexityFrequency variation measure
Power Spectral Density (PSD)Frequency-domain power distribution

Keyboard Shortcuts

ActionWindows / LinuxmacOS
New sessionCtrl+NCmd+N
Save sessionCtrl+SCmd+S
Open sessionCtrl+OCmd+O
Export sessionCtrl+ECmd+E
NeuralFlow compileCtrl+BCmd+B
ML Suite compileCtrl+Shift+BCmd+Shift+B
Generate reportCtrl+RCmd+R

Troubleshooting

ProblemSolution
"Server: Not Running"The local backend failed to start. Check if another process is using the required port, then restart BCILattice.
File import fails "unsupported format"Verify the file is not corrupted by opening in another tool. Check the extension matches the actual format. Try converting to EDF using your acquisition software.
Training is very slowGPU is not detected. Check View → System Info. Install CUDA toolkit matching your NVIDIA driver. BCILattice falls back to CPU automatically.
NeuralFlow compile error: "incompatible port type"A block output type doesn't match the connected input. Check the colour-coded port type indicators. Review block documentation in the inspector panel.
Cloud sync failsCheck internet connection and BCINexus account sign-in status. Verify at status.bcinexus.io. Re-authenticate in Settings → Account.
Support contacts: support@bcinexus.io ·  Documentation: bcinexus.io/docs ·  Community: community.bcinexus.io
BCILattice User Manual v1.0 · BCINexus Platform · 2026-05-20 Download DOCX