-
Notifications
You must be signed in to change notification settings - Fork 14
troubleshooting
If you have a problem, check below if it is already answered. If the steps don't help, please ask in MS Teams.
Try these things in order:
-
Never forget to source after building:
cd ~catkin_ws && source devel/setup.bash
(or justs
in the container) -
Clean and rebuild your workspace:
cd ~catkin_ws && catkin clean -y && catkin build
-
Run
o2ac-build-catkin-workspace
(this builds both workspaces). -
Run
o2ac-reset-catkin-workspace
(this cleans and rebuilds both workspaces). -
On the host computer, run
cd ~/o2ac-ur && git submodule update --init
and retry from step 3.
Are you using the newest changes in the develop branch? Did you rebuild the docker image? Have you tried cd ~catkin_ws && catkin clean -y && catkin build
(this removes old build files and starts fresh)? In the host PC, have you initialized your submodules on the host PC (not inside the docker container) by executing cd ~/o2ac-ur && git submodule update --init --recursive
?
Also, try o2ac-reset-catkin-workspace
once again.
- Newly installed drivers and software need to be added to the installation commands in the dockerfile for our shared environment. Add the installation commands near the bottom of the Dockerfile so that the previous instructions can be reused.
- You need to restart the docker container when you plug in a new USB device:
docker restart [container_name]
(press tab to auto-complete)
If you just cloned the repository on a new machine, you may need to run rosrun o2ac_parts_description generate_urdf_from_meshes.py
and ... generate_assembled_piece.py
?
Inside docker, run o2ac-fix-permission-issues.sh
(press tab to auto-complete)
Explanation: When files are created inside docker, they belong to the user "root". The host computer does not have the rights to those files. The script sets the host PC's account as the owner of the files.
Your graphics driver is not configured correctly.
- Do you have an Nvidia GPU? If not, follow these instructions
- Have you checked out the develop branch and followed all the installation instructions, including the new install scripts?
- Are you putting "sudo" in front of any commands where it does not belong? You should enter the container without sudo.
- If you enter "echo $DOCKER_RUNTIME" on the host, what is the result? It needs to be "nvidia" if you are using a GPU and "runc" if you do not have an nvidia GPU. You may need to update it in your ~/.bashrc file.
Did you enter the docker container in all terminals? Are all the hostnames in /etc/hosts set correctly? What is ROS_IP set to?
If you are connecting a new machine to the system, this is related to the network configurations. Are all the hostnames entered in the /etc/hosts
of each machine? Is /etc/hostname
correct? Does echo $ROS_MASTER_URI
point to the hostname of the PC running roscore (there can only be one)? Also check ROS_HOSTNAME, ROS_IP.
Confirm that the "Speed" setting on the pendant is set to 100%. If that does not fix the problem, power off the robot and restart it. If that does not help, reset the robot to its factory settings.
ERROR: Couldn't connect to Docker daemon at http+docker://localhost - is it running?
Your user account is probably not in the "docker" group. Follow these instructions: https://askubuntu.com/questions/477551/how-can-i-use-docker-without-sudo
To do a clean rebuild of both workspaces (takes 7+ minutes), run o2ac-reset-catkin-workspace
.
If that does not help, consider asking for help, or rebuilding the docker image from scratch (pass the --no-cache
argument and/or run docker system prune
after removing the container). This takes a long time.
- Unplug/Replug the USB cable.
- Verify that the camera is plugged on a USB3.0 port. If the Realsense camera doesn't show up with
dmesg | grep Real
on the host then the cable might have a problem. You can also userealsense-viewer
on the host. - If none of the above works and realsense is not installed on the host. Install the realsense camera on the host following the instruction and test that the installation went well with realsense-viewer.
- After reboot, the camera might not work. In this case type the command
sudo modprobe uvcvideo
- Test
realsense-viewer
on the host and it should work again. - If it's working, restart the docker so that the change in the kernel are effective inside the docker too.
- Try
realsense-viewer
inside the docker and it should work.
- If you have connection problems, make sure the WiFi is turned off on both machines (the Panda desktop and the master PC (
o2ac-ur
)) - If the joints cannot be unlocked or something is wrong, restart the end effector.
- If an error is displayed, either restart the controller with
roslaunch franka_control osx_franka_control.launch
or call the error recovery function as shown ino2ac_routines/src/panda_control.py
- Can you ping the robot at its IP? Does its network connection look active? The cable may need to be unplugged and plugged back in after starting up the robot.
- Did you start the
external_control
program on the teaching pendant? The line "Robot ready to receive control commands" needs to appear in the terminal. - If the joints are purple in Rviz, this means that the joint limits are exceeded. Check the teaching pendant if the joints are overextended or have an additional rotation.
- The robot needs to be put into
Remote Control
mode, otherwise it will not execute scripts sent to it. It seems thatconnect_real_robots.launch
also needs to be restarted after activating remote control mode on the robots.
The Wireless connection is taking higher priority than the ethernet for the robots' IP address range. We had this problem when the robots were on 192.168.0.x and 192.168.1.x address ranges, and the subnet mask was set to 255.255.0.0. Apparently the problem was that the wifi had the 192.168.0.0/24 network and the ethernet the 192.168.0.0/16 network. The former is more specific, so it always took priority.
We solved this by setting all the robots and desktop PCs to the 192.168.1.X range and setting the subnet mask to 255.255.255.0 on the wired connection.
Is the USB hub connecting the tools turned on? Press the ON button on the hub.
Add " --no-cache" to the last line of BUILD-DOCKER-IMAGE.sh
and execute it once. Don't forget to remove it afterwards.
Most likely, your Nvidia graphics driver is not working correctly. Try following these, making sure that the nouveau
driver is not selected:
https://linuxconfig.org/how-to-install-the-nvidia-drivers-on-ubuntu-20-04-focal-fossa-linux/
https://askubuntu.com/questions/363200/e-unable-to-correct-problems-you-have-held-broken-packages
If you are running the realtime kernel, make sure that echo $DOCKER_RUNTIME
returns runc
(by running export DOCKER_RUNTIME=runc
) on the hostß