FIXED: Intel Realsense D435 - failed to initialize the realsense cross platform API

Hi there,

I’m trying to get the Intel Realsense D435 to work with Touchdesigner. I’ve read the docs and info I found, and I deducted that I need to use the firmware that match the SDK version included in Touchdesigner. I’m using the latest Touch version (2021.11180), and I found in the release notes that the SDK used is 2.36.0. Is that correct?

Also I couldn’t find which firmware I have to use. When I first installed the SDK 2.42.0, I had an error saying that I need the firmware But now that I downgraded the SDK to 2.36.0, the only error I get is “failed to initialize the intel realsense cross platform API”… (I also specify that everything works fine with the Realsense Viewer)

To sum things up for now I have:
- SDK 2.36.0
- Firmware
- Touch 2021.11180
=> the error "failed to initialize the intel realsense cross platform API"

Can you help me with this? What am I missing?
Also it might be a good idea to add this kind of info (which firmware to use for example) directly in the RealSense - Derivative page. :wink:

Thanks in advance for your help!

Once you install the SDK, you should open the RealSense Viewer in that SDK version and install the firmware using that.

Thanks for the answer. That’s exactly what I did for the firmware, so the problem wasn’t coming from there. I kept trying different stuff, and apparently I had some problems with my USB ports. Fixed it, and voila, now I have my two realsense working fine in Touchdesigner! :smiley:

So just for those who are trying to find the info, I can confirm that this is a good combination:
- SDK 2.36.0 → found in the release notes
- Firmware
- Touch 2021.11180

Thanks @malcolm for your quick answer!

I used this same exact combination, to no success. I’m still getting “Failed to Initialize the realsense cross platform API.”

I forced the upgrade of the firmware (Like you, I was getting an error insisting I upgrade to the, which is higher than the documented SDK of 2.36.0)

Hey @dsamford,
I can’t remember where I found the info after trying so many things,
but now I’m using the SDK 2.38.1 (which match the firmware)
After installing the SDK, launch the RealSense Viewer to upgrade to this firmware.
Good luck!

That’s exactly where I started…I guess I’ll give going back to 2.38.1 a shot ((I saw that version in the debug logs)…but that didn’t get me there either before.

(2.38.1 is the version that contains the drivers. There’s very clearly a hotfix in the 2.38 line, so I’m curious if there’s a weird timing issue here)

2.38.1 is the correct version for the 2021.10000 series. I’ll update the help so you aren’t looking through the release notes for this.

I figured out why it doesn’t work, and the debugging falls apart here.

TouchDesigner seems to make a bunch of assumptions about USB 3 mode with the RealSense. Unfortunately, something happened with my cable, and it was negotiating at USB2. As soon as I plugged in a cable that negotiated USB 3, my problem was resolved.

It may be helpful to have a warning if the USB Type Descriptor for the device is showing negotiated as USB 2.

As far as I know RealSense requires USB3. We are far removed from the hardware and really just ask the RealSense SDK for devices, if they are available. I’m not sure we have a way to detect the USB connection etc, since as far as RealSense is telling us, there isn’t even a device there.

Pretty sure it’s a resolution thing. Asking for the device at a higher frame rate than it supports in usb2 resets it.

The device works in realviewer, which is why I had some confusion at first.

I am experiencing a very similar problem, however with the D455 model.

RGB, Depth, Raw Depth, Infrared and Point Cloud works fine in TD. However when activating one of the modes “Depth Aligned to Color”, “Color Aligned to Depth” or “Point Cloud Color UVs”, I receive the error “Failed to initialize the Intel Realsense Cross Platform API”

Realsense Viewer reports a USB 3.2 connection and works fine while showing Stereo and RGB streams simultaneously.

  • Realsense Model D455
  • SDK 2.38.1
  • Firmware
  • Touch 2021.10330

So it shouldn’t be a cable issue, and the SDK and firmware version should be correct.

@Lux_Nautilus gave me a tip on Discord to fix this issue.
If you put in a RealSense TOP first set to RGB and then add another RealSense TOP, then you can pick between all the settings. You can even remove the first top again.
However when Touchdesigner restarts you have to make sure that the RGB TOP starts up first again, otherwise the second RealSense TOP will not work.

Thanks for sharing that, that’s a good hint I’ll take a closer look at.

1 Like

The issue caused by the Color stream not being started first will be fixed in builds 2021.12490 and later. Thanks for your patience and reports!

1 Like

I thought I had it working at one point, but now I’m unable to get the RealSense TOP to recognize the camera. I’m on macOS Big Sur. It displays correctly in the realsense-viewer and in an Openframeworks executable I wrote that uses the ofxRealSense2 addon.
Currently using

  • Realsense Model D435
  • SDK 2.32.1
  • Firmware
  • Touch 2021.12380
  1. The RealSense page in the Derivative doc still says " D415, D435, D435i and T265 cameras are currently disabled on macOS due to bugs in the Intel librealsense API.". Is that still true? If so, problem explained.
  2. Couldn’t find the 2.38 SDK on the Intel site - anyone have a link? Is that Windows only? (Their MacOS support has been lagging and incomplete).