E4 for Developers > E4 streaming server

E4 streaming server

for Windows

Updated May, 2018

This is a reference guide for the communication protocol of the E4 streaming server.

The E4 streaming server allows to forward realtime data of multiple Empatica E4 devices to multiple TCP socket connections. Please note that each TCP connection can receive data from only one Empatica E4 device. To connect to multiple devices, multiple TCP connections are required.
The E4 streaming server is intended to make the data streams available to scripts and applications. However, the data streams can also be easily accessed e.g. for testing purposes with Telnet.

Figure 1: Illustration of the connectivity and function of the E4 streaming server. On one side are E4s, connected over BTLE to the E4 streaming server using the BLED112 dongle. On the other side are TCP clients, connected to the E4 streaming server through TCP connections over the network. The lines originating from the E4s illustrate the data flow from the E4 through the E4 streaming server to the subscribed TCP client. For example, the data from the first E4 is forwarded by the E4 streaming server to the first and third TCP client.

Getting Started

Please visit the Using E4 streaming server page to learn about how to get the E4 streaming server started in Windows and how to connect E4s.

To find out how a connected TCP client communicates with the E4 streaming server, please refer to the page Message Protocol. There you will also find a protocol example.

The message structure of the live data is described on the page Data Streaming Packets.

Sample client C# code can be found in this github repository.