10.11.10 Function Codes Supported by
Modbus RTU
Modbus RTU supports use of the function codes in
Table 10.16 in the function field of a message.
Function Function code
Read coils 1 hex
Read holding registers 3 hex
Write single coil 5 hex
Write single register 6 hex
Write multiple coils F hex
Write multiple registers 10 hex
Get comm. event counter B hex
Report follower ID 11 hex
Table 10.16 Function Codes
Function Function
code
Sub-
function
code
Sub-function
Diagnostics 8 1 Restart communication
2 Return diagnostic register
10 Clear counters and
diagnostic register
11 Return bus message count
12 Return bus communication
error count
13 Return bus exception error
count
14 Return follower message
count
Table 10.17 Function Codes
10.11.11
Modbus Exception Codes
For a full explanation of the structure of an exception code
response, refer to chapter 10.11.2 Modbus RTU Message
Structure.
Code Name Meaning
1 Illegal
function
The function code received in the query
is not an allowable action for the server
(or follower). This may be because the
function code is only applicable to newer
devices, and was not implemented in the
unit selected. It could also indicate that
the server (or follower) is in the wrong
state to process a request of this type, for
example because it is not configured and
is being asked to return register values.
2 Illegal data
address
The data address received in the query is
not an allowable address for the server
(or follower). More specifically, the
combination of reference number and
transfer length is invalid. For a controller
with 100 registers, a request with offset
96 and length 4 would succeed, a request
with offset 96 and length 5 will generate
exception 02.
3 Illegal data
value
A value contained in the query data field
is not an allowable value for server (or
follower). This indicates a fault in the
structure of the remainder of a complex
request, such as that the implied length is
incorrect. It specifically does NOT mean
that a data item submitted for storage in
a register has a value outside the
expectation of the application program,
since the Modbus protocol is unaware of
the significance of any particular value of
any particular register.
4 Follower
device failure
An unrecoverable error occurred while
the server (or follower) was attempting to
perform the requested action.
Table 10.18 Modbus Exception Codes
RS-485 Installation and Set... Design Guide
MG34S222 Danfoss A/S © Rev. 2014-02-10 All rights reserved. 279
10 10