Skip to content

Mavlink Client #4

Closed
Closed
@atar13

Description

@atar13

🚀 Feature

Need a way to to communicate with the flight controller.

  • Find a library to communicate with the Pixhawk over Serial and UDP/TCP

Create a C++ class to contain all the mavlink functionality we need and to abstract away the details.

  • Connect to Pixhawk over Serial (verify heartbeat)
  • Connect to SITL over UDP/TCP (verify heartbeat)
  • Query positional telemetry in the form of mavlink message from the plane. Should return a struct that has this info:
    • latitude
    • longitude
    • altitude
    • relative_alt (from ground)
    • heading
    • airspeed
    • groundspeed
  • Function that queries wind information based on this message https://mavlink.io/en/messages/common.html#WIND_COV
  • Utilize library to create a function to send a mission

This declaration should go in the include/network/mavlink.hpp.
This definition should go in the src/network/mavlink.cpp.

Documentation

Add a page to the wiki under obc where you outline the functions of the interface. For the messages that get data from the flight controller, mention which mavlink messages they use.

Tests

Create a Mock plane that this client can interface with during testing. This is rather complicated so see Tyler or Anthony when you get to this step.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions