Astra Mini - No ColorStream?

I’ve been testing our software with the Astra Mini and I’m getting very unusual behaviour when trying to access the RGB data from the sensor.

Case 1: Multiple cameras connected
If I have multiple sensor connected to the computer (1x Astra Pro, 1x Astra, 1x Astra Mini) when I open the ColorStream from the Astra Mini I actually get color data delivered from one of the other cameras. Using the exact same StreamReader instance, I can get the Astra Mini’s depth stream just fine. But when opening the ColorStream I’m simply getting a different physical sensor’s colour data.

Case 2: Just the mini connected
If I disconnect all the other sensors except the Astra Mini, I simply get no color data at all. Running the SimpleColorViewer-SFML example gives me a blank, black window. In the terminal the following two messages are displayed:

2018-01-25 16:34:00,889 ERROR [orbbec.ni.WmfColorStream] WMF device has no compatible stream profiles.
2018-01-25 16:34:00,891 ERROR [orbbec.ni.device_streamset] could not open wmf color stream

SimpleDepthViewer-SFML works as-expected, and delivers the depth data from the Astra Mini without a problem.

Does anyone have any idea why I can’t get colour data from my Astra Mini? And why does the StreamReader instance that delivers depth data from the Mini deliver colour data from a completely different sensor if a second sensor is connected?

Does the Mini require an additional DLL in the application directory in order to function properly, and it’s just a case of needing to copy that? Or is there an updated driver I need to fix this?

If you need additional information please ask away and I’ll provide whatever you need.

Follow-up with some additional information. I wrote a second class to grab data from the Astra, this time using OpenNI2 (via the NiWrapper.Net.x64 package on NuGet) instead of the Astra SDK + .NET wrapper.

Using OpenNI I am able to get the colour and depth data from the Mini and the Astra (though the colour data from the Astra Pro does not work – this is a known problem though, so I’m not especially worried about that).

So this rules out the possibility that there’s a hardware problem with my Mini. As far as I can tell, the root of the issue must lie with the native SDK somewhere. (Since the problem happens with the pre-compiled *-SFML demos I’m confident saying it’s not a problem with the .NET wrapper itself.)

I just updated to the new SDK 2.0.8beta2, but I’m still encountering the same errors when trying to access the Astra Mini’s colour data.

Has anyone else encountered this?

Hi chrisib,

Thanks for these valuable information. We are working on a fix for this now. It is expected to be solved with our next release.

No problem. Glad to hear the issue is being addressed. Thanks!

Any news on when this bug will be fixed? The latest release is from almost two months ago now. We’d really like to move forward with using the official Astra SDK for our products instead of relying on OpenNI + third-party wrappers, but until this get’s fixed we’re kind of stuck.

Hi chrisib,

Thanks for asking. Orbbec SDK team is working very hard fixing any possible issues of Astra SDK beta release. An updated version is in the process. You should be able to see it available very soon.

Also, I am seeing a problem with the Mini that does not happen with my Astra Pro:
Running any sample (for example,SimpleDepthViewer-SFML) fails as follows:
2018-03-23 13:20:00,337 ERROR [orbbec.ni.LibuvcColorStream] unable to find a libuvc device: No such device
2018-03-23 13:20:00,337 ERROR [orbbec.ni.device_streamset] could not open libuvc device
Segmentation fault

But:

  1. Astra Pro works fine.
  2. Astra Pro and Astra Mini bot work fine using OpenNI samples, such as SimpleViewer.

Is this a known bug? I’ve tried reinstalling the orbbec-usb.rules using install.sh.

Note: fails in the “astra_initialize” call from the sample…

Hey,

is there any update on this?
I received an Astra Embedded S today and I get the same error message in the log as well as following stream when running the sample app: MaskedColorViewer-SFML.exe

see video: Masked Color Viewer 2019-05-02 13-53-34.mp4 - Google Drive

Any help here?

Hi felix,

It seems like you haven’t click “D” when running the “MaskedColorViewer”.
Give it a try and you could get a stable stream.

Wan

On Ubuntu, adding rules in /etc/udev/rules.d/558-orbbec-usb.rules seems to fix that issue on my computer.

The line I added is : SUBSYSTEM=="usb", ATTR{idProduct}=="0502", ATTR{idVendor}=="2bc5", MODE:="0666", OWNER:="root", GROUP:="video"
but the idProduct and idVendor is found doing lsusb : Bus 003 Device 013: ID 2bc5:0502 (compare lsusb with device plugged and unplugged)