robotology / human-dynamics-estimation

Software repository for estimating human dynamics
BSD 3-Clause "New" or "Revised" License
80 stars 28 forks source link

Add human logger device for storing data as .mat #298

Closed lrapetti closed 1 year ago

lrapetti commented 2 years ago

This PR adds a device HumanLogger that can be used for saving human kinematics and dynamics data as .mat

lrapetti commented 2 years ago

Probably we should already migrate to robometry rather than using YARP_telemetry (see https://github.com/robotology/wearables/pull/155).

lrapetti commented 2 years ago

The device has been implemented taking inspiration from the IWearLogger and the work done by @prashanthr05.

In the future we could also add the capability to log data into a YARP port as done with the IWearLogger (https://github.com/robotology/wearables/pull/123), replacing the longstanding branch with the wrappers/addVectorWisePublish that was used to publish data in simulink (see also https://github.com/robotology/human-dynamics-estimation/pull/218)

RiccardoGrieco commented 2 years ago

CI checks are failing since matio-cpp needs the matio library (see https://github.com/ami-iit/matio-cpp).

lrapetti commented 1 year ago

I have rebased this PR on the current master

RiccardoGrieco commented 1 year ago

Conda-based actions are failing due to the fact that YCM version is v0.12.12 (https://github.com/robotology/human-dynamics-estimation/actions/runs/3235757384/jobs/5300626785#step:11:36), which is the one on robotology channel (https://anaconda.org/robotology/ycm-cmake-modules).

icub-main version is instead is instead v1.28.1, which requires YCM v0.13.0 (see https://github.com/robotology/icub-main/blob/v1.28.1/CMakeLists.txt#L21)

I think we need a new conda release of YCM @traversaro

lrapetti commented 1 year ago

Since the failure in the CI seems to be independent from the PR, we can eventually proceed merging.

@RiccardoGrieco let me know if you have any further comment

lrapetti commented 1 year ago

I think we need a new conda release of YCM @traversaro

Concerning this, I am not aware of the process for conda releases, @traversaro let us know in case we can give help in this direction (releasing more recent version of ycm in conda).

traversaro commented 1 year ago

Conda-based actions are failing due to the fact that YCM version is v0.12.12 (https://github.com/robotology/human-dynamics-estimation/actions/runs/3235757384/jobs/5300626785#step:11:36), which is the one on robotology channel (https://anaconda.org/robotology/ycm-cmake-modules).

icub-main version is instead is instead v1.28.1, which requires YCM v0.13.0 (see https://github.com/robotology/icub-main/blob/v1.28.1/CMakeLists.txt#L21)

I think we need a new conda release of YCM @traversaro

ycm-cmake-modules 0.12.2 is the last release of ycm-cmake-modules released on the robotology conda channel, since 0.13.0 we released it directly on conda-forge channel, see https://anaconda.org/conda-forge/ycm-cmake-modules and https://github.com/robotology/robotology-superbuild/issues/752 for the rationale.

For this reason, it is better to always specify conda-forge as an higher priority channel w.r.t. to robotology, so for packages that have been migrated to conda-forge are installed in their latest version. In this specific case, you can just specify robotology in the channels option of conda-incubator/setup-miniconda@v2, or specify -c conda-forge before -c robotology.

RiccardoGrieco commented 1 year ago

Thanks @traversaro, I updated the channels priority in 0d177b3 and it worked.

@lrapetti I think you can proceed merging.

lrapetti commented 1 year ago

Thanks @RiccardoGrieco and @traversaro, I proceed merging!