---
title: "Three Alternatives to Arduino's Serial Monitor"
description: "Alternatives to the Arduino IDE's built-in Serial Monitor. Tools for Windows, OS X, and Linux which are compatible with all serial-based Arduino boards."
canonical: "https://www.baldengineer.com/alternatives-to-arduinos-serial-monitor.html"
author: "James Lewis"
date: "2013-11-19T11:39:29Z"
lastmod: "2015-03-14T14:29:43Z"
image: "https://www.baldengineer.com/wp-content/uploads/2012/09/serial-alt-banner.png"
categories: ["arduino","microcontrollers"]
tags: ["arduino-stuff","cathode","serial"]
---

# Three Alternatives to Arduino's Serial Monitor


The Arduino IDE includes a "Serial Monitor" which is decent for basic serial communication.  However, when you need real time serial interaction or data logging capabilities, that's when one of these serial monitor alternatives can come in handy.

## putty \[Windows\]

Download:  [PuTTY](http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html).
License:  MIT.

[![Putty Screenshot](/wp-content/uploads/2013/11/putty.png)](/wp-content/uploads/2013/11/putty.png)

Hands-down one of my favorite terminal applications for  Windows is [PuTTY from Simon Tatham](http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html).  In addition to being a great serial terminal it can also handle telnet, ssh, and a host of other things (no pun intended).  The source is available and looks like it runs on UNIX platforms, but I have never tried.  If you're using Windows, this is probably your best go-to terminal application.  Every Windows machine I use gets PuTTY in the Start Menu shortcuts.

## Screen \[Mac, Linux, Win\]

Download:  None (for Mac and Linux)
License:  GPL

[![screen for mac and linux](/wp-content/uploads/2013/11/screen.png)](/wp-content/uploads/2013/11/screen.png)

Screen is a command line based fullscreen VT100 emulator.  It makes a create terminal client and has the ability to "detach" from the current terminal to run in the background.  When it comes to serial communication, it's the tool I used the most outside of the Serial Monitor.  On Windows you will probably need to install Cygwin.  On Linux and the Mac, you've already got it.  Drop to a terminal and run screen.

```
screen <serial_port> <baud_rate>
```

Since it comes with all Unix systems it is hard to beat.  Except, if you have a Mac.  There's one option that will beat it!

## Cathode \[Mac\]

One of the coolest terminal emulators available is [Cathode](http://www.secretgeometry.com/apps/cathode/ "Cathode Retro Terminal") from Secret Geometry, which I've written about [before](/blog/2012/07/19/osx-cathode-best-terminal-ever/ "OSX:  Cathode, Best Terminal Ever!") (with video).  It emulates old-school CRT monitors which sends any grey-bearded hacker (or soon to be) into a nostalgic frenzy.  Which combined with screen can be super nerdy way to interact with your Arduino project.  Go full screen and you'll make new friends in your makerspace in no time.

[YouTube video hn_GFM-NK0Q](https://www.youtube.com/watch?v=hn_GFM-NK0Q)


It's too beautiful for screen shots, so there's a video of the [Arduino ASCIITable Example](https://www.youtube.com/watch?v=hn_GFM-NK0Q).

## Code For Testing Serial Monitors

To demonstrate screen and PuTTY,  I loaded the following code on to my Arduino Uno.  It sends back whatever characters it receives.

```c

void setup() {
  Serial.begin(9600);
}

void loop() {
  while(Serial.available()) {
   char incoming = Serial.read();
   Serial.print(incoming);
  }
}

```

## Conclusion

Use whatever serial application suits your need. There are plenty of other terminals you can use. What are some of the others you know about?

