bluerobotics / bluerobotics/cockpit
frontend: Development of a wind overlay to supplement sailboat course plotting.
- Dominant language
- TypeScript
- Stars
- 198
- Forks
- 63
- Avg merge
- 2d 7h
- Merged PRs (30d)
- 57
Description
### Current behaviour
After exploring the cockpit codebase I could find no inbound telemetry for sailboat that corresponded with a wind heading and strength reading. There is no connection to an NOAA API or other wind server to display wind data in the GCS when operating the sailboat.
### Expected or desired behaviour
I want to submit a PR and iterate on the idea of:
1. Decode the ArduPilot `WIND` MAVLink message `(direction, speed, speed_z)` in `src/libs/vehicle/mavlink/vehicle.ts,` expose it while following the existing ATTITUDE/GLOBAL_POSITION_INT pattern.
2. An API for wind forecasts.
3. An overlay that lets sailors toggle between local wind streamed from the boat and the general forecast from the API.
A mixture of both current data from an onboard sensor and data from a 3rd party can allow sailors to adjust their courses so sailboats can sail optimally. @patrickelectric
### Prerequisites
- [x] I have checked to make sure that a similar request has not already been filed or fixed.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start in src/libs/vehicle/mavlink/vehicle.ts and compare the existing ATTITUDE and GLOBAL_POSITION_INT handling. Define the forecast API and overlay scope, then verify that WIND data and forecast data can be displayed and toggled for sailboat course plotting.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- api, frontend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Needs clarification
- Newbie friendliness
- 32/100