NeuroSimo: an open-source software for closed-loop EEG- or EMG-guided TMS
Listed in
This article is not in any list yet, why not save it to one of your lists.Abstract
Objective
Our goal was to create open-source software for closed-loop EEG–TMS that allows researchers to rapidly prototype and develop novel stimulation paradigms in a high-level programming language. This addresses the limitations of current solutions, which often rely on proprietary hardware and software, limiting their accessibility and customizability, or comprise ad-hoc pipelines tailored to specific use cases.
Approach
We developed NeuroSimo, a software platform that enables arbitrary EEG–TMS stimulation protocols written in Python, leveraging Python’s ecosystem of scientific, neuroimaging, and machine learning libraries. The core software is written in C++ with an embedded Python interpreter and employs the Robot Operating System (ROS 2) for inter-process communication. NeuroSimo runs on real-time-enabled Linux Ubuntu, using LabJack T4 for pulse triggering, and supports two EEG device models (Bittium NeurOne, BrainProducts actiCHamp) and TMS devices that deliver pulses via trigger signals. The software includes a graphical user interface for configuration and performance monitoring, and supports GPU processing for neural network computations.
Main results
In brain-state-dependent stimulation using the Phastimate algorithm, which targets TMS pulses to the trough of sensorimotor μ-rhythm, NeuroSimo achieved a median timing error of 0.2 ms (95% CI: 0.2–0.2 ms), a 99th-percentile of 0.6 ms (0.6–0.6 ms), and a maximum of 1.4 ms.
Significance
As an open-source platform combining Python’s flexibility with real-time closed-loop EEG– TMS, NeuroSimo enables researchers to develop and implement novel therapeutic approaches, marking a significant advance in personalized brain stimulation.