Skip to content

robotology/wearables

Repository files navigation

Wearables

C++ CI Action Status

Setting up

Dependencies

Here following there is a list of the required dependencies you need for using this repository. Instead, the optional dependencies, specific for each wearable-device, are listed in wearable-device-sources.

Required

  • CMake open-source, cross-platform family of tools designed to build, test and package software.
  • YARP software package to handle the data comunication.

It must be noted that YARP, together with a subset of the optional dependencies, can be installed together in one place using the robotology-superbuild enabling its Human-Dynamics profile.

Optional

  • robometry device: if present, the IWearLogger device is installed by default.
  • iDynTree: if present, the IWearFrameVisualizer module and ICub device are installed by default.
  • pybind11: if present, the user can enable WEARABLES_COMPILE_PYTHON_BINDINGS to enable the compilation of the python bindings.

Build the suite

Linux/macOS

git clone https://github.com/robotology/wearables.git
cd wearables
mkdir build && cd build
cmake ../
make
[sudo] make install

Notice: sudo is not necessary if you specify the CMAKE_INSTALL_PREFIX. In this case it is necessary to add in the .bashrc or .bash_profile the following lines:

export WEARABLES_INSTALL_DIR=/path/where/you/installed
export YARP_DATA_DIRS=${YARP_DATA_DIRS}:${WEARABLES_INSTALL_DIR}/share/yarp

Note that this is not necessary if you install wearables via the robotology-superbuild.

Optional flags

The compilation of some of the software components in wearables can be enabled using the following cmake flags:

  • ENABLE_FrameVisualizer: enable the compilation of the IWearFrameVisualizer module that allows to visualize wearble inertial measurements.
  • ENABLE_Logger: enable the compilation of the IWearLogger device that allows to save wearable data as .mat or stream the data on YARP as analog vector data.
  • ENABLE_<device>: enable the compilation of the optional wearable device (see documentation in Wearable device sources).

Wearable device sources

Wearable devices contained in /devices/ are YARP devices that exposes sensors data using IWear interface. List of the dependencies and documentation for running some of the wearable data sources can be found at the links in the table below. The compilation of some of theese devices can be enable/disabled changing the CMAKE option ENABLE_<device>.

Device Name Description OS Dependencies Documentation
IAnalogSensor Exposes YARP IAnalogSensor Interface. Linux/MacOS/Windows - -
FTShoes Exposes YARP ftShoe data. Linux/MacOS/Windows forcetorque-yarp-devices 📚
XsensSuit Exposes XsensSuit data. Windows xsens MVN SDK 2018.0.3 📚
ICub Exposes iCub robot data. Linux/MacOS/Windows iDynTree 📚
Paexo Exposes Paexo data. Linux iFeelDriver (Contact the maintainer for more details) -
HapticGlove Exposes SenseGlove data. Linux/Windows SenseGloveSDK 📚
IFrameTransform Exposes YARP IFrameTransform Interface. Linux/MacOS/Windows - -

Mantainers