CONTINENTAL ARS430 with PX2 | Error : Driveworks exception thrown: DW_INVALID_ARGUMENT: RadarSocket...

Need help to use the CONTINENTAL ARS430 with PX2.

Followed steps as per ‘file:///usr/local/driveworks-1.2/doc/nvdwx_html/dwx_radar_replay_sample.html’

at Terminal:

./sample_radar_replay --protocol=radar.socket --params=device=[- CONTINENTAL_ARS430],ip=[192.168.1.2],port=[31122]

Error :

[14-8-2019 14:41:2] Initialize DriveWorks SDK v1.2.400
[14-8-2019 14:41:2] Release build with GNU 4.9.4 from v1.2.0-rc11-0-ga7f5475 against Vibrante PDK v5.0.10.3
[14-8-2019 14:41:2] Platform: Detected Drive PX2 - Tegra B
[14-8-2019 14:41:2] TimeSource: monotonic epoch time offset is 1565804085272322
[14-8-2019 14:41:2] TimeSource: PTP ioctl returned error. Synchronized time will not be available.
[14-8-2019 14:41:2] TimeSource: Could not detect valid PTP time source at 'eth0'. Fallback to CLOCK_MONOTONIC.
[14-8-2019 14:41:2] Platform: number of GPU devices detected 2
[14-8-2019 14:41:2] Platform: currently selected GPU device discrete ID 0
[14-8-2019 14:41:2] SDK: Resources mounted from .././data/resources
[14-8-2019 14:41:2] SDK: Create NvMediaDevice
[14-8-2019 14:41:2] SDK: Create NvMediaIPPManager
[14-8-2019 14:41:2] SDK: use EGL display as provided
[14-8-2019 14:41:2] SensorFactory::createSensor() -> radar.socket, device=[-
[14-8-2019 14:41:2] <b>Driveworks exception thrown: DW_INVALID_ARGUMENT: RadarSocket::create, expected ip parameter missing</b>

terminate called after throwing an instance of 'std::runtime_error'
  what():  Sensor Initialization Failed
Aborted (core dumped)

Please inform, how to use "@note In case of CONTINENTAL_ARS430, the additional parameter

`multicast-ip=239.0.0.1`

is required."

Dear RatheeshR,

If the radar IP/port info is 192.168.1.2 and 31122, please use below command for the sample.

./sample_radar_replay --protocol=radar.socket --params=device=CONTINENTAL_ARS430,ip=192.168.1.2,port=31122

And for multicast case, please add the parameter like below. Thanks.

./sample_radar_replay --protocol=radar.socket --params=device=CONTINENTAL_ARS430,ip=192.168.1.2,port=31122,multicast-ip=239.0.0.1

Thank you,

I tried

./sample_radar_replay --protocol=radar.socket --params=device=CONTINENTAL_ARS430,ip=192.168.1.2,port=31122

But the below error

[b]

Driveworks exception thrown: DW_SAL_CANNOT_INITIALIZE: SocketConnection::SocketConnection, sockopt(mcast) failure, ip 192.168.1.2, port 37497

[/b]

Dear RatheeshR,

Did you check IP and port for the radar properly?
The command above provided is just for sample so please make sure you set ip / port for your radar properly. Thanks.

We checked the IP of radar, but its giving the error as shown below.
IP of RADAR is cross-checked using ‘wireshark’.

<b> ./sample_radar_replay --protocol=radar.socket --params=device=CONTINENTAL_ARS430,ip=192.168.1.10,port=31122</b>

[17-9-2019 11:51:23] Initialize DriveWorks SDK v1.2.400
[17-9-2019 11:51:23] Release build with GNU 4.8.5 from v1.2.0-rc11-0-ga7f5475
[17-9-2019 11:51:23] Platform: Detected Generic x86 Platform
[17-9-2019 11:51:23] TimeSource: monotonic epoch time offset is 1568733186420057
[17-9-2019 11:51:23] Platform: number of GPU devices detected 1
[17-9-2019 11:51:23] Platform: currently selected GPU device discrete ID 0
[17-9-2019 11:51:23] SDK: Resources mounted from .././data/resources
[17-9-2019 11:51:23] SensorFactory::createSensor() -> radar.socket, device=CONTINENTAL_ARS430,ip=192.168.1.10,port=31122
[17-9-2019 11:51:23] Driveworks exception thrown: DW_SAL_CANNOT_INITIALIZE: <b>SocketConnection::SocketConnection, sockopt(mcast) failure, ip 192.168.1.10, port 37497</b>

terminate called after throwing an instance of 'std::runtime_error'
  what():  Sensor Initialization Failed
Aborted (core dumped)

Dear RatheeshR,

According to the error log, there is sockopt(mcast) failure, so could you please add multicast option like below and re-test it? Thanks.

./sample_radar_replay --protocol=radar.socket --params=device=CONTINENTAL_ARS430,ip=192.168.1.10,port=31122,multicast-ip=239.0.0.1

Hello SteveNV

I had tried with multicast option. the error result is shared below.

Trial 1: With Multicast option

/usr/local/driveworks-1.2/bin$ ./sample_radar_replay --protocol=radar.socket, device=CONTINENTAL_ARS430,ip=192.168.1.10,port=31122, multicast-ip=239.0.0.1
[20-9-2019 9:52:32] Initialize DriveWorks SDK v1.2.400
[20-9-2019 9:52:32] Release build with GNU 4.8.5 from v1.2.0-rc11-0-ga7f5475
[20-9-2019 9:52:32] Platform: Detected Generic x86 Platform
[20-9-2019 9:52:32] TimeSource: monotonic epoch time offset is 1568934054423103
[20-9-2019 9:52:32] Platform: number of GPU devices detected 1
[20-9-2019 9:52:32] Platform: currently selected GPU device discrete ID 0
[20-9-2019 9:52:32] SDK: Resources mounted from .././data/resources
[20-9-2019 9:52:32] SensorFactory::createSensor() -> radar.socket,, file=.././data/samples/sensors/radar/conti/radar_0.bin
[20-9-2019 9:52:32] Driveworks exception thrown: DW_SAL_NO_DRIVER_FOUND: radar.socket,

terminate called after throwing an instance of 'std::runtime_error'
  what():  Sensor Initialization Failed
Aborted (core dumped)

Trial 2: Without Multicast option

/usr/local/driveworks-1.2/bin$ ./sample_radar_replay --protocol=radar.socket, device=CONTINENTAL_ARS430,ip=192.168.1.10,port=31122
[20-9-2019 9:55:48] Initialize DriveWorks SDK v1.2.400
[20-9-2019 9:55:48] Release build with GNU 4.8.5 from v1.2.0-rc11-0-ga7f5475
[20-9-2019 9:55:48] Platform: Detected Generic x86 Platform
[20-9-2019 9:55:48] TimeSource: monotonic epoch time offset is 1568934054423103
[20-9-2019 9:55:48] Platform: number of GPU devices detected 1
[20-9-2019 9:55:48] Platform: currently selected GPU device discrete ID 0
[20-9-2019 9:55:48] SDK: Resources mounted from .././data/resources
[20-9-2019 9:55:48] SensorFactory::createSensor() -> radar.socket,, file=.././data/samples/sensors/radar/conti/radar_0.bin
[20-9-2019 9:55:48] Driveworks exception thrown: DW_SAL_NO_DRIVER_FOUND: radar.socket,

terminate called after throwing an instance of 'std::runtime_error'
  what():  Sensor Initialization Failed
Aborted (core dumped)

The Prerequisites [as per dwx_radar_replay_sample.html ] was performed as stated below

sudo ifconfig enp0s31f6:900 10.1.0.81 || true    (updated with IP 192.168.1.30)
sudo route add -net 224.0.0.0 netmask 240.0.0.0 dev enp0s31f6:900 || true
sudo route add -net 10.1.0.0 netmask 255.255.0.0 dev enp0s31f6:900 || true   (updated with IP 192.168.1.0)

Hello NVIDIA
Waiting for your kind support.

Dear RatheeshR,

Could you please add --params in the command and re-test?
./sample_radar_replay --protocol=radar.socket, device=CONTINENTAL_ARS430,ip=192.168.1.10,port=31122
==> ./sample_radar_replay --protocol=radar.socket, –params=device=CONTINENTAL_ARS430,ip=192.168.1.10,port=31122

Hello SteveNV

I had tried the step with --params. as per your instruction, I tried this again today and sharing the results below.

Step 1.
Confirming the IP address of Radar using wireshark

"2413","5.601688492","<u><b>192.168.1.2</b></u>","<b>225.0.0.1</b>","UDP","1154","<b>31122 </b>→ 31122 Len=1112"

Step 2

From terminal follow Prerequisites [as per dwx_radar_replay_sample.html ] 
----@--------:/usr/local/driveworks-1.2/bin$ sudo ifconfig enp0s31f6:900 192.168.1.31 || true
----@--------:/usr/local/driveworks-1.2/bin$ sudo route add -net 224.0.0.0 netmask 240.0.0.0 dev enp0s31f6:900 || true
----@--------:/usr/local/driveworks-1.2/bin$ sudo route add -net 192.168.0.0 netmask 255.255.0.0 dev enp0s31f6:900 || true

Step 3.

----@--------:/usr/local/driveworks-1.2/bin$  <b>./sample_radar_replay --protocol=radar.socket, --params=device=CONTINENTAL_ARS430,ip=192.168.1.2,port=31122</b> 
[27-9-2019 10:22:26] Initialize DriveWorks SDK v1.2.400
[27-9-2019 10:22:26] Release build with GNU 4.8.5 from v1.2.0-rc11-0-ga7f5475
[27-9-2019 10:22:26] Platform: Detected Generic x86 Platform
[27-9-2019 10:22:26] TimeSource: monotonic epoch time offset is 1568934054423103
[27-9-2019 10:22:26] Platform: number of GPU devices detected 1
[27-9-2019 10:22:26] Platform: currently selected GPU device discrete ID 0
[27-9-2019 10:22:26] SDK: Resources mounted from .././data/resources
[27-9-2019 10:22:26] SensorFactory::createSensor() -> radar.socket,, device=CONTINENTAL_ARS430,ip=192.168.1.2,port=31122
<u><b>[27-9-2019 10:22:26] Driveworks exception thrown: DW_SAL_NO_DRIVER_FOUND: radar.socket,</b></u>

terminate called after throwing an instance of 'std::runtime_error'
  what():  Sensor Initialization Failed
Aborted (core dumped)

Step 4

----@--------:/usr/local/driveworks-1.2/bin$ <b>./sample_radar_replay --protocol=radar.socket, --params=device=CONTINENTAL_ARS430,ip=192.168.1.2,port=31122,multicast-ip=239.0.0.1</b>
[27-9-2019 10:47:42] Initialize DriveWorks SDK v1.2.400
[27-9-2019 10:47:42] Release build with GNU 4.8.5 from v1.2.0-rc11-0-ga7f5475
[27-9-2019 10:47:42] Platform: Detected Generic x86 Platform
[27-9-2019 10:47:42] TimeSource: monotonic epoch time offset is 1568934054423103
[27-9-2019 10:47:42] Platform: number of GPU devices detected 1
[27-9-2019 10:47:42] Platform: currently selected GPU device discrete ID 0
[27-9-2019 10:47:42] SDK: Resources mounted from .././data/resources
[27-9-2019 10:47:42] SensorFactory::createSensor() -> radar.socket,, device=CONTINENTAL_ARS430,ip=192.168.1.2,port=31122,multicast-ip=239.0.0.1
[27-9-2019 10:47:42] Driveworks exception thrown: DW_SAL_NO_DRIVER_FOUND: radar.socket,

terminate called after throwing an instance of 'std::runtime_error'
  what():  Sensor Initialization Failed
Aborted (core dumped)

Step 5 (tried to check if the problem can solve via the port number updated to 31122 as per wireshark)
Same error as per the Step 3 and Step 4

Please let me know if I have missed any steps or any SW versions are to be updated and the solution to the problem.

Dear RatheeshR,

It seems that you are not able to connect through the radar IP you set.
Could you please check if the radar is properly connected through ping test?

I tested the sample without radar happens the same symptoms like below.

nvidia@tegra-ubuntu:/usr/local/driveworks-1.2/bin$ ./sample_radar_replay --protocol=radar.socket, --params=device=CONTINENTAL_ARS430,ip=192.168.1.2,port=31122
[30-9-2019 14:38:17] Initialize DriveWorks SDK v1.2.400
[30-9-2019 14:38:17] Release build with GNU 4.9.4 from v1.2.0-rc11-0-ga7f5475 against Vibrante PDK v5.0.10.3
[30-9-2019 14:38:17] Platform: Detected Drive PX2 - Tegra A
[30-9-2019 14:38:17] TimeSource: monotonic epoch time offset is 1568965952460326
[30-9-2019 14:38:17] TimeSource: PTP ioctl returned error. Synchronized time will not be available.
[30-9-2019 14:38:17] TimeSource: Could not detect valid PTP time source at 'eth0'. Fallback to CLOCK_MONOTONIC.
[30-9-2019 14:38:17] Platform: number of GPU devices detected 2
[30-9-2019 14:38:17] Platform: currently selected GPU device discrete ID 0
[30-9-2019 14:38:17] SDK: Resources mounted from .././data/resources
[30-9-2019 14:38:17] SDK: Create NvMediaDevice
[30-9-2019 14:38:17] SDK: Create NvMediaIPPManager
[30-9-2019 14:38:17] SDK: use EGL display as provided
[30-9-2019 14:38:17] SensorFactory::createSensor() -> radar.socket,, device=CONTINENTAL_ARS430,ip=192.168.1.2,port=31122
[30-9-2019 14:38:17] <b>Driveworks exception thrown: DW_SAL_NO_DRIVER_FOUND: radar.socket</b>,

terminate called after throwing an instance of 'std::runtime_error'
  what():  Sensor Initialization Failed
Aborted (core dumped)

Hello SteveNV

I had confirmed the connection to the PC from ARS430 in the previous post.
This action was done via Wireshark, which gives me the complete details of the communications. With this Wireshark I was able to confirm the IP address also.

Please check the and try to support.