Thanks for reaching out!
You are using librealsense on your project, right? I'm asking since you are on Ubuntu but also using both a R200 and a SR300 at the same time.
This is a very specific issue since it is only happening when using both cameras and capturing at 1080p. If you are indeed using librealsense I would suggest you to submit an issue in librealsense's github (https://github.com/IntelRealSense/librealsense/issues), there you might be able to communicate directly to its developers and inform them of this specific scenario.
Keep us updated.
I was checking your post again and I notice that I've overlooked the fact that you are using an Nvidia TX1. This board doesn't have an Intel processor, therefore, it is not officially supported by the RealSense cameras. Due to this we won't be able to help you with the issue described above on your board.
Nevertheless, you also reported that the same issue is happening with the Thinkpad T460, we would like to reproduce what you are describing to see if we get a similar result on our end.
Could you please provide us the code you are using on your project? Once we have it we'll try to replicate the issue and get back to you.
We'll be waiting for your response.
Thanks a lot for you advise.
Here is my code. I only changed the two highlight line.
// License: Apache 2.0. See LICENSE file in root directory.
// Copyright(c) 2015 Intel Corporation. All Rights Reserved.
int main(int argc, char * argv) try
if(ctx.get_device_count() == 0) throw std::runtime_error("No device detected. Is it plugged in?");
// Enumerate all devices
std::vector<rs::device *> devices;
for(int i=0; i<ctx.get_device_count(); ++i)
// Configure and start our devices
for(auto dev : devices)
std::cout << "Starting " << dev->get_name() << "... ";
dev->enable_stream(rs::stream::depth, 640, 480, rs::format::z16, 30);
dev->enable_stream(rs::stream::color, 1920, 1080, rs::format::rgb8, 30);
std::cout << "done." << std::endl;
// Depth and color
buffers.resize(ctx.get_device_count() * 2);
// Open a GLFW window
std::ostringstream ss; ss << "CPP Multi-Camera Example";
GLFWwindow * win = glfwCreateWindow(1280, 960, ss.str().c_str(), 0, 0);
int windowWidth, windowHeight;
glfwGetWindowSize(win, &windowWidth, &windowHeight);
// Does not account for correct aspect ratios
auto perTextureWidth = int(windowWidth / devices.size());
auto perTextureHeight = 480;
// Wait for new images
// Draw the images
glfwGetFramebufferSize(win, &w, &h);
glViewport(0, 0, w, h);
glfwGetWindowSize(win, &w, &h);
glOrtho(0, w, h, 0, -1, +1);
int i=0, x=0;
for(auto dev : devices)
const auto c = dev->get_stream_intrinsics(rs::stream::color), d = dev->get_stream_intrinsics(rs::stream::depth);
buffers[i++].show(*dev, rs::stream::color, x, 0, perTextureWidth, perTextureHeight);
buffers[i++].show(*dev, rs::stream::depth, x, perTextureHeight, perTextureWidth, perTextureHeight);
x += perTextureWidth;
catch(const rs::error & e)
std::cerr << "RealSense error calling " << e.get_failed_function() << "(" << e.get_failed_args() << "):\n " << e.what() << std::endl;
catch(const std::exception & e)
std::cerr << e.what() << std::endl;
I'm not sure what might be happening, I'd suggest you to try with another PC (if possible) to see if the issue persists in order to see if the issue is not environmental.
I don't have another PC to do this test.
For this problem, I'm discussing at gihub "Issues while using two realsense · Issue #468 · IntelRealSense/librealsense · GitHub ".
Unfortunately, I didn't solve it.
I understand. Unfortunately, we are not able to replicate the behavior you are experiencing, so, I would imagine that it is probably related to your specific environment. However, if you have any news, please keep us updated. I'm sure any information you can provide will be of help for other users that are in a similar situation.