# Communication Area Objects: 0x1000-0x1FFF ## Device Type 0x1000 | **Attribute** | **Value** | |-----------------|-------------| | Name | Device type | | Object Code | VAR | | Data Type | Unsigned32 | | Category | Mandatory | | Access | Ro | | Value | 1100 | ## Manufacturer Device Name String 0x1008 | **Attribute** | **Value** | |-----------------|---------------| | Name | Device name | | Object Code | VAR | | Data Type | VisibleString | | Category | Optional | | Access | Ro | | Value | EC-Master | Log: ```default 051217(00000041): 1008 “ Device name”: type 0x0009, code=0x07, optional, SubIds=0 051219(00000041): 1008:0 “ Device name” => type=0x0009, len=88, R .R .R 051219(00000041): 1008:0 STRG : EC-Master ``` ## Manufacturer Hardware Version String 0x1009 | **Attribute** | **Value** | |-----------------|----------------------------------------------------------------------------------------------------------------------------| | Name | Hardware version | | Object Code | VAR | | Data Type | VisibleString | | Category | Optional | | Access | Ro | | Value | V MM.mm.ss.bb MM = Major Version mm = Minor Version ss = Service Pack bb = Build e.g. V 01.05.02.02 | Log: ```default 1009 “ Hardware version”: type 0x0009, code=0x07, optional, SubIds=0 1009:0 “ Hardware version” => type=0x0009, len=112, R .R .R 1009:0 STRG : V 01.05.02.02 ``` ## Manufacturer Software Version String 0x100A | **Attribute** | **Value** | |-----------------|---------------------------------------------------------------------------------------------------------------------------| | Name | Software version | | Object Code | VAR | | Data Type | VisibleString | | Category | Optional | | Access | Ro | | Value | V MM.mm.ss.bb MM = Major Version mm = Minor Version ss = Service Pack bb = Build e.g. V 01.05.02.02 | Log: ```default 100a “ Software version”: type 0x0009, code=0x07, optional, SubIds=0 100a:0 “ Software version” => type=0x0009, len=112, R .R .R 100a:0 STRG : V 01.05.02.02 ``` ## Identity Object 0x1018 | **Subindex** | **Description** | **Data Type** | **Access** | **M/O/C** | **Available** | |----------------|-----------------------------------------------|-----------------|--------------|-------------|-----------------| | 0 | Number of Entries | Unsigned8 | R | M | X | | 1 | Vendor ID | Unsigned32 | R | M | X | | 2 | Product Code | Unsigned32 | R | M | X | | 3 | Revision Number (EC-Master software revision) | Unsigned32 | R | O | X | | 4 | Serial Number | Unsigned32 | R | O | X | Datatype for application access: ```c++ typedef struct _EC_T_OBJ1018{ EC_T_WORD wSubIndex0; /* = 4 */ EC_T_DWORD dwVendorID; /* = 0x00004154 */ EC_T_DWORD dwProductcode; /* = 0x6d657461 */ EC_T_DWORD dwRevision; /* SW Revision e.g. 0x01050202 */ EC_T_DWORD dwSerialnumber; /* = 0 */ } EC_PACKED(1) EC_T_OBJ1018; ``` Log: ```default 1018 « Identity » : type 0x0023, code=0x09, optional, SubIds=4 1018 :0 « SubIndex 000 » => type=0x0005, len=08, R .R .R 1018 :0 BYTE : 0x04 1018 :1 « Vendor ID » => type=0x0007, len=32, R .R .R 1018 :1 DWRD : 0x00004154 1018 :2 « Product code » => type=0x0007, len=32, R .R .R 1018 :2 DWRD : 0x6D657461 1018 :3 « Revision » => type=0x0007, len=32, R .R .R 1018 :3 DWRD : 0x01050202 1018 :4 « Serial number » => type=0x0007, len=32, R .R .R 1018 :4 DWRD : 0x00000000 ``` ## History Object 0x10F3 | **Subindex** | **Description** | **Data Type** | **Access** | **M/O/C** | **Available** | |----------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------|--------------|-------------|-----------------| | | | | | | | | 0 | Number of Entries | Unsigned8 | R | M | X | | 1 | Maximum number of Diag messages | Unsigned8 | R | M | X | | 2 | Subindex of newest Diag message | Unsigned8 | R | M | X | | 3 | Subindex of newest acknowledged Diag message | Unsigned8 | RW | M | X | | 4 | New Diag messages available | BOOL32 | R | M | X | | 5 | Flags (UINT16, RW) Bit 0 = 1: (R only) Enable Emergency sending (default = 0) Bit 1 = 1: Disable Storing Info Messages (default = 0) Bit 2 = 1: Disable Storing Warning Messages (default = 0) Bit 3 = 1: Disable Storing Error Messages (default = 0) Bit 4-15: reserved for future use | Unsigned16 | RW | M | – | | 6-255 | Diagnosis messages | See below | R | M | X | Datatype for application access: ```c++ typedef struct _EC_T_OBJ10F3 { EC_T_WORD wSubIndex0; EC_T_BYTE byMaxDiagMessages; EC_T_BYTE byNewestMessage; EC_T_BYTE byNewestAckMessage; EC_T_BYTE byNewDiagMessages; EC_T_WORD wFlags; /* EC_T_OBJ10F3_DIAGMSG */ /* Subindex 006ff */ } EC_PACKED(1) EC_T_OBJ10F3; ``` ### Diagnosis Messages Object 0x10F3: Subindex 6-255 | **Byte-Offset** | **Description** | **Data Type** | |-------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------| | 0 | Diag-Number Bit 0-11: free use Bit 12-15 = 14: to be comp. with Emergency Error Bit 16-31 = 0: reserved Bit 16-31 = 1-0xFFFE: free use Bit 16-31 = 0xFFFF: reserved | Unsigned32 | | 4 | Flags Bit 0-3: Diag type (0= Info, 1 = warning, 2 = error) Bit 4-15: reserved | Unsigned16 | | 6 | Text ID 0 = no Text ID 1-65535 = Reference to a Text ID with formatted string | Unsigned16 | | 8 | Time Stamp [ns] (from DC) | Unsigned64 | | 16 | Flags parameter 1 | Unsigned16 | | 18 | Parameter 1 | several | | N | Flags parameter n | Unsigned16 | | N+2 | Parameter n | several | Datatype for application access: ```c++ typedef struct { EC_T_WORD wParamFlags; /* Parameter flags */ EC_T_BYTE aData[4]; /* Parameter buffer: length depending on parameters */ } EC_PACKED(1) EC_T_DIAGMSGPARAM; typedef struct _EC_T_OBJ10F3_DIAGMSG { EC_T_DWORD dwDiagNumber; EC_T_WORD wFlags; EC_T_WORD wTextId; EC_T_UINT64 qwTimeStamp; EC_T_DIAGMSGPARAM oParameter; /* Handler of the first parameter */ } EC_PACKED(1) EC_T_OBJ10F3_DIAGMSG; ```