-
Notifications
You must be signed in to change notification settings - Fork 161
03 UART
Geo edited this page Aug 12, 2025
·
20 revisions
UART mode allows communication over a standard serial interface using TX/RX pins.
This mode is useful for probing unknown serial devices, sending and receiving data, or bridging traffic.
| Command | Description |
|---|---|
scan |
Attempts to detect the correct baud rate using known probe strings |
ping |
Sends probes and collects replies to test if a UART device is responsive |
read |
Continuously reads from UART until [ENTER] is pressed |
write <text> |
Sends the specified text to the connected device over UART |
bridge |
Starts a real-time full-duplex UART bridge (ESP32 to device) |
spam <text> <ms> |
Continuously write text every given ms until ENTER is pressed |
at |
AT commands with guided input and automatic insertion into the template |
glitch |
Placeholder for future glitch-based timing attacks (not yet implemented) |
xmodem <recv/send> <path> |
Transfer file using XMODEM protocol (send or receive from SD) |
config |
Interactive configuration: RX/TX pins, baud rate, data bits, parity, etc. |
['Hello' r:64] ... |
Sends custom instruction sequences using bytecode-like syntax |
-
scanuses entropy and ASCII analysis to guess baudrate automatically. -
pingsends predefined probes and analyzes responses to detect UART activity. -
spamcan send special chars like \n. -
bridgeconnects the terminal input/output to the device in real-time. Press any ESP32 button to stop. -
atworks with various devices. Each device has its own command set: not all commands are universal. -
xmodemsend and receive operations require an SD card, as files are read from or written to the SD. -
xmodemat 115200 baud (≈11.5 kB/s), transferring a 1 MB file over XMODEM takes approximately 90 seconds. -
configsupports full UART parameter customization:- RX/TX pins
- Baudrate
- Data bits (5–8)
- Parity (None, Even, Odd)
- Stop bits (1 or 2)
- Inversion (for certain logic-level devices)
- The custom instruction syntax (
['Hello' r:64]) lets you build sequences of writes, delays, and reads manually.
mode uart
config # Configure pins and settings
scan # Try to find the right baud rate
ping # Send probes for a response
write AT # Send AT text
write Hello\n # Send Hello with a line return
read # View device output
bridge # Real-time serial passthrough
spam Hello 1000 # Write Hello every second
spam \n 5 # Send ENTER every 5ms
xmodem send /file.txt # Send a file via XMODEM from SD
xmodem recv /file.txt # Receive a file via XMODEM to SD
['AT' r:64] # Send 'AT' and read 64 bytes
⚠️ Voltage Warning: Devices should only operate at 3.3V or 5V.
Do not connect peripherals using other voltage levels — doing so may damage your ESP32.