doc/help/Use-Cases.md
Real-world applications of Serial Studio across industries, education, and hobbyist projects.
Problem: Need real-time monitoring of robot position, battery level, motor currents, and sensor data during autonomous navigation tests.
Solution: Serial Studio receives data via Bluetooth LE from the robot's ESP32 controller, displaying:
Hardware: ESP32 + MPU6050 + GPS module + motor drivers Data Rate: 20 Hz update rate via BLE GATT characteristic Pro Feature Used: MQTT for remote monitoring when robot is out of BLE range
Problem: During development of a 6-DOF robot arm, need to visualize joint angles, end-effector position, and torque feedback in real-time.
Solution: Serial Studio Quick Plot mode connected via USB serial to display:
Hardware: Arduino Mega + servo controllers Data Format: Comma-separated values at 50 Hz Note: No custom software needed. Connect, set the baud rate, and visualize.
Problem: Teams need to debug sensor fusion algorithms, PID controllers, and autonomous routines during practice sessions.
Solution: Serial Studio dashboard shows:
Hardware: RoboRIO / Jetson Nano / Raspberry Pi Data Protocol: JSON over TCP socket for structured telemetry Educational Value: Students learn data-driven debugging and performance tuning
Problem: A robotics team uses USB gamepads to control their robot and wants to log joystick inputs alongside the robot's sensor feedback.
Solution: Serial Studio's HID driver reads gamepad axis and button data via hidapi:
Hardware: USB gamepad + ESP32 robot controller Pro Feature Used: HID driver, multi-device projects
Problem: Undergraduate physics lab needs affordable data acquisition for analyzing simple harmonic motion.
Solution: Serial Studio records accelerometer data from Arduino + MPU6050 attached to pendulum:
Hardware Cost: ~$15 per station (Arduino Nano + MPU6050) Replaces: Expensive commercial DAQ systems ($500-2000 per station) Student Outcome: Hands-on experience with sensors, data analysis, and experimental validation
Problem: Ecology researchers deploy 20 temperature/humidity sensors across a forest and need centralized monitoring.
Solution: Each sensor node publishes data to MQTT broker:
sensors/+/data topicHardware: ESP32 + BME280 sensors + solar panels Data Protocol: MQTT over WiFi/4G Research Impact: Continuous 6-month data collection with minimal human intervention
Problem: Students build Arduino-based weather stations and need to present data visually.
Solution: Serial Studio Quick Plot mode:
Hardware: Arduino Uno + DHT22 + BMP180 Class Size: 30 students (15 groups) Learning Goals: Sensors, serial communication, data presentation
Problem: A research team runs physics simulations that output CSV data to stdout. They want to visualize simulation results in real-time without writing custom GUI code.
Solution: Serial Studio's Process driver launches the simulation executable and streams its stdout into the dashboard:
Hardware: Any computer (no external devices needed) Pro Feature Used: Process I/O driver
Problem: Track real-time power consumption of appliances to optimize electricity usage.
Solution: ESP32 + current sensors publish data via MQTT:
Hardware: ESP32 + ACS712 current sensors Data Protocol: MQTT (local broker on Raspberry Pi) Cost Savings: Identified "vampire" devices consuming 15% of monthly bill
Problem: Monitor soil moisture, temperature, light levels, and control irrigation system.
Solution: Arduino Mega with sensor array sends data via USB:
Hardware: Arduino Mega + capacitive soil sensors + DHT22 + PAR sensor Data Format: JSON frames with custom frame parser for binary sensor data Automation: Thresholds trigger relay control for irrigation
Problem: Beekeepers want to monitor hive temperature and weight without disturbing bees.
Solution: Low-power sensor node with Serial Studio:
Hardware: Arduino Pro Mini + HX711 + DS18B20 + LoRa module Power: Solar + LiPo battery (3-month autonomy) Range: 2 km rural area
Problem: Citizen science project to map urban air pollution.
Solution: Multiple sensor nodes with GPS:
Hardware: ESP32 + PMS5003 + MQ-135 + GPS module Deployment: 10 units across city, data aggregated via MQTT Public Impact: Open data published to local community
Problem: River monitoring for pH, turbidity, dissolved oxygen, and temperature.
Solution: Waterproof sensor probe with RS485 interface:
Hardware: RS485 sensors + waterproof housing + solar panel Data Rate: 1 sample/minute for long-term stability Compliance: Data used for EPA reporting
Problem: High-altitude balloon launches need real-time tracking and sensor monitoring.
Solution: GPS + atmospheric sensors transmit via 433 MHz radio:
Hardware: Arduino + BMP280 + GPS + 433 MHz LoRa Max Altitude: 35 km (stratosphere) Recovery: GPS data logged to CSV for retrieval team
Problem: FPV drone pilots want to analyze flight performance and tune PID controllers.
Solution: Flight controller exposes telemetry via MAVLink protocol:
Hardware: Pixhawk / Betaflight FC + GPS + current sensor Data Protocol: MAVLink via UART or BLE telemetry module Post-Flight Analysis: CSV export analyzed for crash investigations
Problem: Hobbyist rocket builders need altitude, acceleration, and apogee detection.
Solution: Onboard Arduino logs to SD card + transmits real-time via 433 MHz:
Hardware: Arduino Pro Mini + BMP280 + MPU6050 + 433 MHz TX Recording Rate: 100 Hz during boost, 10 Hz during descent Safety: Real-time monitoring ensures recovery system fires
Problem: Long-range UAV needs battery monitoring, airspeed, and GPS tracking during 2-hour flights.
Solution: Telemetry via 900 MHz radio link:
Hardware: Pixhawk + airspeed sensor + GPS + 900 MHz telemetry Range: 10 km line-of-sight Endurance: 2-hour flight validated with data logs
Problem: A drone swarm or dual-drone system needs to monitor multiple aircraft at the same time, each sending telemetry over different links, and the operator needs to send steering commands and toggle cameras from the same dashboard.
Solution: Serial Studio's multi-device project mode connects to each drone's data link independently:
Output controls add interactive command panels per drone:
"THR " + value + "\r\n"Hardware: Two flight controllers + radio modems/Wi-Fi modules Pro Feature Used: Multi-device projects, output controls, MDF4 export
Problem: Automotive engineer developing ECU software needs to monitor and decode CAN messages in real-time.
Solution: Serial Studio Pro with CAN Bus interface and DBC file:
Hardware: PEAK PCAN-USB, Vector VN1630, SocketCAN interface, or virtual CAN for testing Data Protocol: CAN Bus with DBC file for signal database Note: CAN Bus monitoring without dedicated Vector/PEAK software Example: Monitor engine ECU during test drive, recording 50+ signals at 100 Hz
Problem: Test engineer has recorded MDF4 files from vehicle testing and needs to visualize the data for analysis.
Solution: Serial Studio Pro opens MDF4/MF4 files:
Hardware: None required (file playback only) Supported Formats: MDF4 (ASAM standard), MF4 Note: An alternative to Vector/ETAS tools for post-processing Example: Analyze brake test data recorded from CAN Bus, comparing pedal force vs. deceleration
Problem: Performance shop needs real-time engine metrics during dyno runs.
Solution: OBD-II adapter sends CAN bus data via Bluetooth:
Hardware: OBD-II Bluetooth adapter (ELM327 compatible) Data Protocol: AT commands parsed via custom JavaScript decoder Use Case: Tuning turbocharged engines for maximum power
Problem: Amateur racing team needs dashboard for pit crew to monitor driver and car status.
Solution: CAN bus logger transmits via WiFi to pit lane:
Hardware: Raspberry Pi + CAN hat + WiFi hotspot Data Rate: 50 Hz for critical sensors Competitive Advantage: Data-driven setup changes between sessions
Problem: DIY EV builder needs to monitor 96-cell lithium battery pack.
Solution: Battery management system (BMS) outputs cell voltages via UART:
Hardware: Custom BMS + isolated UART interface Safety Critical: Real-time monitoring prevents over-discharge/overcharge Range: Track remaining range based on consumption rate
Problem: Ham radio operator wants to visualize RF spectrum and signal strength.
Solution: SDR dongle + GNU Radio outputs I/Q data via UDP:
Hardware: RTL-SDR + Raspberry Pi + upconverter Frequency Range: 24 MHz - 1.7 GHz Application: Monitoring local repeaters, satellite passes, ISM bands
Problem: Homebrew antenna designs need SWR, impedance, and resonance testing.
Solution: NanoVNA antenna analyzer exports data via USB serial:
Hardware: NanoVNA or custom RF bridge + AD8302 Tuning Process: Adjust antenna length while watching real-time SWR plot Result: Optimized antenna with <1.5:1 SWR across ham bands
Problem: Mobile ham station needs to visualize APRS packets on map.
Solution: TNC (Terminal Node Controller) decodes APRS packets:
Hardware: Mobilinkd TNC + handheld radio + smartphone Coverage: Local APRS digipeaters (10-50 km) Use Case: Public service events, emergency communications
Problem: Biomedical engineering students build ECG device for capstone project.
Solution: AD8232 ECG sensor with Arduino:
Hardware: AD8232 + Arduino Nano + electrodes Safety: Isolated power supply (battery only, no AC connection) Educational Value: Students learn signal processing and medical device design
Problem: Wearable device developer prototypes SpO2 sensor.
Solution: MAX30102 sensor with ESP32:
Hardware: MAX30102 + ESP32 + 3D printed finger clip Accuracy: ±2% SpO2 compared to medical-grade oximeter Application: Sleep apnea monitoring, fitness tracking
Problem: Physical therapy clinic needs affordable gait analysis tool.
Solution: Pressure-sensitive insoles with force sensors:
Hardware: FSR sensors + Arduino Nano 33 BLE + battery Clinical Use: Rehab progress tracking, prosthetic fitting Cost: <$100 per system vs. $10,000+ commercial platforms
Problem: Factory floor has multiple PLCs controlling various processes, and engineers need to monitor register values in real-time.
Solution: Serial Studio Pro connects via Modbus TCP or Modbus RTU:
Hardware: Industrial PLC (Siemens, Allen-Bradley, Schneider Electric, etc.) + Ethernet/RS485 connection Data Protocol: Modbus TCP (Ethernet) or Modbus RTU (RS485 serial) Note: Standard Modbus support without custom programming Example: Monitor a water treatment plant with 5 PLCs controlling pumps, valves, and sensors
Problem: Machine shop wants to track spindle load, feed rate, and tool wear.
Solution: Industrial PLC outputs data via Modbus RTU or serial:
Hardware: PLC + RS485 to USB adapter Predictive Maintenance: Detect bearing wear from increased spindle current Downtime Reduction: Real-time monitoring prevents crashes
Problem: Packaging line needs to maintain constant belt speed for quality control.
Solution: Encoder wheel on conveyor with Arduino:
Hardware: Rotary encoder + Arduino + proximity sensor Quality Impact: Reduced rejected products due to speed variations Integration: Data logged to CSV for ISO compliance
Problem: Electronics assembly requires precise solder reflow temperature curve.
Solution: Thermocouple (K-type) with MAX6675 and Arduino:
Hardware: K-type thermocouple + MAX6675 + Arduino Precision: ±2°C accuracy across 0-250°C range Compliance: IPC-A-610 solder joint quality standards
Problem: A test bench has USB instruments (oscilloscopes, multimeters) that expose bulk endpoints but no serial port. Need to log measurements alongside serial sensor data.
Solution: Serial Studio's Raw USB driver connects directly via libusb bulk transfers:
Hardware: USB test instruments + serial sensors Pro Feature Used: Raw USB driver, multi-device projects, MDF4 export
Problem: Home solar installation lacks monitoring for power generation.
Solution: Current/voltage sensors on solar array:
Hardware: ESP32 + INA219 current sensors + voltage divider Data Logging: CSV export analyzed monthly for performance trends ROI Tracking: Payback period calculated from energy data
Problem: Aquarium hobbyist needs to maintain stable pH, temperature, and salinity.
Solution: Sensor array with Arduino:
Hardware: Arduino + pH probe + DS18B20 + conductivity sensor Automation: Relay control for heater and dosing pumps Fish Health: Stable parameters reduce stress and disease
Problem: Homeowner wants to optimize heating/cooling system for lower bills.
Solution: Temperature sensors in supply/return ducts:
Hardware: ESP32 + DS18B20 sensors + WiFi Data Analysis: CSV export identifies inefficient operation times Energy Savings: 15% reduction after optimizing thermostat schedule
The Painter widget exposes a JavaScript paint(ctx, w, h) callback against a
Canvas2D-style context backed by QPainter. An optional onFrame() runs once per
dashboard tick before paint() for time-domain bookkeeping (ring buffers, peak
hold decay, integrators). A 250 ms watchdog terminates the script if a single
call does not return.
Painter is a Pro feature.
Problem: The built-in line plot does not match the appearance of a CRT scope: no persistence trace, no afterglow, no XY mode for Lissajous patterns.
Solution: The bundled Oscilloscope template renders one or more channels
on a phosphor-green CRT background:
XY scope (Lissajous) template for Lissajous patterns from two
synchronous channelsHardware: Any UART/USB device pushing one or more analog channels.
Pro Feature Used: Painter widget, oscilloscope.js / xy_scope.js templates
Problem: A 3D attitude widget is more than required for a pilot view; the intended display is a flat attitude indicator with pitch ladder, roll bank, and a fixed aircraft symbol.
Solution: The bundled Artificial horizon template binds two datasets
(pitch and roll, in degrees):
Hardware: Pixhawk / Betaflight flight controller streaming MAVLink, or any
source providing pitch and roll.
Pro Feature Used: Painter widget, horizon.js template
Problem: A test bench dashboard needs to reproduce the appearance of the analog meter on the instrument it replaces, so operators do not need to relearn the panel layout.
Solution: Start from the Dial gauge template and modify the colour zones,
tick layout, and label fonts to match the original instrument:
onFrame() so the needle sweeps across samples
rather than snapping to each new valueHardware: Any sensor exposing a single bounded value (load cell,
thermocouple, RPM encoder).
Pro Feature Used: Painter widget, dial_gauge.js template
Problem: An audio engineer requires VU-style meters with peak hold across two or more channels alongside other telemetry.
Solution: The bundled Audio VU meter and Bars with peak hold templates
render segmented LED-style bars with peak markers:
Hardware: Any audio input device (USB microphone, audio interface, sound
card input).
Pro Feature Used: Painter widget, Audio driver, audio_meter.js /
bar_peak_hold.js templates
Problem: Rotating-machinery diagnostics require a polar plot of magnitude versus angle that the built-in widgets do not provide.
Solution: The bundled Polar plot template draws pairs of datasets as
(angle, magnitude) rays on a polar grid:
Hardware: Accelerometer plus tachometer on the rotating shaft.
Pro Feature Used: Painter widget, Waterfall widget, polar_plot.js
template
See Operation Modes for how the three modes compare.
Have you used Serial Studio in a unique way? We'd like to hear about it.
/examples folder via pull requestNeed help with your project? Check the FAQ and Troubleshooting pages, or reach out to the community on GitHub Discussions.