Closed williamx97 closed 3 years ago
@williamx97 So I understood you followed https://github.com/IntelRealSense/librealsense/blob/master/doc/installation_raspbian.md#install-realsense-sdklibrealsense to build librealsense, right? LibUVC and WinUSB are deprecated from the build in SDK 2.30+, replaced by RSUSB. So could you please try to re-build with the following? Thanks! cmake .. .. -DBUILD_EXAMPLES=true -DCMAKE_BUILD_TYPE=Release -DFORCE_RSUSB_BACKEND=true
Thanks! I've recompiled it with the cmake flags listed above and now rs-enumerate-devices
is detecting the D435, however I am getting the RS2_USB_STATUS_BUSY
error:
pi@raspberrypi:~ $ rs-enumerate-devices
Could not create device - failed to set power state . Check SDK logs for details
27/04 10:00:11,542 ERROR [1939432528] (handle-libusb.h:95) failed to claim usb interface: 0, error: RS2_USB_STATUS_BUSY
27/04 10:00:11,543 ERROR [1995515488] (sensor.cpp:526) acquire_power failed: failed to set power state
I have rebooted the raspberry pi and changed the usb ports. The T265 camera still detects correctly though.
Would there be a way to detect whether a linux process is using the D435 or were there some other realsense debugging tools I could employ?
librealsense was compiled using the 'source code' tar.gz
file using v2.44.0 https://github.com/IntelRealSense/librealsense/releases/tag/v2.44.0
Update to the above: Reversing the USBC connection to the D435 seemed to fix the issue temporarily. I unplugged and replugged the USBC sides to confirm that only one side of the USBC connection was causing the RS2_USB_STATUS
error.
However after running some tests within the Realsense ROS wrapper seemed to cause the RS2_USB_STATUS
message to come back after a few roslaunch files:
rs-enumerate-devices
now shows the RS2_USB_STATUS_BUSY
for both sides of the USBC connection.
@williamx97 Did you use the original USB cable when get the issue?
@RealSenseSupport Yes I am using the original USB cable that came with D435. There are occasional moments where reversing the USB C side seems to work, however most times the RS2_USB_STATUS
error message appears on both sides.
@williamx97 Did you get such issue if you connect this D435 to other PC like x86 PC with the original cable? Thanks!
@RealSenseCustomerSupport I'm not getting the RS2_USB_STATUS
error when connected to my x64 laptop. I dont have an x84 laptop handy at the moment. My x64 laptop is running Ubuntu 20.04 and librealsense was not built from source but simply installed using the default sudo apt-get
method. It is still using the original cable
@williamx97 Did you install ROS wrapper by _sudo apt-get install ros-$ROSDISTRO-realsense2-camera ? According to https://github.com/IntelRealSense/realsense-ros/issues/1187#issuecomment-759367599 , please try the following:
@williamx97 Any update from your side? Looking forward to your reply. Please note that the ticket will be closed if we don't hear from your for another 7 days. Thanks!
@williamx97 Any update from your side? Thanks!
@williamx97 Sorry that we don't hear from you for weeks. This issue will be closed. Please create new issue if you still have other questions or issues. Thanks!
Issue Description
Hi there,
Our team is having issues getting our D435 to show on
rs-enumerate-devices
. We are getting theNo device found. Is it plugged in?
error message. We are using a custom version of raspbian provided by our robot manufacturer called TurtleOS: https://github.com/TurtleRover/turtleosIt is based on Linux Kernel
4.14.79
Here are the troubleshooting steps applied:
~/catkin_ws/src
and using ROS commandcatkin build
. The UDEV rules were also updated.sudo apt-get update && sudo apt-get upgrade
. Kernel patched to 3.19sudo rpi-update
. Kernel patched to 5.10 ,still did not worksudo rpi-update 453e49bdd87325369b462b40e809d5f3187df21d
the specific commit this command used was here https://github.com/Hexxeh/rpi-firmware/commit/453e49bdd87325369b462b40e809d5f3187df21d we could not connect to our raspberry pi after this command howeverNote both methods 1 and 2 seem to detect our other T265 camera that we have with us:
The outputs of
lsusb
anddmesg
seem to also detect the D435 camera:dmesg output (click to expand)
pi@raspberrypi:~/turtle_ws $ dmesg [ 0.000000] Booting Linux on physical CPU 0x0 [ 0.000000] Linux version 4.14.79-v7+ (dc4@dc4-XPS13-9333) (gcc version 4.9.3 (crosstool-NG crosstool-ng-1.22.0-88-g8460611)) #1159 SMP Sun Nov 4 17:50:20 GMT 2018 [ 0.000000] CPU: ARMv7 Processor [410fd034] revision 4 (ARMv7), cr=10c5383d [ 0.000000] CPU: div instructions available: patching division code [ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache [ 0.000000] OF: fdt: Machine model: Raspberry Pi 3 Model B Plus Rev 1.3 [ 0.000000] Memory policy: Data cache writealloc [ 0.000000] cma: Reserved 8 MiB at 0x2f800000 [ 0.000000] On node 0 totalpages: 196608 [ 0.000000] free_area_init_node: node 0, pgdat 80c85280, node_mem_map af134000 [ 0.000000] Normal zone: 1728 pages used for memmap [ 0.000000] Normal zone: 0 pages reserved [ 0.000000] Normal zone: 196608 pages, LIFO batch:31 [ 0.000000] percpu: Embedded 17 pages/cpu @af0dd000 s38720 r8192 d22720 u69632 [ 0.000000] pcpu-alloc: s38720 r8192 d22720 u69632 alloc=17*4096 [ 0.000000] pcpu-alloc: [0] 0 [0] 1 [0] 2 [0] 3 [ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 194880 [ 0.000000] Kernel command line: 8250.nr_uarts=1 bcm2708_fb.fbwidth=656 bcm2708_fb.fbheight=416 bcm2708_fb.fbswap=1 vc_mem.mem_base=0x3ec00000 vc_mem.mem_size=0x40000000 dwc_otg.lpm_enable=0 console=tty1 root=PARTUUID=1f12bb92-02 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait [ 0.000000] PID hash table entries: 4096 (order: 2, 16384 bytes) [ 0.000000] Dentry cache hash table entries: 131072 (order: 7, 524288 bytes) [ 0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes) [ 0.000000] Memory: 757532K/786432K available (7168K kernel code, 576K rwdata, 2076K rodata, 1024K init, 698K bss, 20708K reserved, 8192K cma-reserved) [ 0.000000] Virtual kernel memory layout: vector : 0xffff0000 - 0xffff1000 ( 4 kB) fixmap : 0xffc00000 - 0xfff00000 (3072 kB) vmalloc : 0xb0800000 - 0xff800000 (1264 MB) lowmem : 0x80000000 - 0xb0000000 ( 768 MB) modules : 0x7f000000 - 0x80000000 ( 16 MB) .text : 0x80008000 - 0x80800000 (8160 kB) .init : 0x80b00000 - 0x80c00000 (1024 kB) .data : 0x80c00000 - 0x80c9017c ( 577 kB) .bss : 0x80c97f04 - 0x80d468b0 ( 699 kB) [ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1 [ 0.000000] ftrace: allocating 25287 entries in 75 pages [ 0.000000] Hierarchical RCU implementation. [ 0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16 [ 0.000000] arch_timer: cp15 timer(s) running at 19.20MHz (phys). [ 0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x46d987e47, max_idle_ns: 440795202767 ns [ 0.000007] sched_clock: 56 bits at 19MHz, resolution 52ns, wraps every 4398046511078ns [ 0.000023] Switching to timer-based delay loop, resolution 52ns [ 0.000273] Console: colour dummy device 80x30 [ 0.000806] console [tty1] enabled [ 0.000847] Calibrating delay loop (skipped), value calculated using timer frequency.. 38.40 BogoMIPS (lpj=192000) [ 0.000887] pid_max: default: 32768 minimum: 301 [ 0.001224] Mount-cache hash table entries: 2048 (order: 1, 8192 bytes) [ 0.001258] Mountpoint-cache hash table entries: 2048 (order: 1, 8192 bytes) [ 0.002211] Disabling memory control group subsystem [ 0.002305] CPU: Testing write buffer coherency: ok [ 0.002737] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000 [ 0.003154] Setting up static identity map for 0x100000 - 0x10003c [ 0.003292] Hierarchical SRCU implementation. [ 0.003984] smp: Bringing up secondary CPUs ... [ 0.004782] CPU1: thread -1, cpu 1, socket 0, mpidr 80000001 [ 0.005619] CPU2: thread -1, cpu 2, socket 0, mpidr 80000002 [ 0.006440] CPU3: thread -1, cpu 3, socket 0, mpidr 80000003 [ 0.006545] smp: Brought up 1 node, 4 CPUs [ 0.006617] SMP: Total of 4 processors activated (153.60 BogoMIPS). [ 0.006639] CPU: All CPU(s) started in HYP mode. [ 0.006657] CPU: Virtualization extensions available. [ 0.007564] devtmpfs: initialized [ 0.017684] random: get_random_u32 called from bucket_table_alloc+0xfc/0x24c with crng_init=0 [ 0.018327] VFP support v0.3: implementor 41 architecture 3 part 40 variant 3 rev 4 [ 0.018573] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns [ 0.018618] futex hash table entries: 1024 (order: 4, 65536 bytes) [ 0.019193] pinctrl core: initialized pinctrl subsystem [ 0.019997] NET: Registered protocol family 16 [ 0.022565] DMA: preallocated 1024 KiB pool for atomic coherent allocations [ 0.027312] hw-breakpoint: found 5 (+1 reserved) breakpoint and 4 watchpoint registers. [ 0.027344] hw-breakpoint: maximum watchpoint size is 8 bytes. [ 0.027563] Serial: AMBA PL011 UART driver [ 0.029246] bcm2835-mbox 3f00b880.mailbox: mailbox enabled [ 0.029720] uart-pl011 3f201000.serial: could not find pctldev for node /soc/gpio@7e200000/uart0_pins, deferring probe [ 0.061185] bcm2835-dma 3f007000.dma: DMA legacy API manager at b0813000, dmachans=0x1 [ 0.062641] SCSI subsystem initialized [ 0.062882] usbcore: registered new interface driver usbfs [ 0.062952] usbcore: registered new interface driver hub [ 0.063052] usbcore: registered new device driver usb [ 0.070089] raspberrypi-firmware soc:firmware: Attached to firmware from 2018-11-04 16:31 [ 0.071365] clocksource: Switched to clocksource arch_sys_counter [ 0.148264] VFS: Disk quotas dquot_6.6.0 [ 0.148378] VFS: Dquot-cache hash table entries: 1024 (order 0, 4096 bytes) [ 0.148583] FS-Cache: Loaded [ 0.148796] CacheFiles: Loaded [ 0.157694] NET: Registered protocol family 2 [ 0.158430] TCP established hash table entries: 8192 (order: 3, 32768 bytes) [ 0.158560] TCP bind hash table entries: 8192 (order: 4, 65536 bytes) [ 0.158762] TCP: Hash tables configured (established 8192 bind 8192) [ 0.158907] UDP hash table entries: 512 (order: 2, 16384 bytes) [ 0.158969] UDP-Lite hash table entries: 512 (order: 2, 16384 bytes) [ 0.159216] NET: Registered protocol family 1 [ 0.159691] RPC: Registered named UNIX socket transport module. [ 0.159716] RPC: Registered udp transport module. [ 0.159735] RPC: Registered tcp transport module. [ 0.159754] RPC: Registered tcp NFSv4.1 backchannel transport module. [ 0.161215] hw perfevents: enabled with armv7_cortex_a7 PMU driver, 7 counters available [ 0.163986] workingset: timestamp_bits=14 max_order=18 bucket_order=4 [ 0.171979] FS-Cache: Netfs 'nfs' registered for caching [ 0.172599] NFS: Registering the id_resolver key type [ 0.172654] Key type id_resolver registered [ 0.172673] Key type id_legacy registered [ 0.172702] nfs4filelayout_init: NFSv4 File Layout Driver Registering... [ 0.174637] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 251) [ 0.174794] io scheduler noop registered [ 0.174817] io scheduler deadline registered (default) [ 0.175000] io scheduler cfq registered [ 0.175022] io scheduler mq-deadline registered [ 0.175042] io scheduler kyber registered [ 0.177356] BCM2708FB: allocated DMA memory ef900000 [ 0.177400] BCM2708FB: allocated DMA channel 0 @ b0813000 [ 0.185915] Console: switching to colour frame buffer device 82x26 [ 0.193345] Serial: 8250/16550 driver, 1 ports, IRQ sharing enabled [ 0.196896] bcm2835-rng 3f104000.rng: hwrng registered [ 0.199362] vc-mem: phys_addr:0x00000000 mem_base=0x3ec00000 mem_size:0x40000000(1024 MiB) [ 0.204477] vc-sm: Videocore shared memory driver [ 0.207041] gpiomem-bcm2835 3f200000.gpiomem: Initialised: Registers at 0x3f200000 [ 0.221238] brd: module loaded [ 0.232216] loop: module loaded [ 0.234582] Loading iSCSI transport class v2.0-870. [ 0.237538] libphy: Fixed MDIO Bus: probed [ 0.239887] usbcore: registered new interface driver lan78xx [ 0.242216] usbcore: registered new interface driver smsc95xx [ 0.244418] dwc_otg: version 3.00a 10-AUG-2012 (platform bus) [ 0.274528] dwc_otg 3f980000.usb: base=0xf0980000 [ 0.476979] Core Release: 2.80a [ 0.479220] Setting default values for core params [ 0.481572] Finished setting default values for core params [ 0.684152] Using Buffer DMA mode [ 0.686495] Periodic Transfer Interrupt Enhancement - disabled [ 0.688882] Multiprocessor Interrupt Enhancement - disabled [ 0.691254] OTG VER PARAM: 0, OTG VER FLAG: 0 [ 0.693604] Dedicated Tx FIFOs mode [ 0.696175] WARN::dwc_otg_hcd_init:1046: FIQ DMA bounce buffers: virt = 0xaf914000 dma = 0xef914000 len=9024 [ 0.700737] FIQ FSM acceleration enabled for : Non-periodic Split Transactions Periodic Split Transactions High-Speed Isochronous Endpoints Interrupt/Control Split Transaction hack enabled [ 0.711612] dwc_otg: Microframe scheduler enabled [ 0.711669] WARN::hcd_init_fiq:459: FIQ on core 1 at 0x805ea470 [ 0.713930] WARN::hcd_init_fiq:460: FIQ ASM at 0x805ea7d8 length 36 [ 0.716156] WARN::hcd_init_fiq:486: MPHI regs_base at 0xf0006000 [ 0.718467] dwc_otg 3f980000.usb: DWC OTG Controller [ 0.720743] dwc_otg 3f980000.usb: new USB bus registered, assigned bus number 1 [ 0.723097] dwc_otg 3f980000.usb: irq 62, io mem 0x00000000 [ 0.725417] Init: Port Power? op_state=1 [ 0.727668] Init: Power Port (0) [ 0.730042] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002 [ 0.732376] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1 [ 0.734676] usb usb1: Product: DWC OTG Controller [ 0.736917] usb usb1: Manufacturer: Linux 4.14.79-v7+ dwc_otg_hcd [ 0.739182] usb usb1: SerialNumber: 3f980000.usb [ 0.742034] hub 1-0:1.0: USB hub found [ 0.744238] hub 1-0:1.0: 1 port detected [ 0.746820] dwc_otg: FIQ enabled [ 0.746825] dwc_otg: NAK holdoff enabled [ 0.746830] dwc_otg: FIQ split-transaction FSM enabled [ 0.746840] Module dwc_common_port init [ 0.747087] usbcore: registered new interface driver usb-storage [ 0.749363] mousedev: PS/2 mouse device common for all mice [ 0.751600] IR NEC protocol handler initialized [ 0.753765] IR RC5(x/sz) protocol handler initialized [ 0.755960] IR RC6 protocol handler initialized [ 0.758127] IR JVC protocol handler initialized [ 0.760197] IR Sony protocol handler initialized [ 0.762292] IR SANYO protocol handler initialized [ 0.764374] IR Sharp protocol handler initialized [ 0.766358] IR MCE Keyboard/mouse protocol handler initialized [ 0.768375] IR XMP protocol handler initialized [ 0.771047] bcm2835-wdt 3f100000.watchdog: Broadcom BCM2835 watchdog timer [ 0.773408] bcm2835-cpufreq: min=600000 max=1400000 [ 0.775861] sdhci: Secure Digital Host Controller Interface driver [ 0.777981] sdhci: Copyright(c) Pierre Ossman [ 0.780410] mmc-bcm2835 3f300000.mmc: could not get clk, deferring probe [ 0.782910] sdhost-bcm2835 3f202000.mmc: could not get clk, deferring probe [ 0.785198] sdhci-pltfm: SDHCI platform and OF driver helper [ 0.788821] ledtrig-cpu: registered to indicate activity on CPUs [ 0.791208] hidraw: raw HID events driver (C) Jiri Kosina [ 0.793690] usbcore: registered new interface driver usbhid [ 0.795991] usbhid: USB HID core driver [ 0.798822] vchiq: vchiq_init_state: slot_zero = af980000, is_master = 0 [ 0.802613] [vc_sm_connected_init]: start [ 0.811446] [vc_sm_connected_init]: end - returning 0 [ 0.814365] Initializing XFRM netlink socket [ 0.816744] NET: Registered protocol family 17 [ 0.819192] Key type dns_resolver registered [ 0.821955] Registering SWP/SWPB emulation handler [ 0.824979] registered taskstats version 1 [ 0.833206] uart-pl011 3f201000.serial: cts_event_workaround enabled [ 0.835767] 3f201000.serial: ttyAMA0 at MMIO 0x3f201000 (irq = 87, base_baud = 0) is a PL011 rev2 [ 0.842546] mmc-bcm2835 3f300000.mmc: mmc_debug:0 mmc_debug2:0 [ 0.845080] mmc-bcm2835 3f300000.mmc: DMA channel allocated [ 0.901978] sdhost: log_buf @ af913000 (ef913000) [ 0.942002] mmc1: queuing unknown CIS tuple 0x80 (2 bytes) [ 0.945988] mmc1: queuing unknown CIS tuple 0x80 (3 bytes) [ 0.949852] mmc1: queuing unknown CIS tuple 0x80 (3 bytes) [ 0.954841] mmc1: queuing unknown CIS tuple 0x80 (7 bytes) [ 0.961493] Indeed it is in host mode hprt0 = 00021501 [ 1.037399] random: fast init done [ 1.051387] mmc0: sdhost-bcm2835 loaded - DMA enabled (>1) [ 1.054512] of_cfs_init [ 1.056598] of_cfs_init: OK [ 1.059034] Waiting for root device PARTUUID=1f12bb92-02... [ 1.106714] mmc1: new high speed SDIO card at address 0001 [ 1.171408] usb 1-1: new high-speed USB device number 2 using dwc_otg [ 1.173636] Indeed it is in host mode hprt0 = 00001101 [ 1.245832] mmc0: host does not support reading read-only switch, assuming write-enable [ 1.253768] mmc0: new high speed SDHC card at address aaaa [ 1.256469] mmcblk0: mmc0:aaaa SC16G 14.8 GiB [ 1.263029] mmcblk0: p1 p2 [ 1.295204] EXT4-fs (mmcblk0p2): INFO: recovery required on readonly filesystem [ 1.297444] EXT4-fs (mmcblk0p2): write access will be enabled during recovery [ 1.411660] usb 1-1: New USB device found, idVendor=0424, idProduct=2514 [ 1.413935] usb 1-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0 [ 1.416883] hub 1-1:1.0: USB hub found [ 1.419350] hub 1-1:1.0: 4 ports detected [ 1.741401] usb 1-1.1: new high-speed USB device number 3 using dwc_otg [ 1.871614] usb 1-1.1: New USB device found, idVendor=0424, idProduct=2514 [ 1.874120] usb 1-1.1: New USB device strings: Mfr=0, Product=0, SerialNumber=0 [ 1.877202] hub 1-1.1:1.0: USB hub found [ 1.879716] hub 1-1.1:1.0: 3 ports detected [ 1.981391] usb 1-1.3: new high-speed USB device number 4 using dwc_otg [ 2.128498] usb 1-1.3: New USB device found, idVendor=148f, idProduct=3070 [ 2.131065] usb 1-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [ 2.133627] usb 1-1.3: Product: 802.11 n WLAN [ 2.136092] usb 1-1.3: Manufacturer: Ralink [ 2.138460] usb 1-1.3: SerialNumber: 1.0 [ 2.651390] usb 1-1.1.1: new high-speed USB device number 5 using dwc_otg [ 2.781736] usb 1-1.1.1: New USB device found, idVendor=0424, idProduct=7800 [ 2.784081] usb 1-1.1.1: New USB device strings: Mfr=0, Product=0, SerialNumber=0 [ 3.056535] libphy: lan78xx-mdiobus: probed [ 3.557999] EXT4-fs (mmcblk0p2): recovery complete [ 3.562288] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null) [ 3.566811] VFS: Mounted root (ext4 filesystem) readonly on device 179:2. [ 3.577575] devtmpfs: mounted [ 3.583199] Freeing unused kernel memory: 1024K [ 3.999655] systemd[1]: System time before build time, advancing clock. [ 4.136253] NET: Registered protocol family 10 [ 4.139895] Segment Routing with IPv6 [ 4.153409] ip_tables: (C) 2000-2006 Netfilter Core Team [ 4.175469] random: systemd: uninitialized urandom read (16 bytes read) [ 4.183491] systemd[1]: systemd 232 running in system mode. (+PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ +LZ4 +SECCOMP +BLKID +ELFUTILS +KMOD +IDN) [ 4.191927] systemd[1]: Detected architecture arm. [ 4.208649] systemd[1]: Set hostname toWas it strictly necessary that the Linux kernel be upgraded to a supported version mentioned in the release notes?
Furthermore was there an alternate way to upgrade the Linux Kernel, considering method 5 caused a disconnect from the raspberry pi?