TinyCom - A Line Based Serial Terminal GUI

February 22, 2017

TinyCom 1.0 was written in a weekend as a fun little project. It's a cross platform serial terminal written in Python that makes it easy to interact with various pieces of serial hardware. Because most of the time this interaction is line based, it makes sense to have a tool that can take advantage of this. It also goes without saying, because this is simply a script, it's fairly easy to extend and customize even further.

Like most projects, most of the initial time was spent on anything but actual serial communication - the main purpose of the application. I spent a lot of effort abstracting out and making sure this worked with Python 2 and Python 3 as well as supporting PyQt4, PyQt5, and PySide dynamically at runtime and not build time. It's a pretty crazy compromise to get this to work, which is a testament to the entire Python ecosystem in general.

Here's a screenshot of what the main window looks like.

main_window.png

It's a pretty simple application where you open a serial port and then you can transmit and receive information over the serial port. You can choose to send and receive data in hex or plain text independently, and also choose things like what line ending combination you want to send.

If you've already got your python environment setup, you can install with:

pip install tinycom

See the README for more information on installing and dependencies.

For more information, jump on over to TinyCom on PyPi or clone the source from TinyCom on GitHub.

Related Posts