Hi,
the ConfigureExclusiveOwnerConnectionPoint() function tells the OpENer stack which assemblies belong to your Explicit Connection.
The config assembly is never included in the cyclic I/O messaging of the "implicit messaging" Exclusive Owner Connection.
The config assembly is only used during the forward open for the Exclusive Owner Connection as an optional parameter.
The following is only from the top of my head to give you an idea why a config assembly exists (cross check with the spec).
The meaning of the configuration assembly depends on the Device Profile you have selected. Basically the contents of
the config assembly could "configure" the contents of your input and output assembly. Your device wakes up with a
"default" or initial content of the configuration assembly. The client decides if it wants to transmit configuration data
during the forward open or not. If it doesn't transfer configuration data the "default" configuration is kept, in the other
case the content of the configuration assembly is overwritten with the configuration data transmitted during
forward open.
Please be aware that the forward open request simply transfers the configuration data as "simple data segment".
You may see the decoding in ParseConnectionPath() in cipconnectionmanager.c.
You can see the difference in the attached Wireshark logs that show an forward open with or without transmission of
config data (2 bytes in this case). The screen shot shows the "Implicit Messaging" dialog of the ENIPexplorer used to
do the forward open (observe the "Write Config" check box in the left lower corner). This tool can be downloaded
Maybe that helps.
Best regards,
Stefan