Serial Studio

Multi-purpose serial data visualization & processing program

2341
279
C++

Serial Studio

Github commits
GitHub contributors
PR's Welcome
Github All Releases
Instagram
Donate

Serial Studio is a multi-platform, versatile data visualization tool designed for embedded engineers, students, hackers, and teachers. It allows users to visualize, analyze, and represent data from their projects and devices without needing custom, project-specific visualization software. Serial Studio offers a flexible solution that adapts to a wide range of use cases, making it ideal for both educational and professional environments.

The tool was born out of my experience in multiple CanSat-based competitions, where I often found myself developing new Ground Station Software for each project. Over time, I realized it would be more efficient and sustainable to maintain a single, flexible Ground Station Software that allows users to define how incoming data is processed and displayed.

Today, Serial Studio is a powerful and adaptable tool, suitable not only for CanSat competitions but for any data acquisition and visualization project. It supports data retrieval from a wide range of sources, including hardware and software serial ports, MQTT, Bluetooth Low Energy (BLE), and network sockets (TCP/UDP).

Software usage

Features

  • Cross-platform: Compatible with Windows, macOS, and Linux.
  • CSV Export: Easily saves received data in CSV files for further analysis or processing.
  • Support for multiple data sources: Handles a wide variety of sources, including serial ports, MQTT, Bluetooth Low Energy (BLE), and network sockets (TCP/UDP).
  • Customizable visualization: Allows users to define and display data using various widgets, configurable via the project editor to meet specific needs.
  • Customizable frame analysis: Provides the option to modify a JavaScript function to interpret incoming data frames, enabling the preprocessing of raw sensor data and handling of complex binary formats.
  • MQTT publishing and receiving: Sends and receives data over the internet, enabling real-time data visualization from anywhere in the world.

Visit the Wiki for comprehensive guides, including:

  • Installation Instructions: Set up Serial Studio on Windows, macOS, or Linux.
  • Quick Start Guide: Learn how to connect your device and visualize data in minutes.
  • Advanced Topics: Explore data flow, frame parsing, and building custom dashboards.
  • Examples: Examples with code, projects, and explanations to help you learn Serial Studio.

Development

Requirements

To compile Serial Studio, the only required dependency is Qt, preferrably with all plugins & modules installed. The desktop application compiles with Qt 6.8.1.

If you’re compiling on GNU/Linux, you’ll also need to install libgl1-mesa-dev:

sudo apt install libgl1-mesa-dev

Once Qt is installed, you can compile the project by opening the CMakeLists.txt file in your preferred IDE or by using the command line:

mkdir build
cd build 
cmake ../ -DPRODUCTION_OPTIMIZATION=ON -DCMAKE_BUILD_TYPE=Release
cmake --build . -j 16 

Support & Licensing

Open source software thrives on the collaboration and support of its users. By contributing to Serial Studio, you help ensure its growth, sustainability, and positive impact on developers, educators, and makers worldwide.

If Serial Studio has helped you, consider supporting its development in one of the following ways:

Your support makes a difference! Thank you for being part of the Serial Studio journey!

License

Serial Studio is dual-licensed under the GNU General Public License v3 (GPLv3) for open-source users and a Commercial License for business and professional use.

  • Open Source Use: Free under the GPLv3 license. Limitations apply, such as 30-minute session restrictions and limited dashboard widgets.
  • Commercial Use: Requires a Commercial License for businesses or professional users, offering unlimited usage, MQTT streaming, and priority support.

For more details, see the LICENSE file or visit https://serial-studio.com.