robotology / human-dynamics-estimation

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

[HumanLogger] logger not starting because interface is not ready #356

Closed lrapetti closed 1 year ago

lrapetti commented 1 year ago

The HumanLogger sometimes do not start because the interface is not ready.

...
[DEBUG] |yarp.dev.PolyDriver|HumanLoggerDevice| Parameters are (LoggerType matlab) (auto_save true) (data_threshold 300) (device human_logger) (experimentName human_data) (id HumanLoggerDevice) (logHumanDynamics true) (logHumanState true) (n_samples 100000) (path "experiment_dir/") (period 0.0100000000000000002082) (robotName) (saveBufferManagerConfiguration false) (save_period 120.0) (save_periodically true)
[INFO] HumanLogger : LoggerType set to MATLAB
[INFO] |yarp.dev.PolyDriver|HumanLoggerDevice| Created device <human_logger>. See C++ class hde::devices::HumanLogger for documentation.
[INFO] Entering action level 5 of phase startup
[INFO] Executing attach action, level 5 on device HumanLoggerDevice with parameters [("networks" = "(HumanStateRemapper HumanDynamicsRemapper)"), ("HumanStateRemapper" = "HumanStateRemapper"), ("HumanDynamicsRemapper" = "HumanDynamicsRemapper")]
[INFO] HumanLogger : Device human_state_remapper successfully attached
[ERROR] HumanLogger : The IHumanDynamics interface human_dynamics_remapper might not be ready
[ERROR] Device HumanLoggerDevice cannot execute attach
[ERROR] Cannot run attach action on device HumanLoggerDevice
[INFO] All actions for action level 5 of startup phase started. Waiting for unfinished actions.
[INFO] All actions for action level 5 of startup phase finished.
[WARNING] There was some problem running actions for startup phase . Please check the log and your configuration
[INFO] startup phase finished.
[ERROR] Error in startup phase... see previous messages for more info
[WARNING] Interrupt # 1 # received.
[INFO] Interrupt received. Stopping all running threads.
[INFO] interrupt1 phase starting...
[INFO] interrupt1 phase finished.
[INFO] shutdown phase starting...
[INFO] Entering action level 5 of phase shutdown
[INFO] Executing detach action, level 5 on device HumanLoggerDevice with parameters []
[INFO] All actions for action level 5 of shutdown phase started. Waiting for unfinished actions.
[INFO] All actions for action level 5 of shutdown phase finished.
[INFO] Closing device HumanLoggerDevice
[INFO] Closing device HumanDynamicsRemapper
[INFO] |yarp.os.impl.PortCoreInputUnit|/tmp/port/4| Removing input from /HDE/HumanDynamicsWrapper/torques:o to /tmp/port/4
[INFO] Closing device HumanStateRemapper
[INFO] |yarp.os.impl.PortCoreInputUnit|/tmp/port/3| Removing input from /HDE/HumanStateWrapper/state:o to /tmp/port/3
[INFO] shutdown phase finished.
[INFO] |yarp.os.RFModule| RFModule failed to open.
lrapetti commented 1 year ago

A possibile solution might be to introduce a timeout here

lrapetti commented 1 year ago

This has been fixed by https://github.com/robotology/human-dynamics-estimation/pull/357