CoolTerm

Cross-platform Freeware | Used in: SG-03 SG-05

What It Does

CoolTerm is a simple serial port terminal application with a clean graphical interface. It lets you connect to microcontrollers, routers, switches, and any device with a UART/serial interface, send and receive data, log output to a file, and view traffic in both plain text and hex modes. It is freeware, portable, and works on Windows, macOS, and Linux.

Why You Need It

Signal guides SG-03 and SG-05 involve direct serial communication with Arduino boards and other microcontrollers. CoolTerm gives you a dedicated serial terminal that stays out of the way of the Arduino IDE — you can monitor serial output, send commands, and capture logs without fighting the IDE's built-in Serial Monitor for port access. Its GUI approach makes it more approachable than command-line serial tools for students who are new to UART communication.

How to Install It

Official download: freeware.the-meiers.org

Windows: Download the Windows ZIP, extract it anywhere, and run CoolTerm.exe. No installation required — it is fully portable. Works from a USB drive.

macOS: Download the macOS version, extract the .app bundle, and drag it to Applications. On first launch you may need to right-click and select "Open" to bypass Gatekeeper since it is not code-signed through the App Store.

Linux: Download the Linux version from the same site. Extract and run the binary. Ensure your user is in the dialout group to access serial ports without root:

sudo usermod -aG dialout $USER

Log out and back in for the group change to take effect.

How to Use It

  1. Connect to a serial port — Click "Options" (or Connection > Options) to open connection settings. Under "Serial Port," select your device (e.g., COM3 on Windows, /dev/ttyUSB0 or /dev/tty.usbmodem* on Linux/macOS). Click "Re-Scan Serial Ports" if your device does not appear.
  2. Set baud rate — Match the baud rate to your device. Common values: 9600 (Arduino default), 115200 (ESP32, Raspberry Pi serial console), 57600, 19200. Mismatched baud rates produce garbled output.
  3. Send and receive data — Click "Connect" to open the port. Incoming data appears in the terminal window. Type in the input field at the bottom to send data. Use the "Send String" dialog (Connection > Send String) for multi-line or repeated commands.
  4. Capture to file — Go to Connection > Capture to Text/Binary File to log all incoming data. Useful for recording sensor readings, debugging output, or boot logs over extended periods.
  5. Hex view — Switch to hex display mode (View > Hex) to see raw byte values alongside ASCII. Essential for debugging binary protocols or identifying non-printable control characters in the data stream.

Common Gotchas

Port already in use

Connection fails if another program already has the COM port open. Close the Arduino IDE Serial Monitor, PuTTY, or any other serial terminal before connecting in CoolTerm. Only one application can hold a serial port at a time.

Baud rate mismatch = garbled text

If you see random symbols instead of readable text, the baud rate in CoolTerm does not match the device. Check your Arduino sketch's Serial.begin() value and set CoolTerm to the same number.

Line ending settings

Some devices expect a carriage return (CR), line feed (LF), or both (CR+LF) at the end of each command. If your device ignores what you type, check Options > Terminal > "Enter Key Emulation" and try different line ending modes.

USB-to-serial driver required

If your USB-to-serial adapter does not appear in the port list, you likely need a driver. CH340/CH341 and CP2102 adapters require manufacturer drivers on Windows. FTDI chips usually work out of the box. Check Device Manager (Windows) or dmesg (Linux) to confirm the adapter is recognized.

Last Reviewed

Last reviewed: March 2026