[Paper Review] TiA -- Documentation of TOBI Interface A
TiA 1.0 specifies a standardized, text-based, TCP-based communication protocol for real-time biosignal acquisition systems, enabling interoperability between diverse biosensors and client applications. It defines signal types, control, data, and server state connections using UTF-8 encoded, line-structured messages and XML metadata, with support for EEG, EMG, ECG, fMRI, and other biosignals, ensuring consistent data exchange across platforms.
This document contains the documentation of TOBI (Tools for BCI) Interface A (TiA). TiA is a standardized interface to transmit raw biosignals. It is able to deal with multirate and block-oriented data transmission. Data is distinguished by different signal types (e.g., EEG, EOG, NIRS,...), whereby those signals can be acquired at the same time from different acquisition devices. TiA is built as a client-server model. Multiple clients can connect to one server. Information is exchanged via a control- and a separated data connection. Control commands and meta information are transmitted over the control connection. Raw biosignal data is delivered using the data connection in a unidirectional way. For this purpose a standardized handshaking protocol and raw data packet have been developed. Thus, an abstraction layer between hardware devices and data processing was evolved facilitating standardization.
Motivation & Objective
- To establish a standardized, platform-agnostic interface for real-time biosignal acquisition systems to improve interoperability across diverse hardware and software platforms.
- To define a consistent communication protocol for controlling data transmission, managing server states, and exchanging metadata between biosignal servers and clients.
- To support a wide range of biosignal types—including EEG, EMG, ECG, fMRI, and user-defined signals—through a standardized, extensible metadata schema.
- To enable clients to dynamically discover server capabilities, configure data transmission modes (TCP/UDP), and monitor server state via dedicated control and state connections.
- To ensure backward compatibility and extensibility through versioned messages, XML-based metadata, and a clear error-handling mechanism.
Proposed method
- The protocol uses a line-structured, UTF-8 encoded, HTTP-like text-based messaging system for control connections, with version, command, optional content-length, and XML payload lines.
- Control commands include: CheckProtocolVersion, GetMetaInfo, GetDataConnection, Start/StopDataTransmission, and GetServerStateConnection, each with standardized request and response formats.
- Data transmission is handled via a binary packet format with a fixed 9-byte header (version, size, timestamp), followed by a variable header and signal data, using little-endian byte order.
- Signal metadata is exchanged via XML-formatted meta-info, defining subject details, master signal parameters (sampling rate, block size), and per-signal attributes including type, sampling rate, block size, channel labels, and number of channels.
- Server state messages (ServerRunning, ServerShutdown) are pushed from server to client over a dedicated TCP port to notify clients of server lifecycle changes.
- Error handling uses structured XML error messages with human-readable descriptions, supporting future extension with error codes, though no codes are defined in version 1.0.
Experimental results
Research questions
- RQ1How can a standardized, interoperable communication protocol be designed for real-time biosignal acquisition systems across heterogeneous hardware and software platforms?
- RQ2What is the optimal message structure for control, data, and state communication that ensures low-latency, extensibility, and platform independence?
- RQ3How can signal metadata—including subject information, sampling rates, and channel labels—be consistently represented and exchanged in a human- and machine-readable format?
- RQ4What mechanisms are required to dynamically manage data transmission modes (TCP/UDP) and server lifecycle states (running/shutdown) in a distributed biosignal system?
- RQ5How can backward compatibility be preserved while enabling future protocol extensions, particularly in binary data packet formats?
Key findings
- TiA 1.0 defines a comprehensive, extensible protocol for real-time biosignal systems, supporting 14 standard signal types including EEG, EMG, ECG, fMRI, and user-defined signals.
- The protocol enables clients to query server capabilities via GetMetaInfo, retrieve data via TCP or UDP using GetDataConnection, and control data flow with Start/StopDataTransmission commands.
- Server state connections allow the server to proactively notify clients of its operational status using ServerStateRunning and ServerShutdown messages.
- The data packet format uses a 9-byte fixed header (version, size, timestamp) and supports little-endian byte order, ensuring consistent parsing across platforms.
- XML-based metadata schema (tiaMetaInfo) enables structured representation of subject data, signal types, sampling rates, block sizes, and channel labels, with version 1.0 fixed for compatibility.
- The protocol enforces UTF-8 encoding, line-based message structure with LF (\n) termination, and case sensitivity to ensure reliable parsing and interoperability.
Better researchstarts right now
From reading papers to final review, dramatically reduce your research time.
No credit card · Free plan available
This review was created by AI and reviewed by human editors.