To set up an Ethernet sensor for PolySync you need to know its IP address. This guide will help you locate a sensors IP address and configure the Ubuntu network to allow PolySync to communicate with the sensor.
Locate Local Ethernet Interface
Determine the Ethernet interface name using the system tool ifconfig:
$ ifconfig eth0 Link encap:Ethernet HWaddr XX:7b:XX:3b:0d:XX UP BROADCAST MULTICAST MTU:9000 Metric:1 RX packets:2893321 errors:0 dropped:0 overruns:0 frame:0 TX packets:1141728 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:3150169684 (3.1 GB) TX bytes:864658858 (864.6 MB) Interrupt:20 Memory:e1200000-e1220000 lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:65536 Metric:1 RX packets:478680 errors:0 dropped:0 overruns:0 frame:0 TX packets:478680 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:1733767001 (1.7 GB) TX bytes:1733767001 (1.7 GB)
If you only have one Ethernet interface like the example above, the interface name will be eth0. Each of the eth* entries maps directly to a physical Ethernet interface on the machine.
For most machines you will see at least two entries: eth0 and lo. Machines that are built to connect to a lot of Ethernet sensors may have ten or more interfaces, in which case they would enumerate to eth0 through eth9.
If you have multiple Ethernet interfaces you can cross-reference the detected Ethernet interfaces in Network Manager, a GUI tools used to manage the system networking on Ubuntu.
Set IP Address and Subnet Mask
Once you know the Ethernet interface name use the ifconfig utility to set a temporary IP address:
$ sudo ifconfig eth0 192.168.2.200 netmask 255.0.0.0
Zenmap / Nmap
Zenmap is an easy to use front-end wrapper to Nmap. You can download the utilities on Ubuntu with apt-get:
$ sudo apt-get install zenmap nmap
Searching For Ethernet Devices
Start Zenmap to scan the network for other devices.
$ sudo zenmap
We will enter the IP range we wish to search, and the verbosity of the search. To find sensors a Quick scan works well.
- Target: 192.168.0.1/8
- Profile: Quick scan
Once you press Scan it can take up to ten minutes to locate the device, depending on the sensors IP address and your host IP address.
You should always see at least one result, your host. If there are just two returned hosts then you've found the sensor! If you have three or more hosts you could narrow the search by removing other sensors or ECU's from the network.
Now that you have the sensors IP address you will need to update the PolySync SDF Configurator so the Dynamic Driver knows which interface to connect to. Next set the system IP address by overriding the Network Manager.
Overriding Ubuntu Network Manager
The Ubuntu Network Manager defaults Ethernet interfaces to a DHCP mode which expects a dynamic IP address to be provided by a DHCP server (like a router). Most sensors aren't routers.
We need to switch the mode from DHCP and set it to Manual which will allow us to set a static IP address matching the subnet of the sensor.
Open the Network Manager, select the appropriate Ethernet interface and set the IPv4 method from DHCP to Manual. IP address, subnet mask and gateway are required fields.
[gif to come]
Test the new connection with the ECU and sensor by using the system tool ping, and entering the IP address of the sensor.
$ ping <sensor-ip-address>
64 bytes from localhost (127.0.0.1): icmp_seq=1 ttl=64 time=0.027 ms
64 bytes from localhost (127.0.0.1): icmp_seq=2 ttl=64 time=0.033 ms
64 bytes from localhost (127.0.0.1): icmp_seq=3 ttl=64 time=0.027 ms
64 bytes from localhost (127.0.0.1): icmp_seq=4 ttl=64 time=0.038 ms