Abstract

Abstract In the Connect2Brain project (ERC Synergy grant #810377), multi-locus transcranial magnetic stimulation will be controlled by neurophysiological feedback signals in a closed-loop mode. Because of the complicated connections between different software components, medical device regulations, and real-time requirements, a well-designed software architecture is necessary. We present an open platform that allows seamless, extendable integration of various software components, such as neuronavigation (InVesalius Navigator), the control user interface for multi-locus TMS, and a stimulation sequence planner for designing stimulation patterns on predefined stimulation targets. We also create a domain-specific language for defining complex stimulation sequences. The stimulation tasks enabled by the architecture include repeated stimulation with varying, pre-defined parameters, multi-pulse stimulation across multiple loci, mapping of motor areas, and automatically determining the stimulus location and direction to elicit maximal motor response. We follow the microservice architecture principles and use Apache Kafka as the messaging platform. Later, we will extend the architecture to the closed-loop feedback-controlled stimulation, based on electroencephalography and motor-evoked potential data. Apache Kafka is a messaging system with high throughput and low latency, which are desirable features in a control system that processes real-time signals with relatively high dimensionality and sampling frequency. It includes automatic logging of the events, facilitating easy recording and playback of the experiments. Furthermore, a microservice architecture enables developing services using different programming languages, which is beneficial when developing the software in an academic setting by researchers with varying development backgrounds. We adhere to the best practices of writing software by designing clear, well-documented application programming interfaces, ensuring modularity, and following modern development processes, such as periodic code reviews. Our work creates an open-source infrastructure that the other researchers can use and build upon, and takes a step towards standardizing stimulation protocols by introducing a unified representation for various stimulation patterns. Keywords: Software architecture, Neuronavigation, Stimulation sequence planning, Brain-computer interface

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call