ArduCopter communication issues (TX2 + Auvidea J120 carrier)

Hi all, apologies if this doesn’t belong here but I’m not sure where else to put it since the source of the issue is eluding me. I first posted to the ArduPilot boards but wonder if this is a TX2 hardware issue. Essentially, here’s what’s going on:

  1. I have an OcPoc flight control unit (similar to Pixhawk) running Capter 3.5 and communicating with a RaspberryPi3 via MAVLink at various baudrates with no issues. I can connect from the RasPi to the FCU directly via serial (/dev/serial0) using to see status as well as run MAVROS to stream data via ROS. All working well.
  2. I also have an NVIDIA TX2 with a Auvidea J120 carrier board which I’ve set up the same way as the RasPi and connect to the FCU, however running to connect directly via TX2 serial (/dev/ttyTHS1) at various baudrates always gives me output like:
    Connect /dev/ttyTHS1 source_system=255
    Log Directory:
    Telemetry log: mav.tlog
    Waiting for heartbeat from /dev/ttyTHS1
    MAV> online system 1
    STABILIZE> status
    STABILIZE> Counters: Slave:0 MasterIn:[20] FGearOut:0 FGearIn:0 MasterOut:5
    MAV Errors: 17
    17: BAD_DATA {Bad prefix, data:[‘9’]}
    3: HEARTBEAT {type : 2, autopilot : 3, base_mode : 81, custom_mode : 0, system_status : 3, mavlink_version : 3}
    STABILIZE> Counters: Slave:0 MasterIn:[26] FGearOut:0 FGearIn:0 MasterOut:11
    MAV Errors: 17
    17: BAD_DATA {Bad prefix, data:[‘9’]}
    9: HEARTBEAT {type : 2, autopilot : 3, base_mode : 81, custom_mode : 0, system_status : 3, mavlink_version : 3}

    I tried using the dev kit carrier board and connecting via UART and this works fine, so it must be somehow related to the J120 carrier board…

  3. HOWEVER, if I first connect to the FCU via on the RasPi, then switch the cable to the TX2 and try again, I can see the status with no issues! The same applies to MAVROS; I can only stream data via ROS if I first set the stream rate using the RasPi, then swap the cables.

Any ideas? I’m clueless here. I don’t understand what connecting to the RasPi first and then swapping to the TX2 is doing in this setup, but that’s the main clue.

Thank you!

Hi nick.rotella

Auvidea released firmware support for Jetpack 4.2 for their Jetson TX2 carrier boards - J120, have you tried it if the result is the same?


Thank you for the suggestion - I am in the process of flashing Jetpack 4.2 with the Auvidea patch, however I have a strong feeling this won’t work for me because I likely need Ubuntu 16.04 for the ROS packages (MAVROS, etc). These haven’t been released on ROS Melodic yet, and 18.04 only supports Melodic.

It looks like there is no way to install Ubuntu 16.04 with JetPack > 3.3, is this correct?

I am going to proceed with JetPack4.2 and try to get the ROS packages working on 18.04, it should be possible with some work despite anticipated issues down the road. If it fixes my communication issues, I’ll stick with this plan.

[s]My current issue after flashing JetPack4.2 is not being able to install SDK components, which seems to be an issue for many people ( and the suggestions on this board have not helped. Basically, the host Ubuntu 16.04 machine does not detect the TX2 over USB.

What can be done about this? Thank you.[/s]

EDIT: The SDK components issue is solved via this workaround:

Another update: Unfortunately, I find the exact same behavior with JetPack 4.2 - cannot see status via MAVProxy or run MAVROS until switching to RasPi then switching back.

I don’t expect to find an answer here since this is the NVIDIA board, but in case anyone has the same issue I’d like to leave this open. Any more ideas are welcome!

Hi Nick,
I do not think that we can help you with this. I hope that the NVIDIA support can be of help.

While I cannot help with this issue, I’m wondering if you tried any usb2serial adapters on J120/TX2? If it’s J120-related issue, then adapters should help you to get over it.