Hardware Protocol Specification: Modbus ASCII¶
Version: 1.0
Physical Layer: 115200 bps, 7N1.0
Framing: delimited
Integrity Algorithm: sum8
📄 AsyncAPI Artifacts: Download AsyncAPI 2.6.0 YAML | View Interactive AsyncAPI HTML Docs
Description¶
Modbus over serial, ASCII transmission mode. Every logical byte is sent as 2 ASCII hex characters, framed between ':' and CRLF.
Command Catalog & Message Signatures¶
Category: GENERAL¶
ReadHoldingRegistersRequest (Command ID: 0x03)¶
| Parameter | Type | Unit | Range / Constraints | Options |
|---|---|---|---|---|
slaveAddress |
uint8 |
- | - | - |
startAddress |
uint16 |
- | - | - |
quantity |
uint16 |
- | - | - |
Formal AsyncAPI 2.6.0 Specification¶
asyncapi: 2.6.0
info:
title: Modbus ASCII
version: '1.0'
description: Modbus over serial, ASCII transmission mode. Every logical byte is
sent as 2 ASCII hex characters, framed between ':' and CRLF.
servers:
serial_link:
url: serial://tty/115200
protocol: serial
description: Physical UART Transport (115200 bps, 7N1.0)
bindings:
serial:
baudRate: 115200
dataBits: 7
parity: even
stopBits: 1.0
framingType: delimited
integrity: sum8
channels:
omniuart/cmd/ReadHoldingRegistersRequest:
publish:
summary: 'Send command ReadHoldingRegistersRequest (ID: 0x03)'
description: Dispatch ReadHoldingRegistersRequest frame to microcontroller over
serial line
message:
name: ReadHoldingRegistersRequest_Message
title: ReadHoldingRegistersRequest Command
payload:
$ref: '#/components/schemas/ReadHoldingRegistersRequest_Request'
components:
messages: {}
schemas:
ReadHoldingRegistersRequest_Request:
type: object
properties:
command_id:
type: integer
const: 3
description: Opcode ID for ReadHoldingRegistersRequest
slaveAddress:
type: integer
startAddress:
type: integer
quantity:
type: integer
description: Command payload for ReadHoldingRegistersRequest