This is code for sensor data collection for eSports players. We used this code to simultaneously collect sensor data from 5 players in League of Legends. The code collects data from the following sensors:
- Electromyography sensor (EMG) Grove EMG Sensor v1.1 (captures muscle activity).
- Galvanic skin response sensor (GSR) Grove GSR Sensor v1.2 (captures stress level).
- Inertial measurement unit (IMU) Bosch BNO055 (captures movements).
- Environmental atmosphere sensor Bosch BME280 (captures temperature, humidity, etc.).
- CO2 sensor MH-Z19B.
- Eye tracker Tobii 4C (captures eye movements, pupil diameter).
- Electroencephalography (EEG) headset Emotiv Insight (captures brain activity).
- Infrared camera Flir One (captures facial skin temperature).
- Heart rate monitor Polar OH1 (captures stress level).
- Pulse-oximeter sensor Maxim MAX30102 (captures oxygen saturation level).
- Keyboard and mouse activity.
The code organized into directories as follows:
FLIROneSDKBundle
— Android app for data collection from infrared camera.ArduinoCode
— C/C++ libraries for data collection from Arduino board (16 devices recorded simultaneously).PolarDataCollection
— code for data collection from Polar OH 1 heart rate monitors.InputLogger
— code for data collection from mouse/keyboard.EEG
— code for async data collection from EEG headsets with Bluetooth and Emotiv API.Server
— GUI program for server for data collection.Analysis
— scripts for analysis of experimental results.ExperimentalProtocol
— a protocol describing data collection process.Misc
— auxiliary ad-hoc code.
The dataset collected using this code is described in this paper. If you find the code or the paper interesting, please feel free to cite it as:
@article{smerdov2020collection,
title={Collection and Validation of Psychophysiological Data from Professional and Amateur Players: a Multimodal eSports Dataset},
author={Smerdov, Anton and Zhou, Bo and Lukowicz, Paul and Somov, Andrey},
journal={arXiv preprint arXiv:2011.00958},
year={2020}
}