DeviceNet Explicit Message Function Block
- Updated2025-07-31
- 4 minute(s) read
A DeviceNet Explicit Message Function Block is an asynchronous module that finishes the Explicit Message operations that take a long time to complete. Create and use a DeviceNet Explicit Message Function Block from the LabVIEW palette.
![]() |
error in (no error) describes error conditions that occur before this node runs. This input provides standard error in functionality. |
![]() |
execute specifies the action for the function block to run when a rising edge occurs, if the function block is not already executing an operation. A rising edge occurs when the function block was previously invoked with execute set to FALSE and then invoked again with execute set to TRUE. This condition also occurs when the function block is invoked for the first time with execute set to TRUE. |
![]() |
device in specifies the refnum that identifies the slave device object. |
![]() |
request service code specifies the service code being requested. The device vendor provides documentation for the vendor-specific service codes. |
![]() |
class id specifies the class which contains the attribute. The value ranges from 0 to FFFF. Although the DeviceNet Specification allows 16-bit class IDs, most class IDs are 8-bit. NI-IndCom for DeviceNet uses the class ID size, 16-bit or 8-bit, that is appropriate for your device. |
![]() |
instance id specifies the instance which contains the attribute. The value ranges from 0 to FFFF hex. You can use instance ID 0 to get an attribute from the class. Other instance IDs typically start at 1. For example, the primary Identity Object in a device uses instance ID 1. Although the DeviceNet Specification allows 16-bit instance IDs, most instance IDs are 8-bit. NI-IndCom for DeviceNet uses the class ID size, 16-bit or 8-bit, that is appropriate for your device. |
![]() |
request data specifies the service data bytes for the request. The format of this data is specific to service code that you used. For object-specific service codes, the object specification defines the format of the data. For vendor-specific service codes, the device vendor defines the format of the data. |
![]() |
error out contains error information. This output provides standard error out functionality. |
![]() |
done returns TRUE only when the function block completes execution on success or error condition. done can also return TRUE if error in contains an error condition and execute is TRUE. |
![]() |
device out returns the refnum that identifies the slave device object. |
![]() |
response service code returns the service response as either success or error. Refer to the DeviceNet Specification for more information about service code. Although the DeviceNet Specification requires the high bit of the service code (hex 80) to be set in all Explicit Message responses, NI-IndCom for DeviceNet clears this response indicator so that you can compare the actual service code to the value used with the Write DeviceNet Explicit Message VI. |
![]() |
response data returns the service data bytes from response. If the response shows a success, these bytes are formatted as the service defines. If the response shows en error, the first byte (service data[0]) contains a General Error Code, and the second byte (service data[1]) contains an Additional Code. Either the DeviceNet Specification or the object itself defines the error codes. |










