Skip to content

Multi-Dimension Array Element Read Failure #29

@hydro-controls

Description

@hydro-controls

The ioc fails to read a tag when the tag is referenced as an element within a multidimensional array. For example:

  1. A ControlLogix controller tag is defined as 'testTag' DINT[56,30] (changing type to real results in same error)
  2. EPICS record:
record(ai, "test")
{
  field(DESC, "Test Record")
  field(DTYP, "EtherIP") 
  field(SCAN, ".1 second")
  field(INP, "@PLC1 testTag[60] E")
}
  1. The array index can be within bounds of the first dimension and still results in an error.
  2. Normal (i.e., element flag not set) array reads up to the buffer limit (including beyond the bounds of the first dimension) function as you would expect with satisfactory data.
  3. Excerpt of the ioc output on initialization:
...
MR_Response:
  USINT Service             = 0xCC (Response to CIP_ReadData)
  USINT Reserved            = 0x00
  USINT Status              = 0x05 (Instance not found)
  USINT ext. stat. size     = 0
EIP_read_tag: Failed tag 'testTag[60]'
tag 'testTag[60]': Cannot read!
...

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions