Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents

Introduction

About this page

This page describes the changes between the different releases of PROFINET IO-Device Firmware V4 over time. For each new release the major differences compared to the previous release are shown. Specific topics like tag list or Packet API are handled here.

References to documents

The following documents shall be consulted. They contain newest definitions of API services:

PROFINET IO-Device Protocol API (Revision 6 - V4.6.0 and V5.4.0)

...

groupHilscher Germany Atlassian Users, Hilscher Subsidiary Atlassian Users

Changes introduced with V4.7.0 - INTERMEDIATE information for next upcoming version

...

This section shows changes introduced with firmware V4.7.0.

General changes and remarks

  • if I&M5 functionality is enabled, the firmware no longer automatically adds the additional "OEM ID" block to DCP frames
    • A new ParameterTypes of PNS_IF_SET_OEM_PARAMETERS_REQ was added to explicitly activate this block
  • Profinet related IP frames are now sent with a VLAN tag to give these frames the priority recommended by Profinet specification
    • IP frame generated by other instances (integrated webserver, Socket API) are not affected
  • if feature SecurityClass 1 is enabled, the behavior regarding SNMP has changed (off by default) to match new revision of Profinet specification
    • please check Protocol API Manual for more details regarding Profinet Security
  • a dedicated technical datasheet document is delivered for each individual firmware stating the capabilities and limitations of the specific firmware
  • Support of ReductionRatio which is not a power of 2 was removed and is no longer useable. This limits possible network update times.
  • RAM based cifX hardware (e.g. CIFX 50-RE) is now able to store remanent data
  • Support for SecondStage Bootloader V1.7.0 (and newer) was added
    • This allows using a larger variety of serial flashes
  • netX52 firmware no longer implements support for configuration via SYCON.NET database. Support was already dropped in V4.6.0.x but implementation still worked in some scenarios.

Packet handling (API changes)

The following services have changed starting with firmware V4.7.0.

...

Support for the following parameter types have been added:

  • ParameterType 21

...

Tag list

No tag list changes with firmware V4.7.0 compared to V4.6.0.

Changes introduced with V4.6.0

This section shows changes introduced with firmware V4.6.0.

General changes and remarks

  • The netX 52 firmware no longer supports (in total) 3 IO ARs but 2 only. With earlier released versions it was possible to change the number of ARs in the tag list to 3 and the firmware successfully has started. This is no longer possible due to resource constraints.

  • The netX 52 firmware no longer supports 2 parallel ReadImplicit Requests at the same time. This is no longer possible due to resource constrains.

  • Major internal rework has been done including a major update of the integrated IP stack. The firmware now is quite similar to Hilscher PROFINET IO-Device V5 firmware used for netX 90. This is by intention.

  • The firmware supports the newly designed Device Data Provider (DDP) now.

  • All firmware no longer use device identity parameters set via tag list of SecondStage Bootloader (HW Data). Any setting made in this specific tag in SecondStage Bootloader will be ignored by the firmware.

  • The evaluation of OrderID and HardwareRevision from the SetConfiguration packet has been removed. The firmware expects the fields in SetConfiguration Request to be set to 0. Instead the firmware will always use the values provided in the Device Data Provider (DDP), which matches by default the values from the Security Memory or Flash Device Label (FDL). These values can be changed using service HIL_DDP_SERVICE_SET_REQ (0x1EEC).

  • OrderID from SYCON.net database file is no longer evaluated. Instead the OrderID of the DDP is used which is either configured from the Security Memory or FDL.

  • In case, the PROFINET IO-Device protocol stack is not configured, the firmware will no longer automatically enable the PHYs integrated in netX.

    • Once the PROFINET IO-Device protocol stack is configured, the PHYs will be enabled with parameters contained in the remanent data. If Autonegotiation is used after the protocol stack configuration it may take additional 3 seconds until the link is established.

    • A tag list is added to the firmware that allows configuration of a timeout after which the PHYs have to be enabled even if PROFINET IO-Device protocol stack is not yet configured.

  • The firmware supports the Hilscher netIdent protocol by default. The UDP port “25383” is thus active and reachable by port scans.

    • A tag list has been added to the firmware to disable the netIdent protocol function.

  • The IP stack integrated in the firmware will not be deconfigured if the PROFINET IO-Device protocol stack is switched to “bus state off”. Instead the IP parameterization is kept and all IP-based services continue to work.

    • However, the PROFINET-related protocols like DCP or RTA will be deactivated on “bus state off” as well as the integrated RPC Server used by PROFINET IO-Device protocol stack.

  • Firmware offers supports for PROFINT Security Class 1 features

    • As no certification exists for the required features, we cannot guarantee a completely correct implementation. Our own tests show expected behavior.       
      Use at your own risk.

  • Socket API quantities can be configured via tag list now.

  • Some ParameterTypes of PNS_IF_SET_OEM_PARAMETERS_REQ have been removed.

  • In case of error, some services no longer return any data in the confirmation packet.

  • New service for Isochronous Applications has been added allowing to generate a user defined signal. Independent from this new feature, this firmware supports applications with the following scenarios

    • netX 100/500: 500 µs network update time and DPM update time, up to 2 submodules each 4 byte.

    • netX 51/52: 1 ms Network update time and DPM update time, up to 2 submodules each 4 byte.

  • Sync signal is now always generated, independent if IRT is configured or not

    • Without IRT configuration the firmware internal scheduler cycle is used as base for sync signal.

    • Previous firmware versions did only generate this signal when IRT was configured and active.

  • The sync signal now is “high active” instead of “low active”.

  • Configuration with iniBatch database (generated by “netX Configuration Tool”) is no longer working. It was never officially supported and thus this will not be fixed. iniBatch configuration must not be used.

Packet handling (API changes)

The following services have changed starting with firmware V4.6.0.

In general, the check for the packet header field “ulLen” of request packets has been intensified in this version. Only the exact packet length is accepted now. Previous released versions accepted request packets with values for ulLen larger than required for the service.

...

  • The flag PNS_IF_SYSTEM_DISABLE_STORE_REMANENT_ENABLED in ulSystemFlags is no longer supported. Use the newly introduced tag list entry to control remanent data responsibility.
  • The fields abOrderID and usHWRevision are no longer supported and have to be set to 0. These values will always be taken from DDP.

...

Support for the following parameter types have been added:

  • ParameterType 19

...

If the service is used with the same USI as an already existing Generic Diagnosis, the old diagnosis entry is silently updated by the new one as indicated by the PROFINET specification.
The service only accepts GenericDiagnosis entries with a severity “fault” and rejects all other severities as this is required by the PROFINET specification.

Tag list

The following changes have been done for firmware V4.6.0 compared to V4.5.0:

...

This tag has been added.

...

This tag has been added.

...

This tag has been added.

...

This tag has been added.
It allows to configure up to two IP ports which can be used by an application via Socket API even if the integrated IP stack has no valid IP configuration.

...

This tag has been added.

...

This tag was added.

...

Changes introduced with V4.5.0

This section shows changes introduced with firmware V4.5.0.

General changes and remarks

  • The netX 52 firmware no longer supports (in total) 4 IO ARs but only 3. In earlier releases it was possible to change the number of ARs in the tag list to 4 and the firmware successfully has started. This is no longer possible due to resource constraints.
  • In addition to already provided firmware, several additional hardware platforms are officially supported now
    • netX 51 NXLFW
    • netX 100 NXLFW
    • netX 500 NXLFW
    • cifX
    • comX
    • comX 51
    • netJACK 100
    • netJACK 51
  • The feature System Redundancy is supported now. However, a special firmware is required (LFW-PNS SR) which has this feature enabled. for identification, the System Redundancy enabled firmware uses Communication Class 0x1A in DPM Channel 0.
    • This feature is and will not be supported by regular standard firmware using Communication Class 0x0A as identifier in DPM Channel 0.
    • This feature is and will not be supported for netX 52-based hardware due to resource constraints.
  • By default, IO Supervisor ARs are no longer supported. Support can be enabled at runtime using PNS_IF_SET_OEM_PARAMETER_REQ. This does NOT affect Supervisor DeviceAccess which is still enabled by default.

Packet handling (API changes)

The following services have changed starting with firmware V4.5.0.

...

Support for the following parameter types have been added:

  • ParameterType 6
  • ParameterType 14
  • ParameterType 15
  • ParameterType 16

...

Tag list

The following changes have been done for firmware V4.5.0 compared to V4.4.0:

...

The tag was added for all firmware except net X52.
The tag list offers the possibility to enable the “NDIS” feature which allows the use of netX as Ethernet Controller via DPM Communication Channel 1 (with limited throughput).

Changes introduced with V4.4.0

This section shows changes introduced with firmware V4.4.0.

General changes and remarks

  • By default all firmware only support 2 IO ARs

    • Using the tag list editor it is possible to modify this parameter
  • By default if firmware handles I&M data the I&M4 dataset is no longer supported
    • Using PNS_IF_SET_OEM_PARAMETER_REQ it is possible to activate I&M4 handling
  • netX52 single port firmware was renamed from "X070D000_SinglePort.nxf" to "X170D000.nxf"
  • netX51 single port firmware was renamed from "X060D000_SinglePort.nxf" to "X160D000.nxf"

Packet handling (API changes)

A major rework of the public API header PNSIF_API.h was done. This harmonizes the header file with the Hilscher PROFINET IO Device protocol stack / firmware generation V3.x. The header file is now based on the generic Hilscher definitions structures and no longer refers to TLR or rcX.

The binary layout of the packets was not changed if not noted below. The names of fields were not changes if not stated below.

The following services have changed starting with firmware V4.4.0:

...

This service was added

...

Support for I&M5 was added

...

Support for several ParameterTypes  was added

  • PNS_IF_PARAM_ETHERNET
  • PNS_IF_PARAM_DIAGNOSIS
  • PNS_IF_PARAM_IM0_DATA
  • PNS_IF_PARAM_IM5_DATA

...

Support for these ParameterTypes was added

  • ParameterType 9
  • ParameterType 10
  • ParameterType 11
  • ParameterType 12
  • ParameterType 13

...

Value “0” is no longer accepted as ChannelErrorType in field usChannelErrType.

...

Value “0” is no longer accepted as ChannelErrorType in field usChannelErrType.

...

Tag list

The following changes have been done for firmware V4.4.0 compared to V4.3.0:

...

This tag was removed.
It is replaced with new tag "PROFINET features V2" and some API services at runtime.

...

This tag was added. It now allows a customization of required features and offers a higher flexibility.

  • The amount of parallel ReadImplicit services can be set
  • The amount of configurable submodules can be set
  • The minimum RPC buffer size can be set
  • Supervisor DA can be enabled/disabled
  • Some parameters can no longer be changed via tag list but need to be set via mailbox packet API
    • enable/disable IRT
    • enable/disable IO Supervisor
    • set the MinDeviceInterval
  • by default (unmodified tag list) all netX52 based firmware now supports only 2 IO ARs

Changes introduced with V4.3.0

This section shows changes introduced with firmware V4.3.0.

General changes and remarks

  • netX52 single port firmware was renamed from "nx52pns_stdmac.nxf" to "X070D000_SinglePort.nxf”

  • netX51 single port firmware was renamed from "nx51pns_stdmac.nxf" to "X060D000_SinglePort.nxf"

Packet handling (API changes)

The following services have changed starting with firmware V4.3.0:

...

This service now supports up to 4KB of acyclic data.

...

Support for these ParameterTypes was added

  • ParameterType 3
  • ParameterType 8

Tag list

The following changes have been done for firmware V4.3.0 compared to V4.2.0:

...

If “NumberOfAdditionalARs” is set to 0 or 1 the firmware supports up to 64 submodules. If the “NumberOfAdditionalARs” is set to a value higher than 1 the firmware supports up to 32 submodules.

Changes introduced with V4.2.0

This section shows changes introduced with firmware V4.2.0.

General changes and remarks

  • IRT support was added to all 2-port firmware
    • In order to use IRT for a product the corresponding IRT-related entries need to be added to GSDML file.

    • Note: Adding IRT support as new feature to a product requires creating a new DeviceAccessPoint in GSDML file. Application needs to be adapted to the new DAP module and submodule identifiers. A new PROFINET certification is required as well

    • IRT functionality is enabled by default in all 2-port firmware.

    • In order to deactivate IRT support in the firmware in firmware version V4.2.0.0 the tag list needs to be modified.

  • USB Marshaller support was added

  • only 32 submodules can be used (older firmware supported up to 64)

  • support for IO Supervisor AR was removed

  • behavior of DPM field “ulCommunicationState” changed completely

Packet handling (API changes)

No services have changed with firmware V4.2.0.0 compared to V4.1.0.x.

Tag list

The following changes have been done for firmware V4.2.0 compared to V4.1.0:

...

A complete rework of LED related tags was done.

  • Although only 2 LEDs are used by firmware all 4 LEDs mentioned in Hilscher hardware reference design can now be modified in tag list.
  • The tags have been renamed to Hilscher default names (COM0_RED, COM0_GREEN, COM1_RED, COM1_GREEN).

Changes introduced with V4.1.0

This section shows changes introduced with firmware V4.1.0.

General changes and remarks

No significant change was made with firmware V4.1.0.0 compared to V4.0.0.x.

Packet handling (API changes)

No services have changed with firmware V4.1.0.0 compared to V4.0.0.x.

Tag list

The following changes have been done for firmware V4.1.0 compared to V4.0.0:

...

Migration Guide no longer provided via this knowledge base page. Instead, the Migration Guide is provided together with all other related documents individually for every firmware version.

Starting with firmware version V4.8.0.0, you can find the Migration Guide on each Version page free of charge as part of the file "DOC-PNS V4.x.x.x.zip".

All older versions of the Migration Guide are contained there, too.