I’ve successfully used Aravis 0.4 a couple years ago to drive a Xenics Bobcat camera, and after a couple years, I’m now struggling to connect a GigE PointGrey/Flir Blackfly S BFS-PGE-16S2M camera to a new RHEL 7.6 machine. My server has 4 NICs. I’m using the first NIC for network access and my second NIC for the GigE camera. I’ve downed the other two NICs.
When I run “./bin/arv-tool-0.6 --debug=all:3”, I get:
[GvDiscoverSocket::new] Add interface 127.0.0.1
[GvDiscoverSocket::new] Add interface 192.168.0.100
[GvDiscoverSocket::new] Add interface 169.254.162.100
[GvDiscoverSocket::new] Add interface 192.168.122.1
No device found
but I am able to specify the camera by IP address directly:
$ ./bin/arv-tool-0.6 --debug=all --address=169.254.23.124
[GvDevice::new] Interface address = 169.254.162.100
[GvDevice::new] Device address = 169.254.23.124
[GvDevice::load_genicam] xml url = 'Local:BFS-PGE-16S2M_017C686B.zip;60000000;11D4C' at 0x200
[GvDevice::load_genicam] Xml address = 0x60000000 - size = 0x11d4c - BFS-PGE-16S2M_017C686B.zip
[GvDevice::load_genicam] Zipped xml data
[GcFeature::set_attribute] Unknown attribute 'xmlns:xi'
[GcFeature::set_attribute] Unknown attribute 'xmlns:xsi'
[GcFeature::set_attribute] Unknown attribute 'xmlns'
[GcFeature::set_attribute] Unknown attribute 'StandardNameSpace'
[GcFeature::set_attribute] Unknown attribute 'ToolTip'
[GcFeature::set_attribute] Unknown attribute 'ProductGuid'
[GcFeature::set_attribute] Unknown attribute 'VersionGuid'
[GcFeature::set_attribute] Unknown attribute 'xsi:schemaLocation'
… in the middle here, I get a lot of the following messages
[Genicam::create_element] Unknown tag (EventID)
[Genicam::create_element] Unknown tag (ImposedAccessMode)
[Genicam::create_element] Unknown tag (pAlias)
[Genicam::create_element] Unknown tag (pSelected)
[Genicam::create_element] Unknown tag (Representation)
[Genicam::create_element] Unknown tag (Slope)
[Genicam::create_element] Unknown tag (Streamable)
[Genicam::create_element] Unknown tag (Visibility)
…
[ArvDevice::set_string_feature_value] Node 'GevGVSPExtendedIDMode' is not a string
[GvDevice::new] Packet resend = yes
[GvDevice::new] Write memory = yes
[GvDevice::new] Register workaround = yes
169.254.23.124
When I attempt to run “./tests/arv-camera-test --debug=all --name=169.254.23.124”
The first part of the output is the same as that of the arv-tool debug above, but I then get 0 Hz Framerate:
[ArvDevice::set_string_feature_value] Node 'GevGVSPExtendedIDMode' is not a string
[GvDevice::new] Packet resend = yes
[GvDevice::new] Write memory = yes
[GvDevice::new] Register workaround = yes
vendor name = FLIR
model name = Blackfly S BFS-PGE-16S2M
device id = 19364886
image width = 256
image height = 256
horizontal binning = 1
vertical binning = 1
payload = 65536 bytes
exposure = 14995 µs
gain = 17 dB
[ArvDevice::get_integer_feature_value] Node 'GevStreamChannelCount' is not an integer
gv n_stream channels = 0
gv current channel = 0
gv packet delay = 1000 ns
gv packet size = 1400 bytes
[GvDevice::create_stream] Number of stream channels = 1
[GvStream::stream_new] Packet size = 1400 byte(s)
[GvStream::stream_new] Destination stream port = 35491
[GvStream::stream_new] Source stream port = 49153
[GvStream::stream_thread] Packet timeout = 20 ms
[GvStream::stream_thread] Frame retention = 100 ms
[GvStream::loop] Standard socket method
Frame rate = 0 Hz
Frame rate = 0 Hz
Frame rate = 0 Hz
Frame rate = 0 Hz
Frame rate = 0 Hz
Frame rate = 0 Hz
^CFrame rate = 0 Hz
Completed buffers = 0
Failures = 0
Underruns = 0
bins ;Buffer r
0; 0
-------------
>= 200; 0
< 0; 0
min ; n/a
max ; n/a
last max
at: ; 0
Counter = 0
[GvStream::finalize] n_completed_buffers = 0
[GvStream::finalize] n_failures = 0
[GvStream::finalize] n_timeouts = 0
[GvStream::finalize] n_aborteds = 0
[GvStream::finalize] n_underruns = 0
[GvStream::finalize] n_missing_frames = 0
[GvStream::finalize] n_size_mismatch_errors = 0
[GvStream::finalize] n_received_packets = 0
[GvStream::finalize] n_missing_packets = 0
[GvStream::finalize] n_error_packets = 0
[GvStream::finalize] n_ignored_packets = 0
[GvStream::finalize] n_resend_requests = 0
[GvStream::finalize] n_resent_packets = 0
[GvStream::finalize] n_duplicated_packets = 0
[Stream::finalize] Flush 50 buffer[s] in input queue
[Stream::finalize] Flush 0 buffer[s] in output queue
My 2nd NIC info is as follows:
$ ifconfig em2
em2: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 8192
inet 169.254.162.100 netmask 255.255.0.0 broadcast 169.254.255.255
ether e4:43:4b:77:a5:6b txqueuelen 1000 (Ethernet)
RX packets 23296287 bytes 32830145724 (30.5 GiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 26718 bytes 1808443 (1.7 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
I have built aravis with the following options:
Configuration:
Compiler: gcc
Compiler flags: -pthread -I/usr/include/libxml2 -I/opt/yum/chroot/usr/include/glib-2.0 -I/opt/yum/chroot/usr/lib64/glib-2.0/include -I/opt/yum/chroot/usr/include
Linker flags: -lm -pthread -L/opt/yum/chroot/usr/lib64 -L/lib64 -lgio-2.0 -lgobject-2.0 -lxml2 -lgthread-2.0 -lglib-2.0 -lz -laudit
Build USB support: no
Build packet socket support: yes
Build viewer: yes
Build gstreamer plugin: yes
Build gstreamer-0.10 plugin: no
Build with fast heartbeat: no
Build with address sanitizer: no
What should my next steps be to diagnose my issue?
Thanks