-
Notifications
You must be signed in to change notification settings - Fork 103
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Retrieve latest joint fault state from firmware for exposition towards client #779
Conversation
cc @S-Dafarra |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Waiting robotology/icub-firmware-shared#52 to be merged and the CI to complete before proceeding.
Probably we may want to bump https://github.com/robotology/icub-main/blob/master/CMakeLists.txt#L18 to 3.5.100 to give a clear error if people try to build devel icub-main against YARP 3.5.1 . Note that in this form this PR creates a strict dependency on YARP 3.6 being released before we can make a new feature release of icub-main. |
My idea was also to ask @randaz81 to cherry pick the change on yarp-3.5 branch to avoid depending on yarp@master. |
What we surely need is to create a dependency of |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pls set up dependency from a specific version of icub-firmware-shared
. See in here how to do it.
Regarding #779 (comment), I've just pushed a commit into @mfussi66's fork to enforce the dependency from Regarding #779 (comment), I've just talked to @randaz81 who recommended that we do a test on a fork where we cherry-pick the relevant changes as there's the feeling that something could go wrong. I would postpone this latter check after we merge this PR. cc @traversaro |
@mfussi66, as soon as robotology/icub-firmware-shared#52 is merged, I'll proceed with this PR. |
Please also note that you need to update the robot XML files to use the interface because it's implemented only in the new NWS, (tested by @mfussi66) |
Ok, we would need to have robotology/robots-configuration#297 merged finally, and then extend those changes to the other robots, somehow. At any rate, @randaz81, are the missing XML blocking (in the sense they would cause run-time errors) or could we merge this PR anyway and then deal with the XML? |
You can proceed because PR and XML files are completely independent: no compiler errors nor run time issues. |
Sister PR's have been merged, hence I've got the CI started over. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi @mfussi66
There's a compilation problem under Windows:
Creating library D:/a/icub-main/icub-main/build/lib/Release/embObjMotionControl.lib and object D:/a/icub-main/icub-main/build/lib/Release/embObjMotionControl.exp
2021-12-15T16:35:06.6715731Z embObjMotionControl.obj : error LNK2019: unresolved external symbol eoerror_code_dummy referenced in function "public: virtual bool __cdecl yarp::dev::embObjMotionControl::getLastJointFaultRaw(int,int &,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > &)" (?getLastJointFaultRaw@embObjMotionControl@dev@yarp@@UEAA_NHAEAHAEAV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z) [D:\a\icub-main\icub-main\build\src\libraries\icubmod\embObjMotionControl\embObjMotionControl.vcxproj]
2021-12-15T16:35:06.7288058Z D:\a\icub-main\icub-main\build\lib\iCub\Release\embObjMotionControl.dll : fatal error LNK1120: 1 unresolved externals [D:\a\icub-main\icub-main\build\src\libraries\icubmod\embObjMotionControl\embObjMotionControl.vcxproj]
Could you please fix it?
This PR aims to complement the work done to address: robotology/community#561 , in which the feature request involved communicating the latest fault to the
yarpmotorgui
. To address it, a new interface was created in YARP to retrive the latest fault code and a message string.Here, the implementation of the fault state retrieval is proposed by adding the definition of
getLastJointFaultRaw
inembObjMotionControl
. The exposed error code and message string corresponds to the errors in the category Motion Control:See the attached video for a small demo:
145057677-9b9af4e4-94ae-497c-a74e-dec12718574f.mp4
Related PRs:
icub-firmware:robotology/icub-firmware#224
icub-firmware-shared: robotology/icub-firmware-shared#52