-
Notifications
You must be signed in to change notification settings - Fork 53
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
FRI >= 2: Invalid commanded_joint_position state interface #181
Comments
hi @OmidRezayof, thanks for sharing. Let me try to answer the questions that can be answered first: Why is the connection not established?Quick fixRemove this line:
What causes this errorFRI [ros2_control_node-2] missing state interfaces: Recent changes to this repository attempt to handle all FRI versions equally. This bug needs to be fixed still. Where is the connection established?The system interface runs the connection here:
The lbr_fri_ros2_stack/lbr_fri_ros2/src/app.cpp Line 105 in a752eb2
License / legal?You can check KUKA's license note in the FRI files. From FRI |
hi @fredRocs, could you please do me a massive favor and try connecting your robot? See if you get a similar error? |
Thanks @mhubii for your reply! |
Sorry about that. Will fix this proper soon. See the error: expected 7, got 6? There is a line in the code that requires changing to 6: This hiccups is caused by changed code. Thank you again for this valuable feedback @OmidRezayof ! If you could create a PR to fix these sooner, I am happy to review. |
No need to apologize @mhubii I really appreciate your support. |
It seems to work fine on my side when I run ros2 launch lbr_bringup bringup.launch.py sim:=false ctrl:=joint_trajectory_controller model:=med14. The signal stays EXCELLENT |
Dear @mhubii The final comments that I made on this issue thread were:
|
okay great. Thanks for the PR. In your version of the fri_configuration_ = FRIConfiguration.createRemoteConfiguration(lbr_, "172.31.1.148"); This IP should match your computer's IP address. For example, you can:
|
Yes, I'm indeed using the same IP (.148) for my PC and am choosing the same on the SmartPad. Still not sure why the robot cannot find the communication line. |
no problem. Your changes are fine. NetmaskOne thing is to check the FirewallSome people have reported firewall issues in the past: Demo applicationsIf an updated netmask does not work, I would suggest to try and run KUKA's demo applications with the raw FRI (no
To run them, check the IP in the Please let me know if any of these help @OmidRezayof |
On sunrise, I can see 2 subnet masks: On my PC I have also tried using net masks of 255.255.0.0 and 255.255.255.0 Still connection not established. I have tried disabling firewall; didn't work either. I will be trying their own example applications soon. Update: I tried to first build the fri package as in here and I got the error: I have also made a new branch for fri-3.0 with the codes in it and sent a PR so you can see and edit the codes. I really and greatly appreciate all of your support and will be waiting to hear from @mhubii back. Thanks again. |
NetmaskYour netmask looks good. For the different ethernet connections:
Expected 2.5, found ...To check all the FRI versions in their https://github.com/lbr-stack/fri/blob/269ea63e5566a06cf11a768db61abf8442d96e70/CMakeLists.txt#L56 We extract the FRI version through a regular expression: https://github.com/lbr-stack/fri/blob/269ea63e5566a06cf11a768db61abf8442d96e70/CMakeLists.txt#L50 This is simply a check, to verify contributors upload the claimed version. In your case (for testing purposes), you can simply remove this check or put https://github.com/OmidRezayof/fri/blob/f7baad7bb2cb6d990a0943d85becce6ac206794b/CMakeLists.txt#L56 Just make sure you use your Out of curiosity, can you share KUKA's license note from one of the header files? |
@mhubii I finally got the permission from my PI to share the fri 3.0. PS the license wasn't the issue I just had to get the permission from my boss. |
okay FRI This might remove your contribution from the git history. Could you please re-open a new PR with the same changes against this branch: https://github.com/lbr-stack/lbr_fri_ros2_stack/tree/dev-humble-state-interface-fix Want to make sure your contribution is rightfully attributed. |
Hmm, not sure why 2.7 because it has been mentioned as 3.0 on all their documentations and everything. |
For If you check any of the headers, you will find: I'll simply mention you as a maintainer in the |
@mhubii I tried running the example application and I was getting all kinds of different errors on my PC every time I run the LBRJointSineOverlay.java on the smartpad: I suspect this is an issue with the new released fri package cuz when I downgraded to Sunrise 2.6 and fri 2.5, I didn't have this problem. |
Ah okay great, well this issue here still needs fixing, will merge your contribution asap. I would contact KUKA because there appears to be some version mismatch between the FRI client SDK (2.7.0) and what is on the controller. This might be a bug on their end? |
Sorry for my late reply. I'm not super sure what is exactly the version mismatch that you are talking about. It could be potentially that the CMake support codes that you have written for fri<=2.x is not suitable for compiling fri-3.0? I have no idea but I wasn't able to run KUKA's example fri codes using the fri-3.0 SDK so I'm assuming it's either a KUKA issue or an issue from the CMake compatibility codes. |
thank you again @OmidRezayof for your contribution! You should now be listed for your efforts. I am closing this as the initial issue was resolved. As for the FRI, I opened a new issue here: lbr-stack/fri#29 Please make sure to pull the latest changes. When running, make sure to specify your FRI version here
Happy to dig further into FRI 3 / 2.7, as it appears this is the cause of the connection issues (either CMake or what not). Wish you a good weekend! |
Hi,
I'm using an lbr med 7 R800 with FRI med 3.0. Unfortunately I was not allowed by my manager to contribute the package to the community due to legal issues.
I cloned everything as explained in the start up guide and followed the step by step guide to first run everything with FRI 2.5 using the simulators and things looked fine.
After, I replaced the FRI-Client-SDK_Cpp.zip with my new zip file and had to make some changes to the LBRServer.java to meet the new syntax requirements (things have been changed slightly between FRI 2.5 and 3.0). I rebuilt the package as well after replacing the zip file.
Finally LBRServer.java looks to run without errors on the smart pad. However, when I try to run the demos with the real hardware, the LBRServer app on the smart pad gives the error: "Timeout before FRI connection quality reached GOOD or EXCELLENT" after 10 seconds. I suspect that the UDP connection responsible for the FRI connection is not getting started thus getting this timeout error.
(I have checked the connection between the robot and PC by pinging the robot.)
I tried to look into the example codes but I wasn't able to find the place that the UDP connection is initiated (i.e. I'm not sure where the App and AsyncClient are being called when trying to tun "Joint Trajectory Controller" python demo.)
I have also attached a picture from my terminal which looks like the UDP connection is not getting started for some reason.
I would greatly appreciate any help.
The text was updated successfully, but these errors were encountered: