Error in Sample Lidar Replay sample using live Ouster lidar configuration

Please provide the following info (check/uncheck the boxes after creating this topic):
Software Version
DRIVE OS Linux 5.2.6
DRIVE OS Linux 5.2.6 and DriveWorks 4.0
DRIVE OS Linux 5.2.0
[*] DRIVE OS Linux 5.2.0 and DriveWorks 3.5
NVIDIA DRIVE™ Software 10.0 (Linux)
NVIDIA DRIVE™ Software 9.0 (Linux)
other DRIVE OS version
other

Target Operating System
[*] Linux
QNX
other

Hardware Platform
NVIDIA DRIVE™ AGX Xavier DevKit (E3550)
[*] NVIDIA DRIVE™ AGX Pegasus DevKit (E3550)
other

SDK Manager Version
[*] 1.7.1.8928
other

Host Machine Version
[*] native Ubuntu 18.04
other

While running this sample application DriveWorks SDK Reference: Lidar Replay Sample. I’m getting the below error:

Nvidia_Drive@tegra-ubuntu:/usr/local/driveworks-3.5/bin$ ./sample_lidar_replay --protocol=lidar.socket --params=device=OUSTER_OS2_128,ip=169.254.110.235,dip=192.168.131.39,port=7502,hres=1024,scan-frequency=20
Starting my sample application...
[24-02-2022 15:32:19] Platform: Detected DDPX - Tegra A
[24-02-2022 15:32:19] TimeSource: monotonic epoch time offset is 1645611001693883
[24-02-2022 15:32:19] TimeSource: Could not detect valid PTP time source at nvpps. Fallback to eth0
[24-02-2022 15:32:19] TimeSource Eth: Lost PTP time synchronizaton. Synchronized time will not be available from this timesource.
[24-02-2022 15:32:19] TimeSource: Could not detect valid PTP time source at 'eth0'. Fallback to CLOCK_MONOTONIC.
[24-02-2022 15:32:19] Platform: number of GPU devices detected 2
[24-02-2022 15:32:19] Platform: currently selected GPU device discrete ID 0
[24-02-2022 15:32:19] Context::getDataPathFromSelfLocation DATA_ROOT found at: /usr/local/driveworks-3.5/data
[24-02-2022 15:32:19] SDK: No resources(.pak) mounted, some modules will not function properly
[24-02-2022 15:32:19] SDK: Create NvMediaDevice
[24-02-2022 15:32:19] SDK: Create NvMedia2D
[24-02-2022 15:32:19] SDK: use EGL display as provided
[24-02-2022 15:32:20] TimeSource: monotonic epoch time offset is 1645611001693883
[24-02-2022 15:32:20] TimeSource: Could not detect valid PTP time source at nvpps. Fallback to eth0
[24-02-2022 15:32:20] TimeSource Eth: Lost PTP time synchronizaton. Synchronized time will not be available from this timesource.
[24-02-2022 15:32:20] TimeSource: Could not detect valid PTP time source at 'eth0'. Fallback to CLOCK_MONOTONIC.
[24-02-2022 15:32:20] Initialize DriveWorks SDK v3.5.75
[24-02-2022 15:32:20] Release build with GNU 7.3.1 from heads/buildbrain-branch-0-gc61a9a35bd0 against Drive PDK v5.2.0.0
[24-02-2022 15:32:20] SensorFactory::createSensor() -> lidar.socket, device=OUSTER_OS2_128,ip=169.254.110.235,dip=192.168.131.39,port=7502,hres=1024,scan-frequency=20
[24-02-2022 15:32:20] LidarSocket::getParameters, return-mode not specified. Using default value DUAL
[24-02-2022 15:32:20] hfov-start is empty, default value 0 will be used
[24-02-2022 15:32:20] hfov-end is empty, default value 360 will be used
[24-02-2022 15:32:20] Destination IP address, Horizontal Resolution is used only by OUSTER Lidar
[24-02-2022 15:32:20] Return Mode is used only by Velodyne Lidar
[24-02-2022 15:32:20] Horizontal FOV is used only by Ouster and Velodyne Lidars
[24-02-2022 15:32:20] , Device magic number = 3235826430
[24-02-2022 15:32:20] Driveworks exception thrown: DW_CANNOT_CREATE_OBJECT: DecoderOuster::DecoderOuster, Failed to connect to client

terminate called after throwing an instance of 'std::runtime_error'
  what():  [2022-02-24 15:32:20] DW Error DW_CANNOT_CREATE_OBJECT executing DW function:
 dwSAL_createSensor(&m_lidarSensor, params, m_sal)
 at /dvs/git/dirty/gitlab-master_av/dw/sdk/samples/sensors/lidar/lidar_replay/main.cpp:124
Aborted (core dumped)

Please help in debugging the error

Dear @raji,
Could you check with Ouster for support. Please see the discussion on Ouster OS2-128 Logging Issue - #29 by mae25 if it helps.

Ouster provides SW supports for below sensor ( From DRIVE Ecosystem Hardware and Software Components | NVIDIA Developer)

I’m having OUSTER OS2-128 lidar, how do I identify all the parameter values of the connected LiDAR?
Do I need to know all the below parameters for running sample applications?
ip=X.X.X.X
[,dip=X.X.X.X,hres=XXXX],
port=XXXX,
device={OUSTER_OS2_128},
scan-frequency=XX.X
[,hfov-start=XX.X,hfov-end=XX.X,force-set=false,protocol=xxx,multicast-ip=X.X.X.X,decoder=filepath.so,time-smoothing=false,secondary=false]

Another issue has come up, now on connecting the Ouster lidar through ethernet, it is no more detected. The ethernet port is also not showing active in Pegasus system.

Dear @raji,
Yes. You need to know the parameters to use DW sample application. Firstly, please check the lidar configuration page with lidar IP as URL.

Hi @SivaRamaKrishnaNV ,

I’m able to get the Ouster LiDAR configuration parameters.
But I’m getting the below error while running sample applications:

Nvidia_Drive@tegra-ubuntu:/usr/local/driveworks-3.5/bin$ ./sample_lidar_replay --protocol=lidar.socket --params=device=OUSTER_OS2_128,ip=169.254.74.167,dip=169.254.96.103,port=7502,hres=1024,scan-frequency=10 --show-intensity=true
Starting my sample application...
[01-03-2022 11:36:56] Platform: Detected DDPX - Tegra A
[01-03-2022 11:36:56] TimeSource: monotonic epoch time offset is 1646031479720396
[01-03-2022 11:36:56] TimeSource: Could not detect valid PTP time source at nvpps. Fallback to eth0
[01-03-2022 11:36:56] TimeSource Eth: Lost PTP time synchronizaton. Synchronized time will not be available from this timesource.
[01-03-2022 11:36:56] TimeSource: Could not detect valid PTP time source at 'eth0'. Fallback to CLOCK_MONOTONIC.
[01-03-2022 11:36:56] Platform: number of GPU devices detected 2
[01-03-2022 11:36:56] Platform: currently selected GPU device discrete ID 0
[01-03-2022 11:36:56] Context::getDataPathFromSelfLocation DATA_ROOT found at: /usr/local/driveworks-3.5/data
[01-03-2022 11:36:56] SDK: No resources(.pak) mounted, some modules will not function properly
[01-03-2022 11:36:56] SDK: Create NvMediaDevice
[01-03-2022 11:36:56] SDK: Create NvMedia2D
[01-03-2022 11:36:56] SDK: use EGL display as provided
[01-03-2022 11:36:56] TimeSource: monotonic epoch time offset is 1646031479720396
[01-03-2022 11:36:56] TimeSource: Could not detect valid PTP time source at nvpps. Fallback to eth0
[01-03-2022 11:36:56] TimeSource Eth: Lost PTP time synchronizaton. Synchronized time will not be available from this timesource.
[01-03-2022 11:36:56] TimeSource: Could not detect valid PTP time source at 'eth0'. Fallback to CLOCK_MONOTONIC.
[01-03-2022 11:36:56] Initialize DriveWorks SDK v3.5.75
[01-03-2022 11:36:56] Release build with GNU 7.3.1 from heads/buildbrain-branch-0-gc61a9a35bd0 against Drive PDK v5.2.0.0
[01-03-2022 11:36:56] SensorFactory::createSensor() -> lidar.socket, device=OUSTER_OS2_128,ip=169.254.74.167,dip=169.254.96.103,port=7502,hres=1024,scan-frequency=10
[01-03-2022 11:36:56] LidarSocket::getParameters, return-mode not specified. Using default value DUAL
[01-03-2022 11:36:56] hfov-start is empty, default value 0 will be used
[01-03-2022 11:36:56] hfov-end is empty, default value 360 will be used
[01-03-2022 11:36:56] Destination IP address, Horizontal Resolution is used only by OUSTER Lidar
[01-03-2022 11:36:56] Return Mode is used only by Velodyne Lidar
[01-03-2022 11:36:56] Horizontal FOV is used only by Ouster and Velodyne Lidars
[01-03-2022 11:36:56] , Device magic number = 3235826430
[01-03-2022 11:36:56] initializeOuster: Current get_lidar_mode is "error: Command not recognized.", requested setting is "1024x10" !!!
[01-03-2022 11:36:56] initializeOuster: Current get_config_param active azimuth_window is "[0, 360000]", requested setting is "[0, 36000]" !!!
[01-03-2022 11:36:56] initializeOuster: Current get_config_param active phase_lock_enable is "false", requested setting is "true" !!!
[01-03-2022 11:36:56] initializeOuster: Current get_config_param active phase_lock_offset is "0", requested setting is "270000" !!!
[01-03-2022 11:36:56] Driveworks exception thrown: DW_NOT_AVAILABLE: DecoderOuster::initializeOuster Sensor config doesn't match, Please use "force-set=true" if you want to change the the configuration

terminate called after throwing an instance of 'std::runtime_error'
  what():  [2022-03-01 11:36:56] DW Error DW_NOT_AVAILABLE executing DW function:
 dwSAL_createSensor(&m_lidarSensor, params, m_sal)
 at /dvs/git/dirty/gitlab-master_av/dw/sdk/samples/sensors/lidar/lidar_replay/main.cpp:124
Aborted (core dumped)

Could you please help me debug the issue.
Here are the details of LiDAR config.

“config”: {
“auto_start_flag”: 1,
“azimuth_window”: [
0,
360000
],
“lidar_mode”: “1024x10”,
“multipurpose_io_mode”: “OFF”,
“nmea_baud_rate”: “BAUD_9600”,
“nmea_ignore_valid_char”: 0,
“nmea_in_polarity”: “ACTIVE_HIGH”,
“nmea_leap_seconds”: 0,
“operating_mode”: “NORMAL”,
“phase_lock_enable”: false,
“phase_lock_offset”: 0,
“signal_multiplier”: 1,
“sync_pulse_in_polarity”: “ACTIVE_HIGH”,
“sync_pulse_out_angle”: 360,
“sync_pulse_out_frequency”: 1,
“sync_pulse_out_polarity”: “ACTIVE_HIGH”,
“sync_pulse_out_pulse_width”: 0,
“timestamp_mode”: “TIME_FROM_INTERNAL_OSC”,
“udp_dest”: “169.254.96.103”,
“udp_ip”: “169.254.96.103”,
“udp_port_imu”: 7503,
“udp_port_lidar”: 7502
},
“info”: {
“base_pn”: “830-101845-07”,
“base_sn”: “102103001008”,
“build_date”: “2021-07-27T22:34:53Z”,
“build_rev”: “v2.1.2”,
“image_rev”: “ousteros-image-prod-aries-v2.1.2+20210727223313.patch-v2.1.2”,
“prod_line”: “OS-2-128”,
“prod_pn”: “840-102146-D”,
“prod_sn”: “992133000595”,
“proto_rev”: “v1.1.1”,
“status”: “RUNNING”
}

Hi @SivaRamaKrishnaNV ,

I’m using the below command to run the sample application:

./sample_lidar_replay --protocol=lidar.socket --params=device=OUSTER_OS2_128,ip=169.254.74.167,dip=169.254.110.235,port=7502,hres=1024,scan-frequency=10

Continuously getting this error:

[02-03-2022 11:39:01] initializeOuster: Current get_lidar_mode is "error: Command not recognized.", requested setting is "1024x10" !!!
[02-03-2022 11:39:01] initializeOuster: Current get_config_param active phase_lock_enable is "false", requested setting is "true" !!!
[02-03-2022 11:39:01] Driveworks exception thrown: DW_NOT_AVAILABLE: DecoderOuster::initializeOuster Sensor config doesn't match, Please use "force-set=true" if you want to change the the configuration

Please help in debugging the error

Hi @raji
Please refer to Ouster OS2-128 issue - #14 by daniel.vadranapu1. It looks they didn’t have the issue.
Could you check their command? Is it something to do with the firmware? I would suggest you contact with Ouster on this.

Hi @VickNV ,

I tried the command used in the shared link -
Now I’m facing json parsing error. I think you can help me on this.
Please have a look at the error below:

Nvidia_Drive@tegra-ubuntu:/usr/local/driveworks-3.5/bin$ ./sample_lidar_replay --protocol=lidar.socket --params=device=OUSTER_OS2_128,ip=169.254.74.167,dip=169.254.110.235,port=7502,hres=1024,scan-frequency=10,force-set=true --output-dir=/home/Nvidia_Drive/Desktop/lidar_records
Starting my sample application...
[02-03-2022 16:37:26] Platform: Detected DDPX - Tegra A
[02-03-2022 16:37:26] TimeSource: monotonic epoch time offset is 1646133716873257
[02-03-2022 16:37:26] TimeSource: Could not detect valid PTP time source at nvpps. Fallback to eth0
[02-03-2022 16:37:26] TimeSource Eth: Lost PTP time synchronizaton. Synchronized time will not be available from this timesource.
[02-03-2022 16:37:26] TimeSource: Could not detect valid PTP time source at 'eth0'. Fallback to CLOCK_MONOTONIC.
[02-03-2022 16:37:26] Platform: number of GPU devices detected 2
[02-03-2022 16:37:26] Platform: currently selected GPU device discrete ID 0
[02-03-2022 16:37:26] Context::getDataPathFromSelfLocation DATA_ROOT found at: /usr/local/driveworks-3.5/data
[02-03-2022 16:37:26] SDK: No resources(.pak) mounted, some modules will not function properly
[02-03-2022 16:37:26] SDK: Create NvMediaDevice
[02-03-2022 16:37:26] SDK: Create NvMedia2D
[02-03-2022 16:37:26] SDK: use EGL display as provided
[02-03-2022 16:37:26] TimeSource: monotonic epoch time offset is 1646133716873257
[02-03-2022 16:37:26] TimeSource: Could not detect valid PTP time source at nvpps. Fallback to eth0
[02-03-2022 16:37:26] TimeSource Eth: Lost PTP time synchronizaton. Synchronized time will not be available from this timesource.
[02-03-2022 16:37:26] TimeSource: Could not detect valid PTP time source at 'eth0'. Fallback to CLOCK_MONOTONIC.
[02-03-2022 16:37:26] Initialize DriveWorks SDK v3.5.75
[02-03-2022 16:37:26] Release build with GNU 7.3.1 from heads/buildbrain-branch-0-gc61a9a35bd0 against Drive PDK v5.2.0.0
[02-03-2022 16:37:26] SensorFactory::createSensor() -> lidar.socket, device=OUSTER_OS2_128,ip=169.254.74.167,dip=169.254.110.235,port=7502,hres=1024,scan-frequency=10,force-set=true
[02-03-2022 16:37:26] LidarSocket::getParameters, return-mode not specified. Using default value DUAL
[02-03-2022 16:37:26] hfov-start is empty, default value 0 will be used
[02-03-2022 16:37:26] hfov-end is empty, default value 360 will be used
[02-03-2022 16:37:26] Destination IP address, Horizontal Resolution is used only by OUSTER Lidar
[02-03-2022 16:37:26] Return Mode is used only by Velodyne Lidar
[02-03-2022 16:37:26] Horizontal FOV is used only by Ouster and Velodyne Lidars
[02-03-2022 16:37:26] , Device magic number = 3235826430
[02-03-2022 16:37:26] initializeOuster: Current get_lidar_mode is "error: Command not recognized.", requested setting is "1024x10" !!!
[02-03-2022 16:37:26] initializeOuster: Current get_config_param active azimuth_window is "[0, 360000]", requested setting is "[0, 36000]" !!!
[02-03-2022 16:37:26] initializeOuster: Current get_config_param active phase_lock_enable is "false", requested setting is "true" !!!
[02-03-2022 16:37:26] initializeOuster: Current get_config_param active phase_lock_offset is "0", requested setting is "270000" !!!
[02-03-2022 16:37:26] initializeOuster: command "reinitialize 
" failed with "error: timestamp_mode TIME_FROM_INTERNAL_OSC incompatible with p
[02-03-2022 16:37:26] initializeOuster: command "write_config_txt 
" failed with "hase_lock_enable. An external time sync source is required, see
[02-03-2022 16:37:26] Json parse error [json.exception.parse_error.101] parse error at line 1, column 2: syntax error while parsing value - invalid literal; last read: 'th'. Retrying... 
[02-03-2022 16:37:27] Json parse error [json.exception.parse_error.101] parse error at line 1, column 1: syntax error while parsing value - invalid literal; last read: 'w'. Retrying... 
[02-03-2022 16:37:28] Sensor RUNNING
[02-03-2022 16:37:28] Serial number = 992133000595
Firmware version = ousteros-image-prod-aries-v2.1.2+20210727223313.patch-v2.1.2
[02-03-2022 16:37:28] std::exception thrown: [json.exception.type_error.302] type must be array, but is null
terminate called after throwing an instance of 'std::runtime_error'
  what():  [2022-03-02 16:37:28] DW Error DW_FAILURE executing DW function:
 dwSAL_createSensor(&m_lidarSensor, params, m_sal)
 at /dvs/git/dirty/gitlab-master_av/dw/sdk/samples/sensors/lidar/lidar_replay/main.cpp:124
Aborted (core dumped)

Please help in debugging the error.

It seems to fail to get some information from the lidar. That’s not something nvidia can do.
As suggested, you need to contact Ouster on this.

Hi @VickNV ,

I went through this post: Ouster OS2-128 issue - #26 by gabriel.kiss

It seems if we downgrade the firmware version from
Firmware version = ousteros-image-prod-aries-v2.1.2+20210727223313.patch-v2.1.2
to
Firmware version = ousteros-image-prod-aries-v1.14.0-beta.11+ci+git+nvidia@12e83719ae-20200619212753-staging

then the issue might get resolved. So could you please help get that firmware version?

Hi @raji

Unfortunately downgrading the firmware to 1.14 did not help us. In the end we fixed it with firmware 2.1 but you need a custom lib from Ouster. Did not see it on their website yet so you need to contact them directly. You need the ouster-nvidia-driveworks_plugin, v1.0.2 works on our system.

Best,
Gabriel

2 Likes

Thanks a lot @gabriel.kiss for the information. I have requested Ouster support to provide us the plugin as well.

Hi @gabriel.kiss
Thanks for your support here. just double confirm this is the solution for Ouster OS2-128 issue, right?

Hi @VickNV

Yes that was the solution for us for the problem raised in the other topic.

1 Like

Hey @gabriel.kiss , could you please help me with the exact contact details in Ouster team who helped you in getting the firmware?
Although I already contacted the support team but they are not having it handy and will ask software team for it but if I can get the exact contact details then we might get it faster.
Thanks for the help.

ouster-nvidia-driveworks_plugin_v1.0.3 (1).zip (387.1 KB)
This is the plugin which worked fine and produces visualisation given by Ouster support. Attaching it here for benefit of others and future references.

1 Like

Thanks for sharing back. May we also know which firmware you’re using now?

firmware version = v2.2.1

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.