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

Update startup_WBC.m and startup_robotology_superbuild.m #75

Closed
gabrielenava opened this issue Oct 10, 2019 · 8 comments
Closed

Update startup_WBC.m and startup_robotology_superbuild.m #75

gabrielenava opened this issue Oct 10, 2019 · 8 comments
Assignees
Labels

Comments

@gabrielenava
Copy link
Collaborator

I understood that adding the wbc library using the startup file is not really straightforward, even if it is documented. In particular, it is not a straightforward procedure for who installed this repo through the robotology-superbuild, that is the majority of the users. Maybe we can find alternatives for adding the wbc folder to the matlab path.

@gabrielenava
Copy link
Collaborator Author

I would like to have the possibility to independently configure WBC without the superbuild, while on the other hand we need to simplify the installation procedure in case the repo comes along with the robotology-superbuild. I think we can proceed as follows:

  • add to the startup_robotology_superbuild.m file in the robotology-superbuild the path to +wbc package
  • document somewhere that when running thestartup_robotology_superbuild.m file also the +wbc package is added to the Matlab path.

Menawhile, we also leave the startup_WBC.m file in this repo, and in the README will be documented to use it only when the repo is not installed through the robotology-superbuild.

@gabrielenava gabrielenava changed the title Investigate if it is necessary to remove StartupWBC.m Update StartupWBC.m Mar 16, 2020
@gabrielenava gabrielenava changed the title Update StartupWBC.m Update startup_WBC.m and startup_robotology_superbuild.m Mar 18, 2020
@gabrielenava
Copy link
Collaborator Author

To comply with the workflow of the robotology-superbuild, I think it is better if the +wbc library is installed and then Matlab links to the installed files. Note that the very same pipeline is done in mex-wholebodymodel and for the iDyntree-high-level-wrappers, while whole-body-controllers library still points the source code instead of the installed one.

Documentation has also to be updated accordingly.

@gabrielenava
Copy link
Collaborator Author

No, actually I think the current pipeline is better for handling also the installation of the goToWholeBodyControllers.m file. I'll open the PR to the robotology-superbuild.

@gabrielenava
Copy link
Collaborator Author

PR open: robotology/robotology-superbuild#367

@traversaro
Copy link
Member

Menawhile, we also leave the startup_WBC.m file in this repo, and in the README will be documented to use it only when the repo is not installed through the robotology-superbuild.

Note that you can also think of installing the startup_WBC.m script, and then call that from the robotology superbuild script. Just a question: why we don't install the +wbc directory directly to the <install_prefix>/mex directory as we already do with YARP and Matlab so there is no need to modify the matlab path?

@gabrielenava
Copy link
Collaborator Author

Note that you can also think of installing the startup_WBC.m script, and then call that from the robotology superbuild script. Just a question: why we don't install the +wbc directory directly to the <install_prefix>/mex directory as we already do with YARP and Matlab so there is no need to modify the matlab path?

I was going towards this direction (see the outdated comment #75 (comment)) because I don't like the fact that the library is not installed, however then I have no clue how to handle the goToWholeBodyController.m script.

That script should point the absolute path of the source folder, where the Simulink models are. So if we proceed as follows:

Note that you can also think of installing the startup_WBC.m script, and then call that from the robotology superbuild script.

I still need to somehow get the path to whole-body-controllers source folder inside the startup_WBC.m script, so that I can generate the goToWholeBodyController.m script. So I cannot get rid of the source path as commented here.

@gabrielenava
Copy link
Collaborator Author

gabrielenava commented Mar 20, 2020

I've decided:

  1. install the library in the mex folder;
  2. install startup_WBC.m in the mex folder (to be used in the wbc not in the superbuild workflow);
  3. revert modifications of startup_robotology_superbuild.m (but not the comments and the removal of mex-wholebodymodel paths);
  4. add a separate script in the whole-body-controllers source folder to create the goToWholeBodyControllers.m script;
  5. when launching startup_robotology_superbuild.m or startup_WBC.m, print a message saying that there is the possibility to link the folder where pathdef.m is installed with the source folder of wbc through the creation of the goToWholeBodyControllers.m script, and for that you have to check inside the WBC source code;
  6. document all these modifications in the READMEs.

@gabrielenava
Copy link
Collaborator Author

With ac4a437 the wbc library is now installed in the /install/mex folder. All the documentation has been updated accordingly. The file createGoToWBC.m generates the goToWholeBodyControllers.m script. It is not installed, but just advertised inside the startup_WBC file.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants