-
Notifications
You must be signed in to change notification settings - Fork 3
Communication Protocol
Rabbit GRBL communicates through a serial interface.
All interaction with the controller is performed over a serial port (USB-to-Serial), which appears on the host system as a standard COM port.
Rabbit GRBL’s serial protocol is deterministic, text-based, and fully compatible with GRBL 1.1-style communication, enabling standard G-code senders to communicate without modification.
Communication is text-based and follows a simple request–response model:
- The host (G-code sender, terminal, or custom software) sends ASCII commands.
- Rabbit GRBL parses the incoming line.
- The controller responds with a status message, result (
ok/error:), or structured feedback.
Typical serial parameters:
- Baud rate: 115200
- Data bits: 8
- Parity: None
- Stop bits: 1
(8N1 configuration)
All commands and responses are line-based.
Each message must be terminated with a newline character:
\n
In most systems this corresponds to:
-
LF(Line Feed,\n) - or
CR+LF(\r\n)
Rabbit GRBL processes input only after receiving the newline character.
If a newline is not sent, the command will not be executed.
Sending:
G0 X10\n
Rabbit GRBL will respond:
ok\n
- One command per line
- Commands are case-insensitive
- Each line must end with
\n - The controller replies after each complete line
In addition to line-based commands, Rabbit GRBL also supports single-character real-time commands (such as ?, ~, !) which do not require a newline and are processed immediately.
Copyright (C) Nikolaos Siatras / SourceRabbit
Rabbit GRBL is licensed under the GNU General Public License v3.0 or later (GPL-3.0-or-later).
See the LICENSE file in the repository for full license text.
SourceRabbit® is a trademark of Nikolaos Siatras.
All other trademarks are property of their respective owners.