E_FwUpdateState

The enumeration E_FwUpdateState describes the state of a firmware update.

TYPE E_SoE_CmdState :(
    (* update states *)
    eFwU_NoError := 0,
    eFwU_CheckCfgIdentity,
    eFwU_CheckSlaveCount,
    eFwU_CheckFindSlavePos,
    eFwU_WaitForScan,
    eFwU_ScanningSlaves,
    eFwU_CheckScannedIdentity,
    eFwU_CheckScannedFirmware,
    eFwU_FindFirmwareFile,
    eFwU_WaitForUpdate,
    eFwU_WaitForSlaveState,
    eFwU_StartFwUpdate,
    eFwU_FwUpdateInProgress,
    eFwU_FwUpdateDone,
    eFwU_NoFwUpdateRequired,

    (* not updating via this channel *)
    eFwU_UpdateViaOtherChannelActive,
    eFwU_UpdatedViaOtherChannel,

    (* error states *)
    eFwU_GetSlaveIdentityError         := -1,
    eFwU_GetSlaveCountError            := -2,
    eFwU_GetSlaveAddrError             := -3,
    eFwU_StartScanError                := -4,
    eFwU_ScanStateError                := -5,
    eFwU_ScanIdentityError             := -6,
    eFwU_GetSlaveStateError            := -7,
    eFwU_ScanFirmwareError             := -8,
    eFwU_FindFileError                 := -9,
    eFwU_CfgTypeInNoAX5xxx             := -10,
    eFwU_ScannedTypeInNoAX5xxx         := -11,
    eFwU_ChannelMismatch               := -12,
    eFwU_ChannelMismatch_1Cfg_2Scanned := -13,
    eFwU_ChannelMismatch_2Cfg_1Scanned := -14,
    eFwU_CurrentMismatch               := -15,
    eFwU_FwUpdateError                 := -16,
    eFwU_ReqSlaveStateError            := -17
);
END_TYPE

Update Status

eFwU_NoError

Initial state

eFwU_CheckCfgIdentity

Read the configured slave types (number of channels, current, revision)

eFwU_CheckSlaveCount

Determine the configured number of slaves

eFwU_CheckFindSlavePos

Search for the slave address in the master object directory

eFwU_WaitForScan

Wait for online scan

eFwU_ScanningSlaves

Online scan of the slaves

eFwU_CheckScannedIdentity

Read the scanned slave types (number of channels, current, revision)

eFwU_CheckScannedFirmware

Read the firmware version

eFwU_FindFirmwareFile

Search for the selected firmware file

eFwU_WaitForUpdate

Wait for status of the update

eFwU_WaitForSlaveState

Determine the EtherCAT slave status

eFwU_StartFwUpdate

Start the firmware update

eFwU_FwUpdateInProgress

Firmware update active

eFwU_FwUpdateDone

Firmware update successfully completed

eFwU_NoFwUpdateRequired

No firmware update required

eFwU_UpdateViaOtherChannelActive

Update takes place via the other axis channel

eFwU_UpdatedViaOtherChannel

Update took place via the other axis channel

Update error

eFwU_GetSlaveIdentityError

Reading of the configured slave type failed (see iAdsErrId)-

eFwU_GetSlaveCountError

Determination of the configured number of slaves failed (see iAdsErrId)-

eFwU_GetSlaveAddrError

Search for the slave address in the master object directory failed (see iAdsErrId)-

eFwU_StartScanError

Start of the online scan failed (see iAdsErrId)-

eFwU_ScanStateError

Online scan failed (see iAdsErrId)-

eFwU_ScanIdentityError

Reading of the scanned slave type (number of channels, current, revision) failed (see iAdsErrId)-

eFwU_GetSlaveStateError

Determination of the EtherCAT slave status failed (see iAdsErrId)-

eFwU_ScanFirmwareError

Reading of the firmware version failed (see iAdsErrId + iSercosErrId).

eFwU_FindFileError

Search for the selected firmware file failed (see iAdsErrId).

eFwU_CfgTypeInNoAX5xxx

The configured slave is not an AX5000.

eFwU_ScannedTypeInNoAX5xxx

The scanned slave is not an AX5000.

eFwU_ChannelMismatch

The number of configured and found channels of the AX5000 do not match.

eFwU_ChannelMismatch_1Cfg_2Scanned

Single-channel device configured, but two-channel device found.

eFwU_ChannelMismatch_2Cfg_1Scanned

Two-channel device configured, but single-channel device found.

eFwU_CurrentMismatch

AX5000 type does not match in terms of current, e.g. AX5103 (3 A) configured, but AX5106 (6 A) found.

eFwU_FwUpdateError

General update error (see iAdsErrId)

eFwU_ReqSlaveStateError

Switching to the desired EtherCAT status failed.