README.md
Serial Studio is an open-source dashboard tool for embedded developers who are tired of staring at scrolling terminals. Describe your data format once in a project file, and it builds a live dashboard for you.
It works with Arduino, ESP32, STM32, Raspberry Pi, Teensy, and anything that talks over UART, Bluetooth LE, TCP/UDP, or CAN Bus. Modbus TCP/RTU covers industrial and PLC setups. Audio drivers can be used to analyze analog signals. MQTT can work either as publisher or subscriber, making it useful for IoT setups where data needs to travel beyond the local network. Raw USB gives direct bulk/isochronous access to USB devices via libusb. HID devices (gamepads, custom USB HIDs, sensors) connect through hidapi. Process I/O lets any program that writes to stdout feed data into the dashboard. Multi-device projects let you connect several devices at once—each with its own protocol—and monitor them all on a single dashboard.
Once the data is in, Serial Studio can visualize it using several kinds of widgets, including plots, gauges and tables. Export to CSV or MDF4 for further analysis, or load it back later to replay a session in the dashboard. Actions let you define buttons that send commands back to the device, with optional timers for polling or periodic control.
Serial Studio runs on Windows, macOS, and Linux (including ARM64 for Raspberry Pi), making it a practical choice for robotics teams, IoT developers, makers, educators, and researchers who want to spend time on their hardware rather than on the tooling around it.
📚 New users? Check out the help center for FAQ, use cases, and comparison with alternatives.
Serial Studio is available as source code and official precompiled binaries for Windows, macOS, and Linux.
Requires the Microsoft Visual C++ Redistributable (x64). On first launch, Windows may show a warning about an unknown developer, click "More Info → Run Anyway" to continue.
Distributed as a universal DMG. Open the DMG file and drag Serial Studio into the Applications folder. Alternatively, you can try installing via Homebrew:
brew install --cask serial-studio
Note: The Homebrew cask is community-maintained. It’s available, but not officially developed or tested by me.
The recommended way to install Serial Studio on Linux is via the official pre-built AppImage. Make it executable and run it:
chmod +x SerialStudio-Pro-3.2.7-Linux-x64.AppImage
./SerialStudio-Pro-3.2.7-Linux-x64.AppImage
If the AppImage fails to launch, your system may be missing libfuse2:
sudo apt install libfuse2
Tip: For better desktop integration (menu entries, updates, icons), use AppImageLauncher.
Serial Studio is also available on Flathub. This version receives regular updates and may offer better support for ARM64 systems. However, minor graphical glitches may occur on some desktop environments—especially under Wayland (e.g., missing window shadows).
An ARM64 AppImage is available for Raspberry Pi and similar devices. Performance varies based on hardware and GPU drivers, since the UI depends on GPU acceleration. The ARM64 AppImage requires:
glibc 2.38 dependency)libfuse2 installedMake sure your system meets these requirements before running the AppImage.
Get started with Serial Studio in under 5 minutes:
chmod +x the AppImage and run (may need sudo apt install libfuse2)/examples folder for Arduino sketches, ESP32 code, and Python scriptsvoid setup() {
Serial.begin(9600);
}
void loop() {
int temperature = analogRead(A0);
int humidity = analogRead(A1);
Serial.print(temperature);
Serial.print(",");
Serial.println(humidity);
delay(100);
}
Upload to Arduino → Connect Serial Studio → Enable Quick Plot → Done!
First-time users: See the help center for troubleshooting and common questions.
📚 Learn More:
Minimum Requirements:
Platform-Specific Requirements:
sudo apt install libgl1-mesa-dev build-essential
xcode-select --installbrew install qt@6All C/C++ dependencies (zlib, expat, OpenSSL, KissFFT, etc.) are vendored in lib/ or fetched automatically via CMake's FetchContent. No package manager is required.
cmake -B build -DPRODUCTION_OPTIMIZATION=ON -DCMAKE_BUILD_TYPE=Release
cmake --build build -j$(nproc)
You can also open CMakeLists.txt directly in Qt Creator or any CMake-aware IDE — no additional setup required.
By default, the build system produces a fully GPLv3-compliant version of Serial Studio. This version includes most core features but excludes commercial modules such as MQTT, 3D visualization, XY plotting, and other advanced tools that depend on proprietary Qt components.
If you are a Pro user or have a commercial license, contact the project maintainer for build instructions and activation requirements.
Serial Studio is developed and maintained by Alex Spataru.
It is open source and community-driven, with commercial options available for users who need advanced features or business-friendly licensing.
If Serial Studio is useful to you, consider supporting its development in one of the following ways:
Commercial licenses directly fund continued development, bug fixes, and new features.
Serial Studio uses a dual-license model that distinguishes between open-source usage and commercial distribution:
Source files are individually marked with SPDX headers indicating whether they are:
GPL-3.0-onlyLicenseRef-SerialStudio-CommercialGPL-3.0-only OR LicenseRef-SerialStudio-CommercialThis structure allows developers to build and distribute GPL-compliant versions while protecting commercial functionality.
The table below outlines licensing, feature access, and obligations across each edition:
| Feature / Use Case | GPL Version (Build it yourself) | Trial Version (Official binary) | Pro Version (Activated official binary) |
|---|---|---|---|
| Commercial Use | ✅ If fully GPL compliant | ❌ Evaluation only | ✅ Fully licensed |
| Official Support | ❌ Community only | ❌ None | ✅ Priority support |
| Pro Features | ❌ Not included | ✅ Included | ✅ Included |
| Usage Restrictions | Must comply with GPL and Qt terms | 14-day trial, no redistribution | Bound by commercial license terms |
| Precompiled Binary | ❌ Must build from source | ✅ Provided for trial only | ✅ Provided |
| Qt Licensing | Requires GPL-compatible Qt | Qt licensing covered by vendor | Qt licensing covered by vendor |
| Activation System | ❌ Not applicable | ✅ Trial disables after 14 days | ✅ Requires valid license key |
| Business Use | ✅ If strictly GPL compliant | ❌ Prohibited | ✅ Fully allowed |
| Best For | OSS devs, students, contributors | Hobbyists, personal evaluation | Businesses, teams, commercial products |
Reminder: Pro features and official binaries are proprietary and require a commercial license for any use beyond personal evaluation. Visibility of source code does not imply GPL rights unless explicitly licensed.
Contributions are welcome! Whether you're fixing bugs, adding features, or improving documentation, your help is appreciated.
Before contributing:
Code Style:
Submitting Changes:
git checkout -b feature/amazing-feature)For major changes, please open an issue first to discuss your proposal.