![CONTROL SOLUTIONS Babel Buster 3 BB3-6101-GW User Manual Download Page 45](http://html.mh-extra.com/html/control-solutions/babel-buster-3-bb3-6101-gw/babel-buster-3-bb3-6101-gw_user-manual_2658657045.webp)
Appendix B Modbus Reference Information
B.1 Function Codes, Error Codes, and More
Modbus Register Types
The types of registers referenced in Modbus devices include the following:
• Coil (Discrete Output)
• Discrete Input
• Input Register
• Holding Register
Whether a particular device includes all of these register types is up to the
manufacturer. It is very common to find all I/O mapped to holding registers only. Coils
are 1-bit registers, are used to control discrete outputs, and may be read or written.
Discrete Inputs are 1-bit registers used as inputs, and may only be read. Input
registers are 16-bit registers used for input, and may only be read. Holding registers
are the most universal 16-bit register, may be read or written, and may be used for a
variety of things including inputs, outputs, configuration data, or any requirement for
"holding" data.
Modbus Function Codes
Modbus protocol defines several function codes for accessing Modbus registers. There
are four different data blocks defined by Modbus, and the addresses or register
numbers in each of those overlap. Therefore, a complete definition of where to find a
piece of data requires both the address (or register number) and function code (or
register type).
The function codes most commonly recognized by Modbus devices are indicated in the
table below. This is only a subset of the codes available - several of the codes have
special applications that most often do not apply.
Function Code
Register Type
1
Read Coil
2
Read Discrete Input
3
Read Holding Registers
4
Read Input Registers
5
Write Single Coil
6
Write Single Holding Register
B. Modbus Reference Information
file:///C:/AAA_CSI/Literature/2021 User Guides/BB3-6101-MX-61 Use...
1 of 4
5/4/2021, 9:58 AM