-
Notifications
You must be signed in to change notification settings - Fork 18
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
Unable to connect to multiple remotecontrolboard clients on MacOS #186
Comments
I tried also with a different project that connects to multiple robots and I am getting the same error. |
cc @Yeshasvitvs @diegoferigo |
I think the original intuition by @barbalberto in the comment in robotology/yarp#1850 (comment) may be a good hint. Nevertheless, to have something more actionable, I think you should proceed as in the following. As nothing changed recently in WB-Toolbox or BlockFactory, indeed a change of YARP can be a good candidate for creating this issue. First of all, find a YARP commit that is working fine, based on your original comment I would try to see if YARP v3.2.2 is working fine instead. If that tag is working fine while v3.3.1 is not working, then we are on a good track. Between v3.2.2 and v3.3.1 there are ~280 commits (see robotology/yarp@v3.2.2...v3.3.1), so by using git bisect it should just take ≈ log2(280) ≈ 9 tests to actually find the commit that introduced the problem. |
For simplify the debugging, it would also be useful to have a Wireshark dump of the loopback traffic when you get this error. |
From a preliminary test I found out that is not working with YARP |
If you are taking bets, I would put my money on robotology/yarp@1c1d01b or robotology/yarp@6476dcf . |
Unfortunately, after moving around with the commits I was no longer able to have it working (not even with |
I discovered that if I compile |
Mhh, it could be something strange in the build system. It is probably a good idea to test each commit from a clean build. |
Two things that I forgot:
|
I did test with clean build of different commits and releases (recompiling
Unfortunately this seems to me to be the most likely condition, I will report soon the output of some test remaining showing this condition. |
The following results have been obtained, trough different runs in chronoligical order, with
|
Similar with the previous comment, those are some test with
So it doesn't seem to be much related to the YARP version |
At this point, I think the problem is some yarpserver race condition that has been part of yarpserver for a long time, and for some reason (that could also be related to something on your PC) you are noticing it only now. |
I agree it is some kind of race condition, but would you exclude is something related to I tried to debug a bit understanding where is is failing in
you can see this events in the following output (search for
aren't this sequence of events and the fact that the second model is initialized twice, strange? |
Today I have tested the same code with the following configuration: and I didn't experience the failure. Further investigation should be done in order to understand if the problem is related to Matlab version or OS. |
Adding some note on debugging the error, the error appears in the
|
The configuration seems correct, I confirm. As discussed in the previous days f2f, did you have the chance to extend the test done in #186 (comment) and try an Ubuntu machine with the new 2019b Matlab version? In this way we know that the problem is not related to the Matlab version you have on your computer nor Ubuntu. The only difference therefore is MacOS, and we can limit the debugging to the portions of code (or loaded libraries) of the OS. Another try, as discussed, could be trying to switch on / off ACE in YARP (I think it's on by default). On Ubuntu I know it can be done and everything should work even without ACE, I'm not sure if it can be done also on MacOS. |
I will procede with this tests
I don't see any In addition, I did some check with the debugger, and I have found out that the second initialisation of wb-toolbox/toolbox/library/src/SetReferences.cpp Lines 276 to 282 in f110c4b
this explain hence the presence of two initializations for iCub2
|
The option is |
Good catch! Thanks GDB :) |
|
The compilation is failing when
|
Ok, in MacOS you must have ACE. It was worth trying. |
Jumping back in this old issue, I have now worked for some time on Simulink models with multiple remotecontrolboard with different OS and Matlab version. I keep experiencing the same problem on MacOS, while it never happened on Ubunt. |
Actually, I think the same problem is happening also in presence of a single robot but with "heavy" models. Today I was running a model which attaches to the control-board of a single icub running in simulation, runs a state-machine and a QP-based controller, and opens other yarp port using WB-toolbox block, and I was getting the following error in the Simulink diagnostic, which seems same as what observed above.
Here are the full logs: @nunoguedelha I don't know if you followed the discussion back in time. As a MacOS user, have you ever experienced this problem? |
Hi @lrapetti , just saw your comment now, sorry. I had indeed an issue last year, somewhat similar, not sure it's the same though. I'll send you the link. We can discuss on Monday. |
Thanks @nunoguedelha, let me know if you want to have a chat regarding this issue |
Description
I am trying to run a Simulink project using WBToolbox to control two robots in a Gazebo simulation. The project was working a couple of months ago (in the middle for sure I updated
YARP
to more recent versions, and eventually other folders, not sure of all the changes) but now I am no longer able to have it running. Commenting out one or the other robot the project is working, but when I try to run it with both the robots, it is failing giving following errors:(full terminal and Simulink diagnostic output can be found below)
The problem is somehow similar to robotology/yarp#1850.
Additional context
Simulink configuration
Outer view of the Simulink project:
Each robot block contains the
Config
and the WBtoolbox boxes as in the following pictureFor each robot I have a different configuration:
terminals outputs
Matlab terminal:
Simulink diagnostic
yarp name list
. outputAdditional information
MacOS 10.14.6
3.3.1
master
(114ac0e)2019b
The text was updated successfully, but these errors were encountered: