Releases: TarunSamala/USV-Dashboard
Releases · TarunSamala/USV-Dashboard
USV-Dashboard
USV Dashboard — v1.0.0
IMU Navigation Module — Ground Control Station
Qt 6.7 · OpenGL 3.3 · C++20 · Windows 64-bit
Overview
First production release of the USV Ground Control Station dashboard. Provides real-time 3D orientation visualization, live IMU telemetry display, sensor matrix readout, calibration control, and CSV data logging over a serial connection to an ESP32-based IMU module.
Features
3D Vessel Visualization
- Real-time OpenGL vessel model rendered via
QQuickFramebufferObjectwith full roll, pitch, and yaw response - Boat-shaped hull geometry with pointed bow, flat transom stern, and cabin superstructure
- Red bow arrow on deck indicating the
+X(forward) direction - Third-person stern camera — user always sees the vessel from behind with the bow pointing away
- XYZ axis indicator in the bottom-left corner of the viewport (X=red, Y=blue, Z=green), rotating with the vessel body frame
- Dark grid floor and cube boundary environment
IMU Telemetry
- Live roll, pitch, and yaw readout in degrees
- Full 9-axis sensor matrix: accelerometer (m/s²), gyroscope (rad/s), magnetometer (µT)
- Serial telemetry pipeline from ESP32 at 115200 baud
- Auto-detection and periodic scanning of available COM ports
Calibration System
- GYR — Gyroscope calibration with live progress bar
- MAG — Magnetometer calibration with rotation guidance
- BOW — Heading reference calibration: captures current IMU orientation as the zero reference; all subsequent visualization is computed relative to this baseline. Resets the 3D vessel to default orientation instantly on click, with the offset saved for the session
Logging
- CSV telemetry logging with REC/STOP control
- Event log with timestamped system messages
- System events panel for firmware-level messages
Deployment
- Fully self-contained Windows 64-bit build via
windeployqt - No Qt installation required on target machine
- OpenGL software fallback (
opengl32sw.dll) for machines without a capable GPU driver
Technical Notes
QQuickStyle::setStyle("Basic")enforced at startup — eliminates native Windows style conflicts with custom QMLbackgroundandcontentItemoverridesQQuickWindow::setGraphicsApi(QSGRendererInterface::OpenGL)enforced beforeQApplicationconstruction — required forQOpenGLFunctions-based renderer to activate on Qt 6 Windows builds- MinGW
glu.hinclude guard (#ifdef _WIN32 / #include <windows.h>) preventsAPIENTRY/CALLBACKmacro resolution failures on MinGW 11.2 - FBO vertical flip compensation applied to axis indicator viewport position and Z-axis draw direction
Known Limitations
- BOW calibration offset is stored in-session only — not persisted across restarts
- Bow offset uses per-axis subtraction rather than full quaternion composition; negligible error when calibrating on a level surface
- Serial port selection is manual — no auto-connect to a known device VID/PID
Build
cmake .. -G "MinGW Makefiles" -DCMAKE_BUILD_TYPE=Release
mingw32-make -j8windeployqt --qmldir ..\qml deploy\app.exe
xcopy /E /I Dashboard deploy\DashboardToolchain: Qt 6.7.3 · MinGW 11.2 · CMake 3.22 · Windows 10/11 x64
USV Dashboard
USV Dashboard v0.1.0
Initial working release of the USV Monitoring Dashboard.
Features
- Qt 6 (C++ + QML) desktop application
- Basic dashboard layout (Top / Left / Center / Logs)
- Cross-platform architecture (Linux + Windows)
- Windows portable build included
Notes
- This is an early version (UI foundation stage)
- Telemetry, charts, and real-time data integration coming next
How to Run (Windows)
- Download the zip
- Extract
- Run
app.exe
Built with Qt 6.7.3 + MinGW