Skip to main content
Use UART for boot logs, application messages, or a firmware command console. Connect the port in a Serial Monitor tab, then ask Embedder to read the output or wait for a specific message.

Wire the board

  1. Connect the board’s USB serial interface, or a UART adapter your operating system supports. Install the adapter’s driver if its port doesn’t appear.
  2. For a separate adapter, connect target TX to adapter RX and connect ground. Connect adapter TX to target RX only when you need to send input.
  3. Match the adapter’s signal voltage to the board.
Port names depend on the operating system. Use the port the Monitor lists for your device. For a remote bridge, the port, driver, and device permissions belong to the hardware host. Bridge ports start with bridge: and the bridge name.

Connect in the Monitor

  1. Open a Serial Monitor tab. See Open a Serial Monitor tab.
  2. Select the Port. Each entry shows the port and the device name.
  3. Leave Mode set to UART.
  4. Set Baud to the firmware’s rate, or select Detect baud. The list runs from 300 to 921600 and includes 74880 for ESP bootloader output.
  5. Set NL to the line ending your firmware expects for commands: LF (\n), CR (\r), CRLF (\r\n), or None.
  6. Select Connect.
If you haven’t chosen a baud rate yourself, the Monitor tries to detect it when you connect.
Connecting asserts DTR and RTS, and disconnecting releases them. On a board that wires these lines to reset or boot selection, connecting or disconnecting can restart the firmware or change its boot mode. To preserve a fault, keep the existing connection open and read its history.
A port can be open at only one baud rate. Another tab on the same port uses the rate that’s already open. If Embedder requests a different rate, its capture fails with a message such as Port COM3 is already open at 115200 baud, cannot change to 9600 baud. To change the rate, disconnect, set Baud, and connect again. When another program opens the port, such as a flasher or a separate terminal, the tab shows Paused and sending is blocked. The tab reconnects when the port is free. Select Paused to disconnect instead.

Read firmware output

Replace the example port with your board’s port:
Embedder asks for approval before it opens the port, unless you’ve already allowed serial access. The approval shows the port’s device name. It warns when the port looks like a Bluetooth device or isn’t a recognized development board or serial adapter, so check the port before you approve. While Embedder captures, the Serial Monitor tab marks the capture with --- agent monitor capture started --- and --- agent monitor capture ended (N bytes) --- lines. If you don’t give a baud rate, Embedder detects it. A successful connection doesn’t show that the firmware is running correctly. Check that the expected message appeared. Output sent before any connection was open is lost. Reset the board deliberately, or wait for the next run. To inspect output that’s already captured, without opening another connection:

Send a command

Type a command your firmware supports in the Type command… box and press Enter, or select Send. The Monitor adds the NL line ending. Press the up and down arrow keys to recall earlier commands. Check the response before you send another command. For example, if the firmware implements a status command terminated by LF, select LF (\n) under NL, send status, and confirm the expected response. Your firmware defines the command and its response. When you ask Embedder to send a command, it asks for approval and sends the command through the Serial Monitor tab connected to that port, so the tab’s NL setting applies. A new tab uses LF (\n). Embedder reports about one second of response, up to 50 lines. For a longer response, ask Embedder to read the history afterward.

Reset to capture boot output

Ask for a reset only when it matches the board’s wiring and the test you intend to run. Name the reset method when you ask Embedder to capture boot output:
Embedder resets after the port opens, so the capture includes the boot log. A DTR or RTS reset gives no confirmation. If the output shows no boot messages, the reset likely didn’t take effect. Try another method or a probe reset command.

Troubleshoot

  • Port missing: check the USB cable, power, driver, and which machine the device is attached to.
  • Access denied or port busy: close other serial programs and check the host’s serial-device permissions.
  • Permission denied on Linux: add your user to the dialout group with sudo usermod -a -G dialout $USER, then log out and back in.
  • Garbled output: confirm the firmware’s baud rate, or select Detect baud. Check the board and adapter voltage levels.
  • Connected but silent: check TX/RX wiring, firmware logging, and whether the output happened before you connected.
  • Command has no response: check the command, the target RX connection, and the NL setting.
  • Tab shows Paused: another program has the port open. Close it, or wait for the flash to finish.
Use a hardware script for a repeatable UART pass/fail check, or Live plots for numeric output.
Last modified on October 13, 2026