Function Read File Record (function code - 0x14) in Modbus Protocol Specification.

  • Thread starter Evgeny Neruchek. Software Engineer
  • Start date

Thread Starter

Evgeny Neruchek. Software Engineer

I am implementing a Modbus Master server using Modbus Protocol Specification presenting in There are some questions i have about function Read File Record (function code - 0x14).

According to response table the value of field "Response data Length" should fit the range from 0x07 to 0xF5. However, by my calculations, the least size of one sub-response is 0x04 (4) bytes (1 byte for File Response length + 1 byte for Reference Type + 2 bytes for 1 register of data) and the most size is 0xFA (251) bytes (253 max PDU length - 1 byte for Function code - 1 Byte for Response Data length).
The questions are: what is the reason to put such constraint for "Response data Length" field (from 0x07 to 0xF5) and how it was calculated.

Besides i would like to know, why the "Sub-Request File Response length" field has the same constraint as the "Response data Length" field? According to these constraint the least value for "Response data Length" field should be: 0x07 + 0x01 byte for "Sub-Request File Response length" field = 0x08 bytes, shouldn't it? Is there a mistake in the specification, or am I just misunderstanding something?

I appreciate your attention and assistance.

I am looking forward to having your reply on email [email protected] .