0
$\begingroup$

I have a Clearpath Husky A200 with two choices for the control PC

  1. Intel NUC (amd64) does not have a DP9 port by default but can be added
  2. Jetson Orin NX (arm64) having serial connections on board

I know that officially clearpath does not support arm64 architecture for husky at the time of writing this post. But I wanted to ask, is it possible to just connect with husky's MCU and see the green light on COMM without using the USB-RS232 serial converter cable.

My current setup details are as below.

  1. Using Jetson Orin NX with Jetpack 6.0 (Ubuntu 22.04 + ROS2 humble installed)
  2. Using the ports at jetson's back (tx, rx, and gnd) as per instructions here to connect with rx, tx, and gnd respectively to DB9 male to female extension cable Jetson to husky connection
  3. I used the pinout information from: for jetson and page 7, female DB9 connection from Clearpath Communication Protocol In this way, TX is connected to RX and vice-versa.
  4. I also noticed that the clearpath package expects the port to be /dev/clearpath/prolific. The clearpath directory was not present. So, I made a symlink to /dev/ttyTHS1.

For arm64, not all ros-humble-clearpath-* packages are built. So, I built the ros packages from source without errors.

However, I don't see any successful connection to the robot's MCU.

Below is my partial robot.yaml file. Rest is the sensor information that I don't care as of now.:

serial_number: a200-0000
# serial_number: a200-0524
version: 0
system:
  username: nvidia
  # username: administrator
  hosts:
    # - hostname: cpr-a200-0000
    - hostname: echo-jetson-orin-nx
      ip: 192.168.131.1
  ros2:
    namespace: a200_0000
    # namespace: a200_0524
    domain_id: 0
    middleware:
      implementation: rmw_fastrtps_cpp
    workspaces: ['/home/nvidia/ros2_ws/install/setup.bash']

I didn't see any systemctl service log that provides any error information about being not able to connect with the MCU.

I found another post where people faced similar issue (I guess they used usb to serial cable) but were turned down by the support people at the end.

Does anyone know, is it even possible to totally avoid the usb to serial cable and use RS232 directly instead? If yes, how could I debug further and solve this?

If not, I think I have to use the only Prolific USB to RS232 cable that I have for which drivers are not enabled in Jetpack 6.0 by default (might require kernel modification perhaps).

$\endgroup$
0

1 Answer 1

0
$\begingroup$

I solved it by using a straight through RS232 cable and setting up the required port just like it could be done for USB-RS232 converter. The catch was to find out the right serial port on the jetson which can be found using a simple loopback test. In my case, it turned out to be /dev/ttyTHS3 instead of /dev/ttyTHS1. A tip, try all /dev/ttyTHS* as they could change over different jetpack versions :( Also, my jetson is this instead of the one I posted in the question with 2 LANs.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.