BSN2 is a ROS 2 Jazzy-based application for monitoring and processing sensor data from a body sensor network. It consists of four ROS 2 packages:
patientsensorcentral_hubbsn_interfaces
This guide explains how to install, build, and run BSN2 using Docker for a streamlined and portable development environment.
Before proceeding, ensure you have the following installed on your system:
git clone git@github.com:rdinizcal/bsn2.git
cd bsn2docker build -t bsn2:latest .To start an interactive session within the container:
docker run -it --rm bsn2:latestThis will start a container where ROS 2 is sourced, and you can run ROS 2 commands.
Inside the running container, source the environment and run ROS 2 nodes:
source /opt/ros/jazzy/setup.bash
source /ros_ws/install/setup.bashRun nodes (in different terminals)
ros2 run patient patient
ros2 run sensor thermometer
Changes to source files can be done locally and reflected inside the container if you mount the workspace as a volume:
docker run -it --rm -v $(pwd):/ros_ws bsn2:latestIf MacOS:
docker run -it --platform linux/amd64 bsn2:latestAfter modifying the code, rebuild using:
colcon build
source /ros_ws/install/setup.bashTo exit and remove the container, use:
exit # or Ctrl+D- download docker extension
- click on reopen in container
- if setup.sh was not executed and make sure it is in LF, run in ros_ws directory:
bash src/.devcontainer/setup.sh- run the launch file:
source /ros_ws/install/setup.bash
ros2 launch central_hub emergency_detection_launch.pyTo collaborate on BSN2 development:
- Fork the repository.
- Create a feature branch.
- Commit changes and push to your branch.
- Open a pull request.
BSN2 is licensed under [TBD - specify license].