1. Disclaimer

Information contained in this publication regarding device applications and the like is provided only for your convenience and may be superseded by updates. It is your responsibility to ensure that your application meets with your specifications. EXOLIGENT MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY KIND WHETHER EXPRESS OR IMPLIED, WRITTEN OR ORAL, STATUTORY OR OTHERWISE, RELATED TO THE INFORMATION, INCLUDING BUT NOT LIMITED TO ITS CONDITION, QUALITY, PERFORMANCE, MERCHANTABILITY OR FITNESS FOR PURPOSE. Exoligent disclaims all liability arising from this information and its use. Use of Exoligent devices in life support and/or safety applications is entirely at the buyer’s risk, and the buyer agrees to defend, indemnify and hold harmless Exoligent from any and all damages, claims, suits, or expenses resulting from such use. No licenses are conveyed, implicitly or otherwise, under any Exoligent intellectual property rights unless otherwise stated.

Exoligent SARL
390 rue d’Estienne d’Orves, 92700 Colombes - France
Tel: +33(0) 1 42 42 42 00
Web Site: https://www.exoligent.com/
Copyright © 2023 Exoligent SARL. All rights reserved.

2. Introduction

FIPGate Sniffer is a hardware gateway that monitors each FIP/WorldFIP bus frame and pass it to Ethernet (UDP/IP).

Based on an embedded Linux, the system is completely passive and invisible for the FIP network. All the FIP frames are numbered and timestamped before being sent over Ethernet.

The gateway can be configured and updated remotely via an integrated WebUI tool. Once this is done, no additional operator intervention is required and the data stream is continuously transmitted.

Block Diagram

fipgate_block_diagram

FIPGate’s Picture

fipgate_hardware

3. Installation

FIPGate power is applied through an Ethernet port in passive Power over Ethernet (PoE) architecture.

Passive PoE can deliver power over the Ethernet lines, but without the negotiation or communication process. PoE injector or 802.3at PoE Emulation Adapter may be required in your installation.

The hardware installation is very simple:

  • Connect the SUBD9 connector to your FIP network

  • Connect the Ethernet cable to a PoE compatible network

If the FIPGate is properly powered, it should start automatically in approximately 10 seconds.

4. Gateway Web UI

FipGate WebUI is an all-in-one interface for configuring all gateway services.
The page is accessed through port 8000.

Default WebUI access is http://192.168.1.100:8000 [click here].

FIPGate WebUI - Authentification

fipgate_log_page

FIPGate WebUI - Dashboard

fipgate_general_page

4.1. System Configuration

4.1.1. Network Interface

This section is used to set the Ethernet network parameters of the gateway.

Network interface (WebUI)

fipgate_webui_net_iface

Default network settings are:

  • Mode=Static

  • IpAdress=192.168.1.100

  • SubnetMask=255.255.255.0

  • Gateway=192.168.1.1

  • Broadcast=192.168.1.255

  • DNS=192.168.1.1

4.1.2. Date & Time

This section allows you to set the system time manually or automatically by setting NTP server addresses.

Date & Time (WebUI)

fipgate_webui_date_time

4.1.3. Login & Password

Login & Password (WebUI)

fipgate_webui_log_pass

Default Login and Password are:

  • Login=admin

  • Pass=password123

For the security of your installation, it is strongly recommended to change Login&Password at the first use.

4.2. System Update

The gateway supports OTA (Over-The-Air) updates. The image files have the swu extension and are available on the Exoligent website: FIPGate - Download

There are two ways to update it:

  • METHOD 1:

    • Open FIPGate WebUI: http://192.168.1.100:8000

    • Go to Firmware Upgrade section and select the last firmware you want to install.

    • Wait for the end of update. The system will automatically reboot on the new root filesystem.

Gateway updating via FipGate WebUI

fipgate_webui_upgrade

  • METHOD 2:

    • Open SWUpdate WebUI: http://192.168.1.100:8080

    • Drag & Drop the last firmware you want to install

    • Wait for the end of update. The system will automatically reboot on the new rootfs.

Gateway updating via SWUpdate WebUI

fipgate_swupdate

4.3. Factory Reset

Factory Reset (WebUI)

fipgate_webui_factory_reset

This is the section for resetting some or all of the gateway settings to their default values.
This can be useful if you want to start again from scratch!

However beware, this operation is irreversible and your old settings will be completely erased.

Another way to boot from a factory image is to use the physical Recovery button on the gateway. Start the gateway by holding the button down for about 10 seconds. The gateway will then start up with the factory default settings.

This operation does not delete your previous user settings. They will be taken into account again the next time the gateway is started.

5. FIP to UDP Sniffer

This section deals with the main function of the gateway, which is to capture all FIP frames and transmit them over Ethernet.
Each frame that passes through the FIP network is recorded, numbered, timestamped and then encapsulated in a UDP datagram for transmission over Ethernet.

5.1. Configuration

To set up the FIP sniffer, log into FIPGate WebUI and go to the FIP/UDP Daemon section.

FIP/UDP daemon configuration (WebUI)

fipgate_webui_fipudpd

Default FIP/UDP daemon are :

  • UdpPort=57117

  • LifeSignMs=500

  • MaxEvents=1000

  • BuffFileBsz=50000000

Name Description

Name/Version

Version of the running daemon.

Mode

Transmission mode of the UDP stream.

IP Address

Unicast or Multicast IP address.

UDP Port

UDP transmission port.

LifeSign Period (ms)

Period (ms) of the System LifeSign event.

Events per Datagram

Maximum number of events (FIP Frame Received + System LifeSign) per UDP datagram.

Buffer Size (B)

Maximum size of the buffer file in bytes.

This buffer is used in the event of an Ethernet link down to continue storing incoming FIP frames until the next Ethernet link up.

5.2. UDP datagrams

5.2.1. FWP datagram

FWP (FipWatcher Protocol) defines the data structure of the UDP packets sent by the FIP-UDP service.

By default, the UDP packets are broadcast to UDP destination port 57117.
For Wireshark users, it is possible to use a LUA dissector (fwp.lua).
Alternatively, it is possible to use the Exoligent FipLabs GUI provided in the WorldFipTools6 software package.

Finally, to use the UDP stream directly in your user application, we describe below the general structure of a UDP datagram:

Table 1. UDP datagram - General Structure
Name Type Length Description

Identification

U8[2]

16 bits

Identification of the FWP protocol (46h 57h: "FW")

Version

U8[2]

16 bits

FWP datagram version (Major/Minor)

Sequence Number

U64

64 bits

Current datagram number

Events Number

U32

32 bits

Number of events contained in this datagram

Event 1

Identifier

U8

8 bits

Event identifier

Length

U16

16 bits

Event length in bytes (id[1] + len[2] + event payload)

Data

U8[]

-

Payload of the event 1

Other Events […​]

Event n

Identifier

U8

8 bits

Event identifier

Length

U16

16 bits

Event length in bytes (id[1] + len[2] + event payload)

Data

U8[]

-

Payload of the event n

The events associated with this datagram are of two types:

In the rest of this chapter, we will see a description of these events.

5.2.2. [Event] FIP Frame Received

This event is generated each time a FIP/WorldFIP frame is received by the FIPWatcher device.

Table 2. FWP event - FIP Frame Received
Name Type Length Description

Identifier

U8[2]

8 bits

Event identifier (C0h: FIP frame reception event id)

Length

U16

16 bits

Event length in bytes (id[1] + len[2] + event payload)

Frame Status

U16

16 bits

FIP frame status report

Frame Number

U64

64 bits

Received FIP frame number

Epoch Time

U64

64 bits

Event’s unix epoch time (us)

Frame Duration

U8[3]

24 bits

Frame Duration (1/10 us)

Inter-Frame Duration

U8[3]

24 bits

Inter-Frame Duration (1/10 us)

Glitches Counter

U16

16 bits

Number of glitches detected in the frame

Jitter

U8

8 bits

Percentage of average Tbit expressed in 0.5% steps

Control

U8

8 bits

FIP Frame: Control byte

App Data

U8[]

n bits

FIP Frame: Application layer data

Checksum

U16

16 bits

FIP Frame: Checksum word

5.2.3. [Event] System LifeSign

This event is sent periodically to indicate that the service is alive. In addition, it contains some status data and statistics about the FIPUDP service.

To set its transmission period, go to FIP to UDP Sniffer - Configuration section.

Table 3. FWP event - System LifeSign
Name Type Length Description

Identifier

U8

8 bits

Event identifier (C1h: System lifesign event id)

Length

U16

16 bits

Event length in bytes (id[1] + len[2] + event payload)

Lifesign Counter

U64

64 bits

System monitoring event counter

Epoch Time

U64

64 bits

Event’s unix epoch time (us)

Product Number

U32

32 bits

FIPWatcher product number

CPU Infos

Load

FLOAT

32 bits

CPU load (%)

Temperature

FLOAT

32 bits

CPU temperature (°C)

MMC Infos

Total KB

U32

32 bits

MMC: total memory size in KB

Used KB

U32

32 bits

MMC: memory used in KB

Available KB

U32

32 bits

MMC: memory available in KB

Used Percent

FLOAT

32 bits

MMC: memory used percent

RAM Infos

Total KB

U32

32 bits

RAM: total memory size in KB

Used KB

U32

32 bits

RAM: memory used in KB

Available KB

U32

32 bits

RAM: memory available in KB

Used Percent

FLOAT

32 bits

RAM: memory used percent

FIPUDP Daemon Infos

+ Buffer Infos

Total KB

U32

32 bits

FIPUDP Buffer: total memory size in KB

Used KB

U32

32 bits

FIPUDP Buffer: memory used in KB

Available KB

U32

32 bits

FIPUDP Buffer: memory available in KB

Used Percent

FLOAT

32 bits

FIPUDP Buffer: memory used percent

+ UDP Activity

Status

U8

8 bits

UDP: activity status (0:off, 1:on)

Total ON Duration

U64

64 bits

UDP: total duration of activity (us)

Total OFF Duration

U64

64 bits

UDP: total duration of inactivity (us)

Last Start Epoch

U64

64 bits

UDP: last date of start of activity

Last Stop Epoch

U64

64 bits

UDP: last date of stop of activity

Last ON Duration

U64

64 bits

UDP: last duration of activity

Last OFF Duration

U64

64 bits

UDP: last duration of inactivity

Loss Counter

U16

16 bits

UDP: number of loss of activity

+ UDP RX Statistics

Frame Count

U64

64 bits

UDP: RX frame count

Frame Rate

U32

32 bits

UDP: RX frame rate (frame per second: fps)

Byte Rate

U64

64 bits

UDP: RX byte rate (byte per second: B/s)

+ UDP TX Statistics

Frame Count

U64

64 bits

UDP: TX frame count

Frame Rate

U32

32 bits

UDP: TX frame rate (frame per second: fps)

Byte Rate

U64

64 bits

UDP: TX byte rate (byte per second: B/s)

+ FIP Activity

Status

U8

8 bits

FIP: activity status (0:off, 1:on)

Total ON Duration

U64

64 bits

FIP: total duration of activity (us)

Total OFF Duration

U64

64 bits

FIP: total duration of inactivity (us)

Last Start Epoch

U64

64 bits

FIP: last date of start of activity

Last Stop Epoch

U64

64 bits

FIP: last date of stop of activity

Last ON Duration

U64

64 bits

FIP: last duration of activity

Last OFF Duration

U64

64 bits

FIP: last duration of inactivity

Loss Counter

U16

16 bits

FIP: number of loss of activity

+ FIP RX Statistics

Frame Count

U64

64 bits

FIP: RX frame count

Frame Rate

U32

32 bits

FIP: RX frame rate (frame per second: fps)

Byte Rate

U64

64 bits

FIP: RX byte rate (byte per second: B/s)

+ FIP Network Infos

Type

U8

8 bits

Frame type (0:unknown, 1:fip, 2:worldfip)

Bitrate

U8

8 bits

Frame bitrate (0:unknown, 1:31.25kbps, 2:1Mbps, 3:2.5Mbps, 4:5Mbps)

+ FIP Error Counters

PRE

U64

64 bits

Physical layer: no frame preamble (may be a glitch detection)

FSD

U64

64 bits

Physical layer: no frame start delimiter (fsd)

FED

U64

64 bits

Physical layer: no frame end delimiter (fed)

CTL

U64

64 bits

Datalink layer: unknown fip control byte

FCS

U64

64 bits

Datalink layer: bad frame checksum

PDU

U64

64 bits

Application layer: unknown fip pdu

LEN

U64

64 bits

Application layer: bad data length

GLC

U64

64 bits

HDL coworker: overflow on glitch counter

IFC

U64

64 bits

HDL coworker: overflow on inter-frame counter

FC

U64

64 bits

HDL coworker: overflow on frame counter

Appendix A: Glossary of acronyms

FIP

Factory Instrumentation Protocol

FWP

FipWatcher Protocol

OTA

Over-The-Air

PoE

Power over Ethernet

UDP

User Datagram Protocol

WebUI

Web User Interface

Appendix B: Revision History

Revision Changes Authors Date

1.0.0

First version

MC

2023-05-11