Supported NVIDIA Jetson models

Are there any limitations regarding compatibility of current NVIDIA Jetson platforms (Nano, TX2, Xavier NX and AGX Xavier ) with CVB?

Thank you.

1 Like

Hi @MarSch :slight_smile:

all mentioned Jetson platforms are supported and behave the same with :cvb: (64 Bit ARM)

I should mention that an internet connection is needed for the setup to install all necessary components. Otherise you will need to install some fonts manually afterwards, as described here.

There are still some limitations though. But they are Linux specific and have nothing to do with the Jetson platform. Not all :cvb: tools are available under Linux. Have a look at the API Guide for more information.

2 Likes

Hi @MarSch ,

Major drawback on Arm: Don’t use Turbodrive (a compression for Teledyne Cameras and we rely on SSE for that).

Some general advice: Nano for small applications, NX for proper work, Xavier for heavy workload. Try to avoid TX2 if possible, the TX2 is fine, but the carrierboards are a mixed bag.

hey @c.hartmann ,

small question, If I have teledyne camera nano c1930 and also an ouster lidar and would like to pefrom ground truth validation, is there any issue regarding the bandwidth, I mean there is a single Ethernet port in the AGX without an extension board, the AGX, camera and ouster are connected via switch. Do you think it will not have any performance issue? The AGX is the master clock, using PTP 1588 protocol, camera and ouster are slaves.

any suggestions would be appreciated.

Regards,
affi

Hi @aftab ,
my thoughts on this:

  • Change the nano into the ptp master. Why? I trust the nano, don’t know if the xavier has a hardware clock in the nic (if it has, then you should ignore me).
  • A single GigE Nic will provide you with 110 to 115 MB/s for both cams combined. That is your bandwith limit, however it gets a little more complicated**.

**The issues is the timing of the packages, since you have a single nic and multiple devices, your nic might get overwhelmed. This is solved via interpackage delay. Luckily the nano has a neat feature call Throughput… (ThroughputLimit?), you can essentially use it as a calculator.

But in general your application is entirely feasable.

Very relevant for GigE Vision config with multiple devices: https://help.commonvisionblox.com/NextGen/14.0/md_theory_of_operation_hardware__configurator.html

Hey @c.hartmann,

Yes, AGX NIC support hardware time stamping. I know the bandwidth for camera but not sure for LIDAR. I am trying to test it but not so far successful, on my other thread I am facing some issue which I almost solved them but in a dirty manner but not in correct way. But I am able to solve and will go after it.

So, you are suggesting to make nano as ptp master instead of AGX? hmm, I know for the fact these jetson models or agx are embedded devices and does not have bios, I mean the time is not correct, it have to be connected to NTP or some kind of external GPS? Now my question is about NANO, how good if it will be master and how about the time synchronization. I think it might have this issue I already setup PTP4l and Ph2csys and enabled them for AGX.

I have done the ptp configuration as per official documentation from Lidar vendor. Does the some kind of instructions are there from stemmer imaging?

Regards,
Affi

Hey @c.hartmann ,

Here what I want to achieve.

So, I have Nvidia AGX, an Ouster Lidar (OS1, 64 channel) and an industrial camera. Maybe I am thinking of including a GNSS for time stamping, but for now I have only configured the PTP protocol for time synchronization between the LIDAR and the camera as per instructions from the official documentation. I am using the ROS environment to record the data using ouster package provided by ouster team where as for camera I am leveraging the CVB python framework.

To cut it short, these devices (the LIDAR and camera) are connected via D-LINK DGS-1008P switch and are not connected directly to Nvidia AGX. During the PTP protocol setup I saw a diagram on page number 83 (Section 15.3 Example Network Setup) in the official documentation. Which shows two Ethernet ports one for LIDAR and one for the GNSS.

So my question is now, If I need to synchronize the LIDAR, industrial camera or (maybe the GNSS), Do I need to have a separate Ethernet ports for each of them? I mean eth0 for camera, eth1 for LIDAR and so on? or one Ethernet port is enough to collect the data ? The NVIDIA AGX has only one Ethernet port that supports hardware time stamping (though It can be extended via an extension board to have two Ethernet ports but not planned). Therefore, is one Ethernet port enough or do I need to have separate Ethernet ports for each of them.

@c.hartmann You have suggested to make nano camera as PTP master. My concerns are a lot but top one are the bandwidth because of single NIC. Initially, I tested it an hour ago and I am getting both images as well as the LIDAR data, but I have to verify what and where I lost data that is either from camera or lidar or something happen. The problem is that as you have mentioned that I will getting 110 to 115 MB/s and this is a lot where as from ouster I trying to figure out the bandwidth.

I will be thankful, If you could nudge me in the right direction.
P.s: I have attached the system architecture diagram here (Please forgive me for my bad Photoshop skills).

Regards,
Affi

Be careful about feeding a NTP source into a PTP system via phc2sys. You might introduce a “bad” master. I.e. jumps (due to lower precision in NTP) cause faults in PTP slaves (by exceeding a fault threshold). Do you really need a “world” time? If yes, using a gps module which acts as your PTP master would be the correct step. (you can absolutely make the NTP work for you, if you configure phc2sys right). If no, then just use the master you trust the most (Genie Nano in my case).

Sorry i don’t have much experience with the lidar cam. FYI there is a ROS wrapper for CVB, but we didn’t programm this. A customer essentially wrote a wrapper for cvb. Can’t comment on the quality (or if it works at all, you would have to google it).

See above. Not a fan.

No this is not required for synchronisation.

It is enough, assuming you do not exceed 110MB/s

Yes, your diagram would only be extended by a single cable (you just have to ensure that the nano is access via eth0 and the lidar via eth1, and the lidar by itself does not exceed 110MB/s).

Can’t help you with the lidar cam. But for the nano you can easily check the Statistics via Genicambrowser (instead of your python acquisition), while the rest of the application runs.

grafik

We also have API function to get the statistics.