PointGrey Camera 0 Hz Framerate

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

Ok, I figured it out. The default firewall/iptables was blocking the camera frames.