Metadata-Version: 2.1
Name: nervous-sensors
Version: 0.0.2
Summary: 
Home-page: https://github.com/sensors-inl/Nervous
License: MIT
Author: Bertrand Massot
Author-email: bertrand.massot@insa-lyon.fr
Requires-Python: >=3.12,<4.0
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.12
Requires-Dist: aioconsole (>=0.7.1,<0.8.0)
Requires-Dist: bleak (>=0.20,<0.21)
Requires-Dist: click (>=8.1.7,<9.0.0)
Requires-Dist: cobs (>=1.2.0,<2.0.0)
Requires-Dist: dash (>=2.16.1,<3.0.0)
Requires-Dist: dash_bootstrap_components (>=1.6.0,<2.0.0)
Requires-Dist: numpy (>=1.26.4,<2.0.0)
Requires-Dist: pandas (>=2.2.1,<3.0.0)
Requires-Dist: plotly (>=5.22.0,<6.0.0)
Requires-Dist: protobuf (>=4.23.4,<5.0.0)
Requires-Dist: pylsl (>=1.16.2,<2.0.0)
Description-Content-Type: text/markdown

# Nervous Sensors

This project aims at implementing drivers in python to handle connection to
Bluetooth Low Energy sensors developed in the frame of ANR project RENFORCE.
It also implements an interface to PLUME Unity plugin to collect data within a
virtual environment for synchronous recording as well as real-time feedback to
the user.

## Installation

```bash
pip install nervous-sensors
```

## CLI

```text
Usage: nervous [OPTIONS]

Options:
  -s, --sensors TEXT      ECGxxx,EDAxxx... : Give the name of the sensors you
                          want to use. Make sure to put 'ECG' or 'EDA' in
                          their name so the program will know which type of
                          sensor you want to use (not case sensitive).
  -g, --gui               Show real-time data graph.
  -f, --folder PATH       Save CSV data files in folder.
  -l, --lsl               Send sensor data on LSL outlets.
  -p, --parallel INTEGER  Number of parallel connection tentatives authorized.
  --help                  Show this message and exit.
```

### Example

```bash
nervous -g -f data/csv/ -l -s ECG6543,EDA7201
```

## CPU consumption

- BLE : no significant CPU usage was noticed with Bleak
- Data storage : `TRESH1` & `TRESH2` values in `reforce_lsl.py` file may be
adjusted according to your system's performance

