1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 <2021> 2022 2023 2024 | Index | 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 <2021> 2022 2023 2024 |
<== Date ==> | <== Thread ==> |
---|
Subject: | Re: arv-tools not detecting USB3 camera |
From: | "Gofron, Kazimierz via Tech-talk" <tech-talk at aps.anl.gov> |
To: | Mark Rivers <rivers at cars.uchicago.edu>, "Engbretson, Mark S." <engbretson at anl.gov> |
Cc: | "tech-talk at aps.anl.gov \(tech-talk at aps.anl.gov\)" <tech-talk at aps.anl.gov> |
Date: | Tue, 14 Dec 2021 16:55:52 +0000 |
Hello Mark,
I rebuild the aravis on RHEL8.4, and now USB support is included.
Found out that redhat libusbx-dev is equivalent to libusb-1.0 from debian.
kgofron@xf11id-m3:/epics/src/modules/aravis/src$ yum list installed | grep libusb
libusb.x86_64 1:0.1.5-12.el8 @rhel-8-for-x86_64-baseos-rpms
libusb-devel.x86_64 1:0.1.5-12.el8 @codeready-builder-for-rhel-8-x86_64-rpms
libusbmuxd.x86_64 1.0.10-9.el8 @rhel-8-for-x86_64-appstream-rpms
libusbx.x86_64 1.0.23-4.el8 @anaconda
libusbx-devel.x86_64 1.0.23-4.el8 @rhel-8-for-x86_64-baseos-rpms
=================
Relevant part of meson-log.txt
kgofron@xf11id-m3:/epics/src/modules/aravis/build$ grep libusb meson-logs/meson-log.txt
Determining dependency 'libusb-1.0' with pkg-config executable '/usr/bin/pkg-config'
Called `/usr/bin/pkg-config --modversion libusb-1.0` -> 0
Called `/usr/bin/pkg-config --cflags libusb-1.0` -> 0
Called `/usr/bin/pkg-config libusb-1.0 --libs` -> 0
Called `/usr/bin/pkg-config libusb-1.0 --libs` -> 0
Run-time dependency libusb-1.0 found: YES 1.0.23
=========================================
kgofron@xf11id-m3:/epics/src/modules/aravis$ meson build
The Meson build system
Version: 0.55.3
Source dir: /epics/src/modules/aravis
Build dir: /epics/src/modules/aravis/build
Build type: native build
Project name: aravis
Project version: 0.8.20
C compiler for the host machine: cc (gcc 8.4.1 "cc (GCC) 8.4.1 20200928 (Red Hat 8.4.1-1)")
C linker for the host machine: cc ld.bfd 2.30-93
C++ compiler for the host machine: c++ (gcc 8.4.1 "c++ (GCC) 8.4.1 20200928 (Red Hat 8.4.1-1)")
C++ linker for the host machine: c++ ld.bfd 2.30-93
Host machine cpu family: x86_64
Host machine cpu: x86_64
Compiler for C supports arguments -Wduplicated-branches: YES
Compiler for C supports arguments -Wimplicit-fallthrough: YES
Compiler for C supports arguments -Wmisleading-indentation: YES
Compiler for C supports arguments -Wstrict-prototypes: YES
Compiler for C supports arguments -Wunused: YES
Compiler for C supports arguments -Wunused-variable: YES
Compiler for C supports arguments -Wdeclaration-after-statement: YES
Compiler for C supports arguments -Wformat=2: YES
Compiler for C supports arguments -Wimplicit-function-declaration: YES
Compiler for C supports arguments -Winit-self: YES
Compiler for C supports arguments -Wmissing-include-dirs: YES
Compiler for C supports arguments -Wmissing-prototypes: YES
Compiler for C supports arguments -Wpointer-arith: YES
Compiler for C supports arguments -Wformat-nonliteral: YES
Compiler for C supports arguments -Wenum-conversion: NO
Compiler for C supports arguments -Wmaybe-uninitialized: YES
Compiler for C supports arguments -fvisibility=hidden: YES
Found pkg-config: /usr/bin/pkg-config (1.4.2)
Run-time dependency glib-2.0 found: YES 2.56.4
Run-time dependency gobject-2.0 found: YES 2.56.4
Run-time dependency gio-2.0 found: YES 2.56.4
Run-time dependency libxml-2.0 found: YES 2.9.7
Run-time dependency zlib found: YES 1.2.11
Run-time dependency libusb-1.0 found: YES 1.0.23
Library m found: YES
Has header "linux/if_packet.h" : YES
Program glib-mkenums found: YES
Program glib-mkenums found: YES
Program glib-mkenums found: YES
Program glib-mkenums found: YES
Found pkg-config: /usr/bin/pkg-config (1.4.2)
Configuring arvapi.h using configuration
Configuring arvfeatures.h using configuration
Configuring arvversion.h using configuration
Program g-ir-scanner found: NO
Found CMake: /usr/bin/cmake (3.18.2)
Run-time dependency gobject-introspection-1.0 found: NO (tried pkgconfig and cmake)
Run-time dependency gtk+-3.0 found: YES 3.22.30
Run-time dependency gstreamer-base-1.0 found: YES 1.16.1
Run-time dependency gstreamer-app-1.0 found: NO (tried pkgconfig and cmake)
Run-time dependency gstreamer-video-1.0 found: NO (tried pkgconfig and cmake)
Dependency gstreamer-base-1.0 found: YES 1.16.1 (cached)
Run-time dependency gstreamer-app-1.0 found: NO (tried pkgconfig and cmake)
Program gtkdoc-scan found: NO
Program xsltproc found: YES
Build targets in project: 36
======================
{Essentially sees USBVision device,
but fails to open BFLY-PGE-50S5C}
kgofron@xf11id-m3:/epics/iocs$ arv-tool-0.8 -d all
[18:33:23.193] 🆆 interface> Failed to open USB device
[18:33:23.193] 🅸 interface> Found 0 USB3Vision device (among 8 USB devices)
...
[18:33:23.195] 🅸 interface> [GvInterface::discovery] Device 'Point Grey Research-Blackfly BFLY-PGE-50S5C-18457368' found (interface 192.168.11.1) user_id '' - MAC '00:b0:9d:19:a3:18'
[18:33:23.195] 🅸 interface> [GvInterface::discovery] Device 'Point Grey Research-Blackfly BFLY-PGE-50S5C-18481534' found (interface 192.168.11.1) user_id '' - MAC '00:b0:9d:1a:01:7e'
Point Grey Research-Blackfly BFLY-PGE-50S5C-18457368 (192.168.11.11)
Point Grey Research-Blackfly BFLY-PGE-50S5C-18481534 (192.168.11.12)
========================
The relevant /etc/udev/rules.d/51-aravis.rules file content:
SUBSYSTEM=="usb", ATTRS{idVendor}=="1e10", MODE:="0666", TAG+="uaccess", TAG+="udev-acl"
Restarted udev rules after adding 51-aravis.rules
$systemctl restart systemd-udevd
The USB device permissions
kgofron@xf11id-m3:/etc/udev/rules.d$ ls -l /dev/bus/usb/002/003
crw-rw-r--. 1 root root 189, 130 Dec 13 17:39 /dev/bus/usb/002/003
==============
In summary
aravis is seeing the USB3 camera, but my user account is not getting access to the device.
Kazimierz
From: Mark Rivers <rivers at cars.uchicago.edu>
Sent: Monday, December 13, 2021 5:09 PM To: Gofron, Kazimierz <kgofron at bnl.gov>; Engbretson, Mark S. <engbretson at anl.gov> Cc: tech-talk at aps.anl.gov (tech-talk at aps.anl.gov) <tech-talk at aps.anl.gov> Subject: RE: arv-tools not detecting USB3 camera Hi Kaz,
I am running Centos8, which is basically the same as RHEL8. I have the same libusb-devel and libusbx-devel packages installed that you do, and no package with a name lib libusb-1.0.
[epics@viper meson-logs]$ yum list installed | grep libusb libusb.x86_64 1:0.1.5-12.el8 @BaseOS libusb-devel.x86_64 1:0.1.5-12.el8 @PowerTools libusbmuxd.x86_64 1.0.10-9.el8 @AppStream libusbx.x86_64 1.0.22-1.el8 @anaconda libusbx-devel.x86_64 1.0.22-1.el8 @BaseOS
But the meson build worked for me. This is the relevant part of meson-build.txt:
Determining dependency 'libusb-1.0' with pkg-config executable '/usr/bin/pkg-config' Called `/usr/bin/pkg-config --modversion libusb-1.0` -> 0 1.0.22 Called `/usr/bin/pkg-config --cflags libusb-1.0` -> 0 -I/usr/include/libusb-1.0 Called `/usr/bin/pkg-config libusb-1.0 --libs` -> 0 -L/usr/lib64 -lusb-1.0 Called `/usr/bin/pkg-config libusb-1.0 --libs` -> 0 -lusb-1.0 Dependency libusb-1.0 found: YES 1.0.22
Did you try rebuilding aravis?
Mark
From: Tech-talk <tech-talk-bounces at aps.anl.gov>
On Behalf Of Gofron, Kazimierz via Tech-talk
Hi Mark,
I am not sure if USB3 dependency is compiled in. Frankly, I am not sure how to check it. I looked at meson-log.txt, and it confirms it by looking for 'libusb-1.0' package, which exists on debian, but not on RedHat (to my knowledge). I might be wrong here.
In meson-log.txt "Preliminary CMake check failed. Aborting. Run-time dependency libusb-1.0 found: NO (tried pkgconfig and cmake)"
...
"Called `/usr/bin/cmake --trace-expand --trace-format=json-v1 --no-warn-unused-cli --trace-redirect=cmake_trace.txt .` in /epics/src/modules/aravis/build/meson-private/cmake_libusb-1.0 -> 0 -- Module search paths: ['/', '/opt', '/usr', '/usr/local'] -- CMake root: /usr/share/cmake -- CMake architectures: [] -- CMake lib search paths: ['lib', 'lib32', 'lib64', 'libx32', 'share'] Preliminary CMake check failed. Aborting. Run-time dependency libusb-1.0 found: NO (tried pkgconfig and cmake)"
That indicates that it is looking for libusb-1.0 package, which to my knowledge does not exist on RedHat. So maybe USB3 support is not compiled in, because libusb-1.0 does not exist (to my knowledge) on redhat.
Kaz
From: Engbretson, Mark S. <engbretson at anl.gov>
Is the version of aravis that you are using built with the USB3 support enabled?
From: Gofron, Kazimierz <kgofron at bnl.gov>
Hi Mark,
Good point, and I did not install aravis udev rules yet.
However, when arv-tools is run as root, it does not detect the USB3 camera either.
[root@xf11id-m3 ~]# arv-tool-0.8 -d all ===== Something else is missing on RedHat...
Kaz
From: Engbretson, Mark S. <engbretson at anl.gov>
Do you have the aravis udev rules installed so that non root accounts can actually see the usb3 hardware?
From: Tech-talk <tech-talk-bounces at aps.anl.gov>
On Behalf Of Gofron, Kazimierz via Tech-talk
Hi,
I have a USB3 Grasshopper3 GS3-U3-51S5C camera that arv-tools-0.8 is not detecting. The GS3-U3-51S5C supports USB3 Vision v1.0, OS: Redhat 8.4
{Aravis detects only my GigE cameras:} kgofron@xf11id-m3:/epics/iocs$ arv-tool-0.8 Point Grey Research-Blackfly BFLY-PGE-50S5C-18457368 (192.168.11.11) Point Grey Research-Blackfly BFLY-PGE-50S5C-18481534 (192.168.11.12)
{arv-tools with options does not list usb camera either}
kgofron@xf11id-m3:/epics/iocs$ arv-tool-0.8 -d all ---- ============ {The camera shows up in libusb and /dev/bus/usb, but is not found by arv-tool:}
kgofron@xf11id-m3:/epics/iocs/cam-aravis1$ lsusb
kgofron@xf11id-m3:/epics/iocs$ ls /dev/bus/usb/002/003
{USB camera is on bus 002 device 003}
Camera details: kgofron@xf11id-m3:/dev/bus/usb/002$ usb-devices T: Bus=02 Lev=01 Prnt=01 Port=02 Cnt=01 Dev#= 3 Spd=5000 MxCh= 0 D: Ver= 3.00 Cls=ef(misc ) Sub=02 Prot=01 MxPS= 9 #Cfgs= 1 P: Vendor=1e10 ProdID=3300 Rev=00.00 S: Manufacturer=Point Grey Research S: Product=Grasshopper3 GS3-U3-51S5C S: SerialNumber=0123EF71 C: #Ifs= 3 Cfg#= 1 Atr=80 MxPwr=896mA I: If#=0x0 Alt= 0 #EPs= 2 Cls=ef(misc ) Sub=05 Prot=00 Driver=(none) I: If#=0x1 Alt= 0 #EPs= 1 Cls=ef(misc ) Sub=05 Prot=01 Driver=(none) I: If#=0x2 Alt= 0 #EPs= 1 Cls=ef(misc ) Sub=05 Prot=02 Driver=(none)
============
USB support is installed: libusb-devel.x86_64 libusbx-devel.x86_64 =============
Any suggestions about this problem?
Kazimierz Gofron
|