Get Device Information (Service Code = 0x4D)

Get Device Information is outlined as follows.

Unconnected Message

Field
Value
Definition
Message Type
”CIP Generic”
Service Code
0x4D
Get Device Information
Class Name
0x035D
HART Object
Instance Name
1-16
Selects channel
Object Attribute
None; leave this field blank
Request Size
0
No Request Data
Reply Size
2-120 bytes
2 - Size when Device information not available.
120 - Size when valid Device Information returned.
Number of data bytes returned.

Request Data

HART Get Device Information - Request Packet Structure (Get currently cached Device Information for a given channel.)
Offset
Field
Value
Definition
No Requested Data
Request Size = 0

Request Failed

The HARTIOM responds with these messages.
HART Get Device Information - Reply Packet Structure
Offset
Field
Value
Definition
0
Status
34 = DR_RUNNING
35 = DR_DEAD
Command status
1
Pad
0
Pad byte
Reply Size = 2

Request Succeeded

The HARTIOM responds with these messages.
HART Get Device Information - Reply Packet Structure
Offset
Field
Value
Definition
0
Status
00 = SUCCESS
Command status
1
HART ManufID_EdtMSB
(1 byte)
CMD#0, Byte 1
2
HARTDeviceType_EdtLSB
(1 byte)
CMD#0, Byte 2
3
HARTPreamble
(1 byte)
CMD#0, Byte 3
4
HARTUnivCmdCode
(1 byte)
CMD#0, Byte 4
5
HARTTransSpecRev
(1 byte)
CMD#0, Byte 5
6
HARTSoftwareRevision
(1 byte)
CMD#0, Byte 6
7
HARTHardwareRevision
(1 byte)
CMD#0, Byte 7
8
HARTFlags
(1 byte)
CMD#0, Byte 8
9
Pad_1 for 32 bit alignment
(1 byte)
10-11
HART ManufacturerID16Bit
(2 byte)
CMD#0, Byte 1 if HART rev < 7
CMD#0, Bytes 17-18 if HART rev >= 7
12-15
HARTDeviceIDNumber
(4 bytes - UINT)
CMD#0, Bytes 9-11
Bytes re-ordered into Intel Format(LSB 1st ) from HART format(MSB 1st).
16-19
TagSize
8 (4 bytes)
20-27
TagString
(8 bytes unpacked ASCII)
CMD#13, Bytes 0-5
28-31
DescriptorSize
16 (4 bytes)
32-47
DescriptorString
(16 bytes unpacked ASCII)
CMD#13, Bytes 6-17
48
DateDay
(1 byte)
CMD#13, Byte 18
49
DateMonth
(1 byte)
CMD#13, Byte 19
50-51
DateYear
(2 bytes)
CMD#13, Byte 20 (+ 1900)
52-55
FinalAssemblyNumber
(4 bytes - UINT)
CMD#16, Bytes 0-2
Bytes re-ordered into Intel Format(LSB 1st) from HART Format(MSB 1st).
56-59
MessageSize
32 (4 bytes)
60-91
MessageString
(32 bytes unpacked ASCII)
CMD#12, Bytes 0-23
92
PVCode
(1 byte)
CMD#50, Bytes 0, 0xff if not supported
93
SVCode
(1 byte)
CMD#50, Bytes 1, 0xff if not supported
94
TVCode
(1 byte)
CMD#50, Bytes 2, 0xff if not supported
95
FVCode
(1 byte)
CMD#50, Bytes 3, 0xff if not supported
96
PVUnits
(1 byte)
CMD#3, Byte 4
97
SVUnits
(1 byte)
CMD#3, Byte 9, 0 if not present
98
TVUnits
(1 byte)
CMD#3, Byte 14, 0 if not present
99
FVUnits
(1 byte)
CMD#3, Byte 19, 0 if not present
100
TransferFunction
(1 byte)
CMD#15, Byte 1
101
RangeUnits
(1 byte)
CMD#15, Byte 2
102-103
ExpandedDeviceTypeCode
(2 bytes)
CMD#0, Byte 2 if HART Rev < 7
CMD#0, Bytes 1-2 if HART Rev >= 7
104-107
HARTPVLowerRange
(4 bytes - Floating Point Value)
CMD#15, Bytes 3-6
108-111
HARTPVUpperRange
(4 bytes - Floating Point Value)
CMD#15, Bytes 7-10
112-115
DampingValue
(4 bytes - Floating Point Value)
CMD#15, Bytes 11-14
116
WriteProtectCode
(1 byte)
CMD#15, Byte 15
117
Pad_2 for alignment
(1 byte)
118-119
PrivateLabelMfg16Bit
(2 bytes)
CMD#0, Byte 1 if HART Rev < 7
CMD#0, Bytes 19-20 if HART Rev >=7
Reply Size = 120 bytes
Provide Feedback
Have questions or feedback about this documentation? Please submit your feedback here.
Normal