Skip to content
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

Implementation of ICub device #25

Merged
merged 36 commits into from
Aug 13, 2019
Merged

Implementation of ICub device #25

merged 36 commits into from
Aug 13, 2019

Conversation

lrapetti
Copy link
Member

@lrapetti lrapetti commented Feb 7, 2019

Cleaned PR starting from #16.

For the moment I am leaving the original commits, in case we may prefere to squash them.

devices/ICub/include/ICub.h Outdated Show resolved Hide resolved
devices/ICub/src/ICub.cpp Outdated Show resolved Hide resolved
devices/ICub/src/ICub.cpp Show resolved Hide resolved
bool firstRun = true;
mutable std::mutex mtx;

using yarp::os::BufferedPort<yarp::os::Bottle>::onRead;
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Did you try to switch to using yarp::os::BufferedPort<yarp::os::Vector>::onRead;? If it works, reading the message will be more robust.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

cc @Yeshasvitvs @lrapetti

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

if I try to switch here to using yarp::os::BufferedPort<yarp::sig::Vector>::onRead;, I am getting the following:

[ 84%] Building CXX object devices/ICub/CMakeFiles/ICub.dir/src/ICub.cpp.o
/Users/lrapetti/robotology-playground/wearables/devices/ICub/src/ICub.cpp:47:11: error: 
      using declaration refers into
      'yarp::os::BufferedPort<yarp::sig::Vector>::', which is not a base class
      of 'WrenchPort'
    using yarp::os::BufferedPort<yarp::sig::Vector>::onRead;
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
make[2]: *** [devices/ICub/CMakeFiles/ICub.dir/src/ICub.cpp.o] Error 1
make[1]: *** [devices/ICub/CMakeFiles/ICub.dir/all] Error 2
make: *** [all] Error 2

devices/ICub/src/ICub.cpp Show resolved Hide resolved
devices/ICub/src/ICub.cpp Outdated Show resolved Hide resolved
devices/ICub/src/ICub.cpp Outdated Show resolved Hide resolved
@diegoferigo diegoferigo removed the request for review from lucaTagliapietra February 8, 2019 13:07
@diegoferigo diegoferigo closed this Feb 8, 2019
@diegoferigo diegoferigo deleted the feature/ICub-device-impl branch February 8, 2019 14:08
@diegoferigo diegoferigo restored the feature/ICub-device-impl branch February 8, 2019 14:09
@diegoferigo diegoferigo reopened this Feb 8, 2019
Copy link
Member

@diegoferigo diegoferigo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Almost done in my opinion beyond previous unresolved comments. Remember to pass this file through clang-format before merging.

devices/ICub/src/ICub.cpp Outdated Show resolved Hide resolved
@yeshasvitirupachuri
Copy link
Member

Why not using the RemoteControlBoardRemapper? This would mean that here a controlled joint list should appear, and 1) in this way you avoid handling individual control boards and 2) it would allow to stream only a subset of joint measurements instead of all joints.

If I understood well, the RemoteControlBoardRemapper will identify all the control boards present without the need to explicitly state the control board names in the config file?

@yeshasvitirupachuri
Copy link
Member

Since this can be used for generalized joints, I would call it m_position.

Done

@yeshasvitirupachuri
Copy link
Member

SensorPtr

Done

@yeshasvitirupachuri
Copy link
Member

Why not using the RemoteControlBoardRemapper? This would mean that here a controlled joint list should appear, and 1) in this way you avoid handling individual control boards and 2) it would allow to stream only a subset of joint measurements instead of all joints.

If I understood well, the RemoteControlBoardRemapper will identify all the control boards present without the need to explicitly state the control board names in the config file?

Following the discussion with @diegoferigo we can change to using RemoteControlBoardRemapper at a later stage and stick with remote_controlboard for the time being.

@diegoferigo
Copy link
Member

I did a mess with these comments, I forgot that this PR was open and instead of doing a review I commented the file of the commit 😅 Anyway:

If I understood well, the RemoteControlBoardRemapper will identify all the control boards present without the need to explicitly state the control board names in the config file?

You avoid using the pair control board index + joint index in the control board. You just use the joint name. Simple clear.

Following the discussion with @diegoferigo we can change to using RemoteControlBoardRemapper at a later stage and stick with remote_controlboard for the time being.

Before the merge, possibly ;)

@claudia-lat claudia-lat removed this from the Iteration 21 milestone Apr 12, 2019
@lrapetti
Copy link
Member Author

All the checks are passed.

Following the discussion with @diegoferigo we can change to using RemoteControlBoardRemapper at a later stage and stick with remote_controlboard for the time being.

Before the merge, possibly ;)

This is the only change request still pending.

@Yeshasvitvs @diegoferigo, if you agree I would proceed with merging so that we can unlock other issues.

cc @traversaro @kouroshD

@traversaro
Copy link
Member

I think @diegoferigo is not responsive on GitHub and he already expressed in person his ok with merging the PR, so if you need a quick feedback you may need to contact him via chat.

@diegoferigo
Copy link
Member

I'm off this week and I doubt I can do a last pass on this PR before my return. As said last time, if the remote control board remapper is postponed, this PR is good to go. Please open an issue to keep track of this task.

If there are any questions please be specific and point me to the code so thatI can have a look with the phone.

@yeshasvitirupachuri
Copy link
Member

@lrapetti ok for me

@lrapetti
Copy link
Member Author

I'm off this week and I doubt I can do a last pass on this PR before my return. As said last time, if the remote control board remapper is postponed, this PR is good to go. Please open an issue to keep track of this task.

issue opened at #49

@lrapetti lrapetti deleted the feature/ICub-device-impl branch October 3, 2019 09:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants