I have the ADTF3175NXZ, this does not have the ADSD3500. I am using a linux PC. I have built the SDK with examples from this branch https://github.com/analogdevicesinc/ToF/tree/v2.1.1 using the instructions given for linux. I see below error when running the example application for data_collect or first-frame. I have tried building the SDK on my windows machine where it works as expected. I believe the issue maybe due to certain dependencies not satisfied in the Linux PC. Kindly help me understand and resolve this error. I have also attached the clinfo output from my linux pc to understand the opencl version. Is any specific version of opencl needed for the sdk to work on linux?
I0705 12:51:41.379870 47675 system_impl.cpp:73] SDK version: 2.1.0 | branch: | commit:
I0705 12:51:41.380066 47675 usb_sensor_enumerator.cpp:56] Looking for USB connected sensors
I0705 12:51:41.380162 47675 usb_sensor_enumerator.cpp:144] Found USB capture device at: /dev/video0
I0705 12:51:41.384188 47675 usb_sensor_enumerator.cpp:177] Received the following message with available sensors from target: sensors_info {
storages {
name: "MX25U6435F"
}
}
I0705 12:51:41.385581 47675 camera_itof.cpp:116] Initializing camera
I0705 12:51:41.385591 47675 usb_depth_sensor_linux.cpp:114] Opening device
I0705 12:51:41.399467 47675 camera_itof.cpp:219] Camera initialized
I0705 12:51:41.402961 47675 module_memory.cpp:54] Reading chunk id: ad3d
I0705 12:51:41.402976 47675 module_memory.cpp:55] Reading chunk revision: 1.0
I0705 12:51:41.406704 47675 module_memory.cpp:54] Reading chunk id: ad1
I0705 12:51:41.406715 47675 module_memory.cpp:55] Reading chunk revision: 1.0
I0705 12:51:46.651253 47675 module_memory.cpp:331] Found module memory CCB chunk, parsing...
I0705 12:51:46.651278 47675 module_memory.cpp:191] CCB file version: 303
I0705 12:51:46.651283 47675 module_memory.cpp:192] CCB calibration version: 301
I0705 12:51:46.651288 47675 module_memory.cpp:199] CCB file date: 2022--
I0705 12:51:46.651293 47675 module_memory.cpp:201] CCB chip ID: 5931
I0705 12:51:46.651295 47675 module_memory.cpp:202] CCB serial number: 00.11\d\ADI\Crosby_Output\159\ 5072992.1_2_40_17
I0705 12:51:46.681528 47675 module_memory.cpp:137] Writing temporary ccb file : /tmp/adi_tof_ccb.8ffg1a
I0705 12:51:46.685434 47675 module_memory.cpp:54] Reading chunk id: ad2
I0705 12:51:46.685446 47675 module_memory.cpp:55] Reading chunk revision: 1.0
I0705 12:51:48.468613 47675 module_memory.cpp:338] Found module memory CFG chunk, parsing...
I0705 12:51:48.468637 47675 module_memory.cpp:221] CFG file version: 1
I0705 12:51:48.468641 47675 module_memory.cpp:222] CFG configuration version: 1000.0
I0705 12:51:48.468645 47675 module_memory.cpp:223] CFG chip ID: 5931
I0705 12:51:48.468649 47675 module_memory.cpp:224] CFG system ID: 0
I0705 12:51:48.468693 47675 module_memory.cpp:137] Writing temporary cfg file : /tmp/adi_tof_cfg.WNDRX7
I0705 12:51:48.491771 47675 module_memory.cpp:119] Writing temporary JSON file: /tmp/adi_tof_cfgjson.mWRIi9
{
"sensorFirmware": "/tmp/adi_tof_cfg.WNDRX7",
"CCB_Calibration": "/tmp/adi_tof_ccb.8ffg1a"
}
I0705 12:51:48.491847 47675 camera_itof.cpp:116] Initializing camera
I0705 12:51:48.491888 47675 camera_itof.cpp:142] Current sensor firmware is: /tmp/adi_tof_cfg.WNDRX7
I0705 12:51:48.491894 47675 camera_itof.cpp:155] Current calibration file is: /tmp/adi_tof_ccb.8ffg1a
I0705 12:51:48.491899 47675 camera_itof.cpp:173] Current Depth ini file is:
I0705 12:51:48.494834 47675 camera_itof.cpp:219] Camera initialized
I0705 12:51:48.494868 47675 camera_itof.cpp:278] Chosen mode: mp_pcm
I0705 12:51:48.510241 47675 camera_itof.cpp:597] initComputeLibrary
Failed to initialize OpenCL config
Failed to initialize TOFI Processor Config
Segmentation fault (core dumped)
On running data_collect,
./data_collect --f . --n 10 --ccb test.ccb config/config_default.json
I0705 14:18:39.693723 49263 main.cpp:372] Output folder: .
I0705 14:18:39.750444 49263 main.cpp:373] Mode: 10
I0705 14:18:39.750458 49263 main.cpp:374] Number of frames: 10
I0705 14:18:39.750463 49263 main.cpp:375] Json file: config/config_default.json
I0705 14:18:39.750466 49263 main.cpp:376] Frame type is: raw
I0705 14:18:39.750470 49263 main.cpp:377] Warm Up Time is: 0 seconds
I0705 14:18:39.750473 49263 main.cpp:384] Path to store CCB content: test.ccb
I0705 14:18:39.750479 49263 system_impl.cpp:73] SDK version: 2.1.0 | branch: | commit:
I0705 14:18:39.750530 49263 usb_sensor_enumerator.cpp:56] Looking for USB connected sensors
I0705 14:18:39.846940 49263 usb_sensor_enumerator.cpp:144] Found USB capture device at: /dev/video0
I0705 14:18:39.850698 49263 usb_sensor_enumerator.cpp:177] Received the following message with available sensors from target: sensors_info {
storages {
name: "MX25U6435F"
}
}
I0705 14:18:39.852003 49263 camera_itof.cpp:116] Initializing camera
I0705 14:18:39.852012 49263 usb_depth_sensor_linux.cpp:114] Opening device
I0705 14:18:39.862829 49263 camera_itof.cpp:142] Current sensor firmware is: ./config/camera_configuration_walden.cfg
I0705 14:18:39.862839 49263 camera_itof.cpp:155] Current calibration file is: ./config/camera_calibration.ccb
I0705 14:18:39.862844 49263 camera_itof.cpp:173] Current Depth ini file is: ./config/RawToDepth.ini
I0705 14:18:39.875926 49263 camera_itof.cpp:219] Camera initialized
I0705 14:18:39.879431 49263 module_memory.cpp:54] Reading chunk id: ad3d
I0705 14:18:39.879443 49263 module_memory.cpp:55] Reading chunk revision: 1.0
I0705 14:18:39.882889 49263 module_memory.cpp:54] Reading chunk id: ad1
I0705 14:18:39.882900 49263 module_memory.cpp:55] Reading chunk revision: 1.0
I0705 14:18:45.158811 49263 module_memory.cpp:331] Found module memory CCB chunk, parsing...
I0705 14:18:45.158835 49263 module_memory.cpp:191] CCB file version: 303
I0705 14:18:45.158843 49263 module_memory.cpp:192] CCB calibration version: 301
I0705 14:18:45.158847 49263 module_memory.cpp:199] CCB file date: 2022--
I0705 14:18:45.158851 49263 module_memory.cpp:201] CCB chip ID: 5931
I0705 14:18:45.158855 49263 module_memory.cpp:202] CCB serial number: 00.11\d\ADI\Crosby_Output\159\ 5072992.1_2_40_17
I0705 14:18:45.158957 49263 module_memory.cpp:137] Writing temporary ccb file : /tmp/adi_tof_ccb.Rih3ad
I0705 14:18:45.163153 49263 module_memory.cpp:54] Reading chunk id: ad2
I0705 14:18:45.163164 49263 module_memory.cpp:55] Reading chunk revision: 1.0
I0705 14:18:46.930333 49263 module_memory.cpp:338] Found module memory CFG chunk, parsing...
I0705 14:18:46.930357 49263 module_memory.cpp:221] CFG file version: 1
I0705 14:18:46.930361 49263 module_memory.cpp:222] CFG configuration version: 1000.0
I0705 14:18:46.930364 49263 module_memory.cpp:223] CFG chip ID: 5931
I0705 14:18:46.930368 49263 module_memory.cpp:224] CFG system ID: 0
I0705 14:18:46.948560 49263 module_memory.cpp:137] Writing temporary cfg file : /tmp/adi_tof_cfg.dZ2cmf
I0705 14:18:46.948789 49263 module_memory.cpp:119] Writing temporary JSON file: /tmp/adi_tof_cfgjson.CO2kAe
{
"sensorFirmware": "/tmp/adi_tof_cfg.dZ2cmf",
"CCB_Calibration": "/tmp/adi_tof_ccb.Rih3ad"
}
I0705 14:18:46.948886 49263 camera_itof.cpp:116] Initializing camera
W0705 14:18:46.948918 49263 camera_itof.cpp:145] Duplicate firmware file ignored: /tmp/adi_tof_cfg.dZ2cmf
W0705 14:18:46.948995 49263 camera_itof.cpp:158] Duplicate calibration file ignored: /tmp/adi_tof_ccb.Rih3ad
I0705 14:18:46.949010 49263 camera_itof.cpp:173] Current Depth ini file is: ./config/RawToDepth.ini
I0705 14:18:46.963374 49263 camera_itof.cpp:219] Camera initialized
I0705 14:18:46.963426 49263 camera_itof.cpp:278] Chosen mode: mp
I0705 14:18:49.529914 49263 usb_depth_sensor_linux.cpp:185] Starting device
W0705 14:18:59.829526 49263 usb_depth_sensor_linux.cpp:189] VIDIOC_STREAMON, error:110(Connection timed out)
E0705 14:18:59.829566 49263 camera_itof.cpp:265] Error starting image sensor.
E0705 14:18:59.829707 49263 main.cpp:544] Could not start camera!
W0705 14:19:04.949548 49263 usb_linux_utils.cpp:304] Failed to write the length of the request string. Error: -1(Unknown error -1)
E0705 14:19:04.949621 49263 usb_storage_linux.cpp:271] Request close flash storage failed
Number of platforms 2 Platform Name Intel(R) CPU Runtime for OpenCL(TM) Applications Platform Vendor Intel(R) Corporation Platform Version OpenCL 2.1 LINUX Platform Profile FULL_PROFILE Platform Extensions cl_khr_icd cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_byte_addressable_store cl_khr_depth_images cl_khr_3d_image_writes cl_intel_exec_by_local_thread cl_khr_spir cl_khr_fp64 cl_khr_image2d_from_buffer cl_intel_vec_len_hint Platform Host timer resolution 1ns Platform Extensions function suffix INTEL Platform Name Intel(R) OpenCL HD Graphics Platform Vendor Intel(R) Corporation Platform Version OpenCL 3.0 Platform Profile FULL_PROFILE Platform Extensions cl_khr_byte_addressable_store cl_khr_fp16 cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_icd cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_intel_command_queue_families cl_intel_subgroups cl_intel_required_subgroup_size cl_intel_subgroups_short cl_khr_spir cl_intel_accelerator cl_intel_driver_diagnostics cl_khr_priority_hints cl_khr_throttle_hints cl_khr_create_command_queue cl_intel_subgroups_char cl_intel_subgroups_long cl_khr_il_program cl_intel_mem_force_host_memory cl_khr_subgroup_extended_types cl_khr_subgroup_non_uniform_vote cl_khr_subgroup_ballot cl_khr_subgroup_non_uniform_arithmetic cl_khr_subgroup_shuffle cl_khr_subgroup_shuffle_relative cl_khr_subgroup_clustered_reduce cl_intel_device_attribute_query cl_khr_suggested_local_work_size cl_intel_split_work_group_barrier cl_khr_fp64 cl_khr_subgroups cl_intel_spirv_device_side_avc_motion_estimation cl_intel_spirv_media_block_io cl_intel_spirv_subgroups cl_khr_spirv_no_integer_wrap_decoration cl_intel_unified_shared_memory cl_khr_mipmap_image cl_khr_mipmap_image_writes cl_intel_planar_yuv cl_intel_packed_yuv cl_intel_motion_estimation cl_intel_device_side_avc_motion_estimation cl_intel_advanced_motion_estimation cl_khr_int64_base_atomics cl_khr_int64_extended_atomics cl_khr_image2d_from_buffer cl_khr_depth_images cl_khr_3d_image_writes cl_intel_media_block_io cl_intel_va_api_media_sharing cl_intel_sharing_format_query cl_khr_pci_bus_info Platform Host timer resolution 1ns Platform Extensions function suffix INTEL Platform Name Intel(R) CPU Runtime for OpenCL(TM) Applications Number of devices 1 Device Name Intel(R) Core(TM) i7-8700K CPU @ 3.70GHz Device Vendor Intel(R) Corporation Device Vendor ID 0x8086 Device Version OpenCL 2.1 (Build 0) Driver Version 18.1.0.0920 Device OpenCL C Version OpenCL C 2.0 Device Type CPU Device Profile FULL_PROFILE Device Available Yes Compiler Available Yes Linker Available Yes Max compute units 12 Max clock frequency 3700MHz Device Partition (core) Max number of sub-devices 12 Supported partition types by counts, equally, by names (Intel) Supported affinity domains (n/a) Max work item dimensions 3 Max work item sizes 8192x8192x8192 Max work group size 8192 Preferred work group size multiple <getWGsizes:1171: create context : error -2> Max sub-groups per work group 1 Preferred / native vector sizes char 1 / 32 short 1 / 16 int 1 / 8 long 1 / 4 half 0 / 0 (n/a) float 1 / 8 double 1 / 4 (cl_khr_fp64) Half-precision Floating-point support (n/a) Single-precision Floating-point support (core) Denormals Yes Infinity and NANs Yes Round to nearest Yes Round to zero No Round to infinity No IEEE754-2008 fused multiply-add No Support is emulated in software No Correctly-rounded divide and sqrt operations No Double-precision Floating-point support (cl_khr_fp64) Denormals Yes Infinity and NANs Yes Round to nearest Yes Round to zero Yes Round to infinity Yes IEEE754-2008 fused multiply-add Yes Support is emulated in software No Address bits 64, Little-Endian Global memory size 33496264704 (31.2GiB) Error Correction support No Max memory allocation 8374066176 (7.799GiB) Unified memory for Host and Device Yes Shared Virtual Memory (SVM) capabilities (core) Coarse-grained buffer sharing Yes Fine-grained buffer sharing Yes Fine-grained system sharing Yes Atomics Yes Minimum alignment for any data type 128 bytes Alignment of base address 1024 bits (128 bytes) Preferred alignment for atomics SVM 64 bytes Global 64 bytes Local 0 bytes Max size for global variable 65536 (64KiB) Preferred total size of global vars 65536 (64KiB) Global Memory cache type Read/Write Global Memory cache size 262144 (256KiB) Global Memory cache line size 64 bytes Image support Yes Max number of samplers per kernel 480 Max size for 1D images from buffer 523379136 pixels Max 1D or 2D image array size 2048 images Base address alignment for 2D image buffers 64 bytes Pitch alignment for 2D image buffers 64 pixels Max 2D image size 16384x16384 pixels Max 3D image size 2048x2048x2048 pixels Max number of read image args 480 Max number of write image args 480 Max number of read/write image args 480 Max number of pipe args 16 Max active pipe reservations 21845 Max pipe packet size 1024 Local memory type Global Local memory size 32768 (32KiB) Max number of constant args 480 Max constant buffer size 131072 (128KiB) Max size of kernel argument 3840 (3.75KiB) Queue properties (on host) Out-of-order execution Yes Profiling Yes Local thread execution (Intel) Yes Queue properties (on device) Out-of-order execution Yes Profiling Yes Preferred size 4294967295 (4GiB) Max size 4294967295 (4GiB) Max queues on device 4294967295 Max events on device 4294967295 Prefer user sync for interop No Profiling timer resolution 1ns Execution capabilities Run OpenCL kernels Yes Run native kernels Yes Sub-group independent forward progress No IL version SPIR-V_1.0 SPIR versions 1.2 printf() buffer size 1048576 (1024KiB) Built-in kernels (n/a) Device Extensions cl_khr_icd cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_khr_byte_addressable_store cl_khr_depth_images cl_khr_3d_image_writes cl_intel_exec_by_local_thread cl_khr_spir cl_khr_fp64 cl_khr_image2d_from_buffer cl_intel_vec_len_hint Platform Name Intel(R) OpenCL HD Graphics Number of devices 1 Device Name Intel(R) UHD Graphics 630 [0x3e92] Device Vendor Intel(R) Corporation Device Vendor ID 0x8086 Device Version OpenCL 3.0 NEO Driver Version 22.28.23726.1 Device OpenCL C Version OpenCL C 1.2 Device Type GPU Device Profile FULL_PROFILE Device Available Yes Compiler Available Yes Linker Available Yes Max compute units 24 Max clock frequency 1200MHz Device Partition (core) Max number of sub-devices 0 Supported partition types None Supported affinity domains (n/a) Max work item dimensions 3 Max work item sizes 256x256x256 Max work group size 256 Preferred work group size multiple 32 Max sub-groups per work group 32 Sub-group sizes (Intel) 8, 16, 32 Preferred / native vector sizes char 16 / 16 short 8 / 8 int 4 / 4 long 1 / 1 half 8 / 8 (cl_khr_fp16) float 1 / 1 double 1 / 1 (cl_khr_fp64) Half-precision Floating-point support (cl_khr_fp16) Denormals Yes Infinity and NANs Yes Round to nearest Yes Round to zero Yes Round to infinity Yes IEEE754-2008 fused multiply-add Yes Support is emulated in software No Single-precision Floating-point support (core) Denormals Yes Infinity and NANs Yes Round to nearest Yes Round to zero Yes Round to infinity Yes IEEE754-2008 fused multiply-add Yes Support is emulated in software No Correctly-rounded divide and sqrt operations Yes Double-precision Floating-point support (cl_khr_fp64) Denormals Yes Infinity and NANs Yes Round to nearest Yes Round to zero Yes Round to infinity Yes IEEE754-2008 fused multiply-add Yes Support is emulated in software No Address bits 64, Little-Endian Global memory size 26797010944 (24.96GiB) Error Correction support No Max memory allocation 4294959104 (4GiB) Unified memory for Host and Device Yes Shared Virtual Memory (SVM) capabilities (core) Coarse-grained buffer sharing Yes Fine-grained buffer sharing No Fine-grained system sharing No Atomics No Minimum alignment for any data type 128 bytes Alignment of base address 1024 bits (128 bytes) Preferred alignment for atomics SVM 64 bytes Global 64 bytes Local 64 bytes Max size for global variable 65536 (64KiB) Preferred total size of global vars 4294959104 (4GiB) Global Memory cache type Read/Write Global Memory cache size 786432 (768KiB) Global Memory cache line size 64 bytes Image support Yes Max number of samplers per kernel 16 Max size for 1D images from buffer 268434944 pixels Max 1D or 2D image array size 2048 images Base address alignment for 2D image buffers 4 bytes Pitch alignment for 2D image buffers 4 pixels Max 2D image size 16384x16384 pixels Max planar YUV image size 16384x16352 pixels Max 3D image size 16384x16384x2048 pixels Max number of read image args 128 Max number of write image args 128 Max number of read/write image args 128 Max number of pipe args 16 Max active pipe reservations 1 Max pipe packet size 1024 Local memory type Local Local memory size 65536 (64KiB) Max number of constant args 8 Max constant buffer size 4294959104 (4GiB) Max size of kernel argument 2048 (2KiB) Queue properties (on host) Out-of-order execution Yes Profiling Yes Queue properties (on device) Out-of-order execution No Profiling No Preferred size 0 Max size 0 Max queues on device 0 Max events on device 0 Prefer user sync for interop Yes Profiling timer resolution 83ns Execution capabilities Run OpenCL kernels Yes Run native kernels No Sub-group independent forward progress Yes IL version SPIR-V_1.2 SPIR versions 1.2 printf() buffer size 4194304 (4MiB) Built-in kernels block_motion_estimate_intel;block_advanced_motion_estimate_check_intel;block_advanced_motion_estimate_bidirectional_check_intel; Motion Estimation accelerator version (Intel) 2 Device-side AVC Motion Estimation version 1 Supports texture sampler use Yes Supports preemption No Device Extensions cl_khr_byte_addressable_store cl_khr_fp16 cl_khr_global_int32_base_atomics cl_khr_global_int32_extended_atomics cl_khr_icd cl_khr_local_int32_base_atomics cl_khr_local_int32_extended_atomics cl_intel_command_queue_families cl_intel_subgroups cl_intel_required_subgroup_size cl_intel_subgroups_short cl_khr_spir cl_intel_accelerator cl_intel_driver_diagnostics cl_khr_priority_hints cl_khr_throttle_hints cl_khr_create_command_queue cl_intel_subgroups_char cl_intel_subgroups_long cl_khr_il_program cl_intel_mem_force_host_memory cl_khr_subgroup_extended_types cl_khr_subgroup_non_uniform_vote cl_khr_subgroup_ballot cl_khr_subgroup_non_uniform_arithmetic cl_khr_subgroup_shuffle cl_khr_subgroup_shuffle_relative cl_khr_subgroup_clustered_reduce cl_intel_device_attribute_query cl_khr_suggested_local_work_size cl_intel_split_work_group_barrier cl_khr_fp64 cl_khr_subgroups cl_intel_spirv_device_side_avc_motion_estimation cl_intel_spirv_media_block_io cl_intel_spirv_subgroups cl_khr_spirv_no_integer_wrap_decoration cl_intel_unified_shared_memory cl_khr_mipmap_image cl_khr_mipmap_image_writes cl_intel_planar_yuv cl_intel_packed_yuv cl_intel_motion_estimation cl_intel_device_side_avc_motion_estimation cl_intel_advanced_motion_estimation cl_khr_int64_base_atomics cl_khr_int64_extended_atomics cl_khr_image2d_from_buffer cl_khr_depth_images cl_khr_3d_image_writes cl_intel_media_block_io cl_intel_va_api_media_sharing cl_intel_sharing_format_query cl_khr_pci_bus_info NULL platform behavior clGetPlatformInfo(NULL, CL_PLATFORM_NAME, ...) No platform clGetDeviceIDs(NULL, CL_DEVICE_TYPE_ALL, ...) No platform clCreateContext(NULL, ...) [default] No platform clCreateContext(NULL, ...) [other] <checkNullCtx:2758: create context with device from non-default platform : error -2> clCreateContextFromType(NULL, CL_DEVICE_TYPE_DEFAULT) No devices available in platform clCreateContextFromType(NULL, CL_DEVICE_TYPE_CPU) No devices available in platform clCreateContextFromType(NULL, CL_DEVICE_TYPE_GPU) No devices found in platform clCreateContextFromType(NULL, CL_DEVICE_TYPE_ACCELERATOR) No devices found in platform clCreateContextFromType(NULL, CL_DEVICE_TYPE_CUSTOM) No devices found in platform clCreateContextFromType(NULL, CL_DEVICE_TYPE_ALL) No devices available in platform NOTE: your OpenCL library only supports OpenCL 2.2, but some installed platforms support OpenCL 3.0. Programs using 3.0 features may crash or behave unexpectedly
Added log for error on running data_collect
[edited by: ssingh at 9:25 AM (GMT -4) on 5 Jul 2023]