Choice SBC

I am starting to work with robots and ROS 2, and I have two questions:

  1. Which SBC (Single Board Computer) is best suited for using ROS 2?
  2. For which SBC variants are there more tutorials and libraries available?

Hello @ssalimi,

1. Which SBC (Single Board Computer) is best suited for using ROS 2?

The choice of SBC depends on how you plan to use the robot and for how long.

Here are the most important aspects to consider:

  • Computing power
  • Manufacturer’s support for the computer architecture
  • Presence of CUDA cores

Below are the key points for each individual SBC:

Raspberry Pi 4

  • Low Price: Affordable for a wide range of applications.
  • Compatibility: The manufacturer aims to maintain compatibility between successive versions, allowing for cost-effective upgrades.
  • Energy Efficiency: Ideal for low-power applications.

Intel NUC

  • Powerful Processor: Offers superior processing capabilities.
  • Mini Computer: Functions like a full-fledged computer, with the ability to upgrade disk space and RAM as needed.

Jetson Nano Orin

  • CUDA Cores: Equipped with CUDA cores, beneficial for image processing and AI/DNN tasks.
  • Operating System: Uses an OS based on Ubuntu. However, there can be delays in getting the latest Ubuntu version, which affects access to the newest ROS distributions.

Considering all these factors, the Intel NUC appears to be the most future-proof option. Its significant reserves of computing power make it suitable for even the most advanced projects.

2. For which SBC variants are there more tutorials and libraries available?

When it comes to choosing the best learning set, I would choose ROSbot XL in the Autonomy Package version (with intel NUC). ROSbot XL itself, unlike ROSbot 2R/PRO, allows you to easy personalize and modify the connected sensors. Choosing the Autonomy Package allows you to navigate the robot thanks to data from lidar. You can then expand the navigation project with camera data (e.g. object tracking).

Hello, good day. I have a question about the SBC Nvidia Jetson libraries: Are all software and libraries available for free? Also, if I mount another camera, such as an IToF camera, is Nvidia capable of processing the data for image processing?

Thank you for your feedback.

And another question: which software can be installed on NVIDIA Jetson for image processing?

Hello again @ssalimi,

The operating system for Jetson is free and based on Ubuntu. In terms of library availability, it does not differ from regular Ubuntu. Connecting a ToF camera should not be a problem.

When it comes to available libraries, all popular software is available: OpenCV, TensorFlow, PyTorch, NVIDIA VisionWorks.

Let me know if I answered your question.

@RafalGorecki Thank you for your feedback. You have answered my question. As soon as I receive the robots, I will ask you more questions. Thank you for your support.

1 Like

Hello good day,

I recently ordered a ROSbot XL and I am preparing for its setup. I have a few questions:

  • Suitable Ubuntu Version: Which version of Ubuntu is best suited when using the Nvidia Jetson Orin Nano as an SBC? For example, Ubuntu 18.04 is a good solution for using ROS, and your tutorial recommended Ubuntu 20.04, but I want to work with ROS2.
  • Ubuntu Installation: Is Ubuntu 20.04 already pre-installed on the Nvidia Jetson Orin Nano, or do I need to install it myself?
  • Installing the System Image for ROSbot: When I want to install the system image, perform the initial setup, set up the internet connection, and other installations at this level, should this be done directly on the Nvidia Jetson Orin Nano, or can/must I do this on a separate PC or laptop running Ubuntu? I am referring to the steps before accessing the ROSbot’s Linux terminal.
  • Power Supply for ToF Camera: I plan to mount my own ToF camera on the robot, which requires a 24V power supply. Is there a recommended solution for this?

Thank you in advance for your support!

Best regards,

Hello @ssalimi,

  1. Suitable Ubuntu Version
    We tested our solution on JetPack version 5.1.1, which is based on Ubuntu 20.04. Therefore, you can easily install ROS 2 Foxy on it. For configuration information, see How To Start.
    I also see that version 6.0.0 was released a few months ago, which is based on Ubuntu 22.04, so you can install ROS 2 Huble. In that case, you will be able to build the rosbot_xl_ros package locally, especially useful, if you have no experience with Docker. Currently, we do not have instructions for this version (but I think there will be no major differences).
  2. Ubuntu Installation
    We ship the robot with the JetPack SDK 5.1.1 image, so you don’t need to install anything unless you want to upgrade to 6.0.0.
  3. Installing the System Image for ROSbot
    In my experience, the easiest way is to plug in the power supply and connect the Jetson with an HDMI cable to the monitor and configure it. You can do this before you install the computer in the robot.
  4. Power Supply for ToF Camera
    By default, our robot allows you to obtain a voltage of 5V / 12V / 19V. Please check whether 19V is within the voltage tolerance of the camera. More information can be found in the manual.

I hope everything is clear and you will be satisfied with your purchase. If you have any doubts, don’t hesitate to write.

Regards

Thank you for your help and feedback.

1 Like

Hello and good day,

I have a ROSbot XL with an SBC “Jetson Orin Nano” that I received from Generation Robots. Since it came the robot without the JetPack SDK 5.1.1 image, I had to install it myself and followed every step up to “Remote Access.”

I successfully completed the “Accessing ROSbot’s Linux Terminal” option 1, using a display, mouse, and keyboard as you recommended. I then connected the ROSbot to my Wi-Fi network and finished the Netplan configuration, saving my IP address.

After seeing the ROSbot XL running with its version displayed in the terminal via the Wi-Fi network, I could not gain access again using my password. In general, I am having difficulties getting the ROSbot up and running and do not know what the problem might be.

I have another problem: When I turn on the robot, the boot load screen appears, but after that, I don’t get any signal from the HDMI. At the same time, LED2 blinks with a red light, and I don’t see any way to log in as a user. However, the fan on the Jetson is running extremely fast. Could this be because I’m charging the robot while trying to operate the Jetson at the same time?

Regards

Hello @ssalimi, I just sent you a private msg.

Hi @RafalGorecki
Thank you for your feedback.

I went through all the installations again from the beginning, and the initial problem has been resolved. However, a new issue has arisen. There are difficulties when connecting the Logitech 710 Gamepad.

The instructions recommend using the D-mode to control the robot with the gamepad. However, when I follow the GitHub instructions and use D-mode, I receive an error message.

When I switch to X-mode, the controls work in general, but there are still issues. For instance, some buttons don’t function as described in the instructions, and there are limitations with holonomic movement.

I haven’t installed the Husarion joy2twist repository yet, as I want to ensure I’m taking the right steps.

Could you please help me resolve this issue? I would appreciate any guidance you can provide.

Hello @ssalimi,

To keep order, it would be good to move this issue unrelated with the main topic, to a new thread.

The error appears as if the device is not recognized/found in the system. Does the problem occur every time you reset compos? Make sure the dongle is inserted and plug it before running the script.

I don’t currently have access to a joystick to run tests. Could I ask you to run the following instructions on the rosbot:

git clone https://github.com/husarion/joy2twist.git
cd joy2twist/demo/single_robot
docker compose compose.rosbotxl.yaml up