EXC_BAD_ACCESS On MacOS
Hi
I just received my L515 camera and I'm trying to run some code examples on MacOS.
For instance I'm able to compile rs-hello-realsense, but when it comes to run the example I have an exception EXC_BAD_ACCESS, line 161 of the file hid-device.cpp.
on the call: r = _messenger->create_request(get_hid_endpoint());:
The same issue occurs with several other example.
The interesting thing is that the app RealSense-viewer seems to work well.
Is anyone have an idea?
Best regards
D.
-
Official comment
Hello David,
The RealSense L515, as well as other RealSense cameras that have an IMU, do not fully function on Mac. We have found that RGB may work, but Depth and IMU streaming do not work. Our engineering team is looking further into this but there is no timeframe for a fix yet.
This is caused by issue in Mac OS with libusb, its fairly wide-spread, affecting different HID devices (IMU, joysticks, etc..)
See:
https://github.com/libusb/libusb/issues/158
https://github.com/pyusb/pyusb/issues/208
https://pyusb-users.narkive.com/ZUDlHEA7/help-with-reading-data-from-hid-device
https://stackoverflow.com/questions/20253350/unable-to-claim-usb-interface-with-c-libusb-on-mac-os-xComment actions -
Hi Jesus
I understand; thanks for the investigation and the summary.
I did test on a fresh installed macOS, means that
kextstat | grep -v apple
return nothing, and it does not work too.
Anyway, since my cameras do not work on Mac, at least for now, what is procedure to return them?
Best regards
David
-
Hello David,
- If you purchased your camera from the Intel RealSense Store, please sign in to your account on http://www.intelrealsense.com and go to My Account -> My Orders -> Return or Replace Items or open a ticket here.
- If you did not purchase your Intel RealSense Camera from the Intel Store, contact your distributor for a return.
-
Hello David,
Before you return the cameras, have you considered moving to a different platform such as a Windows or Linux host?
Also, do you require the IMU capability of the L515 or do you just need depth and RGB?
The IMU not working is a known issue but our engineers say depth is supposed to work. They are looking into the problem with depth on MacOS.
Regards,
Intel RealSense Customer Support
-
Hello David,
Thank you for your explanation.
Unfortunately, a Linux VM on your MacOS will not solve your problem. RealSense cameras do not work well in virtual environments, much less when the host operating system is not fully supported.
Do you require IMU capabilities?
Regards,
Intel RealSense Customer Support
-
We too was looking forward to developing for the Mac. D455 just arrived.
Ps. I'm not Intel, as the name suggests. Might be taking the first part of the email i've used intel@emers.. -
Hi Garcia,
I ran into the same problem and while searching I found this thread.
I am using an Mac Book Pro with 11.4 and a L515 attached with USB 3.
The connection between the camera and realsense library is unstable.
The
hello-realsense
tool either says it cannot find the camer or not claim the USB 7 port.
After reeboting the system the camera works for a while and then suddenly crashes.
With the above result. Have you found a solution to the connection problem?
Greetings
Philip
-
Thats part of the crash log from
./rs-capture .
The tool did run for a while with
RGB, depth and infrared plus gyroscoeope
but when it started it showed:
Philips-MBP:capture philipbroser$ ./rs-capture
26/07 23:03:20,455 ERROR [0x1130d6e00] (handle-libusb.h:95) failed to claim usb interface: 7, error: RS2_USB_STATUS_ACCESS
26/07 23:03:20,456 ERROR [0x1130d6e00] (handle-libusb.h:95) failed to claim usb interface: 7, error: RS2_USB_STATUS_ACCESS
it ran for about 20 seconds and then crashed:
Process: rs-capture [5032]Path: /Users/USER/Documents/*/rs-captureIdentifier: rs-captureVersion: 0Code Type: X86-64 (Native)Parent Process: bash [1099]Responsible: Terminal [546]User ID: 501Date/Time: 2021-07-26 23:04:08.296 +0200OS Version: macOS 11.4 (20F71)Report Version: 12Bridge OS Version: 5.4 (18P4663)Anonymous UUID: 9ECADC66-5F87-D26B-C9B3-8082EDE18AC3Time Awake Since Boot: 2700 secondsSystem Integrity Protection: enabledCrashed Thread: 35Exception Type: EXC_BAD_ACCESS (SIGSEGV)Exception Codes: KERN_INVALID_ADDRESS at 0x0000000000000000Exception Note: EXC_CORPSE_NOTIFYTermination Signal: Segmentation fault: 11Termination Reason: Namespace SIGNAL, Code 0xbTerminating Process: exc handler [5032]VM Regions Near 0:-->__TEXT 109c4e000-109cc6000 [ 480K] r-x/r-x SM=COW /Users/*/Documents/*Thread 0:: Dispatch queue: com.apple.main-thread0 libsystem_kernel.dylib 0x00007fff2035ecde __psynch_cvwait + 101 libsystem_pthread.dylib 0x00007fff20391e49 _pthread_cond_wait + 12982 libc++.1.dylib 0x00007fff202fae03 std::__1::condition_variable::__do_timed_wait(std::__1::unique_lock<std::__1::mutex>&, std::__1::chrono::time_point<std::__1::chrono::system_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000000l> > >) + 933 librealsense2.2.48.0.dylib 0x0000000109f8d9e6 std::__1::cv_status std::__1::condition_variable::wait_for<long long, std::__1::ratio<1l, 1000000000l> >(std::__1::unique_lock<std::__1::mutex>&, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000000l> > const&) + 358 (__mutex_base:468)4 librealsense2.2.48.0.dylib 0x0000000109f8d70c void std::__1::condition_variable::__do_timed_wait<std::__1::chrono::steady_clock>(std::__1::unique_lock<std::__1::mutex>&, std::__1::chrono::time_point<std::__1::chrono::steady_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000000l> > >) + 92 (__mutex_base:523)5 librealsense2.2.48.0.dylib 0x0000000109f8d4ab std::__1::cv_status std::__1::condition_variable::wait_until<std::__1::chrono::steady_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000000l> > >(std::__1::unique_lock<std::__1::mutex>&, std::__1::chrono::time_point<std::__1::chrono::steady_clock, std::__1::chrono::duration<long long, std::__1::ratio<1l, 1000000000l> > > const&) + 139 (__mutex_base:426)6 librealsense2.2.48.0.dylib 0x000000010aaf1c29 _ZNSt3__118condition_variable10wait_untilINS_6chrono12steady_clockENS2_8durationIxNS_5ratioILl1ELl1000000000EEEEEZN21single_consumer_queueIN12librealsense12frame_holderEE7dequeueEPSA_jEUlvE_EEbRNS_11unique_lockINS_5mutexEEERKNS2_10time_pointIT_T0_EET1_ + 73 (__mutex_base:438)7 librealsense2.2.48.0.dylib 0x000000010aaf1b67 _ZNSt3__118condition_variable8wait_forIxNS_5ratioILl1ELl1000EEEZN21single_consumer_queueIN12librealsense12frame_holderEE7dequeueEPS6_jEUlvE_EEbRNS_11unique_lockINS_5mutexEEERKNS_6chrono8durationIT_T0_EET1_ + 103 (__mutex_base:482)8 librealsense2.2.48.0.dylib 0x000000010aaf1a2b single_consumer_queue<librealsense::frame_holder>::dequeue(librealsense::frame_holder*, unsigned int) + 107 (concurrency.h:95)9 librealsense2.2.48.0.dylib 0x000000010aae2d13 single_consumer_frame_queue<librealsense::frame_holder>::dequeue(librealsense::frame_holder*, unsigned int) + 35 (concurrency.h:203)10 librealsense2.2.48.0.dylib 0x000000010aae2ce4 librealsense::pipeline::aggregator::dequeue(librealsense::frame_holder*, unsigned int) + 52 (aggregator.cpp:107)11 librealsense2.2.48.0.dylib 0x000000010aa757fc librealsense::pipeline::pipeline::wait_for_frames(unsigned int) + 524 (pipeline.cpp:241)12 librealsense2.2.48.0.dylib 0x000000010af24b1f rs2_pipeline_wait_for_frames + 319 (rs.cpp:1778)13 rs-capture 0x0000000109c59021 rs2::pipeline::wait_for_frames(unsigned int) const + 65 (rs_pipeline.hpp:513)14 rs-capture 0x0000000109c5886e main + 286 (rs-capture.cpp:30)15 libdyld.dylib 0x00007fff203acf5d start + 1
Please sign in to leave a comment.
Comments
16 comments