Color stream not available

Hi everybody.

I have installed OpenNI2 on my Jetson Nano and then replugged the ASTRA cam as described in the SDK guidelines.
The example Python script for getting the depth image works fine.

I have modified the example script in order to get the color image, but it doesn’t work.

More precisely, through OpenNI2 I can see that the device does not have the solor sensor: dev.has_sensor(OniSensorType.ONI_SENSOR_COLOR) returns False

The log file contains:

 2824	INFO      	Log	XnLog.cpp	349	New log started on 2020-09-04 12:03:23
 2880	INFO      	Log	XnLog.cpp	322	--- Filter Info --- Minimum Severity: VERBOSE
 2923	VERBOSE   	OniContext	OniContext.cpp	165	OpenNI 2.3.0 (Build 63)-Linux-Arm (May 13 2019 17:45:57)
 2937	VERBOSE   	OniContext	OniContext.cpp	168	Configuration file found at '/home/nvidia/OpenNI-2.3.0.63/Redist/OpenNI.ini'
 3046	VERBOSE   	OniContext	OniContext.cpp	259	Using '/home/nvidia/OpenNI-2.3.0.63/Redist/OpenNI2/Drivers' as driver path
 3059	VERBOSE   	OniContext	OniContext.cpp	267	Looking for drivers at '/home/nvidia/OpenNI-2.3.0.63/Redist/OpenNI2/Drivers'
 3252	VERBOSE   	OniContext	OniContext.cpp	309	Loading device driver 'libOniFile.so'...
 3280	WARNING   	xnOS	XnLinuxSharedLibs.cpp	107	loading lib from: /home/nvidia/OpenNI-2.3.0.63/Redist/OpenNI2/Drivers/libOniFile.so
 3967	VERBOSE   	OniContext	OniContext.cpp	309	Loading device driver 'libPSLink.so'...
 4002	WARNING   	xnOS	XnLinuxSharedLibs.cpp	107	loading lib from: /home/nvidia/OpenNI-2.3.0.63/Redist/OpenNI2/Drivers/libPSLink.so
 4881	WARNING   	DriverHandler	OniDriverHandler.cpp	85	LibraryHandler: Couldn't find function oniDriverStreamConvertC2DCoordinates in libPSLink.so. Stopping
 4930	WARNING   	OniContext	OniContext.cpp	313	Couldn't use file 'libPSLink.so' as a device driver
 4949	VERBOSE   	OniContext	OniContext.cpp	309	Loading device driver 'liborbbec.so'...
 4975	WARNING   	xnOS	XnLinuxSharedLibs.cpp	107	loading lib from: /home/nvidia/OpenNI-2.3.0.63/Redist/OpenNI2/Drivers/liborbbec.so
 6390	INFO      	Log	XnLog.cpp	349	New log started on 2020-09-04 12:03:23
 6420	INFO      	Log	XnLog.cpp	322	--- Filter Info --- Minimum Severity: VERBOSE
 6436	VERBOSE   	xnUSB	XnLinuxUSB.cpp	383	Initializing USB...
13837	INFO      	xnUSB	XnLinuxUSB.cpp	412	USB is initialized.
14032	INFO      	OniDeviceDriver	OniDeviceDriver.cpp	139	Device connected: Orbbec Astra (2bc5/0403@1/8)
15049	VERBOSE   	OniContext	OniContext.cpp	461	Trying to open device by URI '(NULL)'
16664	VERBOSE   	DeviceSensor	XnSensor.cpp	425	Initializing device sensor...
16817	VERBOSE   	DDK	XnDeviceModule.cpp	601	Configuring module 'Device' from section 'Device' in file '/home/nvidia/OpenNI-2.3.0.63/Redist/OpenNI2/Drivers/orbbec.ini'...
16927	INFO      	DDK	XnProperty.cpp	71	Setting Device.UsbInterface to 2...
16942	INFO      	DDK	XnProperty.cpp	81	Device.UsbInterface value did not change.
18479	INFO      	DDK	XnDeviceModule.cpp	615	Module 'Device' configuration was loaded from file.
18510	VERBOSE   	DeviceIO	XnDeviceSensorIO.cpp	47	Connecting to USB device...
18524	VERBOSE   	DeviceIO	XnDeviceSensorIO.cpp	50	Trying to open sensor '2bc5/0403@1/8'...
18636	INFO      	xnUSB	XnLinuxUSB.cpp	732	USB is high Speed
18655	VERBOSE   	xnUSB	XnLinuxUSB.cpp	426	Starting libusb asynch thread...
19153	WARNING   	xnOS	XnLinuxThreads.cpp	185	Failed to set thread priority (1)
19178	WARNING   	xnUSB	XnLinuxUSB.cpp	444	USB events thread: Failed to set thread priority to critical. This might cause loss of data...
19218	VERBOSE   	DeviceIO	XnDeviceSensorIO.cpp	55	Trying to open endpoint 0x4 for control out (for old firmwares)...
19323	INFO      	DeviceIO	XnDeviceSensorIO.cpp	76	Connected to USB device
24151	VERBOSE   	DeviceSensorProtocol	XnHostProtocol.cpp	1615	Getting hardware versions...
35710	INFO      	DeviceSensorProtocol	XnHostProtocol.cpp	1777	Hardware versions: FW=5.8.22 (14) HW=0 Chip=6 Sensor=0 SYS=12
47232	WARNING   	DeviceSensorProtocol	XnHostProtocol.cpp	1094	Received NACK: 2
47261	INFO      	DeviceSensorProtocol	XnHostProtocol.cpp	3540	Reading CMOS 0 supported presets...
48187	VERBOSE   	DeviceSensorProtocol	XnHostProtocol.cpp	1786	Requesting KeepAlive...
48736	VERBOSE   	DeviceSensorProtocol	XnHostProtocol.cpp	1797	Got KeepAlive Reply.
48759	VERBOSE   	DeviceSensorProtocol	XnHostProtocol.cpp	2121	Setting mode to 3...
50288	VERBOSE   	DeviceSensorProtocol	XnHostProtocol.cpp	1786	Requesting KeepAlive...
50835	VERBOSE   	DeviceSensorProtocol	XnHostProtocol.cpp	1797	Got KeepAlive Reply.
51314	VERBOSE   	DeviceSensorProtocol	XnHostProtocol.cpp	1955	Getting the fixed params...
51922	INFO      	DeviceSensorProtocol	XnHostProtocol.cpp	3589	Reading sensor serial number...
52431	VERBOSE   	DeviceSensor	XnSensorFixedParams.cpp	80	Sensor serial number: 19110230018
52456	VERBOSE   	DeviceSensorProtocol	XnHostProtocol.cpp	2666	Getting algorithm params 0x7 for resolution 0 and fps 0....
52957	INFO      	DeviceSensorProtocol	XnHostProtocol.cpp	3624	Reading sensor platform string...
53435	VERBOSE   	DDK	XnProperty.cpp	146	Property Firmware.ReferenceResolution was changed to 2.
53450	VERBOSE   	DeviceSensor	XnSensorFirmwareParams.cpp	295	Reading all params from firmware...
55492	VERBOSE   	DDK	XnProperty.cpp	146	Property Firmware.ImageAutoWhiteBalance (77) was changed to 1.
56476	VERBOSE   	DDK	XnProperty.cpp	146	Property Firmware.ImageLowLightCompensation (82) was changed to 1.
57012	VERBOSE   	DDK	XnProperty.cpp	146	Property Firmware.DepthHoleFilter (22) was changed to 1.
59023	VERBOSE   	DDK	XnProperty.cpp	146	Property Firmware.IRResolution (26) was changed to 1.
60672	VERBOSE   	DDK	XnProperty.cpp	146	Property Firmware.ImageFPS (14) was changed to 30.
61097	VERBOSE   	DDK	XnProperty.cpp	146	Property Firmware.GMCMode (36) was changed to 1.
62215	VERBOSE   	DDK	XnProperty.cpp	146	Property Firmware.ImageAutoExposure (80) was changed to 1.
62765	VERBOSE   	DDK	XnProperty.cpp	146	Property Firmware.DepthFPS (20) was changed to 30.
63971	VERBOSE   	DDK	XnProperty.cpp	146	Property Firmware.DepthWhiteBalance (45) was changed to 1.
65466	VERBOSE   	DDK	XnProperty.cpp	146	Property Firmware.ImageFormat (12) was changed to 5.
67237	VERBOSE   	DDK	XnProperty.cpp	146	Property Firmware.DepthFormat (18) was changed to 3.
68186	VERBOSE   	DDK	XnProperty.cpp	146	Property Firmware.DepthMirror (23) was changed to 1.
70163	VERBOSE   	DDK	XnProperty.cpp	146	Property Firmware.IRFPS (27) was changed to 30.
71503	VERBOSE   	DDK	XnProperty.cpp	146	Property Firmware.ImageQuality (16) was changed to 3.
72073	VERBOSE   	DDK	XnProperty.cpp	146	Property Firmware.ImageSharpness (76) was changed to 32.
73345	VERBOSE   	DDK	XnProperty.cpp	146	Property Firmware.DepthGain (21) was changed to 42.
75210	VERBOSE   	DDK	XnProperty.cpp	146	Property Firmware.IRFormat (25) was changed to 300.
76516	VERBOSE   	DDK	XnProperty.cpp	146	Property Firmware.ImageResolution (13) was changed to 1.
77659	VERBOSE   	DDK	XnProperty.cpp	146	Property Firmware.ImageBacklightCompensation (79) was changed to 1.
78215	VERBOSE   	DDK	XnProperty.cpp	146	Property Firmware.DepthResolution (19) was changed to 1.
80672	VERBOSE   	DeviceSensor	XnSensorFirmwareParams.cpp	304	Firmware params were updated.
80744	INFO      	DDK	XnProperty.cpp	146	Property Device.PhysicalDeviceName was changed to Mx6000 Astra Pro.
80760	INFO      	DDK	XnProperty.cpp	146	Property Device.VendorData was changed to Orbbec(R) Astra(TM) 3D Camera.
80773	INFO      	DDK	XnProperty.cpp	146	Property Device.ID was changed to 19110230018.
80785	INFO      	DDK	XnProperty.cpp	146	Property Device.SensorPlatformString was changed to RD2403.
81799	WARNING   	DeviceSensorProtocol	XnHostProtocol.cpp	1094	Received NACK: 65535
81817	INFO      	DeviceSensor	XnSensor.cpp	467	Device sensor initialized
86645	VERBOSE   	DeviceSensor	XnDeviceSensorIO.cpp	250	Shutting down USB depth read thread...
86684	VERBOSE   	DeviceSensor	XnDeviceSensorIO.cpp	260	Shutting down USB image read thread...
86808	VERBOSE   	xnUSB	XnLinuxUSB.cpp	460	Shutting down USB events thread...
87036	VERBOSE   	DeviceSensor	XnDeviceSensorIO.cpp	307	Device closed successfully
87063	VERBOSE   	Scheduler	XnScheduler.cpp	168	Shutting down Scheduler thread...
88109	VERBOSE   	DeviceSensor	XnDeviceSensorIO.cpp	250	Shutting down USB depth read thread...
88138	VERBOSE   	DeviceSensor	XnDeviceSensorIO.cpp	260	Shutting down USB image read thread...
88179	VERBOSE   	DeviceSensor	XnDeviceSensorIO.cpp	307	Device closed successfully

Maybe there is something relevant at lines 4930 and 19178 but I don’t know what to do about them.

How can I get a frame from the color stream?

1 Like

I face exactly the same problem for Orbbec Astra Stereo S USB 3.0. Can someone please help?

I came to know that the problem is with python version of OpenNI2 or OpenNI2 itself, which has no support for color stream. You can get the color streams if you use Astra SDK in C++.