YAT – Yet Another Terminal

This software was placed last on my list for several reasons, even though its listed features suggest it should be at the top. Let's take a look at what's being said about it.

In the general description, it states, “Supports RS-232/422/423/485 as well as TCP/IP Client/Server/AutoSocket, UDP/IP Client/Server/PairSocket, and USB Ser/HID. Optimized for simple command sets of e.g., embedded systems.”

Among its features, it reads:

  • Serial terminal for engineering, testing, and debugging purposes.
  • The perfect replacement for old-fashioned terminals like Windows 3.x Terminal, Hyperterminal, and others used for device communication.
  • Formatting options for excellent readability, including predefined and custom color themes.
  • Configurable input mode.
  • Single-line text commands.
  • Multi-line text commands.
  • Send files with options to exclude empty lines, text patterns like comments, and special commands.
  • History of recent commands.
  • Unlimited number of predefined commands.
  • Reorder, cut/copy/paste, export/import, and even link predefined commands and pages thereof.
  • Escapes for bin/oct/dec/hex like “\h(4F 4B)” and C-style “0x4F” and “0b01001111”.
  • Escapes for ASCII controls like “” and C-style “\r\n”.
  • Special commands like “!(EOL)”, “!(NoEOL)”, “!(Delay(100))”, “!(LineDelay(500))”, “!(LineInterval(500))”, “!(LineRepeat(10))”.
  • Option to append CRC (e.g., Modbus), with approximately 50 common CRCs predefined.
  • Option to concurrently send text commands or files.
  • On-the-fly change of communication settings using commands like “!(Port(10))”, “!(Baud(115200)), “!(PortSettings(115200, 8, 0, 1))”.
  • Advanced options for in-depth RS-232/422/423/485 debugging of flow control, break conditions, and buffering.
  • Advanced options for text and binary communication.
  • Support for UDP/IP broadcast.
  • Versatile monitoring and logging of sent and received data.
  • Option to automatically trigger an action or response.
  • Filtering or suppressing lines of a given pattern.
  • Plotting live data.
  • Support for numerous single- and multi-byte character encodings (SBCS/DBCS/MBCS).
  • Unicode value representation.
  • Search/Find functionality, including regex.
  • Fully keyboard operable.
  • Workspace supporting multiple terminals.
  • Versatile shell/PowerShell command line, including head-less operation.

Having said that, the only thing I can say for sure is that it has an infinite number of settings and one of the clearest and most intuitive GUIs compared to all other software. It has some interesting features like AutoAnswer, packet forwarding over the network, and file sending. I must admit that I've never used it fully; sometimes I used it as a replacement for good old TeraTerm (https://teratermproject.github.io/index-en.html), but it remains a terminal and not a software dedicated to the serial port. For this reason, it doesn't fit my criteria for a software that communicates with the serial port.

The source code is available on SourceForge and is well-maintained, but unfortunately, it's in C#, which is a disadvantage. For Microsoft and C# enthusiasts, it might be interesting as everything becomes easier, but it remains within Microsoft's and .NET's “sandbox” (I know the term isn't appropriate), so it isn't interesting to me due to its lack of effective portability to other operating systems.

That said, the code is well-maintained, but it still isn't the ideal software for the serial port. Judging by the number of weekly downloads from SourceForge, I'm not the only one who thinks so. We're talking about approximately 3,000 downloads for RealTerm (with incomplete Delphi sources) versus just about 600 for YAT.

If you have time to spare, enjoy well-designed GUIs, and are a fan of C#, this software might offer you some ideas. If you want to work with the serial port, don't waste your time; use SerialTool or RealTerm among the free software options.

As I said, the graphical interface is very complete and honestly very nice to look at, so let's look at some screenshots with brief comments.

YAT Main Terminal

 

This screenshot shows the main interface of YAT (Yet Another Terminal), with a connected USB serial port (COM4) configured at a baud rate of 9600, with 8 data bits, no parity, and 1 stop bit. The interface is clean and user-friendly, displaying a variety of buttons and options at the top, including file, terminal, send, receive, log, view, window, and help menus.

In the center of the screen, there is a large, empty area where the sent and received data will appear. This space is currently blank, indicating no data has been transmitted or received yet. To the right, there is a panel labeled “Predefined Commands” with multiple buttons, which allows users to set up and send frequently used commands quickly.

At the bottom, there is a text box where you can type your message to be sent through the serial port. Next to this, there's an option to set a file for transmission. The status bar at the very bottom provides real-time information about the serial port connection status, including whether the COM port is open, the configured settings, and the status of various control signals like RTS, CTS, DTR, DSR, and DCD.

Despite being a fairly useless software unless you need an obsolete terminal, I find that the graphical layout is quite clear, probably because the software has been maintained since 2003. The only really useful feature is the ability to change the display mode of sent or received bytes in real-time via the top menu bar, switching from string mode to char, binary, octal, decimal, hexadecimal, or Unicode.

Be careful! When the terminal gets crowded with data, this function is no longer responsive. This is a typical issue that occurs when a Text Edit or Memo fills up with many strings. It's not a big deal, but not everything that glitters is gold.

Tests should always be conducted extensively and under extreme conditions to evaluate the quality of the software, at least by my criteria.

One thing I noticed is that the interface is not very responsive when sending a packet. Perhaps I'm using an incorrect configuration, but in any case, it's the default one.

YAT Terminal Menu

 

This is the “Terminal” menu. This menu provides options to open or close the terminal, with shortcuts for quickly starting or stopping it. You can manage multiple terminals simultaneously, which is a handy feature if you need to monitor multiple COM ports at once.

The menu allows you to clear the terminal display, refresh it, and select all or none of the displayed data. You can also copy the terminal content to the clipboard or save it to a file, making it easy to log your serial communication. Additionally, there's a print option if you need a hard copy of the data.

Search functions are available to find specific text within the terminal window. The settings menu lets you adjust various terminal parameters, and you can save or load settings presets for quick configuration changes.

YAT Serial Port

This page shows how to open the serial port, and one of the nice features is that it periodically checks if the serial port is open. It's not an essential feature but still something that is not present in other software.

YAT Send Menu

 

This image showcases the options available in the “Send” menu. It allows you to send text or files through the serial port, with various settings to customize the process.

You can keep the text after sending, send characters immediately, and enable special escape sequences for more advanced commands. There are options to skip empty lines when sending files, and you can define or copy predefined commands for quick access.

Additionally, the menu includes settings for automatic responses, making it easy to automate communication tasks.

Consclusion:

This software is a full-fledged terminal and offers a plethora of customization options. Despite this, it is of little use if you want to fully utilize the serial port. It is not cross-platform, and although the source code is public and constantly updated, it is written in C#. It is certainly commendable that after 20 years, there are still those who keep updating a terminal of this kind. Personally, if I have to choose a terminal, I still prefer the good old TeraTerm. I included it among the software for the serial port solely for the developers' commitment and dedication.