I have a Basler a2A2590-22gmBAS that Iโm trying to set up with aravis in link-local mode.
If I donโt set up a DHCP server on my system, it falls back to link-local, which is expected.
However, when I stop my DHCP server and reconnect the camera, I get Ack reception timeout
messages when trying to connect to it:
[linux ~]# ARV_DEBUG="all:4" arv-camera-test-0.8
Looking for the first available camera
[09:43:17.177] ๐
ธ interface> Found 0 USB3Vision device (among 3 USB devices)
[09:43:17.178] ๐
ธ interface> [GvDiscoverSocket::new] Add interface 127.0.0.1 (127.0.0.1)
[09:43:17.178] ๐
ธ interface> [GvDiscoverSocket::new] Add interface 192.168.254.251 (192.168.254.255)
[09:43:17.178] ๐
ธ interface> [GvDiscoverSocket::new] Add interface 10.1.0.1 (10.1.0.255)
[09:43:17.178] ๐
ธ interface> [GvDiscoverSocket::new] Add interface 169.254.100.1 (169.254.100.1)
[09:43:17.179] ๐
ณ cp> packet_type = ack
command = discovery-ack
size = 248
id = 65535
manufacturer = Basler
name = Basler-2
model = a2A2590-22gmBAS
address = 169.254.253.58
00000000 00 00 00 03 00 f8 ff ff 00 02 00 01 80 00 00 01 ................
00000010 00 00 00 30 53 37 02 a1 80 00 00 07 00 00 00 06 ...0S7..........
00000020 00 00 00 00 00 00 00 00 00 00 00 00 a9 fe fd 3a ...............:
00000030 00 00 00 00 00 00 00 00 00 00 00 00 ff ff 00 00 ................
00000040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00000050 42 61 73 6c 65 72 00 00 00 00 00 00 00 00 00 00 Basler..........
00000060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00000070 61 32 41 32 35 39 30 2d 32 32 67 6d 42 41 53 00 a2A2590-22gmBAS.
00000080 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00000090 31 30 38 30 33 30 2d 31 33 00 00 00 00 00 00 00 108030-13.......
000000a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000000b0 6e 6f 6e 65 00 00 00 00 00 00 00 00 00 00 00 00 none............
000000c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000000d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000000e0 34 30 32 31 37 37 37 35 00 00 00 00 00 00 00 00 40217775........
000000f0 42 61 73 6c 65 72 2d 32 00 00 00 00 00 00 00 00 Basler-2........
[09:43:17.179] ๐
ธ interface> [GvInterface::discovery] Device 'Basler-a2A2590-22gmBAS-40217775' found (interface 169.254.100.1) user_id 'Basler-2' - MAC '00:30:53:37:02:a1'
[09:43:17.179] ๐
ธ device> [GvDevice::new] Interface address = 169.254.100.1
[09:43:17.179] ๐
ธ device> [GvDevice::new] Device address = 169.254.253.58
[09:43:17.179] ๐ cp> packet_type = cmd
packet_flags = ack-required
command = read-memory-cmd
size = 8
id = 65301
address = 512 (0x00000200)
size = 512 (0x00000200)
00000000 42 01 00 84 00 08 ff 15 00 00 02 00 00 00 02 00 B...............
[09:43:17.680] ๐ device> [GvDevice::read_memory] Ack reception timeout
[09:43:17.680] ๐ device> [GvDevice::read_memory] Ack reception timeout
[09:43:17.680] ๐ cp> packet_type = cmd
packet_flags = ack-required
command = read-memory-cmd
size = 8
id = 65301
address = 512 (0x00000200)
size = 512 (0x00000200)
00000000 42 01 00 84 00 08 ff 15 00 00 02 00 00 00 02 00 B...............
[09:43:18.180] ๐ device> [GvDevice::read_memory] Ack reception timeout
[09:43:18.180] ๐ device> [GvDevice::read_memory] Ack reception timeout
[09:43:18.180] ๐ cp> packet_type = cmd
packet_flags = ack-required
command = read-memory-cmd
size = 8
id = 65301
address = 512 (0x00000200)
size = 512 (0x00000200)
00000000 42 01 00 84 00 08 ff 15 00 00 02 00 00 00 02 00 B...............
[09:43:18.681] ๐ device> [GvDevice::read_memory] Ack reception timeout
[09:43:18.681] ๐ device> [GvDevice::read_memory] Ack reception timeout
[09:43:18.681] ๐ cp> packet_type = cmd
packet_flags = ack-required
command = read-memory-cmd
size = 8
id = 65301
address = 512 (0x00000200)
size = 512 (0x00000200)
00000000 42 01 00 84 00 08 ff 15 00 00 02 00 00 00 02 00 B...............
[09:43:19.181] ๐ device> [GvDevice::read_memory] Ack reception timeout
[09:43:19.181] ๐ device> [GvDevice::read_memory] Ack reception timeout
[09:43:19.182] ๐ cp> packet_type = cmd
packet_flags = ack-required
command = read-memory-cmd
size = 8
id = 65301
address = 512 (0x00000200)
size = 512 (0x00000200)
00000000 42 01 00 84 00 08 ff 15 00 00 02 00 00 00 02 00 B...............
[09:43:19.682] ๐ device> [GvDevice::read_memory] Ack reception timeout
[09:43:19.682] ๐ device> [GvDevice::read_memory] Ack reception timeout
No camera found: GigEVision read_memory timeout
The camera can be found using arv-tool-0.8:
[09:45:32.535] ๐
ธ interface> Found 0 USB3Vision device (among 3 USB devices)
[09:45:32.536] ๐
ธ interface> [GvDiscoverSocket::new] Add interface 127.0.0.1 (127.0.0.1)
[09:45:32.536] ๐
ธ interface> [GvDiscoverSocket::new] Add interface 192.168.254.251 (192.168.254.255)
[09:45:32.536] ๐
ธ interface> [GvDiscoverSocket::new] Add interface 10.1.0.1 (10.1.0.255)
[09:45:32.536] ๐
ธ interface> [GvDiscoverSocket::new] Add interface 169.254.100.1 (169.254.100.1)
[09:45:32.537] ๐
ณ cp> packet_type = ack
command = discovery-ack
size = 248
id = 65535
manufacturer = Basler
name = Basler-2
model = a2A2590-22gmBAS
address = 169.254.253.58
00000000 00 00 00 03 00 f8 ff ff 00 02 00 01 80 00 00 01 ................
00000010 00 00 00 30 53 37 02 a1 80 00 00 07 00 00 00 06 ...0S7..........
00000020 00 00 00 00 00 00 00 00 00 00 00 00 a9 fe fd 3a ...............:
00000030 00 00 00 00 00 00 00 00 00 00 00 00 ff ff 00 00 ................
00000040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00000050 42 61 73 6c 65 72 00 00 00 00 00 00 00 00 00 00 Basler..........
00000060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00000070 61 32 41 32 35 39 30 2d 32 32 67 6d 42 41 53 00 a2A2590-22gmBAS.
00000080 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00000090 31 30 38 30 33 30 2d 31 33 00 00 00 00 00 00 00 108030-13.......
000000a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000000b0 6e 6f 6e 65 00 00 00 00 00 00 00 00 00 00 00 00 none............
000000c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000000d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000000e0 34 30 32 31 37 37 37 35 00 00 00 00 00 00 00 00 40217775........
000000f0 42 61 73 6c 65 72 2d 32 00 00 00 00 00 00 00 00 Basler-2........
[09:45:32.537] ๐
ธ interface> [GvInterface::discovery] Device 'Basler-a2A2590-22gmBAS-40217775' found (interface 169.254.100.1) user_id 'Basler-2' - MAC '00:30:53:37:02:a1'
[09:45:32.537] ๐
ณ cp> packet_type = ack
command = discovery-ack
size = 248
id = 65535
manufacturer = Basler
name = Basler-2
model = a2A2590-22gmBAS
address = 169.254.253.58
00000000 00 00 00 03 00 f8 ff ff 00 02 00 01 80 00 00 01 ................
00000010 00 00 00 30 53 37 02 a1 80 00 00 07 00 00 00 06 ...0S7..........
00000020 00 00 00 00 00 00 00 00 00 00 00 00 a9 fe fd 3a ...............:
00000030 00 00 00 00 00 00 00 00 00 00 00 00 ff ff 00 00 ................
00000040 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00000050 42 61 73 6c 65 72 00 00 00 00 00 00 00 00 00 00 Basler..........
00000060 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00000070 61 32 41 32 35 39 30 2d 32 32 67 6d 42 41 53 00 a2A2590-22gmBAS.
00000080 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00000090 31 30 38 30 33 30 2d 31 33 00 00 00 00 00 00 00 108030-13.......
000000a0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000000b0 6e 6f 6e 65 00 00 00 00 00 00 00 00 00 00 00 00 none............
000000c0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000000d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000000e0 34 30 32 31 37 37 37 35 00 00 00 00 00 00 00 00 40217775........
000000f0 42 61 73 6c 65 72 2d 32 00 00 00 00 00 00 00 00 Basler-2........
[09:45:32.537] ๐
ธ interface> [GvInterface::discovery] Device 'Basler-a2A2590-22gmBAS-40217775' found (interface 10.1.0.1) user_id 'Basler-2' - MAC '00:30:53:37:02:a1'
[09:45:33.538] ๐
ณ misc> Regex '^.*$' created from glob '*'
Basler-a2A2590-22gmBAS-40217775 (169.254.253.58)
dmesg
output when camera is connected:
[74884.018411] igb 0000:8a:00.1 enp138s0f1: igb: enp138s0f1 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: RX/TX
Relevant output of ip a
(the interface where my camera is connected to):
5: enp138s0f1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 8192 qdisc mq qlen 1000
link/ether 74:fe:48:68:a3:66 brd ff:ff:ff:ff:ff:ff
inet 10.1.0.1/24 brd 10.1.0.255 scope global enp138s0f1
valid_lft forever preferred_lft forever
inet 169.254.100.1/32 scope global enp138s0f1
valid_lft forever preferred_lft forever
inet6 fe80::76fe:48ff:fe68:a366/64 scope link
valid_lft forever preferred_lft forever
Is it not possible to communicate with this camera in link-local ip mode?