Skip to content
@sense-base

sense-base

🧠 SENSE-BASE: An Open-Source Framework for Biological Signals and Computer Vision Sensor Data

SENSE-BASE is a ROS2-based framework for multimodal biosignals from EEG, EoG, ECG, and depth cameras. banner-fig Diagram. Frawework illustrates the main blocks for acquisition, base, computer vision, interface, and recorder, along with their corresponding ROS 2 packages. Highlight the green blocks as already implemented and the yellow ones as in progress. See also logo here

1. 🤖 SENSE-BASE ROS2-based packages

The ROS2 packages are developed, built, and supported for the Humble distribution.

2. 🎒 Getting started by install requirements and dependencies

  • Generate your SSH keys as suggested here.
  • Setup you commit signature verification as shown here.
  • :octocat: Clone base repositories under sense-base path. We suggest cloning repos under sense-base path as for example base, sense_eeg and sense_msgs.
mkdir sense-base && cd sense-base
git clone git@github.com:sense-base/base.git
cd base && mkdir -p workspace/src && cd workspace/src
git clone git@github.com:sense-base/sense_eeg.git
git clone git@github.com:sense-base/sense_msgs.git
git clone git@github.com:sense-base/sense_bridge.git

3. 🔩 Install local virtual environments

Setup environment

Install Python Environment (3.10 or higher recommended):

Using uv

#cd package name
cd workspace/src/sense_msgs/
uv venv --python 3.10
source .venv/bin/activate
uv pip install -e ".[dev]"
uv pip list --verbose

Using pyenv

pyenv install 3.10.17  
pyenv virtualenv 3.10.17 sense_EEG-env
pyenv local sense_EEG-env
pip install -e ".[dev]"

Run Pre-commit Hooks

uv pre-commit run --all-files

4. 🔩 Run and debug packages

  • Open VSCode in the base repository and checkout respective branches.
  • Once project is open in VSCode you will automatically see and click Reopen in Container.
  • Open a terminal into the loaded container in VSCode
rm -rf build/ install/ log/
colcon build --symlink-install
source install/setup.bash
ros2 launch eeg_publisher mock_publisher_launch.py

On a different terminal, run

source install/setup.bash
ros2 topic list
ros2 topic echo /eeg/raw
ros2 bag record /eeg/raw
ros2 bag info <bag_file_name> (e.g., `rosbag2_data_time`)
ros2 bag play <bag_file_name>
rqt_graph

5. ♻️ Contribution guidelines and code of conduct

  • For full details on how to contribute to the project – including repository cloning and issue/branch/pull request workflows – please see the CONTRIBUTING guidelines.
  • For information on our community standards, responsibilities and enforcement policies, refer to the CODE OF CONDUCT.

Popular repositories Loading

  1. sense_eeg sense_eeg Public

    Python 1 1

  2. base base Public

    Dockerfile

  3. sense_msgs sense_msgs Public

    Python 1

  4. .github .github Public

  5. sense_bridge sense_bridge Public

    Python

  6. sense_pose sense_pose Public

    Python

Repositories

Showing 10 of 10 repositories

People

This organization has no public members. You must be a member to see who’s a part of this organization.

Top languages

Loading…

Most used topics

Loading…