-
Notifications
You must be signed in to change notification settings - Fork 3
RaftSerialConsoleSysMod
Rob Dobson edited this page May 3, 2026
·
1 revision
Built-in SysMod that exposes the REST API over a UART. Lets a developer type API requests directly into the serial console and receive JSON responses, while simultaneously carrying a binary protocol channel (RICSerial / RICJSON) for tool-driven access.
- ASCII command entry: type
subscription?topic=devjson&rateHz=10+ Enter. - Binary channel multiplexed on the same UART using
ProtocolOverAscii(MSB-set bytes carry framed binary; MSB-clear bytes are user input). - Registers a Comms Channel so the binary side participates fully in the channel system.
- XON/XOFF flow control hint via
getXonXoff().
| Key | Default | Meaning |
|---|---|---|
enable |
false |
Master switch |
uartNum |
0 |
ESP32 UART number |
baudRate |
115200 |
Baud rate |
rxBuf / txBuf
|
1024 / 4096
|
UART driver buffer sizes |
crlfOnTx |
true |
Send CRLF on tx line endings |
protocol |
"RICSerial" |
Protocol codec attached to the binary side |
| Endpoint | Method | Purpose |
|---|---|---|
console |
GET | Console control (e.g. show registered endpoints) |
- This is the recommended way to test Raft REST endpoints during bring-up — no network required.
- Logging output (
LOG_Ietc.) shares the same UART; the binary protocol uses MSB-set bytes so it does not collide with log text.
Getting Started
- Quick Start
- Architecture at a Glance
- Writing Your First SysMod
- Adding a Comms Channel
- Adding an I2C Device Type
- PlatformIO / Arduino
Scaffolding & Building
- Raft CLI
- SysTypes
- Top-Level SysType
- Build Process
- WebUI Build Pipeline
- File System
- Partitions & Flash
- Local Dev Libraries
- Library Developer Guide
Architecture
Built-in SysMods
- NetworkManager
- BLEManager
- WebServer
- MQTTManager
- SerialConsole
- CommandSerial
- CommandSocket
- CommandFile
- FileManager
- LogManager
- ESPOTAUpdate
- StatePublisher
- Remote Logging
- Data Source Registration
Comms & Protocols
- Stack Overview
- Comms Channels
- ProtocolExchange
- RICREST Protocol
- Real-Time Streams
- Adding REST Endpoints
- Built-in REST Endpoints
- File Download (OKTO)
- OTA Update Flow
Devices & Buses
- DeviceManager
- Device Manager REST API
- Device Factory & Classes
- Device Type Records
- Adding an I2C Device Type
- Device Data Publishing
- Data Logger
- I2C Bus
- I2C Device Scanning
- I2C ID & Polling
- MotorControl Overview
- MotorControl Config
- MotorControl Commands
Helpers
Reference
{ "name": "SerialConsole", "enable": 1, "uartNum": 0, "baudRate": 115200, "rxBuf": 1024, "txBuf": 4096, "crlfOnTx": 1, "protocol": "RICSerial" }