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 5.12.7.100. 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 5.12.7.100
- 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 5.12.7.100
- 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 5.12.7.100, 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 5.12.7.100 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 5.12.7.100 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.

1 Like

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 05.12.07.100
  • 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 05.12.07.100
  • 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).

Thanks.

2021.12380 does not contain the fix. You need to use a build 2021.12490 or later. That note is old and I’ve removed it from the docs, thanks for pointing that out.

To find releases you should look through the releases on the librealsense github page:

For macOS though you need to manually compile the SDK using XCode, they don’t provide pre-compiled versions yet

Hi there,
I am having the same issue reported here, but with the D435i model. I have been following the steps other users reported, but have not been successful so far.

Currently using:
Windows laptop on Windows 10.
TD build 2021.15800
Intel Realsense D435i
SDK 2.44.0
Firmware 05.12.12.100

RGB, Depth, Raw Depth and Point Cloud all work in TD. However, the Infrared shows the “failed to initialize the intel realsense cross platform API”.

I am following the proper steps for installing the SDK and updating the Firmware. Have also tried SDK 2.38 with the matching Firmware (05.07.100), but TD shows up an error requesting the update. Have checked USB ports and cables, and nothing seems to be amiss.

Have I missed something? What could be triggering the issue?

Thanks in advance for your help!

I am having the same issue with D435 model.
key point to fix this is:
1,upgrade realsense firmware to lastest version using RealSense Viewer.
2,(Importent!)plug realsense to USB 3.0(or above) port.

Hi,
I am getting the same error with the D455 model. I am using the Intel.RealSense.SDK-WIN10-2.51.1.4348 SDK and its corresponding viewer. I’m getting feedback on the RealSense viewer.

I’m running Touchdesigner 2022.28040 non commercial version.