/Serial-Studio

Multi-purpose serial data visualization & processing program

Primary LanguageC++OtherNOASSERTION

Serial Studio

Build Status Codacy Badge Github All Releases GitHub Latest Release Contributor Covenant

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 Français

Software usage

Build instructions

Requirements

The only requirement to compile the application is to have Qt installed in your system. The desktop application will compile with Qt 5.15 or greater. You will also need to have the following Qt non-LGPL modules installed:

  • Qt Charts

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 SQL
  • Qt Quick
  • Qt Widgets
  • Qt Charts
  • Qt Serial Port
  • Qt Quick Controls
  • Qt Quick Controls 2
  • Qt Graphical Effects

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

Prebuilt 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.