GPU required

Is it true that ROSbot 2.0 ROS2 implementation requires a GPU on the remote ROS2 system running rviz?

As I recall, this was not the case with ROSbot 2.0 ROS1 implementation. It used a web browser to control ROSbot.

Hi EdSeymore

Could you give more details on how are you running the Rviz on your desktop?
Rviz does not require any GPU to run. It will work much smoother with GPU enabled, especially if you want to display a pointcloud, but the GPU itself is not required.

The web browser approach was rendering everything on the robot, so you did not need anything installed on your computer.

Best regards,
Krzysztof Wojciechowski.

I am trying to follow the intructions from the ROSbot manual:
My difficulty seems to be installing the docker package recommended and the Pre-Requisites.
I believe installing the NVIDIA Container Toolkit requires a GPU.

Ref: ROS2 Demo for ROSbot 2.0 | Husarion

Remote Desktop (optional)
To make use of it you have to ether install tigervnc or use docker containers that
we have prepared. Clone project to your computer and build.

Ref: GitHub - husarion/rosbot-remote: Run RViz and VNC client in your laptop to access ROSbot remotely
Ref: Install Docker Engine on Ubuntu | Docker Documentation
Ref: Installation Guide — NVIDIA Cloud Native Technologies documentation

Using a demo
Once ROSbot launched lidar should begin to rotate and logs starts to pop out on terminal.
At this point to make your ROSbot move or see how map is being created you need to
launch rviz2. We also prepared ready to run docker container with configured rviz2.
Instruction is very similar to this with tigervnc client and if you already cloned the
repository there is no need to do this again.

git clone GitHub - husarion/rosbot-remote: Run RViz and VNC client in your laptop to access ROSbot remotely
cd rosbot-remote/rviz
./build_image.sh
./run_image.sh

Some notes from my efforts:

03/28/22 15:01 install ROSbot remote support on u2004-i7Sts image (again):
- ssh ed@u2004
- x git clone GitHub - husarion/rosbot-remote: Run RViz and VNC client in your laptop to access ROSbot remotely
- already completed
- sudo ./build_image.sh : OK
- Successfully built 8550a951b1a8
- Successfully tagged rosbot_remote/rviz:latest
- sudo ./run_image.sh : NG
- docker: Error response from daemon: Unknown runtime
specified nvidia.

03/23/22 14:44 07 11 Setup NVIDIA Container Toolkit on u2004-i7Sys image:
- sudo apt-get update
- sudo apt-get install -y nvidia-docker2 : NG
- E: Unable to locate package nvidia-docker2
- sudo docker run --rm --gpus all nvidia/cuda:11.0-
base nvidia-smi
- Error response from daemon: could not select device
driver “” with capabilities: [[gpu]].
- Show stopper: NO GPU on i7Sys system, !!!
- Status: NVIDIA Container Toolkit requires GPU.
- Status: ROSbot requires using GPU on remote system. ???

03/18/22 10:51 07 11 Run ROSbot Demo procedure from u2004-i7Sys image:
- ssh ed@u2004
- cd rosbot-remote/rviz/ : OK
- sudo ./run_image.sh : NG
- docker: Error response from daemon: Unknown runtime
specified nvidia.
- nano ./run_image.sh : many references to NVIDIA Why?
03/17/22 17:18 07 11 install Docker on u2004-i7Sys image: OK
- Status: Docker is installed on u2004-i7Sys image.
03/17/22 17:49 07 11 install ROSbot remote support on u2004-i7Sts image:
- cd rosbot-remote/rviz/ : OK
- ./build_image.sh : no permission
- need to run with sudo !!!
- sudo ./build_image.sh : OK

Hi EdSeymore

You forgot to mention first that you are using a docerised version of rviz. In this case, there are two possibilities:

  • if you don’t have a nvidia GPU simply remove runtime: nvidia from docker-compose.yaml file.
  • in case you have a nvidia GPU installing nvidia docker with graphics card drivers should work. Keep in mind that nvidia docker only work on linux.

As I can see from your logs it seems like you don’t have a GPU from nvidia.

Best regards,
Krzysztof Wojciechowski.

Per: ROS2 Demo for ROSbot 2.0 | Husarion

Remote Desktop (optional)

Remote Desktop is a tool enabling user to connect to a computer in another location and see that computer screen and interact using graphical interface.

By default a VNC server is not running on ROSbot. To start VNC first connect via ssh to robot and then execute following command:

sudo systemctl start vncserver.service

Copy

To make use of it you have to ether install tigervnc or use docker containers that we have prepared. Clone project to your computer and build.

sudo find / -name ‘*docker-compose.yaml’ : NF
sudo find / -name ‘*docker_compose.yaml’ : NF