JACKAL-OUSTER-ZED Quick Guide

Jackal-Ouster-Zed

This post is a quick and compact guide for working with the Jackal.

The Jackal (differential robot) is an indoor compact development platform of the Canadian manufacturer Clearpath Robotics. ROS Noetic is commonly pre-installed in this unit.

Jackal Informative Links

Quick Start

The robot is turned on via the power button, and the start-up of the Jackal with the ouster and zed2 may take up to a minute to start.

The green light in the M means that the MCU has successfully started, and the directional arrows mean that it is now able to receive commands from the on-board PC.

Depending on the configuration of the Jackal, auxiliary sensors software drivers such as LiDar may start with the robot but often do not run as disconnection or damage of the wire of the sensor can cause the robot to not startup.

For software remote connection, the robot has to be accessed once to configure the WiFi network. Configuration can take place in one of two methods, the first being via the static network connection and the second being through the screen, where the screen method is much quicker and easier for clients to set up.

Jackal Static Network Connection

For the first time, one needs to connect through a LAN cable to configure the robot’s WLAN network.

To create a static connection in your own PC (not the Jackal), in Ubuntu go to Settings → Network then click on + and create a new connection.

  1. The first task is to go to IPv4 and change the connection to manual.

  2. The second task is to put the Address IP as 192.168.131.1 (may differ from robot to robot) and the Netmask as 24.

Click save and restart your network. Next is to open up the Jackal as shown, and connect the LAN cable to the robot.

After a successful connection let’s check the host’s local IP by typing in the Host PC’s terminal.

ifconfig

This should show the host IP which was assigned in the above step. Now its time to check if we can ping the robot or not, to do so type in your host pc

ping 192.168.131.1

After a successful ping, it’s time to access the robot. To access the robot you can type the following command:

ssh -X administrator@192.168.131.1

The password is

clearpath

Note:
Some of the Jackals have the default DHCP connections. For these cases, you may either use the second method of connecting to Jackal as mentioned below or not make a static connection and just run the command nmap -sP 192.168.0.*`. This command will scan all available networks in the range of .0. Once you’ve identified the network of the Jackal, you can connect via ssh.

Jackal Screen Connection

An alternative for connecting to the Jackal is by plugging in an HDMI cable as well as a mouse and keyboard. This will allow you to connect the Jackal to your own local WiFi network and then you can connect later over the WiFi.

Jackal PC

The procedure is simply to go to your networks and add your WiFi. Then in the terminal type:

ifconfig

The IP that comes with the initial characters of wl is your WiFi’s IP. e.g. wlps0. With this IP you can SSH to your robot.

ssh -X administrator@192.168.0.228
clearpath

192.168.0.228 is just an example of this. IP is taken from the ifconfig.

Network

This robot has an industrial-grade computer on board with the MCU port being on 192.168.131.1, and the Hokuyo Lidar port being on 192.168.132.1.

Device Network
Jackal 192.168.131.1
Ouster Lidar 192.168.132.2

Jackal Software

The Jackal drivers configured by MYBOTSHOP are located in the catkin_ws. In the src folder, the third_party contains the drivers for the Jackal as well as any auxiliary sensors such as the Ouster Lidar and ZED2 camera.

For a configuration of auxiliary sensors, the following link provides useful information, especially for navigation. As requirements vary from user to user, the setup has been left as default and the users can specify their own parameters in their own custom package.

Start-up Job

The Jackal ordinarily utilizes Clearpath startup job unless otherwise specified. In case there is an issue with the robot not starting up. One can ssh into the Jackal and verify if the startup job is working correctly.

sudo service mbs_jackal status

The red marker in the service indicates that the startup job has failed. Green indicates everything is working correctly. Grey indicates that the service has not started yet. In case of red or grey marker, you may restart the service via:

sudo service mbs_jackal restart

The launch file mbs_jackal.launch includes everything which is being launched at the startup (Located in mbs_jackal_startup). This file can be updated to include all the nodes needed to run at the startup (e.g. your own packages). Once you add your custom node or launch files in the mbs_jackal.launch, you will need to run the following script so that it updates the start-up job on Jackal’s PC; to run with the newly updated mbs_jackal.launch.

rosrun mbs_jackal_startup startup_script.sh

Ouster Lidar

The Lidar drivers are started via:

roslaunch mbs_ouster ouster.launch

Configuration is available in the mbs_ouster/ouster.launch file.

ZED2

For the ZED2, an onboard Nvidia Graphics card is installed. The drivers are commonly built and provided in the third_party in the catkin_ws. Depending on the version of the ZED2 camera, you may launch the following:

roslaunch zed_wrapper zed2.launch
roslaunch zed_wrapper zed2i.launch
roslaunch zed_wrapper zed_no_tf.launch

If you have dis-plugged the camera, be sure to re-attach it USB3.0 otherwise it does not detect the camera.

Instructions for use are given in:

Debugging Controller

Some quick useful commands in case there is an issue with the joystick is to ssh into the robot and teleoperated it via:

rosrun teleop_twist_keyboard teleop_twist_keyboard.py

Hello Daniel,
Hope you are doing well. Today I tried to setup wired connection to the Jackal with our lab laptop and it does not seem to connect. (Ethernet en01 is successful, while Ethernet enp2s0 does not establish a connection)
I have attached few images for your reference (from Jackal computer)

I can ping but not connect via SSH as it tells port22:refused. We have connected it via USB-ethernet adaptor to a laptop and also via direct ethernet to a desktop. Please help.

Thanks,

Prag

Dear @pragadeesh1510,

Have you tried connect via the screen, the 131 and 132 are for the ouster and jackal that are pre connected. With the screen you can connect the jackal to your WiFi and access it via your network .

Alternatively, you can connect via Ethernet with a static connection of 192.168.0. 100 and run the command nmap -sP 192.168.0.* and see the jackal’s ip after which you van ssh into that ip. This is mentioned in the note section.

Hello Sohail,
Thank you for your response. I don’t understand by the term screen. Can you please let me know in detail.
Also could you please share the ethernet IP configuration details for Ouster and Jackal (wired connection 1, connection 2) we did some changes to wired connection 2 thinking it was the ethernet for desktop. May be that’s the reason wired connection 2 failing. So it would be helpful if you could send this over.
Looking forward to hearing from you.

Thanks,
Pragadeesh

Dear @pragadeesh1510,

By screen connection, I mean to say that you have to connect any computer/LCD screen using an HDMI cable to Jackal’s Nvidia GPU port. Also, you have to attach a mouse and a keyboard as well.

17ad87e3e97dab9b6686ffbac75f9233873188a5_2_666x500

The right arrow is for the HDMI cable and the left arrow is for the mouse and keyboard. Once connected, you will then be met with the Ubuntu OS where you configure the WiFi via the GUI.

You cannot change the IP configuration of the Jackal without SSH’ing into it or interfacing with the screen. As long as it is in the correct port, it should work fine.

Hello Sohail,
Thank you for your message. I thought by screen meant a method. I have already connected a portable monitor to Jackal and the images that I have shared earlier, everything is from the screen that was connected to the Jackal.
If you see this image you can see that enp2s0 shows connection failed (because of change of IP).


Please let me know your thoughts

Can you share the last lines in the .bashrc file.

Also, can you share the results of the ifconfig command.

One more thing, at this point can you see the ousters point cloud?

Also the contents of the .bashrc

For the second port you can make a static connection of 192.168.131.1 with port 24. Like, once you connect to it the ethernet then you can ssh into it with ssh -X administrator@192.168.131.1 also it seems that you have not connected to the WiFi network.

Static connection guide

Connection type: Manual
IP: 192.168.131.1
Port:24
DNS: (empty)

Have you tried this solution?

Static connection guide

Connection type: Manual
IP: 192.168.131.1
Port:24
DNS: (empty)

Hello Sohail,
Have tried with static connection, it displays the same 2 errors, port22:refused / unable to reach host.

please make sure that ssh is installed both on your PC and on the jackal

sudo apt-get install openssh*

Once connected to the ethernet port. Please ping the Jackal from your PC via:

ping 192.168.131.1