Metadata-Version: 2.4
Name: brainaccess-board
Version: 1.0.2
Summary: Python library for interfacing with BrainAccess Board
Project-URL: homepage, https://www.brainaccess.ai/
Project-URL: documentation, https://www.brainaccess.ai/documentation/board-python-api/
Author-email: neurotechnology <brainaccess@neurotechnology.com>
Keywords: BCI,EEG,brainaccess,neuroscience
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Healthcare Industry
Classifier: Intended Audience :: Science/Research
Classifier: License :: Other/Proprietary License
Classifier: Natural Language :: English
Classifier: Operating System :: Microsoft :: Windows
Classifier: Operating System :: OS Independent
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Scientific/Engineering
Classifier: Topic :: Software Development
Classifier: Topic :: Software Development :: Libraries
Requires-Python: >=3.8
Requires-Dist: appdirs>=1.4.4
Requires-Dist: mne>=1.8.0
Requires-Dist: numpy>=1.26.4
Requires-Dist: pydantic>=2.7.3
Requires-Dist: pylsl==1.17.6
Requires-Dist: pyzmq>=26.0.3
Description-Content-Type: text/markdown

# brainaccess-board

Communication with [BrainAccess Board](https://www.brainaccess.ai/software/brainaccess-board/) and its database.

[Full documentation](https://www.brainaccess.ai/documentation/board-python-api/)

## Installation

```bash
pip install brainaccess-board
```

## Usage

### Connect to active database

```python
import brainaccess_board as bb

db, status = bb.db_connect(filename='current')
if status:
    data = db.get_mne()
    print(f"Dictionary of connected devices:\n {data}")
    print(f"MNE structure: {data[next(iter(data))]}")
```

```bash
Dictionary of connected devices:
 {'b2b586a2-da7a-4420-8a6d-cb890e9ba7d7': <RawArray | 8 x 36500 (146.0 s), ~2.
2 MB, data loaded>}

MNE structure: <RawArray | 8 x 36500 (146.0 s), ~2.2 MB, data loaded>
```

### Read previously saved database file

```python
import brainaccess_board as bb

db, status = bb.db_connect(filename='Data_saved_by_BrainAccess_Board.db')
if status:
    data = db.get_mne()
    print(f"Dictionary of devices:\n {data}")
    print(f"MNE structure: {data[next(iter(data))]}")
```

### Communication with BrainAccess Board

```python
import brainaccess_board as bb

bc, commands, status = bb.msg_connect()
print(commands)

if status:
    response = bc.command(commands['test'])
    print(response)
```

### Setup LSL Markers

Creates LSL stream with markers.

```python
import brainaccess_board as bb

stim = bb.stimulation_connect(name="BrainAccessMarkers")

if stim.have_consumers():
    stim.annotate("1")
```
