(!) Please ask about problems and questions regarding this tutorial on answers.ros.org. Don't forget to include in your question the link to this page, the versions of your OS & ROS, and also add appropriate tags.

How to Determine Your Prosilica GigE Camera's IP Address

Description: This tutorial will show you how to determine the prosilica camera's IP address if you do not remember it.

Keywords: Prosilica, IP, camera

Tutorial Level: BEGINNER

Next Tutorial: Configuring the Prosilica gigE for a desktop

Compiling

Start by getting the dependencies and compiling the driver.

$ rosdep install prosilica_camera
$ rosmake prosilica_camera

Powered On and Plugged in

Make sure that your Prosilica camera is powered at 12V, connected to your computer, and the green and orange network lights are lit.

Making Sure the Network is Configured for IPv4 Networking

Before you can find a camera on the network, the network adapter to which the camera is connected must be configured for IPv4 networking. In many cases this will be done already, so try skipping to the next section of this tutorial, and come back here if the discover command can't find your camera.

Configuring a network adapter is beyond the scope of this tutorial. The following tips may allow you to get started, but may get you in trouble with your network administrator. Moreover, the setup you get by following these tips will not persist when the computer is rebooted.

To check that an adapter is configured for IPv4 networking, use the ifconfig command. For example if your camera is connected to eth0, do:

$ ifconfig eth0
eth0      Link encap:Ethernet  HWaddr 00:50:b6:03:f4:60
          inet6 addr: fe80::250:b6ff:fe03:f460/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:6 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:492 (492.0 B)

In this case, the camera has an inet6 addr, but no inet addr, so it is not configured for IPv4 networking.

We can give the adapter an IPv4 address with the following command (this address probably won't get you in trouble):

$ sudo ifconfig eth0 192.168.123.1 netmask 255.255.255.0

Now we can check that the computer does indeed have an inet addr:

$ ifconfig eth0
eth0      Link encap:Ethernet  HWaddr 00:50:b6:03:f4:60
          inet addr:192.168.123.1  Bcast:192.168.123.255  Mask:255.255.255.0
          inet6 addr: fe80::250:b6ff:fe03:f460/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:20 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:3641 (3.5 KB)

Capturing the IP address

Run:

sudo tcpdump -n src port 3956 -i ethx

where ethx is the interface the camera is connected to. This will be listening for traffic and return the IP address of our camera.

In another window run:

rosrun prosilica_gige_sdk ListCameras

The tcpdump command will output a line similar to this one:

  • 23:14:47.009127 IP 10.68.0.20.3956 > 10.68.0.1.41020: UDP, length 256

The address of the camera is 10.68.0.20. (Note that ListCameras will probably not see the camera.)

You can now configure the network interface (or an alias) in such a way that the camera is on the same subnet, and you can set the camera's IP address as described in the configuring the Prosilica gigE for a desktop tutorial.

Wiki: prosilica_camera/Tutorials/DeterminingProsilicaIPAddress (last edited 2011-11-21 16:06:32 by ProcopioStein)