Introduction to Lab Streaming Layer (LSL)
Contents
Introduction
Lab Streaming Layer or LSL is a system for measuring, monitoring, and recording time-synchonized data streams during experiments. It is a tool for data acquisition and analysis that is used in neuroscience, psychology, and other fields. It can be used with a large variety of data types, including EEG, fNIRS, EMG, eye-tracking, and MEG.
Installation
- Install Windows Subsystem for Linux as this pipline is based on Linux. Below two versions have been tested.
- Ubuntu 18.04 LTS (Bionic)
- Ubuntu 20.04 LTS (Focal)
- Install the core LSL library
- Download the latest version (*.deb) from GitHub LSL library from the releases page.
- Switch to the directory where the *.deb is located.
- Change permissions to
chmod +x *.deb
- Install the *.deb
sudo dpkg -i liblsl-bin_*.deb
- Install the python binding pylsl
pip3 install pylsl
Code Example
Usage
1.Run the above code to start streaming triggers.:
* python3 code.py
* Alter the parameters in the example progam if needed.
2.Open Aurora on Windows and connect with the fNIRS device.
3.On the configuration page, select the desired probmap and click Edit
as shown in the image below.
Fig.1: Configuration screen in NIRx Aurora
4.In the Basic parameters
tab, add triggers (ideally, the same number as defined in the python program).
Fig.1: Setting Triggers in Aurora
5.Verify that the Data out stream name
and Data in stream name
same as defined in the python program.
Fig.1: Configuring stream names
6.Now you should be able to see the data with triggers in the Aurora console.
Fig.1: Triggers placed by the python program via LSL
7.The trigger input may be automated to your needs.