DataHub

From TSG Doc
Revision as of 09:10, 1 February 2022 by Wiki-admin (talk | contribs) (Python)
Jump to navigation Jump to search
DataHub
Developer(s)Christian Kothe; Chadwick Boulay.
Development status-in development-
Written inC, C++, Python, Java, C#, MATLAB
Operating systemWindows, Linux, MacOS, Android, iOS
TypeData collection
LicenseOpen source
WebsiteLSL webpage
Manuals

The DataHub Makes use of the lab streaming layer. The lab streaming layer (LSL) is a system for the unified collection of measurement time series in research experiments that handles both the networking, time-synchronization, (near-) real-time access as well as optionally the centralized collection, viewing and disk recording of the data.


Installation

Our support for LSL is mainly done in python. Download python here: Please choose a 64 bit version.. Run the installer and make sure to add Python to the file path (it's an option in the installer). Open a command prompt, start with upgrading the pip installer by typing:
c:>python -m pip install --upgrade pip
Then:
c:>pip install pylsl

more info: cross platform pylsl

Versions

The TSG uses the version 1.15.0. Open a command and type the following to find the version used:

c:>python
>>> import pylsl
>>> print(pylsl.__version__)

Usage

Python

#!/usr/bin/env python

import threading
from pylsl import StreamInfo, StreamOutlet

def getData():
    while running:
        buffer_in = getSensorData()
        send_data = True
        time.sleep(0.001)

info = StreamInfo(
    name='MyStream', 
    type='COP', 
    channel_count=4, 
    nominal_srate = 200, 
    source_id='BalanceBoard_stream'
    )
outlet = StreamOutlet(info) 

threading.Thread(target=getData).start()
while running == True:
	if send_data:
		outlet.push_chunk(buffer_in)
		send_data = False

References


External Links