Difference between revisions of "DataHub"
Wiki-admin (talk | contribs) (→Python) |
Wiki-admin (talk | contribs) (→Python) |
||
Line 57: | Line 57: | ||
#!/usr/bin/env python | #!/usr/bin/env python | ||
− | + | import threading | |
− | from | + | 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== | ==References== |
Revision as of 10:02, 1 February 2022
Developer(s) | Christian Kothe; Chadwick Boulay. | ||||
---|---|---|---|---|---|
Development status | -in development- | ||||
Written in | C, C++, Python, Java, C#, MATLAB | ||||
Operating system | Windows, Linux, MacOS, Android, iOS | ||||
Type | Data collection | ||||
License | Open source | ||||
Website | LSL webpage | ||||
|
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
<syntaxhighlight lang="python" line>
- !/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