Files
boWave/CHANGES_SUMMARY.md

2.4 KiB

boWave Project Updates & Fixes

This document summarizes the changes made to the boWave project to improve NMEA 2000 data visibility, dashboard aesthetics, and Windows compatibility.

🚀 Key Improvements

1. Unified Dashboard Access (Port 8090)

  • Problem: Accessing different services required multiple ports (3000, 1780, 6680, etc.), causing CORS and firewall issues.
  • Solution: Configured Nginx and Vite proxies to tunnel all backend services through the main dashboard port (8090).
  • Paths:
    • SignalK: /signalk
    • Snapcast: /snapcast-ws
    • Mopidy: /mopidy
    • Jellyfin: /jellyfin

2. "Ship Control" Dashboard Design

  • New UI: Implemented a minimalist, high-end yacht aesthetic based on provided photo references.
  • BoatControl Component: Added a central interactive boat profile with circular category icons (Lights, Climate, Nav, Music, Energy).
  • FloorPlan Component: Created a visual deck plan for controlling lighting and climate in specific zones (Salon, Cabins, etc.).
  • Central Instrument: Added a floating gauge over the boat for immediate SOG and Heading monitoring.

3. NMEA 2000 Data Fixes

  • SignalK Proxy: Fixed a bug in the API router that prevented listeners from re-attaching when switching from real to mock data.
  • Auto-Fallback: The dashboard now waits 5 seconds for real SignalK data; if none is received, it automatically starts the mock data stream so the dashboard never looks "empty".

4. Windows Compatibility & Ease of Use

  • Self-Healing Pipes: Named pipes (.pcm files) are now created automatically inside the Docker containers during startup. No more manual mkfifo needed on the host.
  • Batch Scripts: Added dev.bat and stop.bat for Windows users who don't have make installed.
  • Docker Fixes: Corrected librespot execution errors by using the official image and proper command list formatting.

5. Audio System Enhancements

  • Spotify & AirPlay Visibility: Added these services to the health check monitor and updated the useZones hook to track their stream status via Snapcast.
  • Unified API: The createApi factory now automatically uses the dashboard host, making it fully portable across different network setups.

🛠️ How to start (Windows)

  1. Ensure Docker Desktop is running.
  2. Run .\dev.bat in the project root.
  3. Open http://localhost:8090 in your browser.