# Serial Studio — Open-Source Serial Data Visualization Dashboard > Cross-platform dashboard for visualizing and logging serial port data in real time, with configurable widgets and CSV/JSON parsing. ## Install Save in your project root: # Serial Studio — Open-Source Serial Data Visualization Dashboard ## Quick Use ```bash # Download a release from https://github.com/Serial-Studio/Serial-Studio/releases # Or build from source: git clone https://github.com/Serial-Studio/Serial-Studio.git cd Serial-Studio git submodule update --init --recursive mkdir build && cd build cmake .. make -j$(nproc) ./Serial-Studio ``` ## Introduction Serial Studio is a cross-platform desktop app for visualizing data from serial ports, network sockets, and Bluetooth. It parses frames using JSON project files and renders them as live gauges, plots, and tables. ## What Serial Studio Does - Connects to serial ports, TCP/UDP sockets, MQTT brokers, and Bluetooth - Parses byte streams using configurable JSON maps describing frame structure - Renders live line charts, bar gauges, compass widgets, and data tables - Logs raw and parsed data to CSV for offline analysis - Displays multiple data groups in a tabbed dashboard ## Architecture Overview Built with Qt 6 and QML. An I/O manager handles device connections and feeds raw bytes into a frame parser that splits data by delimiters or fixed length. Parsed fields map to named datasets in a JSON project file, and the QML frontend binds those datasets to visual widgets. ## Self-Hosting & Configuration - Define frame layout in a JSON project file with groups, datasets, and widget types - Set baud rate, data bits, parity, and stop bits in the connection dialog - Choose delimiter-based parsing or fixed-interval frame splitting - Enable CSV logging to capture every frame for later review - Build from source with Qt 6 on Windows, macOS, or Linux ## Key Features - Multi-protocol input: serial, TCP, UDP, MQTT, and Bluetooth - JSON-driven dashboard layout versionable alongside firmware code - Real-time plotting with configurable update rate and history depth - Built-in console showing raw hex or ASCII alongside the dashboard - CSV export for post-processing in spreadsheets or scripts ## Comparison with Similar Tools - **PuTTY / screen** — terminal-only serial access; no graphical plotting or structured parsing - **Arduino Serial Plotter** — simple built-in plotter; limited to comma-separated numerics with no custom widgets - **Grafana + Telegraf** — powerful dashboards but requires a database backend and heavier setup - **CoolTerm** — serial terminal with basic logging; lacks widget visualization and JSON-driven layout ## FAQ **Q: What data format does it expect?** A: Comma- or tab-separated values ending with a newline by default. Delimiters and frame structure are customizable in the JSON project file. **Q: Can I use it without a JSON project file?** A: Yes. Quick-plot mode auto-detects numeric CSV lines and plots each column. The JSON file is only needed for custom widget layouts. **Q: Does it support high baud rates?** A: It supports whatever rates the OS serial driver allows, commonly up to 921600 baud and higher on some platforms. **Q: Is the dashboard layout drag-and-drop?** A: No. Widget types and groupings come from the JSON project file. You can reload a different file at runtime. ## Sources - Repository: https://github.com/Serial-Studio/Serial-Studio - Documentation: https://github.com/Serial-Studio/Serial-Studio/wiki --- Source: https://tokrepo.com/en/workflows/asset-a20de8d2 Author: AI Open Source