I usually use Platformio as IDE for my Arduino projects. I like it as an editor, but I don't like its serial monitor feature. So I often open the Arduino IDE in background to use its serial monitor, but this has some drawbacks (including a significant increase in my computer's CPU usage and battery consumption).

Is there an Arduino-compatible serial monitor application that just works as a serial monitor (and not also as an IDE)? I'm most interested in a MacOS application, but if you know a Windows one please tell me as well.

  • 3
    putty ... putty.org ...
    – jsotola
    Commented Jan 3, 2018 at 15:28
  • 3
    I regularly use GNU screen. For example screen /dev/ttyUSB0 115200 where /dev/ttyUSB0 is the serial port of the Arduino, and 115200 is the baud rate. What's wrong with the PlatformIO serial monitor, by the way?
    – tttapa
    Commented Jan 3, 2018 at 15:50
  • you can use any serial terminal, search for them. putty is pretty good. aside: do you get constant CPU usage from the arduino program as well? (thought it was just me...)
    – dandavis
    Commented Jan 3, 2018 at 15:58
  • You can use almost anything; but the catch with using something not integrated is that it may not automatically get out of the way when you try to upload code. Commented Jan 3, 2018 at 17:32
  • @tttapa thanks. Is there also some kind of gnu serial port scanner? — the biggest issue (for me) is the fact that I can’t copy the output (I don’t know if it’s an issue of PlatformIO, Atom or something on my computer... but as I select one serial monitor word all the text in the window get selected); a secondary problem is that putting data in is quite tricky (compared to the Arduino ide serial monitor) Commented Jan 3, 2018 at 17:36

4 Answers 4


I use CoolTerm, which is available for Mac, Windows and Linux. It is a great serial app, and you can have several windows open at the same, for each serial pipe you may be using (Bluetooth, Arduino Serial, etc).


Consider building your own monitor in Python. This gives you flexibility since Python is cross platform and you can tailor the monitor to your needs.

  1. Install Python.
  2. Install pySerial (pip install pyserial).
  3. Write a Python script to read and/or write to the Arduino across the serial port. There are some great examples out there such as this example and other Stack Overflow answers.

On macOS, you can use the built-in screen command, e.g.:

screen /dev/cu.usbmodem14201 9600

To exit, control-A followed by control-\


There's a list of serial port sniffers here, if you want to view raw data

softwarerecs.stackexchange serial-port-logging

And a list here of programs which plot graphs from serial data:

softwarerecs.stackexchange serial-data-plotting-programs

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.