ami-iit / yarp-openmct

Repo for YARP and OpenMCT integration.
BSD 3-Clause "New" or "Revised" License
6 stars 1 forks source link

Crash when opening and closing the walking controller #168

Open S-Dafarra opened 1 year ago

S-Dafarra commented 1 year ago

It happened a few times that the module crashes with the following errors

Setting up yarp and iCub env vars
Type helpRobot for a list of useful commands.
icub@icub-console-xps:~$ run-yarp-openmct 

> yarp-openmct@1.0.0 start /usr/local/src/robot/yarp-openmct
> cd iCubTelemVizServer && node ${NODE_DEBUG_OPTION} iCubTelemVizServer.js

iCub Telemetry server launched!
[INFO] |yarp.os.Port|/yarpjs/inertial:i| Port /yarpjs/inertial:i active at tcp://10.0.0.150:10233/
[INFO] |yarp.os.Port|/yarpjs/head/inertials:i| Port /yarpjs/head/inertials:i active at tcp://10.0.0.150:10234/
[INFO] |yarp.os.Port|/yarpjs/leftArm/inertials:i| Port /yarpjs/leftArm/inertials:i active at tcp://10.0.0.150:10235/
[INFO] |yarp.os.Port|/yarpjs/rightArm/inertials:i| Port /yarpjs/rightArm/inertials:i active at tcp://10.0.0.150:10236/
[INFO] |yarp.os.Port|/yarpjs/leftLeg/inertials:i| Port /yarpjs/leftLeg/inertials:i active at tcp://10.0.0.150:10237/
[INFO] |yarp.os.Port|/yarpjs/rightLeg/inertials:i| Port /yarpjs/rightLeg/inertials:i active at tcp://10.0.0.150:10238/
[INFO] |yarp.os.Port|/yarpjs/leftFoot/inertials:i| Port /yarpjs/leftFoot/inertials:i active at tcp://10.0.0.150:10239/
[INFO] |yarp.os.Port|/yarpjs/rightFoot/inertials:i| Port /yarpjs/rightFoot/inertials:i active at tcp://10.0.0.150:10240/
[INFO] |yarp.os.Port|/yarpjs/left_leg/stateExt:o| Port /yarpjs/left_leg/stateExt:o active at tcp://10.0.0.150:10241/
[INFO] |yarp.os.Port|/yarpjs/right_leg/stateExt:o| Port /yarpjs/right_leg/stateExt:o active at tcp://10.0.0.150:10242/
[INFO] |yarp.os.Port|/yarpjs/left_arm/stateExt:o| Port /yarpjs/left_arm/stateExt:o active at tcp://10.0.0.150:10243/
[INFO] |yarp.os.Port|/yarpjs/right_arm/stateExt:o| Port /yarpjs/right_arm/stateExt:o active at tcp://10.0.0.150:10244/
[INFO] |yarp.os.Port|/yarpjs/torso/stateExt:o| Port /yarpjs/torso/stateExt:o active at tcp://10.0.0.150:10245/
[INFO] |yarp.os.Port|/yarpjs/head/stateExt:o| Port /yarpjs/head/stateExt:o active at tcp://10.0.0.150:10246/
[INFO] |yarp.os.Port|/yarpjs/camLeftEye:i| Port /yarpjs/camLeftEye:i active at tcp://10.0.0.150:10247/
[INFO] |yarp.os.Port|/yarpjs/camRightEye:i| Port /yarpjs/camRightEye:i active at tcp://10.0.0.150:10248/
[INFO] |yarp.os.Port|/yarpjs/left_arm/cartesianEndEffectorWrench:i| Port /yarpjs/left_arm/cartesianEndEffectorWrench:i active at tcp://10.0.0.150:10249/
[INFO] |yarp.os.Port|/yarpjs/right_arm/cartesianEndEffectorWrench:i| Port /yarpjs/right_arm/cartesianEndEffectorWrench:i active at tcp://10.0.0.150:10250/
[INFO] |yarp.os.Port|/yarpjs/left_upper_leg/cartesianEndEffectorWrench:i| Port /yarpjs/left_upper_leg/cartesianEndEffectorWrench:i active at tcp://10.0.0.150:10251/
[INFO] |yarp.os.Port|/yarpjs/left_lower_leg/cartesianEndEffectorWrench:i| Port /yarpjs/left_lower_leg/cartesianEndEffectorWrench:i active at tcp://10.0.0.150:10252/
[INFO] |yarp.os.Port|/yarpjs/right_upper_leg/cartesianEndEffectorWrench:i| Port /yarpjs/right_upper_leg/cartesianEndEffectorWrench:i active at tcp://10.0.0.150:10253/
[INFO] |yarp.os.Port|/yarpjs/right_lower_leg/cartesianEndEffectorWrench:i| Port /yarpjs/right_lower_leg/cartesianEndEffectorWrench:i active at tcp://10.0.0.150:10254/
[INFO] |yarp.os.Port|/yarpjs/left_foot_front/cartesianEndEffectorWrench:i| Port /yarpjs/left_foot_front/cartesianEndEffectorWrench:i active at tcp://10.0.0.150:10255/
[INFO] |yarp.os.Port|/yarpjs/left_foot_rear/cartesianEndEffectorWrench:i| Port /yarpjs/left_foot_rear/cartesianEndEffectorWrench:i active at tcp://10.0.0.150:10256/
[INFO] |yarp.os.Port|/yarpjs/right_foot_front/cartesianEndEffectorWrench:i| Port /yarpjs/right_foot_front/cartesianEndEffectorWrench:i active at tcp://10.0.0.150:10257/
[INFO] |yarp.os.Port|/yarpjs/right_foot_rear/cartesianEndEffectorWrench:i| Port /yarpjs/right_foot_rear/cartesianEndEffectorWrench:i active at tcp://10.0.0.150:10258/
[INFO] |yarp.os.Port|/yarpjs/left_arm/FT:i| Port /yarpjs/left_arm/FT:i active at tcp://10.0.0.150:10259/
[INFO] |yarp.os.Port|/yarpjs/right_arm/FT:i| Port /yarpjs/right_arm/FT:i active at tcp://10.0.0.150:10260/
[INFO] |yarp.os.Port|/yarpjs/left_leg_hip/FT:i| Port /yarpjs/left_leg_hip/FT:i active at tcp://10.0.0.150:10261/
[INFO] |yarp.os.Port|/yarpjs/right_leg_hip/FT:i| Port /yarpjs/right_leg_hip/FT:i active at tcp://10.0.0.150:10262/
[INFO] |yarp.os.Port|/yarpjs/left_foot_heel_tiptoe/FT:i| Port /yarpjs/left_foot_heel_tiptoe/FT:i active at tcp://10.0.0.150:10263/
[INFO] |yarp.os.Port|/yarpjs/right_foot_heel_tiptoe/FT:i| Port /yarpjs/right_foot_heel_tiptoe/FT:i active at tcp://10.0.0.150:10264/
[INFO] |yarp.os.Port|/yarpjs/battery/data:i| Port /yarpjs/battery/data:i active at tcp://10.0.0.150:10265/
[INFO] |yarp.os.Port|/yarpjs/walking-coordinator-logger/data:i| Port /yarpjs/walking-coordinator-logger/data:i active at tcp://10.0.0.150:10266/
[INFO] |yarp.os.Port|/yarpjs/iFeelSuit/WearableData/data:i| Port /yarpjs/iFeelSuit/WearableData/data:i active at tcp://10.0.0.150:10267/
[INFO] |yarp.os.Port|/yarpjs/proc-yarprobotinterface-yarptextlogging:i| Port /yarpjs/proc-yarprobotinterface-yarptextlogging:i active at tcp://10.0.0.150:10268/
[INFO] |yarp.os.Port|/yarpjs/proc-walkingmodule-yarptextlogging:i| Port /yarpjs/proc-walkingmodule-yarptextlogging:i active at tcp://10.0.0.150:10269/
[INFO] |yarp.os.Port|/yarpjs/sysCmdsGenerator/rpc| Port /yarpjs/sysCmdsGenerator/rpc active at tcp://10.0.0.150:10270/
{ status: 'OK', message: 'Opem-MCT static server process started.' }
info:Yarp command successfully started...
ICubTelemetry History Server listening on http://10.0.0.150:8081/history
ICubTelemetry Realtime Server listening on ws://10.0.0.150:8081/realtime
Control Console Server listening on http://10.0.0.150:3000
Yarp port names retrieval completed successfully (0)
Yarp port name regexp @{^\/log\/icub-head\/WalkingModule\/.*$} does not match any existing ports
[OPEN-MCT STATIC SERVER] ipc: {"pid":16893}
[INFO] |yarp.os.impl.PortCoreInputUnit|/yarpjs/leftArm/inertials:i| Receiving input from /icub/left_arm/imu/measures:o to /yarpjs/leftArm/inertials:i using tcp
[INFO] |yarp.os.impl.PortCoreInputUnit|/yarpjs/head/inertials:i| Receiving input from /icub/head/inertials/measures:o to /yarpjs/head/inertials:i using tcp
[INFO] |yarp.os.impl.PortCoreInputUnit|/yarpjs/rightArm/inertials:i| Receiving input from /icub/right_arm/imu/measures:o to /yarpjs/rightArm/inertials:i using tcp
[INFO] |yarp.os.impl.PortCoreInputUnit|/yarpjs/leftLeg/inertials:i| Receiving input from /icub/left_leg/imu/measures:o to /yarpjs/leftLeg/inertials:i using tcp
[INFO] |yarp.os.impl.PortCoreInputUnit|/yarpjs/rightFoot/inertials:i| Receiving input from /icub/right_foot/imu/measures:o to /yarpjs/rightFoot/inertials:i using tcp
[INFO] |yarp.os.impl.PortCoreInputUnit|/yarpjs/rightLeg/inertials:i| Receiving input from /icub/right_leg/imu/measures:o to /yarpjs/rightLeg/inertials:i using tcp
[INFO] |yarp.os.impl.PortCoreInputUnit|/yarpjs/left_leg/stateExt:o| Receiving input from /icub/left_leg/stateExt:o to /yarpjs/left_leg/stateExt:o using tcp
[INFO] |yarp.os.impl.PortCoreInputUnit|/yarpjs/leftFoot/inertials:i| Receiving input from /icub/left_foot/imu/measures:o to /yarpjs/leftFoot/inertials:i using tcp
[INFO] |yarp.os.impl.PortCoreInputUnit|/yarpjs/torso/stateExt:o| Receiving input from /icub/torso/stateExt:o to /yarpjs/torso/stateExt:o using tcp
[INFO] |yarp.os.impl.PortCoreInputUnit|/yarpjs/head/stateExt:o| Receiving input from /icub/head/stateExt:o to /yarpjs/head/stateExt:o using tcp
[INFO] |yarp.os.impl.PortCoreInputUnit|/yarpjs/right_arm/stateExt:o| Receiving input from /icub/right_arm/stateExt:o to /yarpjs/right_arm/stateExt:o using tcp
[INFO] |yarp.os.impl.PortCoreInputUnit|/yarpjs/right_leg/stateExt:o| Receiving input from /icub/right_leg/stateExt:o to /yarpjs/right_leg/stateExt:o using tcp
[INFO] |yarp.os.impl.PortCoreInputUnit|/yarpjs/left_arm/stateExt:o| Receiving input from /icub/left_arm/stateExt:o to /yarpjs/left_arm/stateExt:o using tcp
[INFO] |yarp.os.impl.PortCoreInputUnit|/yarpjs/right_arm/cartesianEndEffectorWrench:i| Receiving input from /wholeBodyDynamics/right_arm/cartesianEndEffectorWrench:o to /yarpjs/right_arm/cartesianEndEffectorWrench:i using tcp
[INFO] |yarp.os.impl.PortCoreInputUnit|/yarpjs/left_arm/cartesianEndEffectorWrench:i| Receiving input from /wholeBodyDynamics/left_arm/cartesianEndEffectorWrench:o to /yarpjs/left_arm/cartesianEndEffectorWrench:i using tcp
[INFO] |yarp.os.impl.PortCoreInputUnit|/yarpjs/left_upper_leg/cartesianEndEffectorWrench:i| Receiving input from /wholeBodyDynamics/left_upper_leg/cartesianEndEffectorWrench:o to /yarpjs/left_upper_leg/cartesianEndEffectorWrench:i using tcp
[INFO] |yarp.os.impl.PortCoreInputUnit|/yarpjs/left_lower_leg/cartesianEndEffectorWrench:i| Receiving input from /wholeBodyDynamics/left_lower_leg/cartesianEndEffectorWrench:o to /yarpjs/left_lower_leg/cartesianEndEffectorWrench:i using tcp
[INFO] |yarp.os.impl.PortCoreInputUnit|/yarpjs/right_upper_leg/cartesianEndEffectorWrench:i| Receiving input from /wholeBodyDynamics/right_upper_leg/cartesianEndEffectorWrench:o to /yarpjs/right_upper_leg/cartesianEndEffectorWrench:i using tcp
[INFO] |yarp.os.impl.PortCoreInputUnit|/yarpjs/iFeelSuit/WearableData/data:i| Receiving input from /iFeelSuit/WearableData/data:o to /yarpjs/iFeelSuit/WearableData/data:i using tcp
[INFO] |yarp.os.impl.PortCoreInputUnit|/yarpjs/right_lower_leg/cartesianEndEffectorWrench:i| Receiving input from /wholeBodyDynamics/right_lower_leg/cartesianEndEffectorWrench:o to /yarpjs/right_lower_leg/cartesianEndEffectorWrench:i using tcp
[INFO] |yarp.os.impl.PortCoreInputUnit|/yarpjs/left_foot_front/cartesianEndEffectorWrench:i| Receiving input from /wholeBodyDynamics/left_foot_front/cartesianEndEffectorWrench:o to /yarpjs/left_foot_front/cartesianEndEffectorWrench:i using tcp
[INFO] |yarp.os.impl.PortCoreInputUnit|/yarpjs/left_foot_rear/cartesianEndEffectorWrench:i| Receiving input from /wholeBodyDynamics/left_foot_rear/cartesianEndEffectorWrench:o to /yarpjs/left_foot_rear/cartesianEndEffectorWrench:i using tcp
[INFO] |yarp.os.impl.PortCoreInputUnit|/yarpjs/right_arm/FT:i| Receiving input from /icub/right_arm/measures:o to /yarpjs/right_arm/FT:i using tcp
[INFO] |yarp.os.impl.PortCoreInputUnit|/yarpjs/right_foot_rear/cartesianEndEffectorWrench:i| Receiving input from /wholeBodyDynamics/right_foot_rear/cartesianEndEffectorWrench:o to /yarpjs/right_foot_rear/cartesianEndEffectorWrench:i using tcp
[INFO] |yarp.os.impl.PortCoreInputUnit|/yarpjs/left_arm/FT:i| Receiving input from /icub/left_arm/measures:o to /yarpjs/left_arm/FT:i using tcp
[INFO] |yarp.os.impl.PortCoreInputUnit|/yarpjs/right_foot_front/cartesianEndEffectorWrench:i| Receiving input from /wholeBodyDynamics/right_foot_front/cartesianEndEffectorWrench:o to /yarpjs/right_foot_front/cartesianEndEffectorWrench:i using tcp
[INFO] |yarp.os.impl.PortCoreInputUnit|/yarpjs/left_foot_heel_tiptoe/FT:i| Receiving input from /icub/left_foot_heel_tiptoe/measures:o to /yarpjs/left_foot_heel_tiptoe/FT:i using tcp
[INFO] |yarp.os.impl.PortCoreInputUnit|/yarpjs/right_leg_hip/FT:i| Receiving input from /icub/right_leg_hip/measures:o to /yarpjs/right_leg_hip/FT:i using tcp
[INFO] |yarp.os.impl.PortCoreInputUnit|/yarpjs/left_leg_hip/FT:i| Receiving input from /icub/left_leg_hip/measures:o to /yarpjs/left_leg_hip/FT:i using tcp
[INFO] |yarp.os.impl.PortCoreInputUnit|/yarpjs/battery/data:i| Receiving input from /icub/battery/data:o to /yarpjs/battery/data:i using tcp
[INFO] |yarp.os.impl.PortCoreInputUnit|/yarpjs/right_foot_heel_tiptoe/FT:i| Receiving input from /icub/right_foot_heel_tiptoe/measures:o to /yarpjs/right_foot_heel_tiptoe/FT:i using tcp
[INFO] |yarp.os.impl.PortCoreInputUnit|/yarpjs/proc-yarprobotinterface-yarptextlogging:i| Receiving input from /log/icub-head/yarprobotinterface[robotinterface]/2899 to /yarpjs/proc-yarprobotinterface-yarptextlogging:i using tcp
[OPEN-MCT STATIC SERVER] stdout: Visualizer Console Server (Open MCT based) listening on http://10.0.0.150:8080

NEW CONNECTION!!
NEW CONNECTION!!
connected
[INFO] |yarp.os.Port|/yarpjs/wholeBodyDynamics/rpc:o| Port /yarpjs/wholeBodyDynamics/rpc:o active at tcp://10.0.0.150:10279/
NEW CONNECTION!!
NEW CONNECTION!!
[INFO] |yarp.os.Port|/yarpjs/walking-coordinator/rpc:o| Port /yarpjs/walking-coordinator/rpc:o active at tcp://10.0.0.150:10280/
[INFO] |yarp.os.Port|/yarpjs/sysCmdsGenerator/rpc:o| Port /yarpjs/sysCmdsGenerator/rpc:o active at tcp://10.0.0.150:10281/
[INFO] |yarp.os.impl.PortCoreOutputUnit|/yarpjs/wholeBodyDynamics/rpc:o| Sending output from /yarpjs/wholeBodyDynamics/rpc:o to /wholeBodyDynamics/rpc using tcp
[INFO] |yarp.os.impl.PortCoreOutputUnit|/yarpjs/sysCmdsGenerator/rpc:o| Sending output from /yarpjs/sysCmdsGenerator/rpc:o to /yarpjs/sysCmdsGenerator/rpc using tcp
[INFO] |yarp.os.impl.PortCoreInputUnit|/yarpjs/sysCmdsGenerator/rpc| Receiving input from /yarpjs/sysCmdsGenerator/rpc:o to /yarpjs/sysCmdsGenerator/rpc using tcp
CLOSE CONNECTION
connected
NEW CONNECTION!!
[INFO] |yarp.os.impl.PortCoreOutputUnit|/yarpjs/wholeBodyDynamics/rpc:o| Removing output from /yarpjs/wholeBodyDynamics/rpc:o to /wholeBodyDynamics/rpc
[INFO] |yarp.os.impl.PortCoreOutputUnit|/yarpjs/wholeBodyDynamics/rpc:o| Sending output from /yarpjs/wholeBodyDynamics/rpc:o to /wholeBodyDynamics/rpc using tcp
[INFO] |yarp.os.impl.PortCoreInputUnit|/yarpjs/sysCmdsGenerator/rpc| Removing input from /yarpjs/sysCmdsGenerator/rpc:o to /yarpjs/sysCmdsGenerator/rpc
[INFO] |yarp.os.impl.PortCoreOutputUnit|/yarpjs/sysCmdsGenerator/rpc:o| Removing output from /yarpjs/sysCmdsGenerator/rpc:o to /yarpjs/sysCmdsGenerator/rpc
[INFO] |yarp.os.impl.PortCoreOutputUnit|/yarpjs/sysCmdsGenerator/rpc:o| Sending output from /yarpjs/sysCmdsGenerator/rpc:o to /yarpjs/sysCmdsGenerator/rpc using tcp
[INFO] |yarp.os.impl.PortCoreInputUnit|/yarpjs/sysCmdsGenerator/rpc| Receiving input from /yarpjs/sysCmdsGenerator/rpc:o to /yarpjs/sysCmdsGenerator/rpc using tcp
CLOSE CONNECTION
CLOSE CONNECTION
CLOSE CONNECTION
CLOSE CONNECTION
NEW CONNECTION!!
connected
NEW CONNECTION!!
CLOSE CONNECTION
CLOSE CONNECTION
NEW CONNECTION!!
connected
NEW CONNECTION!!
NEW CONNECTION!!
CLOSE CONNECTION
CLOSE CONNECTION
CLOSE CONNECTION
[INFO] |yarp.os.impl.PortCoreInputUnit|/yarpjs/walking-coordinator-logger/data:i| Receiving input from /walking-coordinator/logger/data:o to /yarpjs/walking-coordinator-logger/data:i using tcp
[INFO] |yarp.os.impl.PortCoreInputUnit|/yarpjs/walking-coordinator-logger/data:i| Removing input from /walking-coordinator/logger/data:o to /yarpjs/walking-coordinator-logger/data:i
[INFO] |yarp.os.impl.PortCoreInputUnit|/yarpjs/walking-coordinator-logger/data:i| Receiving input from /walking-coordinator/logger/data:o to /yarpjs/walking-coordinator-logger/data:i using tcp
/usr/local/src/robot/yarp-openmct/iCubTelemVizServer/icubtelemetry.js:153
                    subIds.forEach(function (subId) {
                           ^

TypeError: Cannot read property 'forEach' of undefined
    at ICubTelemetry.<anonymous> (/usr/local/src/robot/yarp-openmct/iCubTelemVizServer/icubtelemetry.js:153:28)
    at Object.<anonymous> (/usr/local/src/robot/yarp-openmct/iCubTelemVizServer/icubtelemetry.js:170:18)
    at /usr/local/src/robot/yarp-openmct/iCubTelemVizServer/iCubTelemVizServer.js:77:56
    at /usr/local/src/robot/yarp-openmct/node_modules/YarpJS/yarp.js:188:13
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! yarp-openmct@1.0.0 start: `cd iCubTelemVizServer && node ${NODE_DEBUG_OPTION} iCubTelemVizServer.js`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the yarp-openmct@1.0.0 start script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/icub/.npm/_logs/2023-02-10T10_51_34_226Z-debug.log

This seems to happens if we run the walking controller with two different configurations.