Skip to content
master
Switch branches/tags
Code

Serial Studio

Build Status CodeQL Codacy Badge Github All Releases Gitter Contributor Covenant Donate

Serial Studio is a multi-platform, multi-purpose serial data visualization program. The goal of this project is to allow embedded developers & makers to easily visualize, present & analyze the data generated by their projects and devices, without the need of writing specialized computer software for each project.

The need for this project arose during the development of the Ground Station Software for several CanSat-based competitions in which I participate. It's simply not sustainable to develop and maintain different GSS programs for each competition & project. The smart solution is to have one common Ground Station software and let each CanSat define how the data is presented to the end user by using an extensible communication protocol.

Furthermore, this approach can be extended to almost any type of project that involves some kind of data acquisition & measurement. If you want a more in-depth explanation of why this project exists, and what its all about, check this blog post.

Serial studio started out receiving data over a hardware serial port, but can now receive data over serial, MQTT and websockets (TCP/UDP).

NOTE: Information regarding the communication protocol is provided in the wiki.

Read this in other languages: Español 简体中文 Deutsch

Software usage

Install

You can download and install Serial Studio for your preferred platform.

GNU/Linux users must enable the executable flag before attempting to run the application:

chmod +x SerialStudio-1.1.0-Linux.AppImage
./SerialStudio-1.1.0-Linux.AppImage

You can also use the AppImageLauncher to integrate Serial Studio with your system.

Prebuilt Linux packages

Arch Linux users can install serial-studio-git from the aur, e.g. with aurutils:

aur fetch serial-studio-git
aur build
sudo pacman -S serial-studio-git

Licence

This project is released under the MIT license, for more information, check the LICENSE file.

Development

Requirements

The only requirement to compile the application is to have Qt installed in your system. The desktop application will compile with Qt 6.2.0. You will need to select the qtserialport and qt5compat modules while installing Qt.

On GNU/Linux systems, you will also need to install libgl1-mesa-dev in order to compile the application.

Full list of used Qt modules:

  • Qt SVG
  • Qt Quick
  • Qt Widgets
  • Qt Serial Port
  • Qt Quick Controls
  • Qt Quick Controls 2

Cloning

This repository makes use of git submodule. In order to clone it, execute these commands on your Terminal:

git clone https://github.com/Serial-Studio/Serial-Studio
cd Serial-Studio
git submodule init
git submodule update

Alternatively, just run:

git clone --recursive https://github.com/Serial-Studio/Serial-Studio

Compiling the application

Once you have Qt installed, open Serial-Studio.pro in Qt Creator and click the "Run" button.

Alternatively, you can also use the following commands:

qmake
make -j4

Tipping

If you find Serial Studio suitable for your needs, please consider giving me a tip through PayPal. Or, if you prefer to buy me a drink personally instead, just send me a DM when you visit Querétaro, Mexico, where I live. I look forward to meeting you!