B40 - Trouble setting up Assemblies for Ethernet IP

I am implementing Ethernet IP on a B40 module using user defined ADI lists, so the size of the input/output assemblies is determined at runtime.

The following config options are set to true

EIP_OBJ_ENABLE
ABCC_CFG_REMAP_SUPPORT_ENABLED
ASM_OBJ_ENABLE

I have tried using the following code i found in a previous message as a starting point to test attaching the assemblies.

AD_DefaultMapType APPL_asAdObjDefaultMap[] = {
APPL_DEFAULT_WRITE_MAP,
APPL_DEFAULT_READ_MAP,
{AD_MAP_END_ENTRY}
};

AD_MapType APPL_asAsmObjDefaultWriteMap[] = {
APPL_DEFAULT_WRITE_MAP,
{AD_MAP_END_ENTRY}
};

AD_MapType APPL_asAsmObjDefaultReadMap[] = {
APPL_DEFAULT_READ_MAP,
{AD_MAP_END_ENTRY}
};

ASM_InstanceType APPL_sAsmDefaultWriteMap = {
ABP_ASM_IA_DESC_WRITE | ABP_ASM_IA_DESC_STATIC | ABP_ASM_IA_DESC_PD_MAPPABLE,
APPL_asAsmObjDefaultWriteMap,
“Output Data”,
ASM_MAX_ADI_MAPS_PER_INSTANCE
};
ASM_InstanceType APPL_sAsmDefaultReadMap = {
ABP_ASM_IA_DESC_READ | ABP_ASM_IA_DESC_STATIC | ABP_ASM_IA_DESC_PD_MAPPABLE,
APPL_asAsmObjDefaultReadMap,
“Input Data”,
ASM_MAX_ADI_MAPS_PER_INSTANCE
};

const ASM_InstanceType *APPL_aasAsmInstancesTest[] = {
&APPL_sAsmDefaultWriteMap,
&APPL_sAsmDefaultReadMap
};

const ASM_InstanceType **APPL_GetAsmInstances(void){return (APPL_aasAsmInstancesTest);}

UINT16 APPL_GetNumAsmInstances(void){ return (sizeof(APPL_aasAsmInstancesTest) / sizeof(ASM_InstanceType *));}

During the setup the messages scroll through until the following:

Msg sent:
[ MsgBuf:0x240110b8 Size:0x0001 SrcId :0x00 DestObj:0xf8
Inst :0x0001 Cmd :0x81 CmdExt0:0x1d CmdExt1:0x00 ]
[ 0x06 ]

Mem: Buffer returned: 0x240110b8
Mem: Buffer allocated: 0x240110b8

Msg received:
[ MsgBuf:0x240110b8 Size:0x0000 SrcId :0x00 DestObj:0xeb
Inst :0x0000 Cmd :0x41 CmdExt0:0x0b CmdExt1:0x00 ]
[ ]

Msg sent:
[ MsgBuf:0x240110b8 Size:0x0002 SrcId :0x00 DestObj:0xeb
Inst :0x0000 Cmd :0x01 CmdExt0:0x0b CmdExt1:0x00 ]
[ 0x01 0x00 ]

Mem: Buffer returned: 0x240110b8
ANB_STATUS: ABP_ANB_STATE_EXCEPTION
Mem: Buffer allocated: 0x240110b8
CmdSeq(0804eba8)->ReadExeption()

Msg sent:
[ MsgBuf:0x240110b8 Size:0x0000 SrcId :0x11 DestObj:0x01
Inst :0x0001 Cmd :0x41 CmdExt0:0x06 CmdExt1:0x00 ]
[ ]

Mem: Buffer returned: 0x240110b8
Mem: Buffer allocated: 0x240110b8
Outstanding commands: 0

Msg received:
[ MsgBuf:0x240110b8 Size:0x0001 SrcId :0x11 DestObj:0x01
Inst :0x0001 Cmd :0x01 CmdExt0:0x06 CmdExt1:0x00 ]
[ 0x0a ]

Routing response to registered response handler: MsgBuf:0x240110b8 SrcId:0x11
CmdSeq(0804eba8)->HandleExceptionResp()
Exception Code: A:

CmdSeq(0804eba8)->ReadExeptionInfo()

Msg sent:
[ MsgBuf:0x240110b8 Size:0x0000 SrcId :0x12 DestObj:0x03
Inst :0x0001 Cmd :0x41 CmdExt0:0x07 CmdExt1:0x00 ]
[ ]

Mem: Buffer returned: 0x240110b8
Mem: Buffer allocated: 0x240110b8
Outstanding commands: 0

Msg received:
[ MsgBuf:0x240110b8 Size:0x0001 SrcId :0x12 DestObj:0x03
Inst :0x0001 Cmd :0x01 CmdExt0:0x07 CmdExt1:0x00 ]
[ 0x00 ]

Routing response to registered response handler: MsgBuf:0x240110b8 SrcId:0x12
CmdSeq(0804eba8)->HandleExceptionInfoResp()
Exception Info: 0:

If i interpret this correctly it is telling me something in object 0xEB (Assembly mapping object) is not implemented. What should i be looking for, what code do you need to see to help?

Hi @NDiederich,

Our embedded engineer who monitors this forum is currently on vacation until later this week. Can you create a support case at support.hms-networks.com so we can help you quicker?

Ticket created

Thank you. It’s been escalated to the embedded engineers, and I’ll let you know as soon as they respond.