Uploaded image for project: 'EtherNet/IP Core V3'
  1. EtherNet/IP Core V3
  2. PSEIP-634

[SCANNER] Slave State in Common Status Block shall be independent of current Bus State

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: V3.7.5.0
    • Component/s: None
    • Labels:
      None
    • Account:
      SPC EthernetIp Core (SPCETHERNET)

      Description

      Currently, in case the stack is in Bus state OFF state, ulSlaveState in the Common Status Block is set to 0 (HIL_SLAVE_STATE_OK) independent of whether or not there are slaves configured.

      The slave state shall be independent of the bus state.
      This is what the DMP Manual (Rev 17) defines:

      If there is at least one slave missing or one of the slaves has pending diagnostic information, the status is changed to HIL_SLAVE_STATE_FAILED.

      Therefore, the slave state shall behave as follows:

      if (ulNumOfConfigSlaves == 0 and ulNumOfActiveSlaves == 0 and ulNumOfDiagSlaves == 0)
      {
        ulSlaveState = HIL_SLAVE_STATE_UNDEFINED
      }
      else if (ulNumOfDiagSlaves != 0)
      {
        ulSlaveState = HIL_SLAVE_STATE_FAILED
      }
      else if (ulNumOfConfigSlaves != ulNumOfActiveSlaves)
      {
        ulSlaveState = HIL_SLAVE_STATE_FAILED
      }
      else
      {
        ulSlaveState = HIL_SLAVE_STATE_OK
      }

        Attachments

          Expenses

            Activity

              Status Description

                People

                • Reporter:
                  KMichel Kai Michel
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  0 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved: