diff --git a/MAVSDK_SERVER_VERSION b/MAVSDK_SERVER_VERSION index 9dedf1e9..9052dab9 100644 --- a/MAVSDK_SERVER_VERSION +++ b/MAVSDK_SERVER_VERSION @@ -1 +1 @@ -v0.41.0 +v0.44.0 diff --git a/examples/follow2.py b/examples/follow2.py new file mode 100644 index 00000000..e69de29b diff --git a/examples/offboard_position_velocity_ned.py b/examples/offboard_position_velocity_ned.py new file mode 100755 index 00000000..db8feaee --- /dev/null +++ b/examples/offboard_position_velocity_ned.py @@ -0,0 +1,62 @@ +#!/usr/bin/env python3 + +import asyncio + +from mavsdk import System +from mavsdk.offboard import (PositionNedYaw, VelocityNedYaw, OffboardError) + +async def run(): + drone = System() + await drone.connect(system_address="udp://:14540") + + print("Waiting for drone to connect...") + async for state in drone.core.connection_state(): + if state.is_connected: + print(f"Drone discovered with UUID: {state.uuid}") + break + + print("-- Arming") + await drone.action.arm() + + print("-- Setting initial setpoint") + await drone.offboard.set_position_ned(PositionNedYaw(0.0, 0.0, 0.0, 0.0)) + + print("-- Starting offboard") + try: + await drone.offboard.start() + except OffboardError as error: + print(f"Starting offboard mode failed with error code: {error._result.result}") + print("-- Disarming") + await drone.action.disarm() + return + + + async def print_z_velocity(drone): + async for odom in drone.telemetry.position_velocity_ned(): + print(f"{odom.velocity.north_m_s} {odom.velocity.down_m_s}") + + asyncio.ensure_future(print_z_velocity(drone)) + + print("-- Go 0m North, 0m East, -10m Down within local coordinate system") + #await drone.offboard.set_position_velocity_ned(PositionNedYaw(0.0, 0.0, -10.0, 0.0),VelocityNedYaw(0.0,0.0,-1.0,0.0)) + await drone.offboard.set_position_ned(PositionNedYaw(0.0, 0.0, -10.0, 0.0)) + await asyncio.sleep(10) + + print("-- Go 10m North, 0m East, 0m Down within local coordinate system") + await drone.offboard.set_position_ned(PositionNedYaw(50.0, 0.0, -10.0, 0.0)) + #await drone.offboard.set_position_velocity_ned(PositionNedYaw(50.0, 0.0, -10.0, 0.0),VelocityNedYaw(1.0,0.0,0.0,0.0)) + await asyncio.sleep(20) + + await drone.action.land() + + + print("-- Stopping offboard") + try: + await drone.offboard.stop() + except OffboardError as error: + print(f"Stopping offboard mode failed with error code: {error._result.result}") + + +if __name__ == "__main__": + loop = asyncio.get_event_loop() + loop.run_until_complete(run()) diff --git a/mavsdk/action_server.py b/mavsdk/action_server.py new file mode 100644 index 00000000..d4871c1c --- /dev/null +++ b/mavsdk/action_server.py @@ -0,0 +1,944 @@ +# -*- coding: utf-8 -*- +# DO NOT EDIT! This file is auto-generated from +# https://github.com/mavlink/MAVSDK-Python/tree/main/other/templates/py +from ._base import AsyncBase +from . import action_server_pb2, action_server_pb2_grpc +from enum import Enum + + +class FlightMode(Enum): + """ + Flight modes. + + For more information about flight modes, check out + https://docs.px4.io/master/en/config/flight_mode.html. + + Values + ------ + UNKNOWN + Mode not known + + READY + Armed and ready to take off + + TAKEOFF + Taking off + + HOLD + Holding (hovering in place (or circling for fixed-wing vehicles) + + MISSION + In mission + + RETURN_TO_LAUNCH + Returning to launch position (then landing) + + LAND + Landing + + OFFBOARD + In 'offboard' mode + + FOLLOW_ME + In 'follow-me' mode + + MANUAL + In 'Manual' mode + + ALTCTL + In 'Altitude Control' mode + + POSCTL + In 'Position Control' mode + + ACRO + In 'Acro' mode + + STABILIZED + In 'Stabilize' mode + + """ + + + UNKNOWN = 0 + READY = 1 + TAKEOFF = 2 + HOLD = 3 + MISSION = 4 + RETURN_TO_LAUNCH = 5 + LAND = 6 + OFFBOARD = 7 + FOLLOW_ME = 8 + MANUAL = 9 + ALTCTL = 10 + POSCTL = 11 + ACRO = 12 + STABILIZED = 13 + + def translate_to_rpc(self): + if self == FlightMode.UNKNOWN: + return action_server_pb2.FLIGHT_MODE_UNKNOWN + if self == FlightMode.READY: + return action_server_pb2.FLIGHT_MODE_READY + if self == FlightMode.TAKEOFF: + return action_server_pb2.FLIGHT_MODE_TAKEOFF + if self == FlightMode.HOLD: + return action_server_pb2.FLIGHT_MODE_HOLD + if self == FlightMode.MISSION: + return action_server_pb2.FLIGHT_MODE_MISSION + if self == FlightMode.RETURN_TO_LAUNCH: + return action_server_pb2.FLIGHT_MODE_RETURN_TO_LAUNCH + if self == FlightMode.LAND: + return action_server_pb2.FLIGHT_MODE_LAND + if self == FlightMode.OFFBOARD: + return action_server_pb2.FLIGHT_MODE_OFFBOARD + if self == FlightMode.FOLLOW_ME: + return action_server_pb2.FLIGHT_MODE_FOLLOW_ME + if self == FlightMode.MANUAL: + return action_server_pb2.FLIGHT_MODE_MANUAL + if self == FlightMode.ALTCTL: + return action_server_pb2.FLIGHT_MODE_ALTCTL + if self == FlightMode.POSCTL: + return action_server_pb2.FLIGHT_MODE_POSCTL + if self == FlightMode.ACRO: + return action_server_pb2.FLIGHT_MODE_ACRO + if self == FlightMode.STABILIZED: + return action_server_pb2.FLIGHT_MODE_STABILIZED + + @staticmethod + def translate_from_rpc(rpc_enum_value): + """ Parses a gRPC response """ + if rpc_enum_value == action_server_pb2.FLIGHT_MODE_UNKNOWN: + return FlightMode.UNKNOWN + if rpc_enum_value == action_server_pb2.FLIGHT_MODE_READY: + return FlightMode.READY + if rpc_enum_value == action_server_pb2.FLIGHT_MODE_TAKEOFF: + return FlightMode.TAKEOFF + if rpc_enum_value == action_server_pb2.FLIGHT_MODE_HOLD: + return FlightMode.HOLD + if rpc_enum_value == action_server_pb2.FLIGHT_MODE_MISSION: + return FlightMode.MISSION + if rpc_enum_value == action_server_pb2.FLIGHT_MODE_RETURN_TO_LAUNCH: + return FlightMode.RETURN_TO_LAUNCH + if rpc_enum_value == action_server_pb2.FLIGHT_MODE_LAND: + return FlightMode.LAND + if rpc_enum_value == action_server_pb2.FLIGHT_MODE_OFFBOARD: + return FlightMode.OFFBOARD + if rpc_enum_value == action_server_pb2.FLIGHT_MODE_FOLLOW_ME: + return FlightMode.FOLLOW_ME + if rpc_enum_value == action_server_pb2.FLIGHT_MODE_MANUAL: + return FlightMode.MANUAL + if rpc_enum_value == action_server_pb2.FLIGHT_MODE_ALTCTL: + return FlightMode.ALTCTL + if rpc_enum_value == action_server_pb2.FLIGHT_MODE_POSCTL: + return FlightMode.POSCTL + if rpc_enum_value == action_server_pb2.FLIGHT_MODE_ACRO: + return FlightMode.ACRO + if rpc_enum_value == action_server_pb2.FLIGHT_MODE_STABILIZED: + return FlightMode.STABILIZED + + def __str__(self): + return self.name + + +class AllowableFlightModes: + """ + State to check if the vehicle can transition to + respective flightmodes + + Parameters + ---------- + can_auto_mode : bool + Auto/mission mode + + can_guided_mode : bool + Guided mode + + can_stabilize_mode : bool + Stabilize mode + + """ + + + + def __init__( + self, + can_auto_mode, + can_guided_mode, + can_stabilize_mode): + """ Initializes the AllowableFlightModes object """ + self.can_auto_mode = can_auto_mode + self.can_guided_mode = can_guided_mode + self.can_stabilize_mode = can_stabilize_mode + + def __equals__(self, to_compare): + """ Checks if two AllowableFlightModes are the same """ + try: + # Try to compare - this likely fails when it is compared to a non + # AllowableFlightModes object + return \ + (self.can_auto_mode == to_compare.can_auto_mode) and \ + (self.can_guided_mode == to_compare.can_guided_mode) and \ + (self.can_stabilize_mode == to_compare.can_stabilize_mode) + + except AttributeError: + return False + + def __str__(self): + """ AllowableFlightModes in string representation """ + struct_repr = ", ".join([ + "can_auto_mode: " + str(self.can_auto_mode), + "can_guided_mode: " + str(self.can_guided_mode), + "can_stabilize_mode: " + str(self.can_stabilize_mode) + ]) + + return f"AllowableFlightModes: [{struct_repr}]" + + @staticmethod + def translate_from_rpc(rpcAllowableFlightModes): + """ Translates a gRPC struct to the SDK equivalent """ + return AllowableFlightModes( + + rpcAllowableFlightModes.can_auto_mode, + + + rpcAllowableFlightModes.can_guided_mode, + + + rpcAllowableFlightModes.can_stabilize_mode + ) + + def translate_to_rpc(self, rpcAllowableFlightModes): + """ Translates this SDK object into its gRPC equivalent """ + + + + + rpcAllowableFlightModes.can_auto_mode = self.can_auto_mode + + + + + + rpcAllowableFlightModes.can_guided_mode = self.can_guided_mode + + + + + + rpcAllowableFlightModes.can_stabilize_mode = self.can_stabilize_mode + + + + + +class ArmDisarm: + """ + Arming message type + + Parameters + ---------- + arm : bool + Should vehicle arm + + force : bool + Should arm override pre-flight checks + + """ + + + + def __init__( + self, + arm, + force): + """ Initializes the ArmDisarm object """ + self.arm = arm + self.force = force + + def __equals__(self, to_compare): + """ Checks if two ArmDisarm are the same """ + try: + # Try to compare - this likely fails when it is compared to a non + # ArmDisarm object + return \ + (self.arm == to_compare.arm) and \ + (self.force == to_compare.force) + + except AttributeError: + return False + + def __str__(self): + """ ArmDisarm in string representation """ + struct_repr = ", ".join([ + "arm: " + str(self.arm), + "force: " + str(self.force) + ]) + + return f"ArmDisarm: [{struct_repr}]" + + @staticmethod + def translate_from_rpc(rpcArmDisarm): + """ Translates a gRPC struct to the SDK equivalent """ + return ArmDisarm( + + rpcArmDisarm.arm, + + + rpcArmDisarm.force + ) + + def translate_to_rpc(self, rpcArmDisarm): + """ Translates this SDK object into its gRPC equivalent """ + + + + + rpcArmDisarm.arm = self.arm + + + + + + rpcArmDisarm.force = self.force + + + + + +class ActionServerResult: + """ + Result type. + + Parameters + ---------- + result : Result + Result enum value + + result_str : std::string + Human-readable English string describing the result + + """ + + + + class Result(Enum): + """ + Possible results returned for action requests. + + Values + ------ + UNKNOWN + Unknown result + + SUCCESS + Request was successful + + NO_SYSTEM + No system is connected + + CONNECTION_ERROR + Connection error + + BUSY + Vehicle is busy + + COMMAND_DENIED + Command refused by vehicle + + COMMAND_DENIED_LANDED_STATE_UNKNOWN + Command refused because landed state is unknown + + COMMAND_DENIED_NOT_LANDED + Command refused because vehicle not landed + + TIMEOUT + Request timed out + + VTOL_TRANSITION_SUPPORT_UNKNOWN + Hybrid/VTOL transition support is unknown + + NO_VTOL_TRANSITION_SUPPORT + Vehicle does not support hybrid/VTOL transitions + + PARAMETER_ERROR + Error getting or setting parameter + + NEXT + Intermediate message showing progress or instructions on the next steps + + """ + + + UNKNOWN = 0 + SUCCESS = 1 + NO_SYSTEM = 2 + CONNECTION_ERROR = 3 + BUSY = 4 + COMMAND_DENIED = 5 + COMMAND_DENIED_LANDED_STATE_UNKNOWN = 6 + COMMAND_DENIED_NOT_LANDED = 7 + TIMEOUT = 8 + VTOL_TRANSITION_SUPPORT_UNKNOWN = 9 + NO_VTOL_TRANSITION_SUPPORT = 10 + PARAMETER_ERROR = 11 + NEXT = 12 + + def translate_to_rpc(self): + if self == ActionServerResult.Result.UNKNOWN: + return action_server_pb2.ActionServerResult.RESULT_UNKNOWN + if self == ActionServerResult.Result.SUCCESS: + return action_server_pb2.ActionServerResult.RESULT_SUCCESS + if self == ActionServerResult.Result.NO_SYSTEM: + return action_server_pb2.ActionServerResult.RESULT_NO_SYSTEM + if self == ActionServerResult.Result.CONNECTION_ERROR: + return action_server_pb2.ActionServerResult.RESULT_CONNECTION_ERROR + if self == ActionServerResult.Result.BUSY: + return action_server_pb2.ActionServerResult.RESULT_BUSY + if self == ActionServerResult.Result.COMMAND_DENIED: + return action_server_pb2.ActionServerResult.RESULT_COMMAND_DENIED + if self == ActionServerResult.Result.COMMAND_DENIED_LANDED_STATE_UNKNOWN: + return action_server_pb2.ActionServerResult.RESULT_COMMAND_DENIED_LANDED_STATE_UNKNOWN + if self == ActionServerResult.Result.COMMAND_DENIED_NOT_LANDED: + return action_server_pb2.ActionServerResult.RESULT_COMMAND_DENIED_NOT_LANDED + if self == ActionServerResult.Result.TIMEOUT: + return action_server_pb2.ActionServerResult.RESULT_TIMEOUT + if self == ActionServerResult.Result.VTOL_TRANSITION_SUPPORT_UNKNOWN: + return action_server_pb2.ActionServerResult.RESULT_VTOL_TRANSITION_SUPPORT_UNKNOWN + if self == ActionServerResult.Result.NO_VTOL_TRANSITION_SUPPORT: + return action_server_pb2.ActionServerResult.RESULT_NO_VTOL_TRANSITION_SUPPORT + if self == ActionServerResult.Result.PARAMETER_ERROR: + return action_server_pb2.ActionServerResult.RESULT_PARAMETER_ERROR + if self == ActionServerResult.Result.NEXT: + return action_server_pb2.ActionServerResult.RESULT_NEXT + + @staticmethod + def translate_from_rpc(rpc_enum_value): + """ Parses a gRPC response """ + if rpc_enum_value == action_server_pb2.ActionServerResult.RESULT_UNKNOWN: + return ActionServerResult.Result.UNKNOWN + if rpc_enum_value == action_server_pb2.ActionServerResult.RESULT_SUCCESS: + return ActionServerResult.Result.SUCCESS + if rpc_enum_value == action_server_pb2.ActionServerResult.RESULT_NO_SYSTEM: + return ActionServerResult.Result.NO_SYSTEM + if rpc_enum_value == action_server_pb2.ActionServerResult.RESULT_CONNECTION_ERROR: + return ActionServerResult.Result.CONNECTION_ERROR + if rpc_enum_value == action_server_pb2.ActionServerResult.RESULT_BUSY: + return ActionServerResult.Result.BUSY + if rpc_enum_value == action_server_pb2.ActionServerResult.RESULT_COMMAND_DENIED: + return ActionServerResult.Result.COMMAND_DENIED + if rpc_enum_value == action_server_pb2.ActionServerResult.RESULT_COMMAND_DENIED_LANDED_STATE_UNKNOWN: + return ActionServerResult.Result.COMMAND_DENIED_LANDED_STATE_UNKNOWN + if rpc_enum_value == action_server_pb2.ActionServerResult.RESULT_COMMAND_DENIED_NOT_LANDED: + return ActionServerResult.Result.COMMAND_DENIED_NOT_LANDED + if rpc_enum_value == action_server_pb2.ActionServerResult.RESULT_TIMEOUT: + return ActionServerResult.Result.TIMEOUT + if rpc_enum_value == action_server_pb2.ActionServerResult.RESULT_VTOL_TRANSITION_SUPPORT_UNKNOWN: + return ActionServerResult.Result.VTOL_TRANSITION_SUPPORT_UNKNOWN + if rpc_enum_value == action_server_pb2.ActionServerResult.RESULT_NO_VTOL_TRANSITION_SUPPORT: + return ActionServerResult.Result.NO_VTOL_TRANSITION_SUPPORT + if rpc_enum_value == action_server_pb2.ActionServerResult.RESULT_PARAMETER_ERROR: + return ActionServerResult.Result.PARAMETER_ERROR + if rpc_enum_value == action_server_pb2.ActionServerResult.RESULT_NEXT: + return ActionServerResult.Result.NEXT + + def __str__(self): + return self.name + + + def __init__( + self, + result, + result_str): + """ Initializes the ActionServerResult object """ + self.result = result + self.result_str = result_str + + def __equals__(self, to_compare): + """ Checks if two ActionServerResult are the same """ + try: + # Try to compare - this likely fails when it is compared to a non + # ActionServerResult object + return \ + (self.result == to_compare.result) and \ + (self.result_str == to_compare.result_str) + + except AttributeError: + return False + + def __str__(self): + """ ActionServerResult in string representation """ + struct_repr = ", ".join([ + "result: " + str(self.result), + "result_str: " + str(self.result_str) + ]) + + return f"ActionServerResult: [{struct_repr}]" + + @staticmethod + def translate_from_rpc(rpcActionServerResult): + """ Translates a gRPC struct to the SDK equivalent """ + return ActionServerResult( + + ActionServerResult.Result.translate_from_rpc(rpcActionServerResult.result), + + + rpcActionServerResult.result_str + ) + + def translate_to_rpc(self, rpcActionServerResult): + """ Translates this SDK object into its gRPC equivalent """ + + + + + rpcActionServerResult.result = self.result.translate_to_rpc() + + + + + + rpcActionServerResult.result_str = self.result_str + + + + + + +class ActionServerError(Exception): + """ Raised when a ActionServerResult is a fail code """ + + def __init__(self, result, origin, *params): + self._result = result + self._origin = origin + self._params = params + + def __str__(self): + return f"{self._result.result}: '{self._result.result_str}'; origin: {self._origin}; params: {self._params}" + + +class ActionServer(AsyncBase): + """ + Provide vehicle actions (as a server) such as arming, taking off, and landing. + + Generated by dcsdkgen - MAVSDK ActionServer API + """ + + # Plugin name + name = "ActionServer" + + def _setup_stub(self, channel): + """ Setups the api stub """ + self._stub = action_server_pb2_grpc.ActionServerServiceStub(channel) + + + def _extract_result(self, response): + """ Returns the response status and description """ + return ActionServerResult.translate_from_rpc(response.action_server_result) + + + async def arm_disarm(self): + """ + Subscribe to ARM/DISARM commands + + Yields + ------- + arm : ArmDisarm + + Raises + ------ + ActionServerError + If the request fails. The error contains the reason for the failure. + """ + + request = action_server_pb2.SubscribeArmDisarmRequest() + arm_disarm_stream = self._stub.SubscribeArmDisarm(request) + + try: + async for response in arm_disarm_stream: + + result = self._extract_result(response) + + success_codes = [ActionServerResult.Result.SUCCESS] + if 'NEXT' in [return_code.name for return_code in ActionServerResult.Result]: + success_codes.append(ActionServerResult.Result.NEXT) + + if result.result not in success_codes: + raise ActionServerError(result, "arm_disarm()") + + if result.result is ActionServerResult.Result.SUCCESS: + arm_disarm_stream.cancel(); + return + + + + yield ArmDisarm.translate_from_rpc(response.arm) + finally: + arm_disarm_stream.cancel() + + async def flight_mode_change(self): + """ + Subscribe to DO_SET_MODE + + Yields + ------- + flight_mode : FlightMode + + Raises + ------ + ActionServerError + If the request fails. The error contains the reason for the failure. + """ + + request = action_server_pb2.SubscribeFlightModeChangeRequest() + flight_mode_change_stream = self._stub.SubscribeFlightModeChange(request) + + try: + async for response in flight_mode_change_stream: + + result = self._extract_result(response) + + success_codes = [ActionServerResult.Result.SUCCESS] + if 'NEXT' in [return_code.name for return_code in ActionServerResult.Result]: + success_codes.append(ActionServerResult.Result.NEXT) + + if result.result not in success_codes: + raise ActionServerError(result, "flight_mode_change()") + + if result.result is ActionServerResult.Result.SUCCESS: + flight_mode_change_stream.cancel(); + return + + + + yield FlightMode.translate_from_rpc(response.flight_mode) + finally: + flight_mode_change_stream.cancel() + + async def takeoff(self): + """ + Subscribe to takeoff command + + Yields + ------- + takeoff : bool + + Raises + ------ + ActionServerError + If the request fails. The error contains the reason for the failure. + """ + + request = action_server_pb2.SubscribeTakeoffRequest() + takeoff_stream = self._stub.SubscribeTakeoff(request) + + try: + async for response in takeoff_stream: + + result = self._extract_result(response) + + success_codes = [ActionServerResult.Result.SUCCESS] + if 'NEXT' in [return_code.name for return_code in ActionServerResult.Result]: + success_codes.append(ActionServerResult.Result.NEXT) + + if result.result not in success_codes: + raise ActionServerError(result, "takeoff()") + + if result.result is ActionServerResult.Result.SUCCESS: + takeoff_stream.cancel(); + return + + + + yield response.takeoff + finally: + takeoff_stream.cancel() + + async def land(self): + """ + Subscribe to land command + + Yields + ------- + land : bool + + Raises + ------ + ActionServerError + If the request fails. The error contains the reason for the failure. + """ + + request = action_server_pb2.SubscribeLandRequest() + land_stream = self._stub.SubscribeLand(request) + + try: + async for response in land_stream: + + result = self._extract_result(response) + + success_codes = [ActionServerResult.Result.SUCCESS] + if 'NEXT' in [return_code.name for return_code in ActionServerResult.Result]: + success_codes.append(ActionServerResult.Result.NEXT) + + if result.result not in success_codes: + raise ActionServerError(result, "land()") + + if result.result is ActionServerResult.Result.SUCCESS: + land_stream.cancel(); + return + + + + yield response.land + finally: + land_stream.cancel() + + async def reboot(self): + """ + Subscribe to reboot command + + Yields + ------- + reboot : bool + + Raises + ------ + ActionServerError + If the request fails. The error contains the reason for the failure. + """ + + request = action_server_pb2.SubscribeRebootRequest() + reboot_stream = self._stub.SubscribeReboot(request) + + try: + async for response in reboot_stream: + + result = self._extract_result(response) + + success_codes = [ActionServerResult.Result.SUCCESS] + if 'NEXT' in [return_code.name for return_code in ActionServerResult.Result]: + success_codes.append(ActionServerResult.Result.NEXT) + + if result.result not in success_codes: + raise ActionServerError(result, "reboot()") + + if result.result is ActionServerResult.Result.SUCCESS: + reboot_stream.cancel(); + return + + + + yield response.reboot + finally: + reboot_stream.cancel() + + async def shutdown(self): + """ + Subscribe to shutdown command + + Yields + ------- + shutdown : bool + + Raises + ------ + ActionServerError + If the request fails. The error contains the reason for the failure. + """ + + request = action_server_pb2.SubscribeShutdownRequest() + shutdown_stream = self._stub.SubscribeShutdown(request) + + try: + async for response in shutdown_stream: + + result = self._extract_result(response) + + success_codes = [ActionServerResult.Result.SUCCESS] + if 'NEXT' in [return_code.name for return_code in ActionServerResult.Result]: + success_codes.append(ActionServerResult.Result.NEXT) + + if result.result not in success_codes: + raise ActionServerError(result, "shutdown()") + + if result.result is ActionServerResult.Result.SUCCESS: + shutdown_stream.cancel(); + return + + + + yield response.shutdown + finally: + shutdown_stream.cancel() + + async def terminate(self): + """ + Subscribe to terminate command + + Yields + ------- + terminate : bool + + Raises + ------ + ActionServerError + If the request fails. The error contains the reason for the failure. + """ + + request = action_server_pb2.SubscribeTerminateRequest() + terminate_stream = self._stub.SubscribeTerminate(request) + + try: + async for response in terminate_stream: + + result = self._extract_result(response) + + success_codes = [ActionServerResult.Result.SUCCESS] + if 'NEXT' in [return_code.name for return_code in ActionServerResult.Result]: + success_codes.append(ActionServerResult.Result.NEXT) + + if result.result not in success_codes: + raise ActionServerError(result, "terminate()") + + if result.result is ActionServerResult.Result.SUCCESS: + terminate_stream.cancel(); + return + + + + yield response.terminate + finally: + terminate_stream.cancel() + + async def set_allow_takeoff(self, allow_takeoff): + """ + Can the vehicle takeoff + + Parameters + ---------- + allow_takeoff : bool + Is takeoff allowed? + + Raises + ------ + ActionServerError + If the request fails. The error contains the reason for the failure. + """ + + request = action_server_pb2.SetAllowTakeoffRequest() + request.allow_takeoff = allow_takeoff + response = await self._stub.SetAllowTakeoff(request) + + + result = self._extract_result(response) + + if result.result is not ActionServerResult.Result.SUCCESS: + raise ActionServerError(result, "set_allow_takeoff()", allow_takeoff) + + + async def set_armable(self, armable, force_armable): + """ + Can the vehicle arm when requested + + Parameters + ---------- + armable : bool + Is Armable now? + + force_armable : bool + Is armable with force? + + Raises + ------ + ActionServerError + If the request fails. The error contains the reason for the failure. + """ + + request = action_server_pb2.SetArmableRequest() + request.armable = armable + request.force_armable = force_armable + response = await self._stub.SetArmable(request) + + + result = self._extract_result(response) + + if result.result is not ActionServerResult.Result.SUCCESS: + raise ActionServerError(result, "set_armable()", armable, force_armable) + + + async def set_disarmable(self, disarmable, force_disarmable): + """ + Can the vehicle disarm when requested + + Parameters + ---------- + disarmable : bool + Is disarmable now? + + force_disarmable : bool + Is disarmable with force? (Kill) + + Raises + ------ + ActionServerError + If the request fails. The error contains the reason for the failure. + """ + + request = action_server_pb2.SetDisarmableRequest() + request.disarmable = disarmable + request.force_disarmable = force_disarmable + response = await self._stub.SetDisarmable(request) + + + result = self._extract_result(response) + + if result.result is not ActionServerResult.Result.SUCCESS: + raise ActionServerError(result, "set_disarmable()", disarmable, force_disarmable) + + + async def set_allowable_flight_modes(self, flight_modes): + """ + Set which modes the vehicle can transition to (Manual always allowed) + + Parameters + ---------- + flight_modes : AllowableFlightModes + + Raises + ------ + ActionServerError + If the request fails. The error contains the reason for the failure. + """ + + request = action_server_pb2.SetAllowableFlightModesRequest() + + flight_modes.translate_to_rpc(request.flight_modes) + + + response = await self._stub.SetAllowableFlightModes(request) + + + result = self._extract_result(response) + + if result.result is not ActionServerResult.Result.SUCCESS: + raise ActionServerError(result, "set_allowable_flight_modes()", flight_modes) + + + async def get_allowable_flight_modes(self): + """ + Get which modes the vehicle can transition to (Manual always allowed) + + Returns + ------- + flight_modes : AllowableFlightModes + + + """ + + request = action_server_pb2.GetAllowableFlightModesRequest() + response = await self._stub.GetAllowableFlightModes(request) + + + + return AllowableFlightModes.translate_from_rpc(response.flight_modes) + \ No newline at end of file diff --git a/mavsdk/action_server_pb2.py b/mavsdk/action_server_pb2.py new file mode 100644 index 00000000..ea9914e0 --- /dev/null +++ b/mavsdk/action_server_pb2.py @@ -0,0 +1,1484 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: action_server/action_server.proto +"""Generated protocol buffer code.""" +from google.protobuf.internal import enum_type_wrapper +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from . import mavsdk_options_pb2 as mavsdk__options__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='action_server/action_server.proto', + package='mavsdk.rpc.action_server', + syntax='proto3', + serialized_options=b'\n\027io.mavsdk.action_serverB\021ActionServerProto', + create_key=_descriptor._internal_create_key, + serialized_pb=b'\n!action_server/action_server.proto\x12\x18mavsdk.rpc.action_server\x1a\x14mavsdk_options.proto\"/\n\x16SetAllowTakeoffRequest\x12\x15\n\rallow_takeoff\x18\x01 \x01(\x08\";\n\x11SetArmableRequest\x12\x0f\n\x07\x61rmable\x18\x01 \x01(\x08\x12\x15\n\rforce_armable\x18\x02 \x01(\x08\"D\n\x14SetDisarmableRequest\x12\x12\n\ndisarmable\x18\x01 \x01(\x08\x12\x18\n\x10\x66orce_disarmable\x18\x02 \x01(\x08\"f\n\x1eSetAllowableFlightModesRequest\x12\x44\n\x0c\x66light_modes\x18\x01 \x01(\x0b\x32..mavsdk.rpc.action_server.AllowableFlightModes\" \n\x1eGetAllowableFlightModesRequest\"\x1b\n\x19SubscribeArmDisarmRequest\"\"\n SubscribeFlightModeChangeRequest\"\x19\n\x17SubscribeTakeoffRequest\"\x16\n\x14SubscribeLandRequest\"\x18\n\x16SubscribeRebootRequest\"\x1a\n\x18SubscribeShutdownRequest\"\x1b\n\x19SubscribeTerminateRequest\"\x91\x01\n\x11\x41rmDisarmResponse\x12J\n\x14\x61\x63tion_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.action_server.ActionServerResult\x12\x30\n\x03\x61rm\x18\x02 \x01(\x0b\x32#.mavsdk.rpc.action_server.ArmDisarm\"\xa1\x01\n\x18\x46lightModeChangeResponse\x12J\n\x14\x61\x63tion_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.action_server.ActionServerResult\x12\x39\n\x0b\x66light_mode\x18\x02 \x01(\x0e\x32$.mavsdk.rpc.action_server.FlightMode\"n\n\x0fTakeoffResponse\x12J\n\x14\x61\x63tion_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.action_server.ActionServerResult\x12\x0f\n\x07takeoff\x18\x02 \x01(\x08\"h\n\x0cLandResponse\x12J\n\x14\x61\x63tion_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.action_server.ActionServerResult\x12\x0c\n\x04land\x18\x02 \x01(\x08\"l\n\x0eRebootResponse\x12J\n\x14\x61\x63tion_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.action_server.ActionServerResult\x12\x0e\n\x06reboot\x18\x02 \x01(\x08\"p\n\x10ShutdownResponse\x12J\n\x14\x61\x63tion_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.action_server.ActionServerResult\x12\x10\n\x08shutdown\x18\x02 \x01(\x08\"r\n\x11TerminateResponse\x12J\n\x14\x61\x63tion_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.action_server.ActionServerResult\x12\x11\n\tterminate\x18\x02 \x01(\x08\"`\n\x12SetArmableResponse\x12J\n\x14\x61\x63tion_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.action_server.ActionServerResult\"c\n\x15SetDisarmableResponse\x12J\n\x14\x61\x63tion_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.action_server.ActionServerResult\"m\n\x1fSetAllowableFlightModesResponse\x12J\n\x14\x61\x63tion_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.action_server.ActionServerResult\"e\n\x17SetAllowTakeoffResponse\x12J\n\x14\x61\x63tion_server_result\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.action_server.ActionServerResult\"g\n\x1fGetAllowableFlightModesResponse\x12\x44\n\x0c\x66light_modes\x18\x01 \x01(\x0b\x32..mavsdk.rpc.action_server.AllowableFlightModes\"b\n\x14\x41llowableFlightModes\x12\x15\n\rcan_auto_mode\x18\x01 \x01(\x08\x12\x17\n\x0f\x63\x61n_guided_mode\x18\x02 \x01(\x08\x12\x1a\n\x12\x63\x61n_stabilize_mode\x18\x03 \x01(\x08\"\'\n\tArmDisarm\x12\x0b\n\x03\x61rm\x18\x01 \x01(\x08\x12\r\n\x05\x66orce\x18\x02 \x01(\x08\"\xe9\x03\n\x12\x41\x63tionServerResult\x12\x43\n\x06result\x18\x01 \x01(\x0e\x32\x33.mavsdk.rpc.action_server.ActionServerResult.Result\x12\x12\n\nresult_str\x18\x02 \x01(\t\"\xf9\x02\n\x06Result\x12\x12\n\x0eRESULT_UNKNOWN\x10\x00\x12\x12\n\x0eRESULT_SUCCESS\x10\x01\x12\x14\n\x10RESULT_NO_SYSTEM\x10\x02\x12\x1b\n\x17RESULT_CONNECTION_ERROR\x10\x03\x12\x0f\n\x0bRESULT_BUSY\x10\x04\x12\x19\n\x15RESULT_COMMAND_DENIED\x10\x05\x12.\n*RESULT_COMMAND_DENIED_LANDED_STATE_UNKNOWN\x10\x06\x12$\n RESULT_COMMAND_DENIED_NOT_LANDED\x10\x07\x12\x12\n\x0eRESULT_TIMEOUT\x10\x08\x12*\n&RESULT_VTOL_TRANSITION_SUPPORT_UNKNOWN\x10\t\x12%\n!RESULT_NO_VTOL_TRANSITION_SUPPORT\x10\n\x12\x1a\n\x16RESULT_PARAMETER_ERROR\x10\x0b\x12\x0f\n\x0bRESULT_NEXT\x10\x0c*\xeb\x02\n\nFlightMode\x12\x17\n\x13\x46LIGHT_MODE_UNKNOWN\x10\x00\x12\x15\n\x11\x46LIGHT_MODE_READY\x10\x01\x12\x17\n\x13\x46LIGHT_MODE_TAKEOFF\x10\x02\x12\x14\n\x10\x46LIGHT_MODE_HOLD\x10\x03\x12\x17\n\x13\x46LIGHT_MODE_MISSION\x10\x04\x12 \n\x1c\x46LIGHT_MODE_RETURN_TO_LAUNCH\x10\x05\x12\x14\n\x10\x46LIGHT_MODE_LAND\x10\x06\x12\x18\n\x14\x46LIGHT_MODE_OFFBOARD\x10\x07\x12\x19\n\x15\x46LIGHT_MODE_FOLLOW_ME\x10\x08\x12\x16\n\x12\x46LIGHT_MODE_MANUAL\x10\t\x12\x16\n\x12\x46LIGHT_MODE_ALTCTL\x10\n\x12\x16\n\x12\x46LIGHT_MODE_POSCTL\x10\x0b\x12\x14\n\x10\x46LIGHT_MODE_ACRO\x10\x0c\x12\x1a\n\x16\x46LIGHT_MODE_STABILIZED\x10\r2\x9d\x0c\n\x13\x41\x63tionServerService\x12~\n\x12SubscribeArmDisarm\x12\x33.mavsdk.rpc.action_server.SubscribeArmDisarmRequest\x1a+.mavsdk.rpc.action_server.ArmDisarmResponse\"\x04\x80\xb5\x18\x00\x30\x01\x12\x93\x01\n\x19SubscribeFlightModeChange\x12:.mavsdk.rpc.action_server.SubscribeFlightModeChangeRequest\x1a\x32.mavsdk.rpc.action_server.FlightModeChangeResponse\"\x04\x80\xb5\x18\x00\x30\x01\x12x\n\x10SubscribeTakeoff\x12\x31.mavsdk.rpc.action_server.SubscribeTakeoffRequest\x1a).mavsdk.rpc.action_server.TakeoffResponse\"\x04\x80\xb5\x18\x00\x30\x01\x12o\n\rSubscribeLand\x12..mavsdk.rpc.action_server.SubscribeLandRequest\x1a&.mavsdk.rpc.action_server.LandResponse\"\x04\x80\xb5\x18\x00\x30\x01\x12u\n\x0fSubscribeReboot\x12\x30.mavsdk.rpc.action_server.SubscribeRebootRequest\x1a(.mavsdk.rpc.action_server.RebootResponse\"\x04\x80\xb5\x18\x00\x30\x01\x12{\n\x11SubscribeShutdown\x12\x32.mavsdk.rpc.action_server.SubscribeShutdownRequest\x1a*.mavsdk.rpc.action_server.ShutdownResponse\"\x04\x80\xb5\x18\x00\x30\x01\x12~\n\x12SubscribeTerminate\x12\x33.mavsdk.rpc.action_server.SubscribeTerminateRequest\x1a+.mavsdk.rpc.action_server.TerminateResponse\"\x04\x80\xb5\x18\x00\x30\x01\x12|\n\x0fSetAllowTakeoff\x12\x30.mavsdk.rpc.action_server.SetAllowTakeoffRequest\x1a\x31.mavsdk.rpc.action_server.SetAllowTakeoffResponse\"\x04\x80\xb5\x18\x01\x12m\n\nSetArmable\x12+.mavsdk.rpc.action_server.SetArmableRequest\x1a,.mavsdk.rpc.action_server.SetArmableResponse\"\x04\x80\xb5\x18\x01\x12v\n\rSetDisarmable\x12..mavsdk.rpc.action_server.SetDisarmableRequest\x1a/.mavsdk.rpc.action_server.SetDisarmableResponse\"\x04\x80\xb5\x18\x01\x12\x94\x01\n\x17SetAllowableFlightModes\x12\x38.mavsdk.rpc.action_server.SetAllowableFlightModesRequest\x1a\x39.mavsdk.rpc.action_server.SetAllowableFlightModesResponse\"\x04\x80\xb5\x18\x01\x12\x94\x01\n\x17GetAllowableFlightModes\x12\x38.mavsdk.rpc.action_server.GetAllowableFlightModesRequest\x1a\x39.mavsdk.rpc.action_server.GetAllowableFlightModesResponse\"\x04\x80\xb5\x18\x01\x42,\n\x17io.mavsdk.action_serverB\x11\x41\x63tionServerProtob\x06proto3' + , + dependencies=[mavsdk__options__pb2.DESCRIPTOR,]) + +_FLIGHTMODE = _descriptor.EnumDescriptor( + name='FlightMode', + full_name='mavsdk.rpc.action_server.FlightMode', + filename=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, + values=[ + _descriptor.EnumValueDescriptor( + name='FLIGHT_MODE_UNKNOWN', index=0, number=0, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='FLIGHT_MODE_READY', index=1, number=1, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='FLIGHT_MODE_TAKEOFF', index=2, number=2, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='FLIGHT_MODE_HOLD', index=3, number=3, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='FLIGHT_MODE_MISSION', index=4, number=4, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='FLIGHT_MODE_RETURN_TO_LAUNCH', index=5, number=5, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='FLIGHT_MODE_LAND', index=6, number=6, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='FLIGHT_MODE_OFFBOARD', index=7, number=7, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='FLIGHT_MODE_FOLLOW_ME', index=8, number=8, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='FLIGHT_MODE_MANUAL', index=9, number=9, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='FLIGHT_MODE_ALTCTL', index=10, number=10, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='FLIGHT_MODE_POSCTL', index=11, number=11, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='FLIGHT_MODE_ACRO', index=12, number=12, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='FLIGHT_MODE_STABILIZED', index=13, number=13, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + ], + containing_type=None, + serialized_options=None, + serialized_start=2624, + serialized_end=2987, +) +_sym_db.RegisterEnumDescriptor(_FLIGHTMODE) + +FlightMode = enum_type_wrapper.EnumTypeWrapper(_FLIGHTMODE) +FLIGHT_MODE_UNKNOWN = 0 +FLIGHT_MODE_READY = 1 +FLIGHT_MODE_TAKEOFF = 2 +FLIGHT_MODE_HOLD = 3 +FLIGHT_MODE_MISSION = 4 +FLIGHT_MODE_RETURN_TO_LAUNCH = 5 +FLIGHT_MODE_LAND = 6 +FLIGHT_MODE_OFFBOARD = 7 +FLIGHT_MODE_FOLLOW_ME = 8 +FLIGHT_MODE_MANUAL = 9 +FLIGHT_MODE_ALTCTL = 10 +FLIGHT_MODE_POSCTL = 11 +FLIGHT_MODE_ACRO = 12 +FLIGHT_MODE_STABILIZED = 13 + + +_ACTIONSERVERRESULT_RESULT = _descriptor.EnumDescriptor( + name='Result', + full_name='mavsdk.rpc.action_server.ActionServerResult.Result', + filename=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, + values=[ + _descriptor.EnumValueDescriptor( + name='RESULT_UNKNOWN', index=0, number=0, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='RESULT_SUCCESS', index=1, number=1, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='RESULT_NO_SYSTEM', index=2, number=2, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='RESULT_CONNECTION_ERROR', index=3, number=3, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='RESULT_BUSY', index=4, number=4, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='RESULT_COMMAND_DENIED', index=5, number=5, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='RESULT_COMMAND_DENIED_LANDED_STATE_UNKNOWN', index=6, number=6, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='RESULT_COMMAND_DENIED_NOT_LANDED', index=7, number=7, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='RESULT_TIMEOUT', index=8, number=8, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='RESULT_VTOL_TRANSITION_SUPPORT_UNKNOWN', index=9, number=9, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='RESULT_NO_VTOL_TRANSITION_SUPPORT', index=10, number=10, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='RESULT_PARAMETER_ERROR', index=11, number=11, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='RESULT_NEXT', index=12, number=12, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + ], + containing_type=None, + serialized_options=None, + serialized_start=2244, + serialized_end=2621, +) +_sym_db.RegisterEnumDescriptor(_ACTIONSERVERRESULT_RESULT) + + +_SETALLOWTAKEOFFREQUEST = _descriptor.Descriptor( + name='SetAllowTakeoffRequest', + full_name='mavsdk.rpc.action_server.SetAllowTakeoffRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='allow_takeoff', full_name='mavsdk.rpc.action_server.SetAllowTakeoffRequest.allow_takeoff', index=0, + number=1, type=8, cpp_type=7, label=1, + has_default_value=False, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=85, + serialized_end=132, +) + + +_SETARMABLEREQUEST = _descriptor.Descriptor( + name='SetArmableRequest', + full_name='mavsdk.rpc.action_server.SetArmableRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='armable', full_name='mavsdk.rpc.action_server.SetArmableRequest.armable', index=0, + number=1, type=8, cpp_type=7, label=1, + has_default_value=False, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='force_armable', full_name='mavsdk.rpc.action_server.SetArmableRequest.force_armable', index=1, + number=2, type=8, cpp_type=7, label=1, + has_default_value=False, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=134, + serialized_end=193, +) + + +_SETDISARMABLEREQUEST = _descriptor.Descriptor( + name='SetDisarmableRequest', + full_name='mavsdk.rpc.action_server.SetDisarmableRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='disarmable', full_name='mavsdk.rpc.action_server.SetDisarmableRequest.disarmable', index=0, + number=1, type=8, cpp_type=7, label=1, + has_default_value=False, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='force_disarmable', full_name='mavsdk.rpc.action_server.SetDisarmableRequest.force_disarmable', index=1, + number=2, type=8, cpp_type=7, label=1, + has_default_value=False, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=195, + serialized_end=263, +) + + +_SETALLOWABLEFLIGHTMODESREQUEST = _descriptor.Descriptor( + name='SetAllowableFlightModesRequest', + full_name='mavsdk.rpc.action_server.SetAllowableFlightModesRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='flight_modes', full_name='mavsdk.rpc.action_server.SetAllowableFlightModesRequest.flight_modes', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=265, + serialized_end=367, +) + + +_GETALLOWABLEFLIGHTMODESREQUEST = _descriptor.Descriptor( + name='GetAllowableFlightModesRequest', + full_name='mavsdk.rpc.action_server.GetAllowableFlightModesRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=369, + serialized_end=401, +) + + +_SUBSCRIBEARMDISARMREQUEST = _descriptor.Descriptor( + name='SubscribeArmDisarmRequest', + full_name='mavsdk.rpc.action_server.SubscribeArmDisarmRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=403, + serialized_end=430, +) + + +_SUBSCRIBEFLIGHTMODECHANGEREQUEST = _descriptor.Descriptor( + name='SubscribeFlightModeChangeRequest', + full_name='mavsdk.rpc.action_server.SubscribeFlightModeChangeRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=432, + serialized_end=466, +) + + +_SUBSCRIBETAKEOFFREQUEST = _descriptor.Descriptor( + name='SubscribeTakeoffRequest', + full_name='mavsdk.rpc.action_server.SubscribeTakeoffRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=468, + serialized_end=493, +) + + +_SUBSCRIBELANDREQUEST = _descriptor.Descriptor( + name='SubscribeLandRequest', + full_name='mavsdk.rpc.action_server.SubscribeLandRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=495, + serialized_end=517, +) + + +_SUBSCRIBEREBOOTREQUEST = _descriptor.Descriptor( + name='SubscribeRebootRequest', + full_name='mavsdk.rpc.action_server.SubscribeRebootRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=519, + serialized_end=543, +) + + +_SUBSCRIBESHUTDOWNREQUEST = _descriptor.Descriptor( + name='SubscribeShutdownRequest', + full_name='mavsdk.rpc.action_server.SubscribeShutdownRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=545, + serialized_end=571, +) + + +_SUBSCRIBETERMINATEREQUEST = _descriptor.Descriptor( + name='SubscribeTerminateRequest', + full_name='mavsdk.rpc.action_server.SubscribeTerminateRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=573, + serialized_end=600, +) + + +_ARMDISARMRESPONSE = _descriptor.Descriptor( + name='ArmDisarmResponse', + full_name='mavsdk.rpc.action_server.ArmDisarmResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='action_server_result', full_name='mavsdk.rpc.action_server.ArmDisarmResponse.action_server_result', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='arm', full_name='mavsdk.rpc.action_server.ArmDisarmResponse.arm', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=603, + serialized_end=748, +) + + +_FLIGHTMODECHANGERESPONSE = _descriptor.Descriptor( + name='FlightModeChangeResponse', + full_name='mavsdk.rpc.action_server.FlightModeChangeResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='action_server_result', full_name='mavsdk.rpc.action_server.FlightModeChangeResponse.action_server_result', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='flight_mode', full_name='mavsdk.rpc.action_server.FlightModeChangeResponse.flight_mode', index=1, + number=2, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=751, + serialized_end=912, +) + + +_TAKEOFFRESPONSE = _descriptor.Descriptor( + name='TakeoffResponse', + full_name='mavsdk.rpc.action_server.TakeoffResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='action_server_result', full_name='mavsdk.rpc.action_server.TakeoffResponse.action_server_result', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='takeoff', full_name='mavsdk.rpc.action_server.TakeoffResponse.takeoff', index=1, + number=2, type=8, cpp_type=7, label=1, + has_default_value=False, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=914, + serialized_end=1024, +) + + +_LANDRESPONSE = _descriptor.Descriptor( + name='LandResponse', + full_name='mavsdk.rpc.action_server.LandResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='action_server_result', full_name='mavsdk.rpc.action_server.LandResponse.action_server_result', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='land', full_name='mavsdk.rpc.action_server.LandResponse.land', index=1, + number=2, type=8, cpp_type=7, label=1, + has_default_value=False, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1026, + serialized_end=1130, +) + + +_REBOOTRESPONSE = _descriptor.Descriptor( + name='RebootResponse', + full_name='mavsdk.rpc.action_server.RebootResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='action_server_result', full_name='mavsdk.rpc.action_server.RebootResponse.action_server_result', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='reboot', full_name='mavsdk.rpc.action_server.RebootResponse.reboot', index=1, + number=2, type=8, cpp_type=7, label=1, + has_default_value=False, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1132, + serialized_end=1240, +) + + +_SHUTDOWNRESPONSE = _descriptor.Descriptor( + name='ShutdownResponse', + full_name='mavsdk.rpc.action_server.ShutdownResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='action_server_result', full_name='mavsdk.rpc.action_server.ShutdownResponse.action_server_result', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='shutdown', full_name='mavsdk.rpc.action_server.ShutdownResponse.shutdown', index=1, + number=2, type=8, cpp_type=7, label=1, + has_default_value=False, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1242, + serialized_end=1354, +) + + +_TERMINATERESPONSE = _descriptor.Descriptor( + name='TerminateResponse', + full_name='mavsdk.rpc.action_server.TerminateResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='action_server_result', full_name='mavsdk.rpc.action_server.TerminateResponse.action_server_result', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='terminate', full_name='mavsdk.rpc.action_server.TerminateResponse.terminate', index=1, + number=2, type=8, cpp_type=7, label=1, + has_default_value=False, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1356, + serialized_end=1470, +) + + +_SETARMABLERESPONSE = _descriptor.Descriptor( + name='SetArmableResponse', + full_name='mavsdk.rpc.action_server.SetArmableResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='action_server_result', full_name='mavsdk.rpc.action_server.SetArmableResponse.action_server_result', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1472, + serialized_end=1568, +) + + +_SETDISARMABLERESPONSE = _descriptor.Descriptor( + name='SetDisarmableResponse', + full_name='mavsdk.rpc.action_server.SetDisarmableResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='action_server_result', full_name='mavsdk.rpc.action_server.SetDisarmableResponse.action_server_result', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1570, + serialized_end=1669, +) + + +_SETALLOWABLEFLIGHTMODESRESPONSE = _descriptor.Descriptor( + name='SetAllowableFlightModesResponse', + full_name='mavsdk.rpc.action_server.SetAllowableFlightModesResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='action_server_result', full_name='mavsdk.rpc.action_server.SetAllowableFlightModesResponse.action_server_result', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1671, + serialized_end=1780, +) + + +_SETALLOWTAKEOFFRESPONSE = _descriptor.Descriptor( + name='SetAllowTakeoffResponse', + full_name='mavsdk.rpc.action_server.SetAllowTakeoffResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='action_server_result', full_name='mavsdk.rpc.action_server.SetAllowTakeoffResponse.action_server_result', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1782, + serialized_end=1883, +) + + +_GETALLOWABLEFLIGHTMODESRESPONSE = _descriptor.Descriptor( + name='GetAllowableFlightModesResponse', + full_name='mavsdk.rpc.action_server.GetAllowableFlightModesResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='flight_modes', full_name='mavsdk.rpc.action_server.GetAllowableFlightModesResponse.flight_modes', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1885, + serialized_end=1988, +) + + +_ALLOWABLEFLIGHTMODES = _descriptor.Descriptor( + name='AllowableFlightModes', + full_name='mavsdk.rpc.action_server.AllowableFlightModes', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='can_auto_mode', full_name='mavsdk.rpc.action_server.AllowableFlightModes.can_auto_mode', index=0, + number=1, type=8, cpp_type=7, label=1, + has_default_value=False, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='can_guided_mode', full_name='mavsdk.rpc.action_server.AllowableFlightModes.can_guided_mode', index=1, + number=2, type=8, cpp_type=7, label=1, + has_default_value=False, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='can_stabilize_mode', full_name='mavsdk.rpc.action_server.AllowableFlightModes.can_stabilize_mode', index=2, + number=3, type=8, cpp_type=7, label=1, + has_default_value=False, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=1990, + serialized_end=2088, +) + + +_ARMDISARM = _descriptor.Descriptor( + name='ArmDisarm', + full_name='mavsdk.rpc.action_server.ArmDisarm', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='arm', full_name='mavsdk.rpc.action_server.ArmDisarm.arm', index=0, + number=1, type=8, cpp_type=7, label=1, + has_default_value=False, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='force', full_name='mavsdk.rpc.action_server.ArmDisarm.force', index=1, + number=2, type=8, cpp_type=7, label=1, + has_default_value=False, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=2090, + serialized_end=2129, +) + + +_ACTIONSERVERRESULT = _descriptor.Descriptor( + name='ActionServerResult', + full_name='mavsdk.rpc.action_server.ActionServerResult', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='result', full_name='mavsdk.rpc.action_server.ActionServerResult.result', index=0, + number=1, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='result_str', full_name='mavsdk.rpc.action_server.ActionServerResult.result_str', index=1, + number=2, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=b"".decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _ACTIONSERVERRESULT_RESULT, + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=2132, + serialized_end=2621, +) + +_SETALLOWABLEFLIGHTMODESREQUEST.fields_by_name['flight_modes'].message_type = _ALLOWABLEFLIGHTMODES +_ARMDISARMRESPONSE.fields_by_name['action_server_result'].message_type = _ACTIONSERVERRESULT +_ARMDISARMRESPONSE.fields_by_name['arm'].message_type = _ARMDISARM +_FLIGHTMODECHANGERESPONSE.fields_by_name['action_server_result'].message_type = _ACTIONSERVERRESULT +_FLIGHTMODECHANGERESPONSE.fields_by_name['flight_mode'].enum_type = _FLIGHTMODE +_TAKEOFFRESPONSE.fields_by_name['action_server_result'].message_type = _ACTIONSERVERRESULT +_LANDRESPONSE.fields_by_name['action_server_result'].message_type = _ACTIONSERVERRESULT +_REBOOTRESPONSE.fields_by_name['action_server_result'].message_type = _ACTIONSERVERRESULT +_SHUTDOWNRESPONSE.fields_by_name['action_server_result'].message_type = _ACTIONSERVERRESULT +_TERMINATERESPONSE.fields_by_name['action_server_result'].message_type = _ACTIONSERVERRESULT +_SETARMABLERESPONSE.fields_by_name['action_server_result'].message_type = _ACTIONSERVERRESULT +_SETDISARMABLERESPONSE.fields_by_name['action_server_result'].message_type = _ACTIONSERVERRESULT +_SETALLOWABLEFLIGHTMODESRESPONSE.fields_by_name['action_server_result'].message_type = _ACTIONSERVERRESULT +_SETALLOWTAKEOFFRESPONSE.fields_by_name['action_server_result'].message_type = _ACTIONSERVERRESULT +_GETALLOWABLEFLIGHTMODESRESPONSE.fields_by_name['flight_modes'].message_type = _ALLOWABLEFLIGHTMODES +_ACTIONSERVERRESULT.fields_by_name['result'].enum_type = _ACTIONSERVERRESULT_RESULT +_ACTIONSERVERRESULT_RESULT.containing_type = _ACTIONSERVERRESULT +DESCRIPTOR.message_types_by_name['SetAllowTakeoffRequest'] = _SETALLOWTAKEOFFREQUEST +DESCRIPTOR.message_types_by_name['SetArmableRequest'] = _SETARMABLEREQUEST +DESCRIPTOR.message_types_by_name['SetDisarmableRequest'] = _SETDISARMABLEREQUEST +DESCRIPTOR.message_types_by_name['SetAllowableFlightModesRequest'] = _SETALLOWABLEFLIGHTMODESREQUEST +DESCRIPTOR.message_types_by_name['GetAllowableFlightModesRequest'] = _GETALLOWABLEFLIGHTMODESREQUEST +DESCRIPTOR.message_types_by_name['SubscribeArmDisarmRequest'] = _SUBSCRIBEARMDISARMREQUEST +DESCRIPTOR.message_types_by_name['SubscribeFlightModeChangeRequest'] = _SUBSCRIBEFLIGHTMODECHANGEREQUEST +DESCRIPTOR.message_types_by_name['SubscribeTakeoffRequest'] = _SUBSCRIBETAKEOFFREQUEST +DESCRIPTOR.message_types_by_name['SubscribeLandRequest'] = _SUBSCRIBELANDREQUEST +DESCRIPTOR.message_types_by_name['SubscribeRebootRequest'] = _SUBSCRIBEREBOOTREQUEST +DESCRIPTOR.message_types_by_name['SubscribeShutdownRequest'] = _SUBSCRIBESHUTDOWNREQUEST +DESCRIPTOR.message_types_by_name['SubscribeTerminateRequest'] = _SUBSCRIBETERMINATEREQUEST +DESCRIPTOR.message_types_by_name['ArmDisarmResponse'] = _ARMDISARMRESPONSE +DESCRIPTOR.message_types_by_name['FlightModeChangeResponse'] = _FLIGHTMODECHANGERESPONSE +DESCRIPTOR.message_types_by_name['TakeoffResponse'] = _TAKEOFFRESPONSE +DESCRIPTOR.message_types_by_name['LandResponse'] = _LANDRESPONSE +DESCRIPTOR.message_types_by_name['RebootResponse'] = _REBOOTRESPONSE +DESCRIPTOR.message_types_by_name['ShutdownResponse'] = _SHUTDOWNRESPONSE +DESCRIPTOR.message_types_by_name['TerminateResponse'] = _TERMINATERESPONSE +DESCRIPTOR.message_types_by_name['SetArmableResponse'] = _SETARMABLERESPONSE +DESCRIPTOR.message_types_by_name['SetDisarmableResponse'] = _SETDISARMABLERESPONSE +DESCRIPTOR.message_types_by_name['SetAllowableFlightModesResponse'] = _SETALLOWABLEFLIGHTMODESRESPONSE +DESCRIPTOR.message_types_by_name['SetAllowTakeoffResponse'] = _SETALLOWTAKEOFFRESPONSE +DESCRIPTOR.message_types_by_name['GetAllowableFlightModesResponse'] = _GETALLOWABLEFLIGHTMODESRESPONSE +DESCRIPTOR.message_types_by_name['AllowableFlightModes'] = _ALLOWABLEFLIGHTMODES +DESCRIPTOR.message_types_by_name['ArmDisarm'] = _ARMDISARM +DESCRIPTOR.message_types_by_name['ActionServerResult'] = _ACTIONSERVERRESULT +DESCRIPTOR.enum_types_by_name['FlightMode'] = _FLIGHTMODE +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +SetAllowTakeoffRequest = _reflection.GeneratedProtocolMessageType('SetAllowTakeoffRequest', (_message.Message,), { + 'DESCRIPTOR' : _SETALLOWTAKEOFFREQUEST, + '__module__' : 'action_server.action_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.action_server.SetAllowTakeoffRequest) + }) +_sym_db.RegisterMessage(SetAllowTakeoffRequest) + +SetArmableRequest = _reflection.GeneratedProtocolMessageType('SetArmableRequest', (_message.Message,), { + 'DESCRIPTOR' : _SETARMABLEREQUEST, + '__module__' : 'action_server.action_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.action_server.SetArmableRequest) + }) +_sym_db.RegisterMessage(SetArmableRequest) + +SetDisarmableRequest = _reflection.GeneratedProtocolMessageType('SetDisarmableRequest', (_message.Message,), { + 'DESCRIPTOR' : _SETDISARMABLEREQUEST, + '__module__' : 'action_server.action_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.action_server.SetDisarmableRequest) + }) +_sym_db.RegisterMessage(SetDisarmableRequest) + +SetAllowableFlightModesRequest = _reflection.GeneratedProtocolMessageType('SetAllowableFlightModesRequest', (_message.Message,), { + 'DESCRIPTOR' : _SETALLOWABLEFLIGHTMODESREQUEST, + '__module__' : 'action_server.action_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.action_server.SetAllowableFlightModesRequest) + }) +_sym_db.RegisterMessage(SetAllowableFlightModesRequest) + +GetAllowableFlightModesRequest = _reflection.GeneratedProtocolMessageType('GetAllowableFlightModesRequest', (_message.Message,), { + 'DESCRIPTOR' : _GETALLOWABLEFLIGHTMODESREQUEST, + '__module__' : 'action_server.action_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.action_server.GetAllowableFlightModesRequest) + }) +_sym_db.RegisterMessage(GetAllowableFlightModesRequest) + +SubscribeArmDisarmRequest = _reflection.GeneratedProtocolMessageType('SubscribeArmDisarmRequest', (_message.Message,), { + 'DESCRIPTOR' : _SUBSCRIBEARMDISARMREQUEST, + '__module__' : 'action_server.action_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.action_server.SubscribeArmDisarmRequest) + }) +_sym_db.RegisterMessage(SubscribeArmDisarmRequest) + +SubscribeFlightModeChangeRequest = _reflection.GeneratedProtocolMessageType('SubscribeFlightModeChangeRequest', (_message.Message,), { + 'DESCRIPTOR' : _SUBSCRIBEFLIGHTMODECHANGEREQUEST, + '__module__' : 'action_server.action_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.action_server.SubscribeFlightModeChangeRequest) + }) +_sym_db.RegisterMessage(SubscribeFlightModeChangeRequest) + +SubscribeTakeoffRequest = _reflection.GeneratedProtocolMessageType('SubscribeTakeoffRequest', (_message.Message,), { + 'DESCRIPTOR' : _SUBSCRIBETAKEOFFREQUEST, + '__module__' : 'action_server.action_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.action_server.SubscribeTakeoffRequest) + }) +_sym_db.RegisterMessage(SubscribeTakeoffRequest) + +SubscribeLandRequest = _reflection.GeneratedProtocolMessageType('SubscribeLandRequest', (_message.Message,), { + 'DESCRIPTOR' : _SUBSCRIBELANDREQUEST, + '__module__' : 'action_server.action_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.action_server.SubscribeLandRequest) + }) +_sym_db.RegisterMessage(SubscribeLandRequest) + +SubscribeRebootRequest = _reflection.GeneratedProtocolMessageType('SubscribeRebootRequest', (_message.Message,), { + 'DESCRIPTOR' : _SUBSCRIBEREBOOTREQUEST, + '__module__' : 'action_server.action_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.action_server.SubscribeRebootRequest) + }) +_sym_db.RegisterMessage(SubscribeRebootRequest) + +SubscribeShutdownRequest = _reflection.GeneratedProtocolMessageType('SubscribeShutdownRequest', (_message.Message,), { + 'DESCRIPTOR' : _SUBSCRIBESHUTDOWNREQUEST, + '__module__' : 'action_server.action_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.action_server.SubscribeShutdownRequest) + }) +_sym_db.RegisterMessage(SubscribeShutdownRequest) + +SubscribeTerminateRequest = _reflection.GeneratedProtocolMessageType('SubscribeTerminateRequest', (_message.Message,), { + 'DESCRIPTOR' : _SUBSCRIBETERMINATEREQUEST, + '__module__' : 'action_server.action_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.action_server.SubscribeTerminateRequest) + }) +_sym_db.RegisterMessage(SubscribeTerminateRequest) + +ArmDisarmResponse = _reflection.GeneratedProtocolMessageType('ArmDisarmResponse', (_message.Message,), { + 'DESCRIPTOR' : _ARMDISARMRESPONSE, + '__module__' : 'action_server.action_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.action_server.ArmDisarmResponse) + }) +_sym_db.RegisterMessage(ArmDisarmResponse) + +FlightModeChangeResponse = _reflection.GeneratedProtocolMessageType('FlightModeChangeResponse', (_message.Message,), { + 'DESCRIPTOR' : _FLIGHTMODECHANGERESPONSE, + '__module__' : 'action_server.action_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.action_server.FlightModeChangeResponse) + }) +_sym_db.RegisterMessage(FlightModeChangeResponse) + +TakeoffResponse = _reflection.GeneratedProtocolMessageType('TakeoffResponse', (_message.Message,), { + 'DESCRIPTOR' : _TAKEOFFRESPONSE, + '__module__' : 'action_server.action_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.action_server.TakeoffResponse) + }) +_sym_db.RegisterMessage(TakeoffResponse) + +LandResponse = _reflection.GeneratedProtocolMessageType('LandResponse', (_message.Message,), { + 'DESCRIPTOR' : _LANDRESPONSE, + '__module__' : 'action_server.action_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.action_server.LandResponse) + }) +_sym_db.RegisterMessage(LandResponse) + +RebootResponse = _reflection.GeneratedProtocolMessageType('RebootResponse', (_message.Message,), { + 'DESCRIPTOR' : _REBOOTRESPONSE, + '__module__' : 'action_server.action_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.action_server.RebootResponse) + }) +_sym_db.RegisterMessage(RebootResponse) + +ShutdownResponse = _reflection.GeneratedProtocolMessageType('ShutdownResponse', (_message.Message,), { + 'DESCRIPTOR' : _SHUTDOWNRESPONSE, + '__module__' : 'action_server.action_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.action_server.ShutdownResponse) + }) +_sym_db.RegisterMessage(ShutdownResponse) + +TerminateResponse = _reflection.GeneratedProtocolMessageType('TerminateResponse', (_message.Message,), { + 'DESCRIPTOR' : _TERMINATERESPONSE, + '__module__' : 'action_server.action_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.action_server.TerminateResponse) + }) +_sym_db.RegisterMessage(TerminateResponse) + +SetArmableResponse = _reflection.GeneratedProtocolMessageType('SetArmableResponse', (_message.Message,), { + 'DESCRIPTOR' : _SETARMABLERESPONSE, + '__module__' : 'action_server.action_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.action_server.SetArmableResponse) + }) +_sym_db.RegisterMessage(SetArmableResponse) + +SetDisarmableResponse = _reflection.GeneratedProtocolMessageType('SetDisarmableResponse', (_message.Message,), { + 'DESCRIPTOR' : _SETDISARMABLERESPONSE, + '__module__' : 'action_server.action_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.action_server.SetDisarmableResponse) + }) +_sym_db.RegisterMessage(SetDisarmableResponse) + +SetAllowableFlightModesResponse = _reflection.GeneratedProtocolMessageType('SetAllowableFlightModesResponse', (_message.Message,), { + 'DESCRIPTOR' : _SETALLOWABLEFLIGHTMODESRESPONSE, + '__module__' : 'action_server.action_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.action_server.SetAllowableFlightModesResponse) + }) +_sym_db.RegisterMessage(SetAllowableFlightModesResponse) + +SetAllowTakeoffResponse = _reflection.GeneratedProtocolMessageType('SetAllowTakeoffResponse', (_message.Message,), { + 'DESCRIPTOR' : _SETALLOWTAKEOFFRESPONSE, + '__module__' : 'action_server.action_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.action_server.SetAllowTakeoffResponse) + }) +_sym_db.RegisterMessage(SetAllowTakeoffResponse) + +GetAllowableFlightModesResponse = _reflection.GeneratedProtocolMessageType('GetAllowableFlightModesResponse', (_message.Message,), { + 'DESCRIPTOR' : _GETALLOWABLEFLIGHTMODESRESPONSE, + '__module__' : 'action_server.action_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.action_server.GetAllowableFlightModesResponse) + }) +_sym_db.RegisterMessage(GetAllowableFlightModesResponse) + +AllowableFlightModes = _reflection.GeneratedProtocolMessageType('AllowableFlightModes', (_message.Message,), { + 'DESCRIPTOR' : _ALLOWABLEFLIGHTMODES, + '__module__' : 'action_server.action_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.action_server.AllowableFlightModes) + }) +_sym_db.RegisterMessage(AllowableFlightModes) + +ArmDisarm = _reflection.GeneratedProtocolMessageType('ArmDisarm', (_message.Message,), { + 'DESCRIPTOR' : _ARMDISARM, + '__module__' : 'action_server.action_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.action_server.ArmDisarm) + }) +_sym_db.RegisterMessage(ArmDisarm) + +ActionServerResult = _reflection.GeneratedProtocolMessageType('ActionServerResult', (_message.Message,), { + 'DESCRIPTOR' : _ACTIONSERVERRESULT, + '__module__' : 'action_server.action_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.action_server.ActionServerResult) + }) +_sym_db.RegisterMessage(ActionServerResult) + + +DESCRIPTOR._options = None + +_ACTIONSERVERSERVICE = _descriptor.ServiceDescriptor( + name='ActionServerService', + full_name='mavsdk.rpc.action_server.ActionServerService', + file=DESCRIPTOR, + index=0, + serialized_options=None, + create_key=_descriptor._internal_create_key, + serialized_start=2990, + serialized_end=4555, + methods=[ + _descriptor.MethodDescriptor( + name='SubscribeArmDisarm', + full_name='mavsdk.rpc.action_server.ActionServerService.SubscribeArmDisarm', + index=0, + containing_service=None, + input_type=_SUBSCRIBEARMDISARMREQUEST, + output_type=_ARMDISARMRESPONSE, + serialized_options=b'\200\265\030\000', + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='SubscribeFlightModeChange', + full_name='mavsdk.rpc.action_server.ActionServerService.SubscribeFlightModeChange', + index=1, + containing_service=None, + input_type=_SUBSCRIBEFLIGHTMODECHANGEREQUEST, + output_type=_FLIGHTMODECHANGERESPONSE, + serialized_options=b'\200\265\030\000', + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='SubscribeTakeoff', + full_name='mavsdk.rpc.action_server.ActionServerService.SubscribeTakeoff', + index=2, + containing_service=None, + input_type=_SUBSCRIBETAKEOFFREQUEST, + output_type=_TAKEOFFRESPONSE, + serialized_options=b'\200\265\030\000', + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='SubscribeLand', + full_name='mavsdk.rpc.action_server.ActionServerService.SubscribeLand', + index=3, + containing_service=None, + input_type=_SUBSCRIBELANDREQUEST, + output_type=_LANDRESPONSE, + serialized_options=b'\200\265\030\000', + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='SubscribeReboot', + full_name='mavsdk.rpc.action_server.ActionServerService.SubscribeReboot', + index=4, + containing_service=None, + input_type=_SUBSCRIBEREBOOTREQUEST, + output_type=_REBOOTRESPONSE, + serialized_options=b'\200\265\030\000', + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='SubscribeShutdown', + full_name='mavsdk.rpc.action_server.ActionServerService.SubscribeShutdown', + index=5, + containing_service=None, + input_type=_SUBSCRIBESHUTDOWNREQUEST, + output_type=_SHUTDOWNRESPONSE, + serialized_options=b'\200\265\030\000', + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='SubscribeTerminate', + full_name='mavsdk.rpc.action_server.ActionServerService.SubscribeTerminate', + index=6, + containing_service=None, + input_type=_SUBSCRIBETERMINATEREQUEST, + output_type=_TERMINATERESPONSE, + serialized_options=b'\200\265\030\000', + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='SetAllowTakeoff', + full_name='mavsdk.rpc.action_server.ActionServerService.SetAllowTakeoff', + index=7, + containing_service=None, + input_type=_SETALLOWTAKEOFFREQUEST, + output_type=_SETALLOWTAKEOFFRESPONSE, + serialized_options=b'\200\265\030\001', + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='SetArmable', + full_name='mavsdk.rpc.action_server.ActionServerService.SetArmable', + index=8, + containing_service=None, + input_type=_SETARMABLEREQUEST, + output_type=_SETARMABLERESPONSE, + serialized_options=b'\200\265\030\001', + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='SetDisarmable', + full_name='mavsdk.rpc.action_server.ActionServerService.SetDisarmable', + index=9, + containing_service=None, + input_type=_SETDISARMABLEREQUEST, + output_type=_SETDISARMABLERESPONSE, + serialized_options=b'\200\265\030\001', + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='SetAllowableFlightModes', + full_name='mavsdk.rpc.action_server.ActionServerService.SetAllowableFlightModes', + index=10, + containing_service=None, + input_type=_SETALLOWABLEFLIGHTMODESREQUEST, + output_type=_SETALLOWABLEFLIGHTMODESRESPONSE, + serialized_options=b'\200\265\030\001', + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='GetAllowableFlightModes', + full_name='mavsdk.rpc.action_server.ActionServerService.GetAllowableFlightModes', + index=11, + containing_service=None, + input_type=_GETALLOWABLEFLIGHTMODESREQUEST, + output_type=_GETALLOWABLEFLIGHTMODESRESPONSE, + serialized_options=b'\200\265\030\001', + create_key=_descriptor._internal_create_key, + ), +]) +_sym_db.RegisterServiceDescriptor(_ACTIONSERVERSERVICE) + +DESCRIPTOR.services_by_name['ActionServerService'] = _ACTIONSERVERSERVICE + +# @@protoc_insertion_point(module_scope) diff --git a/mavsdk/action_server_pb2_grpc.py b/mavsdk/action_server_pb2_grpc.py new file mode 100644 index 00000000..3daabbda --- /dev/null +++ b/mavsdk/action_server_pb2_grpc.py @@ -0,0 +1,444 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc + +from . import action_server_pb2 as action__server_dot_action__server__pb2 + + +class ActionServerServiceStub(object): + """Provide vehicle actions (as a server) such as arming, taking off, and landing. + """ + + def __init__(self, channel): + """Constructor. + + Args: + channel: A grpc.Channel. + """ + self.SubscribeArmDisarm = channel.unary_stream( + '/mavsdk.rpc.action_server.ActionServerService/SubscribeArmDisarm', + request_serializer=action__server_dot_action__server__pb2.SubscribeArmDisarmRequest.SerializeToString, + response_deserializer=action__server_dot_action__server__pb2.ArmDisarmResponse.FromString, + ) + self.SubscribeFlightModeChange = channel.unary_stream( + '/mavsdk.rpc.action_server.ActionServerService/SubscribeFlightModeChange', + request_serializer=action__server_dot_action__server__pb2.SubscribeFlightModeChangeRequest.SerializeToString, + response_deserializer=action__server_dot_action__server__pb2.FlightModeChangeResponse.FromString, + ) + self.SubscribeTakeoff = channel.unary_stream( + '/mavsdk.rpc.action_server.ActionServerService/SubscribeTakeoff', + request_serializer=action__server_dot_action__server__pb2.SubscribeTakeoffRequest.SerializeToString, + response_deserializer=action__server_dot_action__server__pb2.TakeoffResponse.FromString, + ) + self.SubscribeLand = channel.unary_stream( + '/mavsdk.rpc.action_server.ActionServerService/SubscribeLand', + request_serializer=action__server_dot_action__server__pb2.SubscribeLandRequest.SerializeToString, + response_deserializer=action__server_dot_action__server__pb2.LandResponse.FromString, + ) + self.SubscribeReboot = channel.unary_stream( + '/mavsdk.rpc.action_server.ActionServerService/SubscribeReboot', + request_serializer=action__server_dot_action__server__pb2.SubscribeRebootRequest.SerializeToString, + response_deserializer=action__server_dot_action__server__pb2.RebootResponse.FromString, + ) + self.SubscribeShutdown = channel.unary_stream( + '/mavsdk.rpc.action_server.ActionServerService/SubscribeShutdown', + request_serializer=action__server_dot_action__server__pb2.SubscribeShutdownRequest.SerializeToString, + response_deserializer=action__server_dot_action__server__pb2.ShutdownResponse.FromString, + ) + self.SubscribeTerminate = channel.unary_stream( + '/mavsdk.rpc.action_server.ActionServerService/SubscribeTerminate', + request_serializer=action__server_dot_action__server__pb2.SubscribeTerminateRequest.SerializeToString, + response_deserializer=action__server_dot_action__server__pb2.TerminateResponse.FromString, + ) + self.SetAllowTakeoff = channel.unary_unary( + '/mavsdk.rpc.action_server.ActionServerService/SetAllowTakeoff', + request_serializer=action__server_dot_action__server__pb2.SetAllowTakeoffRequest.SerializeToString, + response_deserializer=action__server_dot_action__server__pb2.SetAllowTakeoffResponse.FromString, + ) + self.SetArmable = channel.unary_unary( + '/mavsdk.rpc.action_server.ActionServerService/SetArmable', + request_serializer=action__server_dot_action__server__pb2.SetArmableRequest.SerializeToString, + response_deserializer=action__server_dot_action__server__pb2.SetArmableResponse.FromString, + ) + self.SetDisarmable = channel.unary_unary( + '/mavsdk.rpc.action_server.ActionServerService/SetDisarmable', + request_serializer=action__server_dot_action__server__pb2.SetDisarmableRequest.SerializeToString, + response_deserializer=action__server_dot_action__server__pb2.SetDisarmableResponse.FromString, + ) + self.SetAllowableFlightModes = channel.unary_unary( + '/mavsdk.rpc.action_server.ActionServerService/SetAllowableFlightModes', + request_serializer=action__server_dot_action__server__pb2.SetAllowableFlightModesRequest.SerializeToString, + response_deserializer=action__server_dot_action__server__pb2.SetAllowableFlightModesResponse.FromString, + ) + self.GetAllowableFlightModes = channel.unary_unary( + '/mavsdk.rpc.action_server.ActionServerService/GetAllowableFlightModes', + request_serializer=action__server_dot_action__server__pb2.GetAllowableFlightModesRequest.SerializeToString, + response_deserializer=action__server_dot_action__server__pb2.GetAllowableFlightModesResponse.FromString, + ) + + +class ActionServerServiceServicer(object): + """Provide vehicle actions (as a server) such as arming, taking off, and landing. + """ + + def SubscribeArmDisarm(self, request, context): + """Subscribe to ARM/DISARM commands + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def SubscribeFlightModeChange(self, request, context): + """Subscribe to DO_SET_MODE + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def SubscribeTakeoff(self, request, context): + """Subscribe to takeoff command + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def SubscribeLand(self, request, context): + """Subscribe to land command + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def SubscribeReboot(self, request, context): + """Subscribe to reboot command + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def SubscribeShutdown(self, request, context): + """Subscribe to shutdown command + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def SubscribeTerminate(self, request, context): + """Subscribe to terminate command + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def SetAllowTakeoff(self, request, context): + """Can the vehicle takeoff + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def SetArmable(self, request, context): + """Can the vehicle arm when requested + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def SetDisarmable(self, request, context): + """Can the vehicle disarm when requested + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def SetAllowableFlightModes(self, request, context): + """Set which modes the vehicle can transition to (Manual always allowed) + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def GetAllowableFlightModes(self, request, context): + """Get which modes the vehicle can transition to (Manual always allowed) + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + +def add_ActionServerServiceServicer_to_server(servicer, server): + rpc_method_handlers = { + 'SubscribeArmDisarm': grpc.unary_stream_rpc_method_handler( + servicer.SubscribeArmDisarm, + request_deserializer=action__server_dot_action__server__pb2.SubscribeArmDisarmRequest.FromString, + response_serializer=action__server_dot_action__server__pb2.ArmDisarmResponse.SerializeToString, + ), + 'SubscribeFlightModeChange': grpc.unary_stream_rpc_method_handler( + servicer.SubscribeFlightModeChange, + request_deserializer=action__server_dot_action__server__pb2.SubscribeFlightModeChangeRequest.FromString, + response_serializer=action__server_dot_action__server__pb2.FlightModeChangeResponse.SerializeToString, + ), + 'SubscribeTakeoff': grpc.unary_stream_rpc_method_handler( + servicer.SubscribeTakeoff, + request_deserializer=action__server_dot_action__server__pb2.SubscribeTakeoffRequest.FromString, + response_serializer=action__server_dot_action__server__pb2.TakeoffResponse.SerializeToString, + ), + 'SubscribeLand': grpc.unary_stream_rpc_method_handler( + servicer.SubscribeLand, + request_deserializer=action__server_dot_action__server__pb2.SubscribeLandRequest.FromString, + response_serializer=action__server_dot_action__server__pb2.LandResponse.SerializeToString, + ), + 'SubscribeReboot': grpc.unary_stream_rpc_method_handler( + servicer.SubscribeReboot, + request_deserializer=action__server_dot_action__server__pb2.SubscribeRebootRequest.FromString, + response_serializer=action__server_dot_action__server__pb2.RebootResponse.SerializeToString, + ), + 'SubscribeShutdown': grpc.unary_stream_rpc_method_handler( + servicer.SubscribeShutdown, + request_deserializer=action__server_dot_action__server__pb2.SubscribeShutdownRequest.FromString, + response_serializer=action__server_dot_action__server__pb2.ShutdownResponse.SerializeToString, + ), + 'SubscribeTerminate': grpc.unary_stream_rpc_method_handler( + servicer.SubscribeTerminate, + request_deserializer=action__server_dot_action__server__pb2.SubscribeTerminateRequest.FromString, + response_serializer=action__server_dot_action__server__pb2.TerminateResponse.SerializeToString, + ), + 'SetAllowTakeoff': grpc.unary_unary_rpc_method_handler( + servicer.SetAllowTakeoff, + request_deserializer=action__server_dot_action__server__pb2.SetAllowTakeoffRequest.FromString, + response_serializer=action__server_dot_action__server__pb2.SetAllowTakeoffResponse.SerializeToString, + ), + 'SetArmable': grpc.unary_unary_rpc_method_handler( + servicer.SetArmable, + request_deserializer=action__server_dot_action__server__pb2.SetArmableRequest.FromString, + response_serializer=action__server_dot_action__server__pb2.SetArmableResponse.SerializeToString, + ), + 'SetDisarmable': grpc.unary_unary_rpc_method_handler( + servicer.SetDisarmable, + request_deserializer=action__server_dot_action__server__pb2.SetDisarmableRequest.FromString, + response_serializer=action__server_dot_action__server__pb2.SetDisarmableResponse.SerializeToString, + ), + 'SetAllowableFlightModes': grpc.unary_unary_rpc_method_handler( + servicer.SetAllowableFlightModes, + request_deserializer=action__server_dot_action__server__pb2.SetAllowableFlightModesRequest.FromString, + response_serializer=action__server_dot_action__server__pb2.SetAllowableFlightModesResponse.SerializeToString, + ), + 'GetAllowableFlightModes': grpc.unary_unary_rpc_method_handler( + servicer.GetAllowableFlightModes, + request_deserializer=action__server_dot_action__server__pb2.GetAllowableFlightModesRequest.FromString, + response_serializer=action__server_dot_action__server__pb2.GetAllowableFlightModesResponse.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'mavsdk.rpc.action_server.ActionServerService', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) + + + # This class is part of an EXPERIMENTAL API. +class ActionServerService(object): + """Provide vehicle actions (as a server) such as arming, taking off, and landing. + """ + + @staticmethod + def SubscribeArmDisarm(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_stream(request, target, '/mavsdk.rpc.action_server.ActionServerService/SubscribeArmDisarm', + action__server_dot_action__server__pb2.SubscribeArmDisarmRequest.SerializeToString, + action__server_dot_action__server__pb2.ArmDisarmResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def SubscribeFlightModeChange(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_stream(request, target, '/mavsdk.rpc.action_server.ActionServerService/SubscribeFlightModeChange', + action__server_dot_action__server__pb2.SubscribeFlightModeChangeRequest.SerializeToString, + action__server_dot_action__server__pb2.FlightModeChangeResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def SubscribeTakeoff(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_stream(request, target, '/mavsdk.rpc.action_server.ActionServerService/SubscribeTakeoff', + action__server_dot_action__server__pb2.SubscribeTakeoffRequest.SerializeToString, + action__server_dot_action__server__pb2.TakeoffResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def SubscribeLand(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_stream(request, target, '/mavsdk.rpc.action_server.ActionServerService/SubscribeLand', + action__server_dot_action__server__pb2.SubscribeLandRequest.SerializeToString, + action__server_dot_action__server__pb2.LandResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def SubscribeReboot(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_stream(request, target, '/mavsdk.rpc.action_server.ActionServerService/SubscribeReboot', + action__server_dot_action__server__pb2.SubscribeRebootRequest.SerializeToString, + action__server_dot_action__server__pb2.RebootResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def SubscribeShutdown(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_stream(request, target, '/mavsdk.rpc.action_server.ActionServerService/SubscribeShutdown', + action__server_dot_action__server__pb2.SubscribeShutdownRequest.SerializeToString, + action__server_dot_action__server__pb2.ShutdownResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def SubscribeTerminate(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_stream(request, target, '/mavsdk.rpc.action_server.ActionServerService/SubscribeTerminate', + action__server_dot_action__server__pb2.SubscribeTerminateRequest.SerializeToString, + action__server_dot_action__server__pb2.TerminateResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def SetAllowTakeoff(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/mavsdk.rpc.action_server.ActionServerService/SetAllowTakeoff', + action__server_dot_action__server__pb2.SetAllowTakeoffRequest.SerializeToString, + action__server_dot_action__server__pb2.SetAllowTakeoffResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def SetArmable(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/mavsdk.rpc.action_server.ActionServerService/SetArmable', + action__server_dot_action__server__pb2.SetArmableRequest.SerializeToString, + action__server_dot_action__server__pb2.SetArmableResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def SetDisarmable(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/mavsdk.rpc.action_server.ActionServerService/SetDisarmable', + action__server_dot_action__server__pb2.SetDisarmableRequest.SerializeToString, + action__server_dot_action__server__pb2.SetDisarmableResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def SetAllowableFlightModes(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/mavsdk.rpc.action_server.ActionServerService/SetAllowableFlightModes', + action__server_dot_action__server__pb2.SetAllowableFlightModesRequest.SerializeToString, + action__server_dot_action__server__pb2.SetAllowableFlightModesResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def GetAllowableFlightModes(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/mavsdk.rpc.action_server.ActionServerService/GetAllowableFlightModes', + action__server_dot_action__server__pb2.GetAllowableFlightModesRequest.SerializeToString, + action__server_dot_action__server__pb2.GetAllowableFlightModesResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) diff --git a/mavsdk/camera.py b/mavsdk/camera.py index 28f72a50..907ce890 100644 --- a/mavsdk/camera.py +++ b/mavsdk/camera.py @@ -1752,6 +1752,26 @@ def _extract_result(self, response): return CameraResult.translate_from_rpc(response.camera_result) + async def prepare(self): + """ + Prepare the camera plugin (e.g. download the camera definition, etc). + + Raises + ------ + CameraError + If the request fails. The error contains the reason for the failure. + """ + + request = camera_pb2.PrepareRequest() + response = await self._stub.Prepare(request) + + + result = self._extract_result(response) + + if result.result is not CameraResult.Result.SUCCESS: + raise CameraError(result, "prepare()") + + async def take_photo(self): """ Take one photo. diff --git a/mavsdk/camera_pb2.py b/mavsdk/camera_pb2.py index 78d77034..d117cf3a 100644 --- a/mavsdk/camera_pb2.py +++ b/mavsdk/camera_pb2.py @@ -21,7 +21,7 @@ syntax='proto3', serialized_options=b'\n\020io.mavsdk.cameraB\013CameraProto', create_key=_descriptor._internal_create_key, - serialized_pb=b'\n\x13\x63\x61mera/camera.proto\x12\x11mavsdk.rpc.camera\x1a\x14mavsdk_options.proto\"\x12\n\x10TakePhotoRequest\"K\n\x11TakePhotoResponse\x12\x36\n\rcamera_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.camera.CameraResult\"/\n\x19StartPhotoIntervalRequest\x12\x12\n\ninterval_s\x18\x01 \x01(\x02\"T\n\x1aStartPhotoIntervalResponse\x12\x36\n\rcamera_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.camera.CameraResult\"\x1a\n\x18StopPhotoIntervalRequest\"S\n\x19StopPhotoIntervalResponse\x12\x36\n\rcamera_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.camera.CameraResult\"\x13\n\x11StartVideoRequest\"L\n\x12StartVideoResponse\x12\x36\n\rcamera_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.camera.CameraResult\"\x12\n\x10StopVideoRequest\"K\n\x11StopVideoResponse\x12\x36\n\rcamera_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.camera.CameraResult\"\x1c\n\x1aStartVideoStreamingRequest\"U\n\x1bStartVideoStreamingResponse\x12\x36\n\rcamera_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.camera.CameraResult\"\x1b\n\x19StopVideoStreamingRequest\"T\n\x1aStopVideoStreamingResponse\x12\x36\n\rcamera_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.camera.CameraResult\"7\n\x0eSetModeRequest\x12%\n\x04mode\x18\x01 \x01(\x0e\x32\x17.mavsdk.rpc.camera.Mode\"I\n\x0fSetModeResponse\x12\x36\n\rcamera_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.camera.CameraResult\"I\n\x11ListPhotosRequest\x12\x34\n\x0cphotos_range\x18\x01 \x01(\x0e\x32\x1e.mavsdk.rpc.camera.PhotosRange\"\x83\x01\n\x12ListPhotosResponse\x12\x36\n\rcamera_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.camera.CameraResult\x12\x35\n\rcapture_infos\x18\x02 \x03(\x0b\x32\x1e.mavsdk.rpc.camera.CaptureInfo\"\x1d\n\x1bSubscribeInformationRequest\"J\n\x13InformationResponse\x12\x33\n\x0binformation\x18\x01 \x01(\x0b\x32\x1e.mavsdk.rpc.camera.Information\"\x16\n\x14SubscribeModeRequest\"5\n\x0cModeResponse\x12%\n\x04mode\x18\x01 \x01(\x0e\x32\x17.mavsdk.rpc.camera.Mode\"!\n\x1fSubscribeVideoStreamInfoRequest\"X\n\x17VideoStreamInfoResponse\x12=\n\x11video_stream_info\x18\x01 \x01(\x0b\x32\".mavsdk.rpc.camera.VideoStreamInfo\"\x1d\n\x1bSubscribeCaptureInfoRequest\"K\n\x13\x43\x61ptureInfoResponse\x12\x34\n\x0c\x63\x61pture_info\x18\x01 \x01(\x0b\x32\x1e.mavsdk.rpc.camera.CaptureInfo\"\x18\n\x16SubscribeStatusRequest\"B\n\x0eStatusResponse\x12\x30\n\rcamera_status\x18\x01 \x01(\x0b\x32\x19.mavsdk.rpc.camera.Status\"!\n\x1fSubscribeCurrentSettingsRequest\"O\n\x17\x43urrentSettingsResponse\x12\x34\n\x10\x63urrent_settings\x18\x01 \x03(\x0b\x32\x1a.mavsdk.rpc.camera.Setting\"(\n&SubscribePossibleSettingOptionsRequest\"\\\n\x1ePossibleSettingOptionsResponse\x12:\n\x0fsetting_options\x18\x01 \x03(\x0b\x32!.mavsdk.rpc.camera.SettingOptions\"@\n\x11SetSettingRequest\x12+\n\x07setting\x18\x01 \x01(\x0b\x32\x1a.mavsdk.rpc.camera.Setting\"L\n\x12SetSettingResponse\x12\x36\n\rcamera_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.camera.CameraResult\"@\n\x11GetSettingRequest\x12+\n\x07setting\x18\x01 \x01(\x0b\x32\x1a.mavsdk.rpc.camera.Setting\"y\n\x12GetSettingResponse\x12\x36\n\rcamera_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.camera.CameraResult\x12+\n\x07setting\x18\x02 \x01(\x0b\x32\x1a.mavsdk.rpc.camera.Setting\"\x16\n\x14\x46ormatStorageRequest\"O\n\x15\x46ormatStorageResponse\x12\x36\n\rcamera_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.camera.CameraResult\"\xa0\x02\n\x0c\x43\x61meraResult\x12\x36\n\x06result\x18\x01 \x01(\x0e\x32&.mavsdk.rpc.camera.CameraResult.Result\x12\x12\n\nresult_str\x18\x02 \x01(\t\"\xc3\x01\n\x06Result\x12\x12\n\x0eRESULT_UNKNOWN\x10\x00\x12\x12\n\x0eRESULT_SUCCESS\x10\x01\x12\x16\n\x12RESULT_IN_PROGRESS\x10\x02\x12\x0f\n\x0bRESULT_BUSY\x10\x03\x12\x11\n\rRESULT_DENIED\x10\x04\x12\x10\n\x0cRESULT_ERROR\x10\x05\x12\x12\n\x0eRESULT_TIMEOUT\x10\x06\x12\x19\n\x15RESULT_WRONG_ARGUMENT\x10\x07\x12\x14\n\x10RESULT_NO_SYSTEM\x10\x08\"q\n\x08Position\x12\x14\n\x0clatitude_deg\x18\x01 \x01(\x01\x12\x15\n\rlongitude_deg\x18\x02 \x01(\x01\x12\x1b\n\x13\x61\x62solute_altitude_m\x18\x03 \x01(\x02\x12\x1b\n\x13relative_altitude_m\x18\x04 \x01(\x02\"8\n\nQuaternion\x12\t\n\x01w\x18\x01 \x01(\x02\x12\t\n\x01x\x18\x02 \x01(\x02\x12\t\n\x01y\x18\x03 \x01(\x02\x12\t\n\x01z\x18\x04 \x01(\x02\"B\n\nEulerAngle\x12\x10\n\x08roll_deg\x18\x01 \x01(\x02\x12\x11\n\tpitch_deg\x18\x02 \x01(\x02\x12\x0f\n\x07yaw_deg\x18\x03 \x01(\x02\"\xff\x01\n\x0b\x43\x61ptureInfo\x12-\n\x08position\x18\x01 \x01(\x0b\x32\x1b.mavsdk.rpc.camera.Position\x12:\n\x13\x61ttitude_quaternion\x18\x02 \x01(\x0b\x32\x1d.mavsdk.rpc.camera.Quaternion\x12;\n\x14\x61ttitude_euler_angle\x18\x03 \x01(\x0b\x32\x1d.mavsdk.rpc.camera.EulerAngle\x12\x13\n\x0btime_utc_us\x18\x04 \x01(\x04\x12\x12\n\nis_success\x18\x05 \x01(\x08\x12\r\n\x05index\x18\x06 \x01(\x05\x12\x10\n\x08\x66ile_url\x18\x07 \x01(\t\"\xc5\x01\n\x13VideoStreamSettings\x12\x15\n\rframe_rate_hz\x18\x01 \x01(\x02\x12!\n\x19horizontal_resolution_pix\x18\x02 \x01(\r\x12\x1f\n\x17vertical_resolution_pix\x18\x03 \x01(\r\x12\x14\n\x0c\x62it_rate_b_s\x18\x04 \x01(\r\x12\x14\n\x0crotation_deg\x18\x05 \x01(\r\x12\x0b\n\x03uri\x18\x06 \x01(\t\x12\x1a\n\x12horizontal_fov_deg\x18\x07 \x01(\x02\"\xc2\x03\n\x0fVideoStreamInfo\x12\x38\n\x08settings\x18\x01 \x01(\x0b\x32&.mavsdk.rpc.camera.VideoStreamSettings\x12\x44\n\x06status\x18\x02 \x01(\x0e\x32\x34.mavsdk.rpc.camera.VideoStreamInfo.VideoStreamStatus\x12H\n\x08spectrum\x18\x03 \x01(\x0e\x32\x36.mavsdk.rpc.camera.VideoStreamInfo.VideoStreamSpectrum\"]\n\x11VideoStreamStatus\x12#\n\x1fVIDEO_STREAM_STATUS_NOT_RUNNING\x10\x00\x12#\n\x1fVIDEO_STREAM_STATUS_IN_PROGRESS\x10\x01\"\x85\x01\n\x13VideoStreamSpectrum\x12!\n\x1dVIDEO_STREAM_SPECTRUM_UNKNOWN\x10\x00\x12\'\n#VIDEO_STREAM_SPECTRUM_VISIBLE_LIGHT\x10\x01\x12\"\n\x1eVIDEO_STREAM_SPECTRUM_INFRARED\x10\x02\"\x93\x03\n\x06Status\x12\x10\n\x08video_on\x18\x01 \x01(\x08\x12\x19\n\x11photo_interval_on\x18\x02 \x01(\x08\x12\x18\n\x10used_storage_mib\x18\x03 \x01(\x02\x12\x1d\n\x15\x61vailable_storage_mib\x18\x04 \x01(\x02\x12\x19\n\x11total_storage_mib\x18\x05 \x01(\x02\x12\x18\n\x10recording_time_s\x18\x06 \x01(\x02\x12\x19\n\x11media_folder_name\x18\x07 \x01(\t\x12?\n\x0estorage_status\x18\x08 \x01(\x0e\x32\'.mavsdk.rpc.camera.Status.StorageStatus\"\x91\x01\n\rStorageStatus\x12 \n\x1cSTORAGE_STATUS_NOT_AVAILABLE\x10\x00\x12\x1e\n\x1aSTORAGE_STATUS_UNFORMATTED\x10\x01\x12\x1c\n\x18STORAGE_STATUS_FORMATTED\x10\x02\x12 \n\x1cSTORAGE_STATUS_NOT_SUPPORTED\x10\x03\"7\n\x06Option\x12\x11\n\toption_id\x18\x01 \x01(\t\x12\x1a\n\x12option_description\x18\x02 \x01(\t\"w\n\x07Setting\x12\x12\n\nsetting_id\x18\x01 \x01(\t\x12\x1b\n\x13setting_description\x18\x02 \x01(\t\x12)\n\x06option\x18\x03 \x01(\x0b\x32\x19.mavsdk.rpc.camera.Option\x12\x10\n\x08is_range\x18\x04 \x01(\x08\"\x7f\n\x0eSettingOptions\x12\x12\n\nsetting_id\x18\x01 \x01(\t\x12\x1b\n\x13setting_description\x18\x02 \x01(\t\x12*\n\x07options\x18\x03 \x03(\x0b\x32\x19.mavsdk.rpc.camera.Option\x12\x10\n\x08is_range\x18\x04 \x01(\x08\"\xd5\x01\n\x0bInformation\x12\x13\n\x0bvendor_name\x18\x01 \x01(\t\x12\x12\n\nmodel_name\x18\x02 \x01(\t\x12\x17\n\x0f\x66ocal_length_mm\x18\x03 \x01(\x02\x12!\n\x19horizontal_sensor_size_mm\x18\x04 \x01(\x02\x12\x1f\n\x17vertical_sensor_size_mm\x18\x05 \x01(\x02\x12 \n\x18horizontal_resolution_px\x18\x06 \x01(\r\x12\x1e\n\x16vertical_resolution_px\x18\x07 \x01(\r*8\n\x04Mode\x12\x10\n\x0cMODE_UNKNOWN\x10\x00\x12\x0e\n\nMODE_PHOTO\x10\x01\x12\x0e\n\nMODE_VIDEO\x10\x02*F\n\x0bPhotosRange\x12\x14\n\x10PHOTOS_RANGE_ALL\x10\x00\x12!\n\x1dPHOTOS_RANGE_SINCE_CONNECTION\x10\x01\x32\x98\x10\n\rCameraService\x12X\n\tTakePhoto\x12#.mavsdk.rpc.camera.TakePhotoRequest\x1a$.mavsdk.rpc.camera.TakePhotoResponse\"\x00\x12s\n\x12StartPhotoInterval\x12,.mavsdk.rpc.camera.StartPhotoIntervalRequest\x1a-.mavsdk.rpc.camera.StartPhotoIntervalResponse\"\x00\x12p\n\x11StopPhotoInterval\x12+.mavsdk.rpc.camera.StopPhotoIntervalRequest\x1a,.mavsdk.rpc.camera.StopPhotoIntervalResponse\"\x00\x12[\n\nStartVideo\x12$.mavsdk.rpc.camera.StartVideoRequest\x1a%.mavsdk.rpc.camera.StartVideoResponse\"\x00\x12X\n\tStopVideo\x12#.mavsdk.rpc.camera.StopVideoRequest\x1a$.mavsdk.rpc.camera.StopVideoResponse\"\x00\x12z\n\x13StartVideoStreaming\x12-.mavsdk.rpc.camera.StartVideoStreamingRequest\x1a..mavsdk.rpc.camera.StartVideoStreamingResponse\"\x04\x80\xb5\x18\x01\x12w\n\x12StopVideoStreaming\x12,.mavsdk.rpc.camera.StopVideoStreamingRequest\x1a-.mavsdk.rpc.camera.StopVideoStreamingResponse\"\x04\x80\xb5\x18\x01\x12R\n\x07SetMode\x12!.mavsdk.rpc.camera.SetModeRequest\x1a\".mavsdk.rpc.camera.SetModeResponse\"\x00\x12[\n\nListPhotos\x12$.mavsdk.rpc.camera.ListPhotosRequest\x1a%.mavsdk.rpc.camera.ListPhotosResponse\"\x00\x12]\n\rSubscribeMode\x12\'.mavsdk.rpc.camera.SubscribeModeRequest\x1a\x1f.mavsdk.rpc.camera.ModeResponse\"\x00\x30\x01\x12r\n\x14SubscribeInformation\x12..mavsdk.rpc.camera.SubscribeInformationRequest\x1a&.mavsdk.rpc.camera.InformationResponse\"\x00\x30\x01\x12~\n\x18SubscribeVideoStreamInfo\x12\x32.mavsdk.rpc.camera.SubscribeVideoStreamInfoRequest\x1a*.mavsdk.rpc.camera.VideoStreamInfoResponse\"\x00\x30\x01\x12v\n\x14SubscribeCaptureInfo\x12..mavsdk.rpc.camera.SubscribeCaptureInfoRequest\x1a&.mavsdk.rpc.camera.CaptureInfoResponse\"\x04\x80\xb5\x18\x00\x30\x01\x12\x63\n\x0fSubscribeStatus\x12).mavsdk.rpc.camera.SubscribeStatusRequest\x1a!.mavsdk.rpc.camera.StatusResponse\"\x00\x30\x01\x12\x82\x01\n\x18SubscribeCurrentSettings\x12\x32.mavsdk.rpc.camera.SubscribeCurrentSettingsRequest\x1a*.mavsdk.rpc.camera.CurrentSettingsResponse\"\x04\x80\xb5\x18\x00\x30\x01\x12\x93\x01\n\x1fSubscribePossibleSettingOptions\x12\x39.mavsdk.rpc.camera.SubscribePossibleSettingOptionsRequest\x1a\x31.mavsdk.rpc.camera.PossibleSettingOptionsResponse\"\x00\x30\x01\x12[\n\nSetSetting\x12$.mavsdk.rpc.camera.SetSettingRequest\x1a%.mavsdk.rpc.camera.SetSettingResponse\"\x00\x12[\n\nGetSetting\x12$.mavsdk.rpc.camera.GetSettingRequest\x1a%.mavsdk.rpc.camera.GetSettingResponse\"\x00\x12\x64\n\rFormatStorage\x12\'.mavsdk.rpc.camera.FormatStorageRequest\x1a(.mavsdk.rpc.camera.FormatStorageResponse\"\x00\x42\x1f\n\x10io.mavsdk.cameraB\x0b\x43\x61meraProtob\x06proto3' + serialized_pb=b'\n\x13\x63\x61mera/camera.proto\x12\x11mavsdk.rpc.camera\x1a\x14mavsdk_options.proto\"\x10\n\x0ePrepareRequest\"I\n\x0fPrepareResponse\x12\x36\n\rcamera_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.camera.CameraResult\"\x12\n\x10TakePhotoRequest\"K\n\x11TakePhotoResponse\x12\x36\n\rcamera_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.camera.CameraResult\"/\n\x19StartPhotoIntervalRequest\x12\x12\n\ninterval_s\x18\x01 \x01(\x02\"T\n\x1aStartPhotoIntervalResponse\x12\x36\n\rcamera_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.camera.CameraResult\"\x1a\n\x18StopPhotoIntervalRequest\"S\n\x19StopPhotoIntervalResponse\x12\x36\n\rcamera_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.camera.CameraResult\"\x13\n\x11StartVideoRequest\"L\n\x12StartVideoResponse\x12\x36\n\rcamera_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.camera.CameraResult\"\x12\n\x10StopVideoRequest\"K\n\x11StopVideoResponse\x12\x36\n\rcamera_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.camera.CameraResult\"\x1c\n\x1aStartVideoStreamingRequest\"U\n\x1bStartVideoStreamingResponse\x12\x36\n\rcamera_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.camera.CameraResult\"\x1b\n\x19StopVideoStreamingRequest\"T\n\x1aStopVideoStreamingResponse\x12\x36\n\rcamera_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.camera.CameraResult\"7\n\x0eSetModeRequest\x12%\n\x04mode\x18\x01 \x01(\x0e\x32\x17.mavsdk.rpc.camera.Mode\"I\n\x0fSetModeResponse\x12\x36\n\rcamera_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.camera.CameraResult\"I\n\x11ListPhotosRequest\x12\x34\n\x0cphotos_range\x18\x01 \x01(\x0e\x32\x1e.mavsdk.rpc.camera.PhotosRange\"\x83\x01\n\x12ListPhotosResponse\x12\x36\n\rcamera_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.camera.CameraResult\x12\x35\n\rcapture_infos\x18\x02 \x03(\x0b\x32\x1e.mavsdk.rpc.camera.CaptureInfo\"\x1d\n\x1bSubscribeInformationRequest\"J\n\x13InformationResponse\x12\x33\n\x0binformation\x18\x01 \x01(\x0b\x32\x1e.mavsdk.rpc.camera.Information\"\x16\n\x14SubscribeModeRequest\"5\n\x0cModeResponse\x12%\n\x04mode\x18\x01 \x01(\x0e\x32\x17.mavsdk.rpc.camera.Mode\"!\n\x1fSubscribeVideoStreamInfoRequest\"X\n\x17VideoStreamInfoResponse\x12=\n\x11video_stream_info\x18\x01 \x01(\x0b\x32\".mavsdk.rpc.camera.VideoStreamInfo\"\x1d\n\x1bSubscribeCaptureInfoRequest\"K\n\x13\x43\x61ptureInfoResponse\x12\x34\n\x0c\x63\x61pture_info\x18\x01 \x01(\x0b\x32\x1e.mavsdk.rpc.camera.CaptureInfo\"\x18\n\x16SubscribeStatusRequest\"B\n\x0eStatusResponse\x12\x30\n\rcamera_status\x18\x01 \x01(\x0b\x32\x19.mavsdk.rpc.camera.Status\"!\n\x1fSubscribeCurrentSettingsRequest\"O\n\x17\x43urrentSettingsResponse\x12\x34\n\x10\x63urrent_settings\x18\x01 \x03(\x0b\x32\x1a.mavsdk.rpc.camera.Setting\"(\n&SubscribePossibleSettingOptionsRequest\"\\\n\x1ePossibleSettingOptionsResponse\x12:\n\x0fsetting_options\x18\x01 \x03(\x0b\x32!.mavsdk.rpc.camera.SettingOptions\"@\n\x11SetSettingRequest\x12+\n\x07setting\x18\x01 \x01(\x0b\x32\x1a.mavsdk.rpc.camera.Setting\"L\n\x12SetSettingResponse\x12\x36\n\rcamera_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.camera.CameraResult\"@\n\x11GetSettingRequest\x12+\n\x07setting\x18\x01 \x01(\x0b\x32\x1a.mavsdk.rpc.camera.Setting\"y\n\x12GetSettingResponse\x12\x36\n\rcamera_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.camera.CameraResult\x12+\n\x07setting\x18\x02 \x01(\x0b\x32\x1a.mavsdk.rpc.camera.Setting\"\x16\n\x14\x46ormatStorageRequest\"O\n\x15\x46ormatStorageResponse\x12\x36\n\rcamera_result\x18\x01 \x01(\x0b\x32\x1f.mavsdk.rpc.camera.CameraResult\"\xa0\x02\n\x0c\x43\x61meraResult\x12\x36\n\x06result\x18\x01 \x01(\x0e\x32&.mavsdk.rpc.camera.CameraResult.Result\x12\x12\n\nresult_str\x18\x02 \x01(\t\"\xc3\x01\n\x06Result\x12\x12\n\x0eRESULT_UNKNOWN\x10\x00\x12\x12\n\x0eRESULT_SUCCESS\x10\x01\x12\x16\n\x12RESULT_IN_PROGRESS\x10\x02\x12\x0f\n\x0bRESULT_BUSY\x10\x03\x12\x11\n\rRESULT_DENIED\x10\x04\x12\x10\n\x0cRESULT_ERROR\x10\x05\x12\x12\n\x0eRESULT_TIMEOUT\x10\x06\x12\x19\n\x15RESULT_WRONG_ARGUMENT\x10\x07\x12\x14\n\x10RESULT_NO_SYSTEM\x10\x08\"q\n\x08Position\x12\x14\n\x0clatitude_deg\x18\x01 \x01(\x01\x12\x15\n\rlongitude_deg\x18\x02 \x01(\x01\x12\x1b\n\x13\x61\x62solute_altitude_m\x18\x03 \x01(\x02\x12\x1b\n\x13relative_altitude_m\x18\x04 \x01(\x02\"8\n\nQuaternion\x12\t\n\x01w\x18\x01 \x01(\x02\x12\t\n\x01x\x18\x02 \x01(\x02\x12\t\n\x01y\x18\x03 \x01(\x02\x12\t\n\x01z\x18\x04 \x01(\x02\"B\n\nEulerAngle\x12\x10\n\x08roll_deg\x18\x01 \x01(\x02\x12\x11\n\tpitch_deg\x18\x02 \x01(\x02\x12\x0f\n\x07yaw_deg\x18\x03 \x01(\x02\"\xff\x01\n\x0b\x43\x61ptureInfo\x12-\n\x08position\x18\x01 \x01(\x0b\x32\x1b.mavsdk.rpc.camera.Position\x12:\n\x13\x61ttitude_quaternion\x18\x02 \x01(\x0b\x32\x1d.mavsdk.rpc.camera.Quaternion\x12;\n\x14\x61ttitude_euler_angle\x18\x03 \x01(\x0b\x32\x1d.mavsdk.rpc.camera.EulerAngle\x12\x13\n\x0btime_utc_us\x18\x04 \x01(\x04\x12\x12\n\nis_success\x18\x05 \x01(\x08\x12\r\n\x05index\x18\x06 \x01(\x05\x12\x10\n\x08\x66ile_url\x18\x07 \x01(\t\"\xc5\x01\n\x13VideoStreamSettings\x12\x15\n\rframe_rate_hz\x18\x01 \x01(\x02\x12!\n\x19horizontal_resolution_pix\x18\x02 \x01(\r\x12\x1f\n\x17vertical_resolution_pix\x18\x03 \x01(\r\x12\x14\n\x0c\x62it_rate_b_s\x18\x04 \x01(\r\x12\x14\n\x0crotation_deg\x18\x05 \x01(\r\x12\x0b\n\x03uri\x18\x06 \x01(\t\x12\x1a\n\x12horizontal_fov_deg\x18\x07 \x01(\x02\"\xc2\x03\n\x0fVideoStreamInfo\x12\x38\n\x08settings\x18\x01 \x01(\x0b\x32&.mavsdk.rpc.camera.VideoStreamSettings\x12\x44\n\x06status\x18\x02 \x01(\x0e\x32\x34.mavsdk.rpc.camera.VideoStreamInfo.VideoStreamStatus\x12H\n\x08spectrum\x18\x03 \x01(\x0e\x32\x36.mavsdk.rpc.camera.VideoStreamInfo.VideoStreamSpectrum\"]\n\x11VideoStreamStatus\x12#\n\x1fVIDEO_STREAM_STATUS_NOT_RUNNING\x10\x00\x12#\n\x1fVIDEO_STREAM_STATUS_IN_PROGRESS\x10\x01\"\x85\x01\n\x13VideoStreamSpectrum\x12!\n\x1dVIDEO_STREAM_SPECTRUM_UNKNOWN\x10\x00\x12\'\n#VIDEO_STREAM_SPECTRUM_VISIBLE_LIGHT\x10\x01\x12\"\n\x1eVIDEO_STREAM_SPECTRUM_INFRARED\x10\x02\"\x93\x03\n\x06Status\x12\x10\n\x08video_on\x18\x01 \x01(\x08\x12\x19\n\x11photo_interval_on\x18\x02 \x01(\x08\x12\x18\n\x10used_storage_mib\x18\x03 \x01(\x02\x12\x1d\n\x15\x61vailable_storage_mib\x18\x04 \x01(\x02\x12\x19\n\x11total_storage_mib\x18\x05 \x01(\x02\x12\x18\n\x10recording_time_s\x18\x06 \x01(\x02\x12\x19\n\x11media_folder_name\x18\x07 \x01(\t\x12?\n\x0estorage_status\x18\x08 \x01(\x0e\x32\'.mavsdk.rpc.camera.Status.StorageStatus\"\x91\x01\n\rStorageStatus\x12 \n\x1cSTORAGE_STATUS_NOT_AVAILABLE\x10\x00\x12\x1e\n\x1aSTORAGE_STATUS_UNFORMATTED\x10\x01\x12\x1c\n\x18STORAGE_STATUS_FORMATTED\x10\x02\x12 \n\x1cSTORAGE_STATUS_NOT_SUPPORTED\x10\x03\"7\n\x06Option\x12\x11\n\toption_id\x18\x01 \x01(\t\x12\x1a\n\x12option_description\x18\x02 \x01(\t\"w\n\x07Setting\x12\x12\n\nsetting_id\x18\x01 \x01(\t\x12\x1b\n\x13setting_description\x18\x02 \x01(\t\x12)\n\x06option\x18\x03 \x01(\x0b\x32\x19.mavsdk.rpc.camera.Option\x12\x10\n\x08is_range\x18\x04 \x01(\x08\"\x7f\n\x0eSettingOptions\x12\x12\n\nsetting_id\x18\x01 \x01(\t\x12\x1b\n\x13setting_description\x18\x02 \x01(\t\x12*\n\x07options\x18\x03 \x03(\x0b\x32\x19.mavsdk.rpc.camera.Option\x12\x10\n\x08is_range\x18\x04 \x01(\x08\"\xd5\x01\n\x0bInformation\x12\x13\n\x0bvendor_name\x18\x01 \x01(\t\x12\x12\n\nmodel_name\x18\x02 \x01(\t\x12\x17\n\x0f\x66ocal_length_mm\x18\x03 \x01(\x02\x12!\n\x19horizontal_sensor_size_mm\x18\x04 \x01(\x02\x12\x1f\n\x17vertical_sensor_size_mm\x18\x05 \x01(\x02\x12 \n\x18horizontal_resolution_px\x18\x06 \x01(\r\x12\x1e\n\x16vertical_resolution_px\x18\x07 \x01(\r*8\n\x04Mode\x12\x10\n\x0cMODE_UNKNOWN\x10\x00\x12\x0e\n\nMODE_PHOTO\x10\x01\x12\x0e\n\nMODE_VIDEO\x10\x02*F\n\x0bPhotosRange\x12\x14\n\x10PHOTOS_RANGE_ALL\x10\x00\x12!\n\x1dPHOTOS_RANGE_SINCE_CONNECTION\x10\x01\x32\xec\x10\n\rCameraService\x12R\n\x07Prepare\x12!.mavsdk.rpc.camera.PrepareRequest\x1a\".mavsdk.rpc.camera.PrepareResponse\"\x00\x12X\n\tTakePhoto\x12#.mavsdk.rpc.camera.TakePhotoRequest\x1a$.mavsdk.rpc.camera.TakePhotoResponse\"\x00\x12s\n\x12StartPhotoInterval\x12,.mavsdk.rpc.camera.StartPhotoIntervalRequest\x1a-.mavsdk.rpc.camera.StartPhotoIntervalResponse\"\x00\x12p\n\x11StopPhotoInterval\x12+.mavsdk.rpc.camera.StopPhotoIntervalRequest\x1a,.mavsdk.rpc.camera.StopPhotoIntervalResponse\"\x00\x12[\n\nStartVideo\x12$.mavsdk.rpc.camera.StartVideoRequest\x1a%.mavsdk.rpc.camera.StartVideoResponse\"\x00\x12X\n\tStopVideo\x12#.mavsdk.rpc.camera.StopVideoRequest\x1a$.mavsdk.rpc.camera.StopVideoResponse\"\x00\x12z\n\x13StartVideoStreaming\x12-.mavsdk.rpc.camera.StartVideoStreamingRequest\x1a..mavsdk.rpc.camera.StartVideoStreamingResponse\"\x04\x80\xb5\x18\x01\x12w\n\x12StopVideoStreaming\x12,.mavsdk.rpc.camera.StopVideoStreamingRequest\x1a-.mavsdk.rpc.camera.StopVideoStreamingResponse\"\x04\x80\xb5\x18\x01\x12R\n\x07SetMode\x12!.mavsdk.rpc.camera.SetModeRequest\x1a\".mavsdk.rpc.camera.SetModeResponse\"\x00\x12[\n\nListPhotos\x12$.mavsdk.rpc.camera.ListPhotosRequest\x1a%.mavsdk.rpc.camera.ListPhotosResponse\"\x00\x12]\n\rSubscribeMode\x12\'.mavsdk.rpc.camera.SubscribeModeRequest\x1a\x1f.mavsdk.rpc.camera.ModeResponse\"\x00\x30\x01\x12r\n\x14SubscribeInformation\x12..mavsdk.rpc.camera.SubscribeInformationRequest\x1a&.mavsdk.rpc.camera.InformationResponse\"\x00\x30\x01\x12~\n\x18SubscribeVideoStreamInfo\x12\x32.mavsdk.rpc.camera.SubscribeVideoStreamInfoRequest\x1a*.mavsdk.rpc.camera.VideoStreamInfoResponse\"\x00\x30\x01\x12v\n\x14SubscribeCaptureInfo\x12..mavsdk.rpc.camera.SubscribeCaptureInfoRequest\x1a&.mavsdk.rpc.camera.CaptureInfoResponse\"\x04\x80\xb5\x18\x00\x30\x01\x12\x63\n\x0fSubscribeStatus\x12).mavsdk.rpc.camera.SubscribeStatusRequest\x1a!.mavsdk.rpc.camera.StatusResponse\"\x00\x30\x01\x12\x82\x01\n\x18SubscribeCurrentSettings\x12\x32.mavsdk.rpc.camera.SubscribeCurrentSettingsRequest\x1a*.mavsdk.rpc.camera.CurrentSettingsResponse\"\x04\x80\xb5\x18\x00\x30\x01\x12\x93\x01\n\x1fSubscribePossibleSettingOptions\x12\x39.mavsdk.rpc.camera.SubscribePossibleSettingOptionsRequest\x1a\x31.mavsdk.rpc.camera.PossibleSettingOptionsResponse\"\x00\x30\x01\x12[\n\nSetSetting\x12$.mavsdk.rpc.camera.SetSettingRequest\x1a%.mavsdk.rpc.camera.SetSettingResponse\"\x00\x12[\n\nGetSetting\x12$.mavsdk.rpc.camera.GetSettingRequest\x1a%.mavsdk.rpc.camera.GetSettingResponse\"\x00\x12\x64\n\rFormatStorage\x12\'.mavsdk.rpc.camera.FormatStorageRequest\x1a(.mavsdk.rpc.camera.FormatStorageResponse\"\x00\x42\x1f\n\x10io.mavsdk.cameraB\x0b\x43\x61meraProtob\x06proto3' , dependencies=[mavsdk__options__pb2.DESCRIPTOR,]) @@ -50,8 +50,8 @@ ], containing_type=None, serialized_options=None, - serialized_start=4753, - serialized_end=4809, + serialized_start=4846, + serialized_end=4902, ) _sym_db.RegisterEnumDescriptor(_MODE) @@ -76,8 +76,8 @@ ], containing_type=None, serialized_options=None, - serialized_start=4811, - serialized_end=4881, + serialized_start=4904, + serialized_end=4974, ) _sym_db.RegisterEnumDescriptor(_PHOTOSRANGE) @@ -144,8 +144,8 @@ ], containing_type=None, serialized_options=None, - serialized_start=2475, - serialized_end=2670, + serialized_start=2568, + serialized_end=2763, ) _sym_db.RegisterEnumDescriptor(_CAMERARESULT_RESULT) @@ -169,8 +169,8 @@ ], containing_type=None, serialized_options=None, - serialized_start=3593, - serialized_end=3686, + serialized_start=3686, + serialized_end=3779, ) _sym_db.RegisterEnumDescriptor(_VIDEOSTREAMINFO_VIDEOSTREAMSTATUS) @@ -199,8 +199,8 @@ ], containing_type=None, serialized_options=None, - serialized_start=3689, - serialized_end=3822, + serialized_start=3782, + serialized_end=3915, ) _sym_db.RegisterEnumDescriptor(_VIDEOSTREAMINFO_VIDEOSTREAMSPECTRUM) @@ -234,12 +234,69 @@ ], containing_type=None, serialized_options=None, - serialized_start=4083, - serialized_end=4228, + serialized_start=4176, + serialized_end=4321, ) _sym_db.RegisterEnumDescriptor(_STATUS_STORAGESTATUS) +_PREPAREREQUEST = _descriptor.Descriptor( + name='PrepareRequest', + full_name='mavsdk.rpc.camera.PrepareRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=64, + serialized_end=80, +) + + +_PREPARERESPONSE = _descriptor.Descriptor( + name='PrepareResponse', + full_name='mavsdk.rpc.camera.PrepareResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='camera_result', full_name='mavsdk.rpc.camera.PrepareResponse.camera_result', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=82, + serialized_end=155, +) + + _TAKEPHOTOREQUEST = _descriptor.Descriptor( name='TakePhotoRequest', full_name='mavsdk.rpc.camera.TakePhotoRequest', @@ -260,8 +317,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=64, - serialized_end=82, + serialized_start=157, + serialized_end=175, ) @@ -292,8 +349,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=84, - serialized_end=159, + serialized_start=177, + serialized_end=252, ) @@ -324,8 +381,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=161, - serialized_end=208, + serialized_start=254, + serialized_end=301, ) @@ -356,8 +413,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=210, - serialized_end=294, + serialized_start=303, + serialized_end=387, ) @@ -381,8 +438,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=296, - serialized_end=322, + serialized_start=389, + serialized_end=415, ) @@ -413,8 +470,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=324, - serialized_end=407, + serialized_start=417, + serialized_end=500, ) @@ -438,8 +495,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=409, - serialized_end=428, + serialized_start=502, + serialized_end=521, ) @@ -470,8 +527,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=430, - serialized_end=506, + serialized_start=523, + serialized_end=599, ) @@ -495,8 +552,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=508, - serialized_end=526, + serialized_start=601, + serialized_end=619, ) @@ -527,8 +584,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=528, - serialized_end=603, + serialized_start=621, + serialized_end=696, ) @@ -552,8 +609,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=605, - serialized_end=633, + serialized_start=698, + serialized_end=726, ) @@ -584,8 +641,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=635, - serialized_end=720, + serialized_start=728, + serialized_end=813, ) @@ -609,8 +666,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=722, - serialized_end=749, + serialized_start=815, + serialized_end=842, ) @@ -641,8 +698,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=751, - serialized_end=835, + serialized_start=844, + serialized_end=928, ) @@ -673,8 +730,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=837, - serialized_end=892, + serialized_start=930, + serialized_end=985, ) @@ -705,8 +762,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=894, - serialized_end=967, + serialized_start=987, + serialized_end=1060, ) @@ -737,8 +794,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=969, - serialized_end=1042, + serialized_start=1062, + serialized_end=1135, ) @@ -776,8 +833,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1045, - serialized_end=1176, + serialized_start=1138, + serialized_end=1269, ) @@ -801,8 +858,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1178, - serialized_end=1207, + serialized_start=1271, + serialized_end=1300, ) @@ -833,8 +890,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1209, - serialized_end=1283, + serialized_start=1302, + serialized_end=1376, ) @@ -858,8 +915,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1285, - serialized_end=1307, + serialized_start=1378, + serialized_end=1400, ) @@ -890,8 +947,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1309, - serialized_end=1362, + serialized_start=1402, + serialized_end=1455, ) @@ -915,8 +972,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1364, - serialized_end=1397, + serialized_start=1457, + serialized_end=1490, ) @@ -947,8 +1004,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1399, - serialized_end=1487, + serialized_start=1492, + serialized_end=1580, ) @@ -972,8 +1029,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1489, - serialized_end=1518, + serialized_start=1582, + serialized_end=1611, ) @@ -1004,8 +1061,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1520, - serialized_end=1595, + serialized_start=1613, + serialized_end=1688, ) @@ -1029,8 +1086,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1597, - serialized_end=1621, + serialized_start=1690, + serialized_end=1714, ) @@ -1061,8 +1118,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1623, - serialized_end=1689, + serialized_start=1716, + serialized_end=1782, ) @@ -1086,8 +1143,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1691, - serialized_end=1724, + serialized_start=1784, + serialized_end=1817, ) @@ -1118,8 +1175,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1726, - serialized_end=1805, + serialized_start=1819, + serialized_end=1898, ) @@ -1143,8 +1200,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1807, - serialized_end=1847, + serialized_start=1900, + serialized_end=1940, ) @@ -1175,8 +1232,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1849, - serialized_end=1941, + serialized_start=1942, + serialized_end=2034, ) @@ -1207,8 +1264,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1943, - serialized_end=2007, + serialized_start=2036, + serialized_end=2100, ) @@ -1239,8 +1296,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2009, - serialized_end=2085, + serialized_start=2102, + serialized_end=2178, ) @@ -1271,8 +1328,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2087, - serialized_end=2151, + serialized_start=2180, + serialized_end=2244, ) @@ -1310,8 +1367,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2153, - serialized_end=2274, + serialized_start=2246, + serialized_end=2367, ) @@ -1335,8 +1392,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2276, - serialized_end=2298, + serialized_start=2369, + serialized_end=2391, ) @@ -1367,8 +1424,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2300, - serialized_end=2379, + serialized_start=2393, + serialized_end=2472, ) @@ -1407,8 +1464,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2382, - serialized_end=2670, + serialized_start=2475, + serialized_end=2763, ) @@ -1460,8 +1517,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2672, - serialized_end=2785, + serialized_start=2765, + serialized_end=2878, ) @@ -1513,8 +1570,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2787, - serialized_end=2843, + serialized_start=2880, + serialized_end=2936, ) @@ -1559,8 +1616,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2845, - serialized_end=2911, + serialized_start=2938, + serialized_end=3004, ) @@ -1633,8 +1690,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2914, - serialized_end=3169, + serialized_start=3007, + serialized_end=3262, ) @@ -1707,8 +1764,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=3172, - serialized_end=3369, + serialized_start=3265, + serialized_end=3462, ) @@ -1755,8 +1812,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=3372, - serialized_end=3822, + serialized_start=3465, + serialized_end=3915, ) @@ -1837,8 +1894,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=3825, - serialized_end=4228, + serialized_start=3918, + serialized_end=4321, ) @@ -1876,8 +1933,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4230, - serialized_end=4285, + serialized_start=4323, + serialized_end=4378, ) @@ -1929,8 +1986,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4287, - serialized_end=4406, + serialized_start=4380, + serialized_end=4499, ) @@ -1982,8 +2039,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4408, - serialized_end=4535, + serialized_start=4501, + serialized_end=4628, ) @@ -2056,10 +2113,11 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4538, - serialized_end=4751, + serialized_start=4631, + serialized_end=4844, ) +_PREPARERESPONSE.fields_by_name['camera_result'].message_type = _CAMERARESULT _TAKEPHOTORESPONSE.fields_by_name['camera_result'].message_type = _CAMERARESULT _STARTPHOTOINTERVALRESPONSE.fields_by_name['camera_result'].message_type = _CAMERARESULT _STOPPHOTOINTERVALRESPONSE.fields_by_name['camera_result'].message_type = _CAMERARESULT @@ -2099,6 +2157,8 @@ _STATUS_STORAGESTATUS.containing_type = _STATUS _SETTING.fields_by_name['option'].message_type = _OPTION _SETTINGOPTIONS.fields_by_name['options'].message_type = _OPTION +DESCRIPTOR.message_types_by_name['PrepareRequest'] = _PREPAREREQUEST +DESCRIPTOR.message_types_by_name['PrepareResponse'] = _PREPARERESPONSE DESCRIPTOR.message_types_by_name['TakePhotoRequest'] = _TAKEPHOTOREQUEST DESCRIPTOR.message_types_by_name['TakePhotoResponse'] = _TAKEPHOTORESPONSE DESCRIPTOR.message_types_by_name['StartPhotoIntervalRequest'] = _STARTPHOTOINTERVALREQUEST @@ -2153,6 +2213,20 @@ DESCRIPTOR.enum_types_by_name['PhotosRange'] = _PHOTOSRANGE _sym_db.RegisterFileDescriptor(DESCRIPTOR) +PrepareRequest = _reflection.GeneratedProtocolMessageType('PrepareRequest', (_message.Message,), { + 'DESCRIPTOR' : _PREPAREREQUEST, + '__module__' : 'camera.camera_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.camera.PrepareRequest) + }) +_sym_db.RegisterMessage(PrepareRequest) + +PrepareResponse = _reflection.GeneratedProtocolMessageType('PrepareResponse', (_message.Message,), { + 'DESCRIPTOR' : _PREPARERESPONSE, + '__module__' : 'camera.camera_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.camera.PrepareResponse) + }) +_sym_db.RegisterMessage(PrepareResponse) + TakePhotoRequest = _reflection.GeneratedProtocolMessageType('TakePhotoRequest', (_message.Message,), { 'DESCRIPTOR' : _TAKEPHOTOREQUEST, '__module__' : 'camera.camera_pb2' @@ -2513,13 +2587,23 @@ index=0, serialized_options=None, create_key=_descriptor._internal_create_key, - serialized_start=4884, - serialized_end=6956, + serialized_start=4977, + serialized_end=7133, methods=[ + _descriptor.MethodDescriptor( + name='Prepare', + full_name='mavsdk.rpc.camera.CameraService.Prepare', + index=0, + containing_service=None, + input_type=_PREPAREREQUEST, + output_type=_PREPARERESPONSE, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), _descriptor.MethodDescriptor( name='TakePhoto', full_name='mavsdk.rpc.camera.CameraService.TakePhoto', - index=0, + index=1, containing_service=None, input_type=_TAKEPHOTOREQUEST, output_type=_TAKEPHOTORESPONSE, @@ -2529,7 +2613,7 @@ _descriptor.MethodDescriptor( name='StartPhotoInterval', full_name='mavsdk.rpc.camera.CameraService.StartPhotoInterval', - index=1, + index=2, containing_service=None, input_type=_STARTPHOTOINTERVALREQUEST, output_type=_STARTPHOTOINTERVALRESPONSE, @@ -2539,7 +2623,7 @@ _descriptor.MethodDescriptor( name='StopPhotoInterval', full_name='mavsdk.rpc.camera.CameraService.StopPhotoInterval', - index=2, + index=3, containing_service=None, input_type=_STOPPHOTOINTERVALREQUEST, output_type=_STOPPHOTOINTERVALRESPONSE, @@ -2549,7 +2633,7 @@ _descriptor.MethodDescriptor( name='StartVideo', full_name='mavsdk.rpc.camera.CameraService.StartVideo', - index=3, + index=4, containing_service=None, input_type=_STARTVIDEOREQUEST, output_type=_STARTVIDEORESPONSE, @@ -2559,7 +2643,7 @@ _descriptor.MethodDescriptor( name='StopVideo', full_name='mavsdk.rpc.camera.CameraService.StopVideo', - index=4, + index=5, containing_service=None, input_type=_STOPVIDEOREQUEST, output_type=_STOPVIDEORESPONSE, @@ -2569,7 +2653,7 @@ _descriptor.MethodDescriptor( name='StartVideoStreaming', full_name='mavsdk.rpc.camera.CameraService.StartVideoStreaming', - index=5, + index=6, containing_service=None, input_type=_STARTVIDEOSTREAMINGREQUEST, output_type=_STARTVIDEOSTREAMINGRESPONSE, @@ -2579,7 +2663,7 @@ _descriptor.MethodDescriptor( name='StopVideoStreaming', full_name='mavsdk.rpc.camera.CameraService.StopVideoStreaming', - index=6, + index=7, containing_service=None, input_type=_STOPVIDEOSTREAMINGREQUEST, output_type=_STOPVIDEOSTREAMINGRESPONSE, @@ -2589,7 +2673,7 @@ _descriptor.MethodDescriptor( name='SetMode', full_name='mavsdk.rpc.camera.CameraService.SetMode', - index=7, + index=8, containing_service=None, input_type=_SETMODEREQUEST, output_type=_SETMODERESPONSE, @@ -2599,7 +2683,7 @@ _descriptor.MethodDescriptor( name='ListPhotos', full_name='mavsdk.rpc.camera.CameraService.ListPhotos', - index=8, + index=9, containing_service=None, input_type=_LISTPHOTOSREQUEST, output_type=_LISTPHOTOSRESPONSE, @@ -2609,7 +2693,7 @@ _descriptor.MethodDescriptor( name='SubscribeMode', full_name='mavsdk.rpc.camera.CameraService.SubscribeMode', - index=9, + index=10, containing_service=None, input_type=_SUBSCRIBEMODEREQUEST, output_type=_MODERESPONSE, @@ -2619,7 +2703,7 @@ _descriptor.MethodDescriptor( name='SubscribeInformation', full_name='mavsdk.rpc.camera.CameraService.SubscribeInformation', - index=10, + index=11, containing_service=None, input_type=_SUBSCRIBEINFORMATIONREQUEST, output_type=_INFORMATIONRESPONSE, @@ -2629,7 +2713,7 @@ _descriptor.MethodDescriptor( name='SubscribeVideoStreamInfo', full_name='mavsdk.rpc.camera.CameraService.SubscribeVideoStreamInfo', - index=11, + index=12, containing_service=None, input_type=_SUBSCRIBEVIDEOSTREAMINFOREQUEST, output_type=_VIDEOSTREAMINFORESPONSE, @@ -2639,7 +2723,7 @@ _descriptor.MethodDescriptor( name='SubscribeCaptureInfo', full_name='mavsdk.rpc.camera.CameraService.SubscribeCaptureInfo', - index=12, + index=13, containing_service=None, input_type=_SUBSCRIBECAPTUREINFOREQUEST, output_type=_CAPTUREINFORESPONSE, @@ -2649,7 +2733,7 @@ _descriptor.MethodDescriptor( name='SubscribeStatus', full_name='mavsdk.rpc.camera.CameraService.SubscribeStatus', - index=13, + index=14, containing_service=None, input_type=_SUBSCRIBESTATUSREQUEST, output_type=_STATUSRESPONSE, @@ -2659,7 +2743,7 @@ _descriptor.MethodDescriptor( name='SubscribeCurrentSettings', full_name='mavsdk.rpc.camera.CameraService.SubscribeCurrentSettings', - index=14, + index=15, containing_service=None, input_type=_SUBSCRIBECURRENTSETTINGSREQUEST, output_type=_CURRENTSETTINGSRESPONSE, @@ -2669,7 +2753,7 @@ _descriptor.MethodDescriptor( name='SubscribePossibleSettingOptions', full_name='mavsdk.rpc.camera.CameraService.SubscribePossibleSettingOptions', - index=15, + index=16, containing_service=None, input_type=_SUBSCRIBEPOSSIBLESETTINGOPTIONSREQUEST, output_type=_POSSIBLESETTINGOPTIONSRESPONSE, @@ -2679,7 +2763,7 @@ _descriptor.MethodDescriptor( name='SetSetting', full_name='mavsdk.rpc.camera.CameraService.SetSetting', - index=16, + index=17, containing_service=None, input_type=_SETSETTINGREQUEST, output_type=_SETSETTINGRESPONSE, @@ -2689,7 +2773,7 @@ _descriptor.MethodDescriptor( name='GetSetting', full_name='mavsdk.rpc.camera.CameraService.GetSetting', - index=17, + index=18, containing_service=None, input_type=_GETSETTINGREQUEST, output_type=_GETSETTINGRESPONSE, @@ -2699,7 +2783,7 @@ _descriptor.MethodDescriptor( name='FormatStorage', full_name='mavsdk.rpc.camera.CameraService.FormatStorage', - index=18, + index=19, containing_service=None, input_type=_FORMATSTORAGEREQUEST, output_type=_FORMATSTORAGERESPONSE, diff --git a/mavsdk/camera_pb2_grpc.py b/mavsdk/camera_pb2_grpc.py index 6cc0ff73..50bf480a 100644 --- a/mavsdk/camera_pb2_grpc.py +++ b/mavsdk/camera_pb2_grpc.py @@ -22,6 +22,11 @@ def __init__(self, channel): Args: channel: A grpc.Channel. """ + self.Prepare = channel.unary_unary( + '/mavsdk.rpc.camera.CameraService/Prepare', + request_serializer=camera_dot_camera__pb2.PrepareRequest.SerializeToString, + response_deserializer=camera_dot_camera__pb2.PrepareResponse.FromString, + ) self.TakePhoto = channel.unary_unary( '/mavsdk.rpc.camera.CameraService/TakePhoto', request_serializer=camera_dot_camera__pb2.TakePhotoRequest.SerializeToString, @@ -130,6 +135,14 @@ class CameraServiceServicer(object): `select_camera`. """ + def Prepare(self, request, context): + """ + Prepare the camera plugin (e.g. download the camera definition, etc). + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + def TakePhoto(self, request, context): """ Take one photo. @@ -291,6 +304,11 @@ def FormatStorage(self, request, context): def add_CameraServiceServicer_to_server(servicer, server): rpc_method_handlers = { + 'Prepare': grpc.unary_unary_rpc_method_handler( + servicer.Prepare, + request_deserializer=camera_dot_camera__pb2.PrepareRequest.FromString, + response_serializer=camera_dot_camera__pb2.PrepareResponse.SerializeToString, + ), 'TakePhoto': grpc.unary_unary_rpc_method_handler( servicer.TakePhoto, request_deserializer=camera_dot_camera__pb2.TakePhotoRequest.FromString, @@ -404,6 +422,23 @@ class CameraService(object): `select_camera`. """ + @staticmethod + def Prepare(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/mavsdk.rpc.camera.CameraService/Prepare', + camera_dot_camera__pb2.PrepareRequest.SerializeToString, + camera_dot_camera__pb2.PrepareResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + @staticmethod def TakePhoto(request, target, diff --git a/mavsdk/geofence.py b/mavsdk/geofence.py index e22a9bfc..38e02e35 100644 --- a/mavsdk/geofence.py +++ b/mavsdk/geofence.py @@ -425,4 +425,24 @@ async def upload_geofence(self, polygons): if result.result is not GeofenceResult.Result.SUCCESS: raise GeofenceError(result, "upload_geofence()", polygons) + + + async def clear_geofence(self): + """ + Clear all geofences saved on the vehicle. + + Raises + ------ + GeofenceError + If the request fails. The error contains the reason for the failure. + """ + + request = geofence_pb2.ClearGeofenceRequest() + response = await self._stub.ClearGeofence(request) + + + result = self._extract_result(response) + + if result.result is not GeofenceResult.Result.SUCCESS: + raise GeofenceError(result, "clear_geofence()") \ No newline at end of file diff --git a/mavsdk/geofence_pb2.py b/mavsdk/geofence_pb2.py index 53c53368..240e4b2a 100644 --- a/mavsdk/geofence_pb2.py +++ b/mavsdk/geofence_pb2.py @@ -19,7 +19,7 @@ syntax='proto3', serialized_options=b'\n\022io.mavsdk.geofenceB\rGeofenceProto', create_key=_descriptor._internal_create_key, - serialized_pb=b'\n\x17geofence/geofence.proto\x12\x13mavsdk.rpc.geofence\"4\n\x05Point\x12\x14\n\x0clatitude_deg\x18\x01 \x01(\x01\x12\x15\n\rlongitude_deg\x18\x02 \x01(\x01\"\xb2\x01\n\x07Polygon\x12*\n\x06points\x18\x01 \x03(\x0b\x32\x1a.mavsdk.rpc.geofence.Point\x12:\n\nfence_type\x18\x02 \x01(\x0e\x32&.mavsdk.rpc.geofence.Polygon.FenceType\"?\n\tFenceType\x12\x18\n\x14\x46\x45NCE_TYPE_INCLUSION\x10\x00\x12\x18\n\x14\x46\x45NCE_TYPE_EXCLUSION\x10\x01\"G\n\x15UploadGeofenceRequest\x12.\n\x08polygons\x18\x01 \x03(\x0b\x32\x1c.mavsdk.rpc.geofence.Polygon\"V\n\x16UploadGeofenceResponse\x12<\n\x0fgeofence_result\x18\x01 \x01(\x0b\x32#.mavsdk.rpc.geofence.GeofenceResult\"\xa1\x02\n\x0eGeofenceResult\x12:\n\x06result\x18\x01 \x01(\x0e\x32*.mavsdk.rpc.geofence.GeofenceResult.Result\x12\x12\n\nresult_str\x18\x02 \x01(\t\"\xbe\x01\n\x06Result\x12\x12\n\x0eRESULT_UNKNOWN\x10\x00\x12\x12\n\x0eRESULT_SUCCESS\x10\x01\x12\x10\n\x0cRESULT_ERROR\x10\x02\x12\"\n\x1eRESULT_TOO_MANY_GEOFENCE_ITEMS\x10\x03\x12\x0f\n\x0bRESULT_BUSY\x10\x04\x12\x12\n\x0eRESULT_TIMEOUT\x10\x05\x12\x1b\n\x17RESULT_INVALID_ARGUMENT\x10\x06\x12\x14\n\x10RESULT_NO_SYSTEM\x10\x07\x32~\n\x0fGeofenceService\x12k\n\x0eUploadGeofence\x12*.mavsdk.rpc.geofence.UploadGeofenceRequest\x1a+.mavsdk.rpc.geofence.UploadGeofenceResponse\"\x00\x42#\n\x12io.mavsdk.geofenceB\rGeofenceProtob\x06proto3' + serialized_pb=b'\n\x17geofence/geofence.proto\x12\x13mavsdk.rpc.geofence\"4\n\x05Point\x12\x14\n\x0clatitude_deg\x18\x01 \x01(\x01\x12\x15\n\rlongitude_deg\x18\x02 \x01(\x01\"\xb2\x01\n\x07Polygon\x12*\n\x06points\x18\x01 \x03(\x0b\x32\x1a.mavsdk.rpc.geofence.Point\x12:\n\nfence_type\x18\x02 \x01(\x0e\x32&.mavsdk.rpc.geofence.Polygon.FenceType\"?\n\tFenceType\x12\x18\n\x14\x46\x45NCE_TYPE_INCLUSION\x10\x00\x12\x18\n\x14\x46\x45NCE_TYPE_EXCLUSION\x10\x01\"G\n\x15UploadGeofenceRequest\x12.\n\x08polygons\x18\x01 \x03(\x0b\x32\x1c.mavsdk.rpc.geofence.Polygon\"V\n\x16UploadGeofenceResponse\x12<\n\x0fgeofence_result\x18\x01 \x01(\x0b\x32#.mavsdk.rpc.geofence.GeofenceResult\"\x16\n\x14\x43learGeofenceRequest\"U\n\x15\x43learGeofenceResponse\x12<\n\x0fgeofence_result\x18\x01 \x01(\x0b\x32#.mavsdk.rpc.geofence.GeofenceResult\"\xa1\x02\n\x0eGeofenceResult\x12:\n\x06result\x18\x01 \x01(\x0e\x32*.mavsdk.rpc.geofence.GeofenceResult.Result\x12\x12\n\nresult_str\x18\x02 \x01(\t\"\xbe\x01\n\x06Result\x12\x12\n\x0eRESULT_UNKNOWN\x10\x00\x12\x12\n\x0eRESULT_SUCCESS\x10\x01\x12\x10\n\x0cRESULT_ERROR\x10\x02\x12\"\n\x1eRESULT_TOO_MANY_GEOFENCE_ITEMS\x10\x03\x12\x0f\n\x0bRESULT_BUSY\x10\x04\x12\x12\n\x0eRESULT_TIMEOUT\x10\x05\x12\x1b\n\x17RESULT_INVALID_ARGUMENT\x10\x06\x12\x14\n\x10RESULT_NO_SYSTEM\x10\x07\x32\xe8\x01\n\x0fGeofenceService\x12k\n\x0eUploadGeofence\x12*.mavsdk.rpc.geofence.UploadGeofenceRequest\x1a+.mavsdk.rpc.geofence.UploadGeofenceResponse\"\x00\x12h\n\rClearGeofence\x12).mavsdk.rpc.geofence.ClearGeofenceRequest\x1a*.mavsdk.rpc.geofence.ClearGeofenceResponse\"\x00\x42#\n\x12io.mavsdk.geofenceB\rGeofenceProtob\x06proto3' ) @@ -99,8 +99,8 @@ ], containing_type=None, serialized_options=None, - serialized_start=544, - serialized_end=734, + serialized_start=655, + serialized_end=845, ) _sym_db.RegisterEnumDescriptor(_GEOFENCERESULT_RESULT) @@ -248,6 +248,63 @@ ) +_CLEARGEOFENCEREQUEST = _descriptor.Descriptor( + name='ClearGeofenceRequest', + full_name='mavsdk.rpc.geofence.ClearGeofenceRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=444, + serialized_end=466, +) + + +_CLEARGEOFENCERESPONSE = _descriptor.Descriptor( + name='ClearGeofenceResponse', + full_name='mavsdk.rpc.geofence.ClearGeofenceResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='geofence_result', full_name='mavsdk.rpc.geofence.ClearGeofenceResponse.geofence_result', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=468, + serialized_end=553, +) + + _GEOFENCERESULT = _descriptor.Descriptor( name='GeofenceResult', full_name='mavsdk.rpc.geofence.GeofenceResult', @@ -283,8 +340,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=445, - serialized_end=734, + serialized_start=556, + serialized_end=845, ) _POLYGON.fields_by_name['points'].message_type = _POINT @@ -292,12 +349,15 @@ _POLYGON_FENCETYPE.containing_type = _POLYGON _UPLOADGEOFENCEREQUEST.fields_by_name['polygons'].message_type = _POLYGON _UPLOADGEOFENCERESPONSE.fields_by_name['geofence_result'].message_type = _GEOFENCERESULT +_CLEARGEOFENCERESPONSE.fields_by_name['geofence_result'].message_type = _GEOFENCERESULT _GEOFENCERESULT.fields_by_name['result'].enum_type = _GEOFENCERESULT_RESULT _GEOFENCERESULT_RESULT.containing_type = _GEOFENCERESULT DESCRIPTOR.message_types_by_name['Point'] = _POINT DESCRIPTOR.message_types_by_name['Polygon'] = _POLYGON DESCRIPTOR.message_types_by_name['UploadGeofenceRequest'] = _UPLOADGEOFENCEREQUEST DESCRIPTOR.message_types_by_name['UploadGeofenceResponse'] = _UPLOADGEOFENCERESPONSE +DESCRIPTOR.message_types_by_name['ClearGeofenceRequest'] = _CLEARGEOFENCEREQUEST +DESCRIPTOR.message_types_by_name['ClearGeofenceResponse'] = _CLEARGEOFENCERESPONSE DESCRIPTOR.message_types_by_name['GeofenceResult'] = _GEOFENCERESULT _sym_db.RegisterFileDescriptor(DESCRIPTOR) @@ -329,6 +389,20 @@ }) _sym_db.RegisterMessage(UploadGeofenceResponse) +ClearGeofenceRequest = _reflection.GeneratedProtocolMessageType('ClearGeofenceRequest', (_message.Message,), { + 'DESCRIPTOR' : _CLEARGEOFENCEREQUEST, + '__module__' : 'geofence.geofence_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.geofence.ClearGeofenceRequest) + }) +_sym_db.RegisterMessage(ClearGeofenceRequest) + +ClearGeofenceResponse = _reflection.GeneratedProtocolMessageType('ClearGeofenceResponse', (_message.Message,), { + 'DESCRIPTOR' : _CLEARGEOFENCERESPONSE, + '__module__' : 'geofence.geofence_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.geofence.ClearGeofenceResponse) + }) +_sym_db.RegisterMessage(ClearGeofenceResponse) + GeofenceResult = _reflection.GeneratedProtocolMessageType('GeofenceResult', (_message.Message,), { 'DESCRIPTOR' : _GEOFENCERESULT, '__module__' : 'geofence.geofence_pb2' @@ -346,8 +420,8 @@ index=0, serialized_options=None, create_key=_descriptor._internal_create_key, - serialized_start=736, - serialized_end=862, + serialized_start=848, + serialized_end=1080, methods=[ _descriptor.MethodDescriptor( name='UploadGeofence', @@ -359,6 +433,16 @@ serialized_options=None, create_key=_descriptor._internal_create_key, ), + _descriptor.MethodDescriptor( + name='ClearGeofence', + full_name='mavsdk.rpc.geofence.GeofenceService.ClearGeofence', + index=1, + containing_service=None, + input_type=_CLEARGEOFENCEREQUEST, + output_type=_CLEARGEOFENCERESPONSE, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), ]) _sym_db.RegisterServiceDescriptor(_GEOFENCESERVICE) diff --git a/mavsdk/geofence_pb2_grpc.py b/mavsdk/geofence_pb2_grpc.py index 4e9797b3..58e9e9a6 100644 --- a/mavsdk/geofence_pb2_grpc.py +++ b/mavsdk/geofence_pb2_grpc.py @@ -20,6 +20,11 @@ def __init__(self, channel): request_serializer=geofence_dot_geofence__pb2.UploadGeofenceRequest.SerializeToString, response_deserializer=geofence_dot_geofence__pb2.UploadGeofenceResponse.FromString, ) + self.ClearGeofence = channel.unary_unary( + '/mavsdk.rpc.geofence.GeofenceService/ClearGeofence', + request_serializer=geofence_dot_geofence__pb2.ClearGeofenceRequest.SerializeToString, + response_deserializer=geofence_dot_geofence__pb2.ClearGeofenceResponse.FromString, + ) class GeofenceServiceServicer(object): @@ -37,6 +42,14 @@ def UploadGeofence(self, request, context): context.set_details('Method not implemented!') raise NotImplementedError('Method not implemented!') + def ClearGeofence(self, request, context): + """ + Clear all geofences saved on the vehicle. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + def add_GeofenceServiceServicer_to_server(servicer, server): rpc_method_handlers = { @@ -45,6 +58,11 @@ def add_GeofenceServiceServicer_to_server(servicer, server): request_deserializer=geofence_dot_geofence__pb2.UploadGeofenceRequest.FromString, response_serializer=geofence_dot_geofence__pb2.UploadGeofenceResponse.SerializeToString, ), + 'ClearGeofence': grpc.unary_unary_rpc_method_handler( + servicer.ClearGeofence, + request_deserializer=geofence_dot_geofence__pb2.ClearGeofenceRequest.FromString, + response_serializer=geofence_dot_geofence__pb2.ClearGeofenceResponse.SerializeToString, + ), } generic_handler = grpc.method_handlers_generic_handler( 'mavsdk.rpc.geofence.GeofenceService', rpc_method_handlers) @@ -72,3 +90,20 @@ def UploadGeofence(request, geofence_dot_geofence__pb2.UploadGeofenceResponse.FromString, options, channel_credentials, insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def ClearGeofence(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/mavsdk.rpc.geofence.GeofenceService/ClearGeofence', + geofence_dot_geofence__pb2.ClearGeofenceRequest.SerializeToString, + geofence_dot_geofence__pb2.ClearGeofenceResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) diff --git a/mavsdk/mission_raw_server.py b/mavsdk/mission_raw_server.py new file mode 100644 index 00000000..9360fc84 --- /dev/null +++ b/mavsdk/mission_raw_server.py @@ -0,0 +1,726 @@ +# -*- coding: utf-8 -*- +# DO NOT EDIT! This file is auto-generated from +# https://github.com/mavlink/MAVSDK-Python/tree/main/other/templates/py +from ._base import AsyncBase +from . import mission_raw_server_pb2, mission_raw_server_pb2_grpc +from enum import Enum + + +class MissionItem: + """ + Mission item exactly identical to MAVLink MISSION_ITEM_INT. + + Parameters + ---------- + seq : uint32_t + Sequence (uint16_t) + + frame : uint32_t + The coordinate system of the waypoint (actually uint8_t) + + command : uint32_t + The scheduled action for the waypoint (actually uint16_t) + + current : uint32_t + false:0, true:1 (actually uint8_t) + + autocontinue : uint32_t + Autocontinue to next waypoint (actually uint8_t) + + param1 : float + PARAM1, see MAV_CMD enum + + param2 : float + PARAM2, see MAV_CMD enum + + param3 : float + PARAM3, see MAV_CMD enum + + param4 : float + PARAM4, see MAV_CMD enum + + x : int32_t + PARAM5 / local: x position in meters * 1e4, global: latitude in degrees * 10^7 + + y : int32_t + PARAM6 / y position: local: x position in meters * 1e4, global: longitude in degrees *10^7 + + z : float + PARAM7 / local: Z coordinate, global: altitude (relative or absolute, depending on frame) + + mission_type : uint32_t + Mission type (actually uint8_t) + + """ + + + + def __init__( + self, + seq, + frame, + command, + current, + autocontinue, + param1, + param2, + param3, + param4, + x, + y, + z, + mission_type): + """ Initializes the MissionItem object """ + self.seq = seq + self.frame = frame + self.command = command + self.current = current + self.autocontinue = autocontinue + self.param1 = param1 + self.param2 = param2 + self.param3 = param3 + self.param4 = param4 + self.x = x + self.y = y + self.z = z + self.mission_type = mission_type + + def __equals__(self, to_compare): + """ Checks if two MissionItem are the same """ + try: + # Try to compare - this likely fails when it is compared to a non + # MissionItem object + return \ + (self.seq == to_compare.seq) and \ + (self.frame == to_compare.frame) and \ + (self.command == to_compare.command) and \ + (self.current == to_compare.current) and \ + (self.autocontinue == to_compare.autocontinue) and \ + (self.param1 == to_compare.param1) and \ + (self.param2 == to_compare.param2) and \ + (self.param3 == to_compare.param3) and \ + (self.param4 == to_compare.param4) and \ + (self.x == to_compare.x) and \ + (self.y == to_compare.y) and \ + (self.z == to_compare.z) and \ + (self.mission_type == to_compare.mission_type) + + except AttributeError: + return False + + def __str__(self): + """ MissionItem in string representation """ + struct_repr = ", ".join([ + "seq: " + str(self.seq), + "frame: " + str(self.frame), + "command: " + str(self.command), + "current: " + str(self.current), + "autocontinue: " + str(self.autocontinue), + "param1: " + str(self.param1), + "param2: " + str(self.param2), + "param3: " + str(self.param3), + "param4: " + str(self.param4), + "x: " + str(self.x), + "y: " + str(self.y), + "z: " + str(self.z), + "mission_type: " + str(self.mission_type) + ]) + + return f"MissionItem: [{struct_repr}]" + + @staticmethod + def translate_from_rpc(rpcMissionItem): + """ Translates a gRPC struct to the SDK equivalent """ + return MissionItem( + + rpcMissionItem.seq, + + + rpcMissionItem.frame, + + + rpcMissionItem.command, + + + rpcMissionItem.current, + + + rpcMissionItem.autocontinue, + + + rpcMissionItem.param1, + + + rpcMissionItem.param2, + + + rpcMissionItem.param3, + + + rpcMissionItem.param4, + + + rpcMissionItem.x, + + + rpcMissionItem.y, + + + rpcMissionItem.z, + + + rpcMissionItem.mission_type + ) + + def translate_to_rpc(self, rpcMissionItem): + """ Translates this SDK object into its gRPC equivalent """ + + + + + rpcMissionItem.seq = self.seq + + + + + + rpcMissionItem.frame = self.frame + + + + + + rpcMissionItem.command = self.command + + + + + + rpcMissionItem.current = self.current + + + + + + rpcMissionItem.autocontinue = self.autocontinue + + + + + + rpcMissionItem.param1 = self.param1 + + + + + + rpcMissionItem.param2 = self.param2 + + + + + + rpcMissionItem.param3 = self.param3 + + + + + + rpcMissionItem.param4 = self.param4 + + + + + + rpcMissionItem.x = self.x + + + + + + rpcMissionItem.y = self.y + + + + + + rpcMissionItem.z = self.z + + + + + + rpcMissionItem.mission_type = self.mission_type + + + + + +class MissionPlan: + """ + Mission plan type + + Parameters + ---------- + mission_items : [MissionItem] + The mission items + + """ + + + + def __init__( + self, + mission_items): + """ Initializes the MissionPlan object """ + self.mission_items = mission_items + + def __equals__(self, to_compare): + """ Checks if two MissionPlan are the same """ + try: + # Try to compare - this likely fails when it is compared to a non + # MissionPlan object + return \ + (self.mission_items == to_compare.mission_items) + + except AttributeError: + return False + + def __str__(self): + """ MissionPlan in string representation """ + struct_repr = ", ".join([ + "mission_items: " + str(self.mission_items) + ]) + + return f"MissionPlan: [{struct_repr}]" + + @staticmethod + def translate_from_rpc(rpcMissionPlan): + """ Translates a gRPC struct to the SDK equivalent """ + return MissionPlan( + + list(map(lambda elem: MissionItem.translate_from_rpc(elem), rpcMissionPlan.mission_items)) + ) + + def translate_to_rpc(self, rpcMissionPlan): + """ Translates this SDK object into its gRPC equivalent """ + + + + + rpc_elems_list = [] + for elem in self.mission_items: + + rpc_elem = mission_raw_server_pb2.MissionItem() + elem.translate_to_rpc(rpc_elem) + rpc_elems_list.append(rpc_elem) + + rpcMissionPlan.mission_items.extend(rpc_elems_list) + + + + + +class MissionProgress: + """ + Mission progress type. + + Parameters + ---------- + current : int32_t + Current mission item index (0-based), if equal to total, the mission is finished + + total : int32_t + Total number of mission items + + """ + + + + def __init__( + self, + current, + total): + """ Initializes the MissionProgress object """ + self.current = current + self.total = total + + def __equals__(self, to_compare): + """ Checks if two MissionProgress are the same """ + try: + # Try to compare - this likely fails when it is compared to a non + # MissionProgress object + return \ + (self.current == to_compare.current) and \ + (self.total == to_compare.total) + + except AttributeError: + return False + + def __str__(self): + """ MissionProgress in string representation """ + struct_repr = ", ".join([ + "current: " + str(self.current), + "total: " + str(self.total) + ]) + + return f"MissionProgress: [{struct_repr}]" + + @staticmethod + def translate_from_rpc(rpcMissionProgress): + """ Translates a gRPC struct to the SDK equivalent """ + return MissionProgress( + + rpcMissionProgress.current, + + + rpcMissionProgress.total + ) + + def translate_to_rpc(self, rpcMissionProgress): + """ Translates this SDK object into its gRPC equivalent """ + + + + + rpcMissionProgress.current = self.current + + + + + + rpcMissionProgress.total = self.total + + + + + +class MissionRawServerResult: + """ + Result type. + + Parameters + ---------- + result : Result + Result enum value + + result_str : std::string + Human-readable English string describing the result + + """ + + + + class Result(Enum): + """ + Possible results returned for action requests. + + Values + ------ + UNKNOWN + Unknown result + + SUCCESS + Request succeeded + + ERROR + Error + + TOO_MANY_MISSION_ITEMS + Too many mission items in the mission + + BUSY + Vehicle is busy + + TIMEOUT + Request timed out + + INVALID_ARGUMENT + Invalid argument + + UNSUPPORTED + Mission downloaded from the system is not supported + + NO_MISSION_AVAILABLE + No mission available on the system + + UNSUPPORTED_MISSION_CMD + Unsupported mission command + + TRANSFER_CANCELLED + Mission transfer (upload or download) has been cancelled + + NO_SYSTEM + No system connected + + NEXT + Intermediate message showing progress or instructions on the next steps + + """ + + + UNKNOWN = 0 + SUCCESS = 1 + ERROR = 2 + TOO_MANY_MISSION_ITEMS = 3 + BUSY = 4 + TIMEOUT = 5 + INVALID_ARGUMENT = 6 + UNSUPPORTED = 7 + NO_MISSION_AVAILABLE = 8 + UNSUPPORTED_MISSION_CMD = 9 + TRANSFER_CANCELLED = 10 + NO_SYSTEM = 11 + NEXT = 12 + + def translate_to_rpc(self): + if self == MissionRawServerResult.Result.UNKNOWN: + return mission_raw_server_pb2.MissionRawServerResult.RESULT_UNKNOWN + if self == MissionRawServerResult.Result.SUCCESS: + return mission_raw_server_pb2.MissionRawServerResult.RESULT_SUCCESS + if self == MissionRawServerResult.Result.ERROR: + return mission_raw_server_pb2.MissionRawServerResult.RESULT_ERROR + if self == MissionRawServerResult.Result.TOO_MANY_MISSION_ITEMS: + return mission_raw_server_pb2.MissionRawServerResult.RESULT_TOO_MANY_MISSION_ITEMS + if self == MissionRawServerResult.Result.BUSY: + return mission_raw_server_pb2.MissionRawServerResult.RESULT_BUSY + if self == MissionRawServerResult.Result.TIMEOUT: + return mission_raw_server_pb2.MissionRawServerResult.RESULT_TIMEOUT + if self == MissionRawServerResult.Result.INVALID_ARGUMENT: + return mission_raw_server_pb2.MissionRawServerResult.RESULT_INVALID_ARGUMENT + if self == MissionRawServerResult.Result.UNSUPPORTED: + return mission_raw_server_pb2.MissionRawServerResult.RESULT_UNSUPPORTED + if self == MissionRawServerResult.Result.NO_MISSION_AVAILABLE: + return mission_raw_server_pb2.MissionRawServerResult.RESULT_NO_MISSION_AVAILABLE + if self == MissionRawServerResult.Result.UNSUPPORTED_MISSION_CMD: + return mission_raw_server_pb2.MissionRawServerResult.RESULT_UNSUPPORTED_MISSION_CMD + if self == MissionRawServerResult.Result.TRANSFER_CANCELLED: + return mission_raw_server_pb2.MissionRawServerResult.RESULT_TRANSFER_CANCELLED + if self == MissionRawServerResult.Result.NO_SYSTEM: + return mission_raw_server_pb2.MissionRawServerResult.RESULT_NO_SYSTEM + if self == MissionRawServerResult.Result.NEXT: + return mission_raw_server_pb2.MissionRawServerResult.RESULT_NEXT + + @staticmethod + def translate_from_rpc(rpc_enum_value): + """ Parses a gRPC response """ + if rpc_enum_value == mission_raw_server_pb2.MissionRawServerResult.RESULT_UNKNOWN: + return MissionRawServerResult.Result.UNKNOWN + if rpc_enum_value == mission_raw_server_pb2.MissionRawServerResult.RESULT_SUCCESS: + return MissionRawServerResult.Result.SUCCESS + if rpc_enum_value == mission_raw_server_pb2.MissionRawServerResult.RESULT_ERROR: + return MissionRawServerResult.Result.ERROR + if rpc_enum_value == mission_raw_server_pb2.MissionRawServerResult.RESULT_TOO_MANY_MISSION_ITEMS: + return MissionRawServerResult.Result.TOO_MANY_MISSION_ITEMS + if rpc_enum_value == mission_raw_server_pb2.MissionRawServerResult.RESULT_BUSY: + return MissionRawServerResult.Result.BUSY + if rpc_enum_value == mission_raw_server_pb2.MissionRawServerResult.RESULT_TIMEOUT: + return MissionRawServerResult.Result.TIMEOUT + if rpc_enum_value == mission_raw_server_pb2.MissionRawServerResult.RESULT_INVALID_ARGUMENT: + return MissionRawServerResult.Result.INVALID_ARGUMENT + if rpc_enum_value == mission_raw_server_pb2.MissionRawServerResult.RESULT_UNSUPPORTED: + return MissionRawServerResult.Result.UNSUPPORTED + if rpc_enum_value == mission_raw_server_pb2.MissionRawServerResult.RESULT_NO_MISSION_AVAILABLE: + return MissionRawServerResult.Result.NO_MISSION_AVAILABLE + if rpc_enum_value == mission_raw_server_pb2.MissionRawServerResult.RESULT_UNSUPPORTED_MISSION_CMD: + return MissionRawServerResult.Result.UNSUPPORTED_MISSION_CMD + if rpc_enum_value == mission_raw_server_pb2.MissionRawServerResult.RESULT_TRANSFER_CANCELLED: + return MissionRawServerResult.Result.TRANSFER_CANCELLED + if rpc_enum_value == mission_raw_server_pb2.MissionRawServerResult.RESULT_NO_SYSTEM: + return MissionRawServerResult.Result.NO_SYSTEM + if rpc_enum_value == mission_raw_server_pb2.MissionRawServerResult.RESULT_NEXT: + return MissionRawServerResult.Result.NEXT + + def __str__(self): + return self.name + + + def __init__( + self, + result, + result_str): + """ Initializes the MissionRawServerResult object """ + self.result = result + self.result_str = result_str + + def __equals__(self, to_compare): + """ Checks if two MissionRawServerResult are the same """ + try: + # Try to compare - this likely fails when it is compared to a non + # MissionRawServerResult object + return \ + (self.result == to_compare.result) and \ + (self.result_str == to_compare.result_str) + + except AttributeError: + return False + + def __str__(self): + """ MissionRawServerResult in string representation """ + struct_repr = ", ".join([ + "result: " + str(self.result), + "result_str: " + str(self.result_str) + ]) + + return f"MissionRawServerResult: [{struct_repr}]" + + @staticmethod + def translate_from_rpc(rpcMissionRawServerResult): + """ Translates a gRPC struct to the SDK equivalent """ + return MissionRawServerResult( + + MissionRawServerResult.Result.translate_from_rpc(rpcMissionRawServerResult.result), + + + rpcMissionRawServerResult.result_str + ) + + def translate_to_rpc(self, rpcMissionRawServerResult): + """ Translates this SDK object into its gRPC equivalent """ + + + + + rpcMissionRawServerResult.result = self.result.translate_to_rpc() + + + + + + rpcMissionRawServerResult.result_str = self.result_str + + + + + + +class MissionRawServerError(Exception): + """ Raised when a MissionRawServerResult is a fail code """ + + def __init__(self, result, origin, *params): + self._result = result + self._origin = origin + self._params = params + + def __str__(self): + return f"{self._result.result}: '{self._result.result_str}'; origin: {self._origin}; params: {self._params}" + + +class MissionRawServer(AsyncBase): + """ + Acts as a vehicle and receives incoming missions from GCS (in raw MAVLINK format). + Provides current mission item state, so the server can progress through missions. + + Generated by dcsdkgen - MAVSDK MissionRawServer API + """ + + # Plugin name + name = "MissionRawServer" + + def _setup_stub(self, channel): + """ Setups the api stub """ + self._stub = mission_raw_server_pb2_grpc.MissionRawServerServiceStub(channel) + + + def _extract_result(self, response): + """ Returns the response status and description """ + return MissionRawServerResult.translate_from_rpc(response.mission_raw_server_result) + + + async def incoming_mission(self): + """ + Subscribe to when a new mission is uploaded (asynchronous). + + Yields + ------- + mission_plan : MissionPlan + The mission plan + + Raises + ------ + MissionRawServerError + If the request fails. The error contains the reason for the failure. + """ + + request = mission_raw_server_pb2.SubscribeIncomingMissionRequest() + incoming_mission_stream = self._stub.SubscribeIncomingMission(request) + + try: + async for response in incoming_mission_stream: + + result = self._extract_result(response) + + success_codes = [MissionRawServerResult.Result.SUCCESS] + if 'NEXT' in [return_code.name for return_code in MissionRawServerResult.Result]: + success_codes.append(MissionRawServerResult.Result.NEXT) + + if result.result not in success_codes: + raise MissionRawServerError(result, "incoming_mission()") + + if result.result is MissionRawServerResult.Result.SUCCESS: + incoming_mission_stream.cancel(); + return + + + + yield MissionPlan.translate_from_rpc(response.mission_plan) + finally: + incoming_mission_stream.cancel() + + async def current_item_changed(self): + """ + Subscribe to when a new current item is set + + Yields + ------- + mission_item : MissionItem + + + """ + + request = mission_raw_server_pb2.SubscribeCurrentItemChangedRequest() + current_item_changed_stream = self._stub.SubscribeCurrentItemChanged(request) + + try: + async for response in current_item_changed_stream: + + + + yield MissionItem.translate_from_rpc(response.mission_item) + finally: + current_item_changed_stream.cancel() + + async def set_current_item_complete(self): + """ + Set Current item as completed + + + """ + + request = mission_raw_server_pb2.SetCurrentItemCompleteRequest() + response = await self._stub.SetCurrentItemComplete(request) + + + + async def clear_all(self): + """ + Subscribe when a MISSION_CLEAR_ALL is received + + Yields + ------- + clear_type : uint32_t + + + """ + + request = mission_raw_server_pb2.SubscribeClearAllRequest() + clear_all_stream = self._stub.SubscribeClearAll(request) + + try: + async for response in clear_all_stream: + + + + yield response.clear_type + finally: + clear_all_stream.cancel() \ No newline at end of file diff --git a/mavsdk/mission_raw_server_pb2.py b/mavsdk/mission_raw_server_pb2.py new file mode 100644 index 00000000..47a4d966 --- /dev/null +++ b/mavsdk/mission_raw_server_pb2.py @@ -0,0 +1,726 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: mission_raw_server/mission_raw_server.proto +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import message as _message +from google.protobuf import reflection as _reflection +from google.protobuf import symbol_database as _symbol_database +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from . import mavsdk_options_pb2 as mavsdk__options__pb2 + + +DESCRIPTOR = _descriptor.FileDescriptor( + name='mission_raw_server/mission_raw_server.proto', + package='mavsdk.rpc.mission_raw_server', + syntax='proto3', + serialized_options=b'\n\034io.mavsdk.mission_raw_serverB\025MissionRawServerProto', + create_key=_descriptor._internal_create_key, + serialized_pb=b'\n+mission_raw_server/mission_raw_server.proto\x12\x1dmavsdk.rpc.mission_raw_server\x1a\x14mavsdk_options.proto\"!\n\x1fSubscribeIncomingMissionRequest\"\xb5\x01\n\x17IncomingMissionResponse\x12X\n\x19mission_raw_server_result\x18\x01 \x01(\x0b\x32\x35.mavsdk.rpc.mission_raw_server.MissionRawServerResult\x12@\n\x0cmission_plan\x18\x02 \x01(\x0b\x32*.mavsdk.rpc.mission_raw_server.MissionPlan\"$\n\"SubscribeCurrentItemChangedRequest\"^\n\x1a\x43urrentItemChangedResponse\x12@\n\x0cmission_item\x18\x01 \x01(\x0b\x32*.mavsdk.rpc.mission_raw_server.MissionItem\"\x1a\n\x18SubscribeClearAllRequest\"&\n\x10\x43learAllResponse\x12\x12\n\nclear_type\x18\x01 \x01(\r\"\x1f\n\x1dSetCurrentItemCompleteRequest\" \n\x1eSetCurrentItemCompleteResponse\"\xd8\x01\n\x0bMissionItem\x12\x0b\n\x03seq\x18\x01 \x01(\r\x12\r\n\x05\x66rame\x18\x02 \x01(\r\x12\x0f\n\x07\x63ommand\x18\x03 \x01(\r\x12\x0f\n\x07\x63urrent\x18\x04 \x01(\r\x12\x14\n\x0c\x61utocontinue\x18\x05 \x01(\r\x12\x0e\n\x06param1\x18\x06 \x01(\x02\x12\x0e\n\x06param2\x18\x07 \x01(\x02\x12\x0e\n\x06param3\x18\x08 \x01(\x02\x12\x0e\n\x06param4\x18\t \x01(\x02\x12\t\n\x01x\x18\n \x01(\x05\x12\t\n\x01y\x18\x0b \x01(\x05\x12\t\n\x01z\x18\x0c \x01(\x02\x12\x14\n\x0cmission_type\x18\r \x01(\r\"P\n\x0bMissionPlan\x12\x41\n\rmission_items\x18\x01 \x03(\x0b\x32*.mavsdk.rpc.mission_raw_server.MissionItem\"1\n\x0fMissionProgress\x12\x0f\n\x07\x63urrent\x18\x01 \x01(\x05\x12\r\n\x05total\x18\x02 \x01(\x05\"\xc7\x03\n\x16MissionRawServerResult\x12L\n\x06result\x18\x01 \x01(\x0e\x32<.mavsdk.rpc.mission_raw_server.MissionRawServerResult.Result\x12\x12\n\nresult_str\x18\x02 \x01(\t\"\xca\x02\n\x06Result\x12\x12\n\x0eRESULT_UNKNOWN\x10\x00\x12\x12\n\x0eRESULT_SUCCESS\x10\x01\x12\x10\n\x0cRESULT_ERROR\x10\x02\x12!\n\x1dRESULT_TOO_MANY_MISSION_ITEMS\x10\x03\x12\x0f\n\x0bRESULT_BUSY\x10\x04\x12\x12\n\x0eRESULT_TIMEOUT\x10\x05\x12\x1b\n\x17RESULT_INVALID_ARGUMENT\x10\x06\x12\x16\n\x12RESULT_UNSUPPORTED\x10\x07\x12\x1f\n\x1bRESULT_NO_MISSION_AVAILABLE\x10\x08\x12\"\n\x1eRESULT_UNSUPPORTED_MISSION_CMD\x10\x0b\x12\x1d\n\x19RESULT_TRANSFER_CANCELLED\x10\x0c\x12\x14\n\x10RESULT_NO_SYSTEM\x10\r\x12\x0f\n\x0bRESULT_NEXT\x10\x0e\x32\xf6\x04\n\x17MissionRawServerService\x12\x96\x01\n\x18SubscribeIncomingMission\x12>.mavsdk.rpc.mission_raw_server.SubscribeIncomingMissionRequest\x1a\x36.mavsdk.rpc.mission_raw_server.IncomingMissionResponse\"\x00\x30\x01\x12\x9f\x01\n\x1bSubscribeCurrentItemChanged\x12\x41.mavsdk.rpc.mission_raw_server.SubscribeCurrentItemChangedRequest\x1a\x39.mavsdk.rpc.mission_raw_server.CurrentItemChangedResponse\"\x00\x30\x01\x12\x9b\x01\n\x16SetCurrentItemComplete\x12<.mavsdk.rpc.mission_raw_server.SetCurrentItemCompleteRequest\x1a=.mavsdk.rpc.mission_raw_server.SetCurrentItemCompleteResponse\"\x04\x80\xb5\x18\x01\x12\x81\x01\n\x11SubscribeClearAll\x12\x37.mavsdk.rpc.mission_raw_server.SubscribeClearAllRequest\x1a/.mavsdk.rpc.mission_raw_server.ClearAllResponse\"\x00\x30\x01\x42\x35\n\x1cio.mavsdk.mission_raw_serverB\x15MissionRawServerProtob\x06proto3' + , + dependencies=[mavsdk__options__pb2.DESCRIPTOR,]) + + + +_MISSIONRAWSERVERRESULT_RESULT = _descriptor.EnumDescriptor( + name='Result', + full_name='mavsdk.rpc.mission_raw_server.MissionRawServerResult.Result', + filename=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, + values=[ + _descriptor.EnumValueDescriptor( + name='RESULT_UNKNOWN', index=0, number=0, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='RESULT_SUCCESS', index=1, number=1, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='RESULT_ERROR', index=2, number=2, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='RESULT_TOO_MANY_MISSION_ITEMS', index=3, number=3, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='RESULT_BUSY', index=4, number=4, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='RESULT_TIMEOUT', index=5, number=5, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='RESULT_INVALID_ARGUMENT', index=6, number=6, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='RESULT_UNSUPPORTED', index=7, number=7, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='RESULT_NO_MISSION_AVAILABLE', index=8, number=8, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='RESULT_UNSUPPORTED_MISSION_CMD', index=9, number=11, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='RESULT_TRANSFER_CANCELLED', index=10, number=12, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='RESULT_NO_SYSTEM', index=11, number=13, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='RESULT_NEXT', index=12, number=14, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + ], + containing_type=None, + serialized_options=None, + serialized_start=1066, + serialized_end=1396, +) +_sym_db.RegisterEnumDescriptor(_MISSIONRAWSERVERRESULT_RESULT) + + +_SUBSCRIBEINCOMINGMISSIONREQUEST = _descriptor.Descriptor( + name='SubscribeIncomingMissionRequest', + full_name='mavsdk.rpc.mission_raw_server.SubscribeIncomingMissionRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=100, + serialized_end=133, +) + + +_INCOMINGMISSIONRESPONSE = _descriptor.Descriptor( + name='IncomingMissionResponse', + full_name='mavsdk.rpc.mission_raw_server.IncomingMissionResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='mission_raw_server_result', full_name='mavsdk.rpc.mission_raw_server.IncomingMissionResponse.mission_raw_server_result', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='mission_plan', full_name='mavsdk.rpc.mission_raw_server.IncomingMissionResponse.mission_plan', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=136, + serialized_end=317, +) + + +_SUBSCRIBECURRENTITEMCHANGEDREQUEST = _descriptor.Descriptor( + name='SubscribeCurrentItemChangedRequest', + full_name='mavsdk.rpc.mission_raw_server.SubscribeCurrentItemChangedRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=319, + serialized_end=355, +) + + +_CURRENTITEMCHANGEDRESPONSE = _descriptor.Descriptor( + name='CurrentItemChangedResponse', + full_name='mavsdk.rpc.mission_raw_server.CurrentItemChangedResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='mission_item', full_name='mavsdk.rpc.mission_raw_server.CurrentItemChangedResponse.mission_item', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=357, + serialized_end=451, +) + + +_SUBSCRIBECLEARALLREQUEST = _descriptor.Descriptor( + name='SubscribeClearAllRequest', + full_name='mavsdk.rpc.mission_raw_server.SubscribeClearAllRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=453, + serialized_end=479, +) + + +_CLEARALLRESPONSE = _descriptor.Descriptor( + name='ClearAllResponse', + full_name='mavsdk.rpc.mission_raw_server.ClearAllResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='clear_type', full_name='mavsdk.rpc.mission_raw_server.ClearAllResponse.clear_type', index=0, + number=1, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=481, + serialized_end=519, +) + + +_SETCURRENTITEMCOMPLETEREQUEST = _descriptor.Descriptor( + name='SetCurrentItemCompleteRequest', + full_name='mavsdk.rpc.mission_raw_server.SetCurrentItemCompleteRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=521, + serialized_end=552, +) + + +_SETCURRENTITEMCOMPLETERESPONSE = _descriptor.Descriptor( + name='SetCurrentItemCompleteResponse', + full_name='mavsdk.rpc.mission_raw_server.SetCurrentItemCompleteResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=554, + serialized_end=586, +) + + +_MISSIONITEM = _descriptor.Descriptor( + name='MissionItem', + full_name='mavsdk.rpc.mission_raw_server.MissionItem', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='seq', full_name='mavsdk.rpc.mission_raw_server.MissionItem.seq', index=0, + number=1, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='frame', full_name='mavsdk.rpc.mission_raw_server.MissionItem.frame', index=1, + number=2, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='command', full_name='mavsdk.rpc.mission_raw_server.MissionItem.command', index=2, + number=3, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='current', full_name='mavsdk.rpc.mission_raw_server.MissionItem.current', index=3, + number=4, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='autocontinue', full_name='mavsdk.rpc.mission_raw_server.MissionItem.autocontinue', index=4, + number=5, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='param1', full_name='mavsdk.rpc.mission_raw_server.MissionItem.param1', index=5, + number=6, type=2, cpp_type=6, label=1, + has_default_value=False, default_value=float(0), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='param2', full_name='mavsdk.rpc.mission_raw_server.MissionItem.param2', index=6, + number=7, type=2, cpp_type=6, label=1, + has_default_value=False, default_value=float(0), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='param3', full_name='mavsdk.rpc.mission_raw_server.MissionItem.param3', index=7, + number=8, type=2, cpp_type=6, label=1, + has_default_value=False, default_value=float(0), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='param4', full_name='mavsdk.rpc.mission_raw_server.MissionItem.param4', index=8, + number=9, type=2, cpp_type=6, label=1, + has_default_value=False, default_value=float(0), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='x', full_name='mavsdk.rpc.mission_raw_server.MissionItem.x', index=9, + number=10, type=5, cpp_type=1, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='y', full_name='mavsdk.rpc.mission_raw_server.MissionItem.y', index=10, + number=11, type=5, cpp_type=1, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='z', full_name='mavsdk.rpc.mission_raw_server.MissionItem.z', index=11, + number=12, type=2, cpp_type=6, label=1, + has_default_value=False, default_value=float(0), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='mission_type', full_name='mavsdk.rpc.mission_raw_server.MissionItem.mission_type', index=12, + number=13, type=13, cpp_type=3, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=589, + serialized_end=805, +) + + +_MISSIONPLAN = _descriptor.Descriptor( + name='MissionPlan', + full_name='mavsdk.rpc.mission_raw_server.MissionPlan', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='mission_items', full_name='mavsdk.rpc.mission_raw_server.MissionPlan.mission_items', index=0, + number=1, type=11, cpp_type=10, label=3, + has_default_value=False, default_value=[], + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=807, + serialized_end=887, +) + + +_MISSIONPROGRESS = _descriptor.Descriptor( + name='MissionProgress', + full_name='mavsdk.rpc.mission_raw_server.MissionProgress', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='current', full_name='mavsdk.rpc.mission_raw_server.MissionProgress.current', index=0, + number=1, type=5, cpp_type=1, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='total', full_name='mavsdk.rpc.mission_raw_server.MissionProgress.total', index=1, + number=2, type=5, cpp_type=1, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=889, + serialized_end=938, +) + + +_MISSIONRAWSERVERRESULT = _descriptor.Descriptor( + name='MissionRawServerResult', + full_name='mavsdk.rpc.mission_raw_server.MissionRawServerResult', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='result', full_name='mavsdk.rpc.mission_raw_server.MissionRawServerResult.result', index=0, + number=1, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='result_str', full_name='mavsdk.rpc.mission_raw_server.MissionRawServerResult.result_str', index=1, + number=2, type=9, cpp_type=9, label=1, + has_default_value=False, default_value=b"".decode('utf-8'), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + _MISSIONRAWSERVERRESULT_RESULT, + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=941, + serialized_end=1396, +) + +_INCOMINGMISSIONRESPONSE.fields_by_name['mission_raw_server_result'].message_type = _MISSIONRAWSERVERRESULT +_INCOMINGMISSIONRESPONSE.fields_by_name['mission_plan'].message_type = _MISSIONPLAN +_CURRENTITEMCHANGEDRESPONSE.fields_by_name['mission_item'].message_type = _MISSIONITEM +_MISSIONPLAN.fields_by_name['mission_items'].message_type = _MISSIONITEM +_MISSIONRAWSERVERRESULT.fields_by_name['result'].enum_type = _MISSIONRAWSERVERRESULT_RESULT +_MISSIONRAWSERVERRESULT_RESULT.containing_type = _MISSIONRAWSERVERRESULT +DESCRIPTOR.message_types_by_name['SubscribeIncomingMissionRequest'] = _SUBSCRIBEINCOMINGMISSIONREQUEST +DESCRIPTOR.message_types_by_name['IncomingMissionResponse'] = _INCOMINGMISSIONRESPONSE +DESCRIPTOR.message_types_by_name['SubscribeCurrentItemChangedRequest'] = _SUBSCRIBECURRENTITEMCHANGEDREQUEST +DESCRIPTOR.message_types_by_name['CurrentItemChangedResponse'] = _CURRENTITEMCHANGEDRESPONSE +DESCRIPTOR.message_types_by_name['SubscribeClearAllRequest'] = _SUBSCRIBECLEARALLREQUEST +DESCRIPTOR.message_types_by_name['ClearAllResponse'] = _CLEARALLRESPONSE +DESCRIPTOR.message_types_by_name['SetCurrentItemCompleteRequest'] = _SETCURRENTITEMCOMPLETEREQUEST +DESCRIPTOR.message_types_by_name['SetCurrentItemCompleteResponse'] = _SETCURRENTITEMCOMPLETERESPONSE +DESCRIPTOR.message_types_by_name['MissionItem'] = _MISSIONITEM +DESCRIPTOR.message_types_by_name['MissionPlan'] = _MISSIONPLAN +DESCRIPTOR.message_types_by_name['MissionProgress'] = _MISSIONPROGRESS +DESCRIPTOR.message_types_by_name['MissionRawServerResult'] = _MISSIONRAWSERVERRESULT +_sym_db.RegisterFileDescriptor(DESCRIPTOR) + +SubscribeIncomingMissionRequest = _reflection.GeneratedProtocolMessageType('SubscribeIncomingMissionRequest', (_message.Message,), { + 'DESCRIPTOR' : _SUBSCRIBEINCOMINGMISSIONREQUEST, + '__module__' : 'mission_raw_server.mission_raw_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.mission_raw_server.SubscribeIncomingMissionRequest) + }) +_sym_db.RegisterMessage(SubscribeIncomingMissionRequest) + +IncomingMissionResponse = _reflection.GeneratedProtocolMessageType('IncomingMissionResponse', (_message.Message,), { + 'DESCRIPTOR' : _INCOMINGMISSIONRESPONSE, + '__module__' : 'mission_raw_server.mission_raw_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.mission_raw_server.IncomingMissionResponse) + }) +_sym_db.RegisterMessage(IncomingMissionResponse) + +SubscribeCurrentItemChangedRequest = _reflection.GeneratedProtocolMessageType('SubscribeCurrentItemChangedRequest', (_message.Message,), { + 'DESCRIPTOR' : _SUBSCRIBECURRENTITEMCHANGEDREQUEST, + '__module__' : 'mission_raw_server.mission_raw_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.mission_raw_server.SubscribeCurrentItemChangedRequest) + }) +_sym_db.RegisterMessage(SubscribeCurrentItemChangedRequest) + +CurrentItemChangedResponse = _reflection.GeneratedProtocolMessageType('CurrentItemChangedResponse', (_message.Message,), { + 'DESCRIPTOR' : _CURRENTITEMCHANGEDRESPONSE, + '__module__' : 'mission_raw_server.mission_raw_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.mission_raw_server.CurrentItemChangedResponse) + }) +_sym_db.RegisterMessage(CurrentItemChangedResponse) + +SubscribeClearAllRequest = _reflection.GeneratedProtocolMessageType('SubscribeClearAllRequest', (_message.Message,), { + 'DESCRIPTOR' : _SUBSCRIBECLEARALLREQUEST, + '__module__' : 'mission_raw_server.mission_raw_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.mission_raw_server.SubscribeClearAllRequest) + }) +_sym_db.RegisterMessage(SubscribeClearAllRequest) + +ClearAllResponse = _reflection.GeneratedProtocolMessageType('ClearAllResponse', (_message.Message,), { + 'DESCRIPTOR' : _CLEARALLRESPONSE, + '__module__' : 'mission_raw_server.mission_raw_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.mission_raw_server.ClearAllResponse) + }) +_sym_db.RegisterMessage(ClearAllResponse) + +SetCurrentItemCompleteRequest = _reflection.GeneratedProtocolMessageType('SetCurrentItemCompleteRequest', (_message.Message,), { + 'DESCRIPTOR' : _SETCURRENTITEMCOMPLETEREQUEST, + '__module__' : 'mission_raw_server.mission_raw_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.mission_raw_server.SetCurrentItemCompleteRequest) + }) +_sym_db.RegisterMessage(SetCurrentItemCompleteRequest) + +SetCurrentItemCompleteResponse = _reflection.GeneratedProtocolMessageType('SetCurrentItemCompleteResponse', (_message.Message,), { + 'DESCRIPTOR' : _SETCURRENTITEMCOMPLETERESPONSE, + '__module__' : 'mission_raw_server.mission_raw_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.mission_raw_server.SetCurrentItemCompleteResponse) + }) +_sym_db.RegisterMessage(SetCurrentItemCompleteResponse) + +MissionItem = _reflection.GeneratedProtocolMessageType('MissionItem', (_message.Message,), { + 'DESCRIPTOR' : _MISSIONITEM, + '__module__' : 'mission_raw_server.mission_raw_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.mission_raw_server.MissionItem) + }) +_sym_db.RegisterMessage(MissionItem) + +MissionPlan = _reflection.GeneratedProtocolMessageType('MissionPlan', (_message.Message,), { + 'DESCRIPTOR' : _MISSIONPLAN, + '__module__' : 'mission_raw_server.mission_raw_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.mission_raw_server.MissionPlan) + }) +_sym_db.RegisterMessage(MissionPlan) + +MissionProgress = _reflection.GeneratedProtocolMessageType('MissionProgress', (_message.Message,), { + 'DESCRIPTOR' : _MISSIONPROGRESS, + '__module__' : 'mission_raw_server.mission_raw_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.mission_raw_server.MissionProgress) + }) +_sym_db.RegisterMessage(MissionProgress) + +MissionRawServerResult = _reflection.GeneratedProtocolMessageType('MissionRawServerResult', (_message.Message,), { + 'DESCRIPTOR' : _MISSIONRAWSERVERRESULT, + '__module__' : 'mission_raw_server.mission_raw_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.mission_raw_server.MissionRawServerResult) + }) +_sym_db.RegisterMessage(MissionRawServerResult) + + +DESCRIPTOR._options = None + +_MISSIONRAWSERVERSERVICE = _descriptor.ServiceDescriptor( + name='MissionRawServerService', + full_name='mavsdk.rpc.mission_raw_server.MissionRawServerService', + file=DESCRIPTOR, + index=0, + serialized_options=None, + create_key=_descriptor._internal_create_key, + serialized_start=1399, + serialized_end=2029, + methods=[ + _descriptor.MethodDescriptor( + name='SubscribeIncomingMission', + full_name='mavsdk.rpc.mission_raw_server.MissionRawServerService.SubscribeIncomingMission', + index=0, + containing_service=None, + input_type=_SUBSCRIBEINCOMINGMISSIONREQUEST, + output_type=_INCOMINGMISSIONRESPONSE, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='SubscribeCurrentItemChanged', + full_name='mavsdk.rpc.mission_raw_server.MissionRawServerService.SubscribeCurrentItemChanged', + index=1, + containing_service=None, + input_type=_SUBSCRIBECURRENTITEMCHANGEDREQUEST, + output_type=_CURRENTITEMCHANGEDRESPONSE, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='SetCurrentItemComplete', + full_name='mavsdk.rpc.mission_raw_server.MissionRawServerService.SetCurrentItemComplete', + index=2, + containing_service=None, + input_type=_SETCURRENTITEMCOMPLETEREQUEST, + output_type=_SETCURRENTITEMCOMPLETERESPONSE, + serialized_options=b'\200\265\030\001', + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='SubscribeClearAll', + full_name='mavsdk.rpc.mission_raw_server.MissionRawServerService.SubscribeClearAll', + index=3, + containing_service=None, + input_type=_SUBSCRIBECLEARALLREQUEST, + output_type=_CLEARALLRESPONSE, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), +]) +_sym_db.RegisterServiceDescriptor(_MISSIONRAWSERVERSERVICE) + +DESCRIPTOR.services_by_name['MissionRawServerService'] = _MISSIONRAWSERVERSERVICE + +# @@protoc_insertion_point(module_scope) diff --git a/mavsdk/mission_raw_server_pb2_grpc.py b/mavsdk/mission_raw_server_pb2_grpc.py new file mode 100644 index 00000000..30e948c8 --- /dev/null +++ b/mavsdk/mission_raw_server_pb2_grpc.py @@ -0,0 +1,179 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc + +from . import mission_raw_server_pb2 as mission__raw__server_dot_mission__raw__server__pb2 + + +class MissionRawServerServiceStub(object): + """Acts as a vehicle and receives incoming missions from GCS (in raw MAVLINK format). + Provides current mission item state, so the server can progress through missions. + """ + + def __init__(self, channel): + """Constructor. + + Args: + channel: A grpc.Channel. + """ + self.SubscribeIncomingMission = channel.unary_stream( + '/mavsdk.rpc.mission_raw_server.MissionRawServerService/SubscribeIncomingMission', + request_serializer=mission__raw__server_dot_mission__raw__server__pb2.SubscribeIncomingMissionRequest.SerializeToString, + response_deserializer=mission__raw__server_dot_mission__raw__server__pb2.IncomingMissionResponse.FromString, + ) + self.SubscribeCurrentItemChanged = channel.unary_stream( + '/mavsdk.rpc.mission_raw_server.MissionRawServerService/SubscribeCurrentItemChanged', + request_serializer=mission__raw__server_dot_mission__raw__server__pb2.SubscribeCurrentItemChangedRequest.SerializeToString, + response_deserializer=mission__raw__server_dot_mission__raw__server__pb2.CurrentItemChangedResponse.FromString, + ) + self.SetCurrentItemComplete = channel.unary_unary( + '/mavsdk.rpc.mission_raw_server.MissionRawServerService/SetCurrentItemComplete', + request_serializer=mission__raw__server_dot_mission__raw__server__pb2.SetCurrentItemCompleteRequest.SerializeToString, + response_deserializer=mission__raw__server_dot_mission__raw__server__pb2.SetCurrentItemCompleteResponse.FromString, + ) + self.SubscribeClearAll = channel.unary_stream( + '/mavsdk.rpc.mission_raw_server.MissionRawServerService/SubscribeClearAll', + request_serializer=mission__raw__server_dot_mission__raw__server__pb2.SubscribeClearAllRequest.SerializeToString, + response_deserializer=mission__raw__server_dot_mission__raw__server__pb2.ClearAllResponse.FromString, + ) + + +class MissionRawServerServiceServicer(object): + """Acts as a vehicle and receives incoming missions from GCS (in raw MAVLINK format). + Provides current mission item state, so the server can progress through missions. + """ + + def SubscribeIncomingMission(self, request, context): + """ + Subscribe to when a new mission is uploaded (asynchronous). + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def SubscribeCurrentItemChanged(self, request, context): + """ + Subscribe to when a new current item is set + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def SetCurrentItemComplete(self, request, context): + """ + Set Current item as completed + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + def SubscribeClearAll(self, request, context): + """ + Subscribe when a MISSION_CLEAR_ALL is received + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + + +def add_MissionRawServerServiceServicer_to_server(servicer, server): + rpc_method_handlers = { + 'SubscribeIncomingMission': grpc.unary_stream_rpc_method_handler( + servicer.SubscribeIncomingMission, + request_deserializer=mission__raw__server_dot_mission__raw__server__pb2.SubscribeIncomingMissionRequest.FromString, + response_serializer=mission__raw__server_dot_mission__raw__server__pb2.IncomingMissionResponse.SerializeToString, + ), + 'SubscribeCurrentItemChanged': grpc.unary_stream_rpc_method_handler( + servicer.SubscribeCurrentItemChanged, + request_deserializer=mission__raw__server_dot_mission__raw__server__pb2.SubscribeCurrentItemChangedRequest.FromString, + response_serializer=mission__raw__server_dot_mission__raw__server__pb2.CurrentItemChangedResponse.SerializeToString, + ), + 'SetCurrentItemComplete': grpc.unary_unary_rpc_method_handler( + servicer.SetCurrentItemComplete, + request_deserializer=mission__raw__server_dot_mission__raw__server__pb2.SetCurrentItemCompleteRequest.FromString, + response_serializer=mission__raw__server_dot_mission__raw__server__pb2.SetCurrentItemCompleteResponse.SerializeToString, + ), + 'SubscribeClearAll': grpc.unary_stream_rpc_method_handler( + servicer.SubscribeClearAll, + request_deserializer=mission__raw__server_dot_mission__raw__server__pb2.SubscribeClearAllRequest.FromString, + response_serializer=mission__raw__server_dot_mission__raw__server__pb2.ClearAllResponse.SerializeToString, + ), + } + generic_handler = grpc.method_handlers_generic_handler( + 'mavsdk.rpc.mission_raw_server.MissionRawServerService', rpc_method_handlers) + server.add_generic_rpc_handlers((generic_handler,)) + + + # This class is part of an EXPERIMENTAL API. +class MissionRawServerService(object): + """Acts as a vehicle and receives incoming missions from GCS (in raw MAVLINK format). + Provides current mission item state, so the server can progress through missions. + """ + + @staticmethod + def SubscribeIncomingMission(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_stream(request, target, '/mavsdk.rpc.mission_raw_server.MissionRawServerService/SubscribeIncomingMission', + mission__raw__server_dot_mission__raw__server__pb2.SubscribeIncomingMissionRequest.SerializeToString, + mission__raw__server_dot_mission__raw__server__pb2.IncomingMissionResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def SubscribeCurrentItemChanged(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_stream(request, target, '/mavsdk.rpc.mission_raw_server.MissionRawServerService/SubscribeCurrentItemChanged', + mission__raw__server_dot_mission__raw__server__pb2.SubscribeCurrentItemChangedRequest.SerializeToString, + mission__raw__server_dot_mission__raw__server__pb2.CurrentItemChangedResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def SetCurrentItemComplete(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/mavsdk.rpc.mission_raw_server.MissionRawServerService/SetCurrentItemComplete', + mission__raw__server_dot_mission__raw__server__pb2.SetCurrentItemCompleteRequest.SerializeToString, + mission__raw__server_dot_mission__raw__server__pb2.SetCurrentItemCompleteResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + + @staticmethod + def SubscribeClearAll(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_stream(request, target, '/mavsdk.rpc.mission_raw_server.MissionRawServerService/SubscribeClearAll', + mission__raw__server_dot_mission__raw__server__pb2.SubscribeClearAllRequest.SerializeToString, + mission__raw__server_dot_mission__raw__server__pb2.ClearAllResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) diff --git a/mavsdk/param_server_pb2.py b/mavsdk/param_server_pb2.py index 752867f7..4a4d1c63 100644 --- a/mavsdk/param_server_pb2.py +++ b/mavsdk/param_server_pb2.py @@ -20,7 +20,7 @@ syntax='proto3', serialized_options=b'\n\026io.mavsdk.param_serverB\020ParamServerProto', create_key=_descriptor._internal_create_key, - serialized_pb=b'\n\x1fparam_server/param_server.proto\x12\x17mavsdk.rpc.param_server\x1a\x14mavsdk_options.proto\"\'\n\x17RetrieveParamIntRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\"k\n\x18RetrieveParamIntResponse\x12@\n\x0cparam_result\x18\x01 \x01(\x0b\x32*.mavsdk.rpc.param_server.ParamServerResult\x12\r\n\x05value\x18\x02 \x01(\x05\"5\n\x16ProvideParamIntRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\x05\"[\n\x17ProvideParamIntResponse\x12@\n\x0cparam_result\x18\x01 \x01(\x0b\x32*.mavsdk.rpc.param_server.ParamServerResult\")\n\x19RetrieveParamFloatRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\"m\n\x1aRetrieveParamFloatResponse\x12@\n\x0cparam_result\x18\x01 \x01(\x0b\x32*.mavsdk.rpc.param_server.ParamServerResult\x12\r\n\x05value\x18\x02 \x01(\x02\"7\n\x18ProvideParamFloatRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\x02\"]\n\x19ProvideParamFloatResponse\x12@\n\x0cparam_result\x18\x01 \x01(\x0b\x32*.mavsdk.rpc.param_server.ParamServerResult\"\x1a\n\x18RetrieveAllParamsRequest\"O\n\x19RetrieveAllParamsResponse\x12\x32\n\x06params\x18\x01 \x01(\x0b\x32\".mavsdk.rpc.param_server.AllParams\"\'\n\x08IntParam\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\x05\")\n\nFloatParam\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\x02\"}\n\tAllParams\x12\x35\n\nint_params\x18\x01 \x03(\x0b\x32!.mavsdk.rpc.param_server.IntParam\x12\x39\n\x0c\x66loat_params\x18\x02 \x03(\x0b\x32#.mavsdk.rpc.param_server.FloatParam\"\xe9\x01\n\x11ParamServerResult\x12\x41\n\x06result\x18\x01 \x01(\x0e\x32\x31.mavsdk.rpc.param_server.ParamServerResult.Result\x12\x12\n\nresult_str\x18\x02 \x01(\t\"}\n\x06Result\x12\x12\n\x0eRESULT_UNKNOWN\x10\x00\x12\x12\n\x0eRESULT_SUCCESS\x10\x01\x12\x14\n\x10RESULT_NOT_FOUND\x10\x02\x12\x15\n\x11RESULT_WRONG_TYPE\x10\x03\x12\x1e\n\x1aRESULT_PARAM_NAME_TOO_LONG\x10\x04\x32\x9b\x05\n\x12ParamServerService\x12}\n\x10RetrieveParamInt\x12\x30.mavsdk.rpc.param_server.RetrieveParamIntRequest\x1a\x31.mavsdk.rpc.param_server.RetrieveParamIntResponse\"\x04\x80\xb5\x18\x01\x12z\n\x0fProvideParamInt\x12/.mavsdk.rpc.param_server.ProvideParamIntRequest\x1a\x30.mavsdk.rpc.param_server.ProvideParamIntResponse\"\x04\x80\xb5\x18\x01\x12\x83\x01\n\x12RetrieveParamFloat\x12\x32.mavsdk.rpc.param_server.RetrieveParamFloatRequest\x1a\x33.mavsdk.rpc.param_server.RetrieveParamFloatResponse\"\x04\x80\xb5\x18\x01\x12\x80\x01\n\x11ProvideParamFloat\x12\x31.mavsdk.rpc.param_server.ProvideParamFloatRequest\x1a\x32.mavsdk.rpc.param_server.ProvideParamFloatResponse\"\x04\x80\xb5\x18\x01\x12\x80\x01\n\x11RetrieveAllParams\x12\x31.mavsdk.rpc.param_server.RetrieveAllParamsRequest\x1a\x32.mavsdk.rpc.param_server.RetrieveAllParamsResponse\"\x04\x80\xb5\x18\x01\x42*\n\x16io.mavsdk.param_serverB\x10ParamServerProtob\x06proto3' + serialized_pb=b'\n\x1fparam_server/param_server.proto\x12\x17mavsdk.rpc.param_server\x1a\x14mavsdk_options.proto\"\'\n\x17RetrieveParamIntRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\"r\n\x18RetrieveParamIntResponse\x12G\n\x13param_server_result\x18\x01 \x01(\x0b\x32*.mavsdk.rpc.param_server.ParamServerResult\x12\r\n\x05value\x18\x02 \x01(\x05\"5\n\x16ProvideParamIntRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\x05\"b\n\x17ProvideParamIntResponse\x12G\n\x13param_server_result\x18\x01 \x01(\x0b\x32*.mavsdk.rpc.param_server.ParamServerResult\")\n\x19RetrieveParamFloatRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\"t\n\x1aRetrieveParamFloatResponse\x12G\n\x13param_server_result\x18\x01 \x01(\x0b\x32*.mavsdk.rpc.param_server.ParamServerResult\x12\r\n\x05value\x18\x02 \x01(\x02\"7\n\x18ProvideParamFloatRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\x02\"d\n\x19ProvideParamFloatResponse\x12G\n\x13param_server_result\x18\x01 \x01(\x0b\x32*.mavsdk.rpc.param_server.ParamServerResult\"\x1a\n\x18RetrieveAllParamsRequest\"O\n\x19RetrieveAllParamsResponse\x12\x32\n\x06params\x18\x01 \x01(\x0b\x32\".mavsdk.rpc.param_server.AllParams\"\'\n\x08IntParam\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\x05\")\n\nFloatParam\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\x02\"}\n\tAllParams\x12\x35\n\nint_params\x18\x01 \x03(\x0b\x32!.mavsdk.rpc.param_server.IntParam\x12\x39\n\x0c\x66loat_params\x18\x02 \x03(\x0b\x32#.mavsdk.rpc.param_server.FloatParam\"\xe9\x01\n\x11ParamServerResult\x12\x41\n\x06result\x18\x01 \x01(\x0e\x32\x31.mavsdk.rpc.param_server.ParamServerResult.Result\x12\x12\n\nresult_str\x18\x02 \x01(\t\"}\n\x06Result\x12\x12\n\x0eRESULT_UNKNOWN\x10\x00\x12\x12\n\x0eRESULT_SUCCESS\x10\x01\x12\x14\n\x10RESULT_NOT_FOUND\x10\x02\x12\x15\n\x11RESULT_WRONG_TYPE\x10\x03\x12\x1e\n\x1aRESULT_PARAM_NAME_TOO_LONG\x10\x04\x32\x9b\x05\n\x12ParamServerService\x12}\n\x10RetrieveParamInt\x12\x30.mavsdk.rpc.param_server.RetrieveParamIntRequest\x1a\x31.mavsdk.rpc.param_server.RetrieveParamIntResponse\"\x04\x80\xb5\x18\x01\x12z\n\x0fProvideParamInt\x12/.mavsdk.rpc.param_server.ProvideParamIntRequest\x1a\x30.mavsdk.rpc.param_server.ProvideParamIntResponse\"\x04\x80\xb5\x18\x01\x12\x83\x01\n\x12RetrieveParamFloat\x12\x32.mavsdk.rpc.param_server.RetrieveParamFloatRequest\x1a\x33.mavsdk.rpc.param_server.RetrieveParamFloatResponse\"\x04\x80\xb5\x18\x01\x12\x80\x01\n\x11ProvideParamFloat\x12\x31.mavsdk.rpc.param_server.ProvideParamFloatRequest\x1a\x32.mavsdk.rpc.param_server.ProvideParamFloatResponse\"\x04\x80\xb5\x18\x01\x12\x80\x01\n\x11RetrieveAllParams\x12\x31.mavsdk.rpc.param_server.RetrieveAllParamsRequest\x1a\x32.mavsdk.rpc.param_server.RetrieveAllParamsResponse\"\x04\x80\xb5\x18\x01\x42*\n\x16io.mavsdk.param_serverB\x10ParamServerProtob\x06proto3' , dependencies=[mavsdk__options__pb2.DESCRIPTOR,]) @@ -61,8 +61,8 @@ ], containing_type=None, serialized_options=None, - serialized_start=1115, - serialized_end=1240, + serialized_start=1143, + serialized_end=1268, ) _sym_db.RegisterEnumDescriptor(_PARAMSERVERRESULT_RESULT) @@ -108,7 +108,7 @@ create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( - name='param_result', full_name='mavsdk.rpc.param_server.RetrieveParamIntResponse.param_result', index=0, + name='param_server_result', full_name='mavsdk.rpc.param_server.RetrieveParamIntResponse.param_server_result', index=0, number=1, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, @@ -134,7 +134,7 @@ oneofs=[ ], serialized_start=123, - serialized_end=230, + serialized_end=237, ) @@ -172,8 +172,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=232, - serialized_end=285, + serialized_start=239, + serialized_end=292, ) @@ -186,7 +186,7 @@ create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( - name='param_result', full_name='mavsdk.rpc.param_server.ProvideParamIntResponse.param_result', index=0, + name='param_server_result', full_name='mavsdk.rpc.param_server.ProvideParamIntResponse.param_server_result', index=0, number=1, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, @@ -204,8 +204,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=287, - serialized_end=378, + serialized_start=294, + serialized_end=392, ) @@ -236,8 +236,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=380, - serialized_end=421, + serialized_start=394, + serialized_end=435, ) @@ -250,7 +250,7 @@ create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( - name='param_result', full_name='mavsdk.rpc.param_server.RetrieveParamFloatResponse.param_result', index=0, + name='param_server_result', full_name='mavsdk.rpc.param_server.RetrieveParamFloatResponse.param_server_result', index=0, number=1, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, @@ -275,8 +275,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=423, - serialized_end=532, + serialized_start=437, + serialized_end=553, ) @@ -314,8 +314,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=534, - serialized_end=589, + serialized_start=555, + serialized_end=610, ) @@ -328,7 +328,7 @@ create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( - name='param_result', full_name='mavsdk.rpc.param_server.ProvideParamFloatResponse.param_result', index=0, + name='param_server_result', full_name='mavsdk.rpc.param_server.ProvideParamFloatResponse.param_server_result', index=0, number=1, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, @@ -346,8 +346,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=591, - serialized_end=684, + serialized_start=612, + serialized_end=712, ) @@ -371,8 +371,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=686, - serialized_end=712, + serialized_start=714, + serialized_end=740, ) @@ -403,8 +403,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=714, - serialized_end=793, + serialized_start=742, + serialized_end=821, ) @@ -442,8 +442,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=795, - serialized_end=834, + serialized_start=823, + serialized_end=862, ) @@ -481,8 +481,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=836, - serialized_end=877, + serialized_start=864, + serialized_end=905, ) @@ -520,8 +520,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=879, - serialized_end=1004, + serialized_start=907, + serialized_end=1032, ) @@ -560,14 +560,14 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1007, - serialized_end=1240, + serialized_start=1035, + serialized_end=1268, ) -_RETRIEVEPARAMINTRESPONSE.fields_by_name['param_result'].message_type = _PARAMSERVERRESULT -_PROVIDEPARAMINTRESPONSE.fields_by_name['param_result'].message_type = _PARAMSERVERRESULT -_RETRIEVEPARAMFLOATRESPONSE.fields_by_name['param_result'].message_type = _PARAMSERVERRESULT -_PROVIDEPARAMFLOATRESPONSE.fields_by_name['param_result'].message_type = _PARAMSERVERRESULT +_RETRIEVEPARAMINTRESPONSE.fields_by_name['param_server_result'].message_type = _PARAMSERVERRESULT +_PROVIDEPARAMINTRESPONSE.fields_by_name['param_server_result'].message_type = _PARAMSERVERRESULT +_RETRIEVEPARAMFLOATRESPONSE.fields_by_name['param_server_result'].message_type = _PARAMSERVERRESULT +_PROVIDEPARAMFLOATRESPONSE.fields_by_name['param_server_result'].message_type = _PARAMSERVERRESULT _RETRIEVEALLPARAMSRESPONSE.fields_by_name['params'].message_type = _ALLPARAMS _ALLPARAMS.fields_by_name['int_params'].message_type = _INTPARAM _ALLPARAMS.fields_by_name['float_params'].message_type = _FLOATPARAM @@ -697,8 +697,8 @@ index=0, serialized_options=None, create_key=_descriptor._internal_create_key, - serialized_start=1243, - serialized_end=1910, + serialized_start=1271, + serialized_end=1938, methods=[ _descriptor.MethodDescriptor( name='RetrieveParamInt', diff --git a/mavsdk/source/plugins/action_server.rst b/mavsdk/source/plugins/action_server.rst new file mode 100644 index 00000000..954ea1bd --- /dev/null +++ b/mavsdk/source/plugins/action_server.rst @@ -0,0 +1,8 @@ +ActionServer +==== + +.. automodule:: mavsdk.action_server + :members: + :undoc-members: + :show-inheritance: + :exclude-members: translate_from_rpc, translate_to_rpc \ No newline at end of file diff --git a/mavsdk/source/plugins/index.rst b/mavsdk/source/plugins/index.rst index e61c31de..fbc1ad9f 100644 --- a/mavsdk/source/plugins/index.rst +++ b/mavsdk/source/plugins/index.rst @@ -29,3 +29,5 @@ Plugins transponder param_server telemetry_server + action_server + mission_raw_server diff --git a/mavsdk/source/plugins/mission_raw_server.rst b/mavsdk/source/plugins/mission_raw_server.rst new file mode 100644 index 00000000..b627938b --- /dev/null +++ b/mavsdk/source/plugins/mission_raw_server.rst @@ -0,0 +1,8 @@ +MissionRawServer +==== + +.. automodule:: mavsdk.mission_raw_server + :members: + :undoc-members: + :show-inheritance: + :exclude-members: translate_from_rpc, translate_to_rpc \ No newline at end of file diff --git a/mavsdk/telemetry.py b/mavsdk/telemetry.py index e29daeb8..afb17b1c 100644 --- a/mavsdk/telemetry.py +++ b/mavsdk/telemetry.py @@ -369,6 +369,66 @@ def __str__(self): return self.name +class VtolState(Enum): + """ + VTOL State enumeration + + Values + ------ + UNDEFINED + MAV is not configured as VTOL + + TRANSITION_TO_FW + VTOL is in transition from multicopter to fixed-wing + + TRANSITION_TO_MC + VTOL is in transition from fixed-wing to multicopter + + MC + VTOL is in multicopter state + + FW + VTOL is in fixed-wing state + + """ + + + UNDEFINED = 0 + TRANSITION_TO_FW = 1 + TRANSITION_TO_MC = 2 + MC = 3 + FW = 4 + + def translate_to_rpc(self): + if self == VtolState.UNDEFINED: + return telemetry_pb2.VTOL_STATE_UNDEFINED + if self == VtolState.TRANSITION_TO_FW: + return telemetry_pb2.VTOL_STATE_TRANSITION_TO_FW + if self == VtolState.TRANSITION_TO_MC: + return telemetry_pb2.VTOL_STATE_TRANSITION_TO_MC + if self == VtolState.MC: + return telemetry_pb2.VTOL_STATE_MC + if self == VtolState.FW: + return telemetry_pb2.VTOL_STATE_FW + + @staticmethod + def translate_from_rpc(rpc_enum_value): + """ Parses a gRPC response """ + if rpc_enum_value == telemetry_pb2.VTOL_STATE_UNDEFINED: + return VtolState.UNDEFINED + if rpc_enum_value == telemetry_pb2.VTOL_STATE_TRANSITION_TO_FW: + return VtolState.TRANSITION_TO_FW + if rpc_enum_value == telemetry_pb2.VTOL_STATE_TRANSITION_TO_MC: + return VtolState.TRANSITION_TO_MC + if rpc_enum_value == telemetry_pb2.VTOL_STATE_MC: + return VtolState.MC + if rpc_enum_value == telemetry_pb2.VTOL_STATE_FW: + return VtolState.FW + + def __str__(self): + return self.name + + class Position: """ Position type in global coordinates. @@ -475,6 +535,64 @@ def translate_to_rpc(self, rpcPosition): +class Heading: + """ + Heading type used for global position + + Parameters + ---------- + heading_deg : double + Heading in degrees (range: 0 to +360) + + """ + + + + def __init__( + self, + heading_deg): + """ Initializes the Heading object """ + self.heading_deg = heading_deg + + def __equals__(self, to_compare): + """ Checks if two Heading are the same """ + try: + # Try to compare - this likely fails when it is compared to a non + # Heading object + return \ + (self.heading_deg == to_compare.heading_deg) + + except AttributeError: + return False + + def __str__(self): + """ Heading in string representation """ + struct_repr = ", ".join([ + "heading_deg: " + str(self.heading_deg) + ]) + + return f"Heading: [{struct_repr}]" + + @staticmethod + def translate_from_rpc(rpcHeading): + """ Translates a gRPC struct to the SDK equivalent """ + return Heading( + + rpcHeading.heading_deg + ) + + def translate_to_rpc(self, rpcHeading): + """ Translates this SDK object into its gRPC equivalent """ + + + + + rpcHeading.heading_deg = self.heading_deg + + + + + class Quaternion: """ Quaternion type. @@ -3627,6 +3745,30 @@ async def armed(self): finally: armed_stream.cancel() + async def vtol_state(self): + """ + subscribe to vtol state Updates + + Yields + ------- + vtol_state : VtolState + The next 'vtol' state + + + """ + + request = telemetry_pb2.SubscribeVtolStateRequest() + vtol_state_stream = self._stub.SubscribeVtolState(request) + + try: + async for response in vtol_state_stream: + + + + yield VtolState.translate_from_rpc(response.vtol_state) + finally: + vtol_state_stream.cancel() + async def attitude_quaternion(self): """ Subscribe to 'attitude' updates (quaternion). @@ -4251,6 +4393,30 @@ async def scaled_pressure(self): finally: scaled_pressure_stream.cancel() + async def heading(self): + """ + Subscribe to 'Heading' updates. + + Yields + ------- + heading_deg : Heading + The next heading (yaw) in degrees + + + """ + + request = telemetry_pb2.SubscribeHeadingRequest() + heading_stream = self._stub.SubscribeHeading(request) + + try: + async for response in heading_stream: + + + + yield Heading.translate_from_rpc(response.heading_deg) + finally: + heading_stream.cancel() + async def set_rate_position(self, rate_hz): """ Set rate to 'position' updates. @@ -4355,6 +4521,32 @@ async def set_rate_landed_state(self, rate_hz): raise TelemetryError(result, "set_rate_landed_state()", rate_hz) + async def set_rate_vtol_state(self, rate_hz): + """ + Set rate to VTOL state updates + + Parameters + ---------- + rate_hz : double + The requested rate (in Hertz) + + Raises + ------ + TelemetryError + If the request fails. The error contains the reason for the failure. + """ + + request = telemetry_pb2.SetRateVtolStateRequest() + request.rate_hz = rate_hz + response = await self._stub.SetRateVtolState(request) + + + result = self._extract_result(response) + + if result.result is not TelemetryResult.Result.SUCCESS: + raise TelemetryError(result, "set_rate_vtol_state()", rate_hz) + + async def set_rate_attitude(self, rate_hz): """ Set rate to 'attitude' updates. diff --git a/mavsdk/telemetry_pb2.py b/mavsdk/telemetry_pb2.py index 3063c3b3..6d95bef1 100644 --- a/mavsdk/telemetry_pb2.py +++ b/mavsdk/telemetry_pb2.py @@ -21,7 +21,7 @@ syntax='proto3', serialized_options=b'\n\023io.mavsdk.telemetryB\016TelemetryProto', create_key=_descriptor._internal_create_key, - serialized_pb=b'\n\x19telemetry/telemetry.proto\x12\x14mavsdk.rpc.telemetry\x1a\x14mavsdk_options.proto\"\x1a\n\x18SubscribePositionRequest\"D\n\x10PositionResponse\x12\x30\n\x08position\x18\x01 \x01(\x0b\x32\x1e.mavsdk.rpc.telemetry.Position\"\x16\n\x14SubscribeHomeRequest\"<\n\x0cHomeResponse\x12,\n\x04home\x18\x01 \x01(\x0b\x32\x1e.mavsdk.rpc.telemetry.Position\"\x17\n\x15SubscribeInAirRequest\"\"\n\rInAirResponse\x12\x11\n\tis_in_air\x18\x01 \x01(\x08\"\x1d\n\x1bSubscribeLandedStateRequest\"N\n\x13LandedStateResponse\x12\x37\n\x0clanded_state\x18\x01 \x01(\x0e\x32!.mavsdk.rpc.telemetry.LandedState\"\x17\n\x15SubscribeArmedRequest\"!\n\rArmedResponse\x12\x10\n\x08is_armed\x18\x01 \x01(\x08\"$\n\"SubscribeAttitudeQuaternionRequest\"[\n\x1a\x41ttitudeQuaternionResponse\x12=\n\x13\x61ttitude_quaternion\x18\x01 \x01(\x0b\x32 .mavsdk.rpc.telemetry.Quaternion\"\x1f\n\x1dSubscribeAttitudeEulerRequest\"Q\n\x15\x41ttitudeEulerResponse\x12\x38\n\x0e\x61ttitude_euler\x18\x01 \x01(\x0b\x32 .mavsdk.rpc.telemetry.EulerAngle\"-\n+SubscribeAttitudeAngularVelocityBodyRequest\"x\n#AttitudeAngularVelocityBodyResponse\x12Q\n\x1e\x61ttitude_angular_velocity_body\x18\x01 \x01(\x0b\x32).mavsdk.rpc.telemetry.AngularVelocityBody\"*\n(SubscribeCameraAttitudeQuaternionRequest\"a\n CameraAttitudeQuaternionResponse\x12=\n\x13\x61ttitude_quaternion\x18\x01 \x01(\x0b\x32 .mavsdk.rpc.telemetry.Quaternion\"%\n#SubscribeCameraAttitudeEulerRequest\"W\n\x1b\x43\x61meraAttitudeEulerResponse\x12\x38\n\x0e\x61ttitude_euler\x18\x01 \x01(\x0b\x32 .mavsdk.rpc.telemetry.EulerAngle\"\x1d\n\x1bSubscribeVelocityNedRequest\"N\n\x13VelocityNedResponse\x12\x37\n\x0cvelocity_ned\x18\x01 \x01(\x0b\x32!.mavsdk.rpc.telemetry.VelocityNed\"\x19\n\x17SubscribeGpsInfoRequest\"B\n\x0fGpsInfoResponse\x12/\n\x08gps_info\x18\x01 \x01(\x0b\x32\x1d.mavsdk.rpc.telemetry.GpsInfo\"\x18\n\x16SubscribeRawGpsRequest\"?\n\x0eRawGpsResponse\x12-\n\x07raw_gps\x18\x01 \x01(\x0b\x32\x1c.mavsdk.rpc.telemetry.RawGps\"\x19\n\x17SubscribeBatteryRequest\"A\n\x0f\x42\x61tteryResponse\x12.\n\x07\x62\x61ttery\x18\x01 \x01(\x0b\x32\x1d.mavsdk.rpc.telemetry.Battery\"\x1c\n\x1aSubscribeFlightModeRequest\"K\n\x12\x46lightModeResponse\x12\x35\n\x0b\x66light_mode\x18\x01 \x01(\x0e\x32 .mavsdk.rpc.telemetry.FlightMode\"\x18\n\x16SubscribeHealthRequest\">\n\x0eHealthResponse\x12,\n\x06health\x18\x01 \x01(\x0b\x32\x1c.mavsdk.rpc.telemetry.Health\"\x1a\n\x18SubscribeRcStatusRequest\"E\n\x10RcStatusResponse\x12\x31\n\trc_status\x18\x01 \x01(\x0b\x32\x1e.mavsdk.rpc.telemetry.RcStatus\"\x1c\n\x1aSubscribeStatusTextRequest\"K\n\x12StatusTextResponse\x12\x35\n\x0bstatus_text\x18\x01 \x01(\x0b\x32 .mavsdk.rpc.telemetry.StatusText\"\'\n%SubscribeActuatorControlTargetRequest\"m\n\x1d\x41\x63tuatorControlTargetResponse\x12L\n\x17\x61\x63tuator_control_target\x18\x01 \x01(\x0b\x32+.mavsdk.rpc.telemetry.ActuatorControlTarget\"&\n$SubscribeActuatorOutputStatusRequest\"j\n\x1c\x41\x63tuatorOutputStatusResponse\x12J\n\x16\x61\x63tuator_output_status\x18\x01 \x01(\x0b\x32*.mavsdk.rpc.telemetry.ActuatorOutputStatus\"\x1a\n\x18SubscribeOdometryRequest\"D\n\x10OdometryResponse\x12\x30\n\x08odometry\x18\x01 \x01(\x0b\x32\x1e.mavsdk.rpc.telemetry.Odometry\"%\n#SubscribePositionVelocityNedRequest\"g\n\x1bPositionVelocityNedResponse\x12H\n\x15position_velocity_ned\x18\x01 \x01(\x0b\x32).mavsdk.rpc.telemetry.PositionVelocityNed\"\x1d\n\x1bSubscribeGroundTruthRequest\"N\n\x13GroundTruthResponse\x12\x37\n\x0cground_truth\x18\x01 \x01(\x0b\x32!.mavsdk.rpc.telemetry.GroundTruth\"\"\n SubscribeFixedwingMetricsRequest\"]\n\x18\x46ixedwingMetricsResponse\x12\x41\n\x11\x66ixedwing_metrics\x18\x01 \x01(\x0b\x32&.mavsdk.rpc.telemetry.FixedwingMetrics\"\x15\n\x13SubscribeImuRequest\"5\n\x0bImuResponse\x12&\n\x03imu\x18\x01 \x01(\x0b\x32\x19.mavsdk.rpc.telemetry.Imu\"\x1b\n\x19SubscribeScaledImuRequest\";\n\x11ScaledImuResponse\x12&\n\x03imu\x18\x01 \x01(\x0b\x32\x19.mavsdk.rpc.telemetry.Imu\"\x18\n\x16SubscribeRawImuRequest\"8\n\x0eRawImuResponse\x12&\n\x03imu\x18\x01 \x01(\x0b\x32\x19.mavsdk.rpc.telemetry.Imu\"\x1d\n\x1bSubscribeHealthAllOkRequest\"/\n\x13HealthAllOkResponse\x12\x18\n\x10is_health_all_ok\x18\x01 \x01(\x08\"\x1f\n\x1dSubscribeUnixEpochTimeRequest\"(\n\x15UnixEpochTimeResponse\x12\x0f\n\x07time_us\x18\x01 \x01(\x04\" \n\x1eSubscribeDistanceSensorRequest\"W\n\x16\x44istanceSensorResponse\x12=\n\x0f\x64istance_sensor\x18\x01 \x01(\x0b\x32$.mavsdk.rpc.telemetry.DistanceSensor\" \n\x1eSubscribeScaledPressureRequest\"W\n\x16ScaledPressureResponse\x12=\n\x0fscaled_pressure\x18\x01 \x01(\x0b\x32$.mavsdk.rpc.telemetry.ScaledPressure\")\n\x16SetRatePositionRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"Z\n\x17SetRatePositionResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\"%\n\x12SetRateHomeRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"V\n\x13SetRateHomeResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\"&\n\x13SetRateInAirRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"W\n\x14SetRateInAirResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\",\n\x19SetRateLandedStateRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"]\n\x1aSetRateLandedStateResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\")\n\x16SetRateAttitudeRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"Z\n\x17SetRateAttitudeResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\"<\n)SetRateAttitudeAngularVelocityBodyRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"m\n*SetRateAttitudeAngularVelocityBodyResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\"9\n&SetRateCameraAttitudeQuaternionRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"j\n\'SetRateCameraAttitudeQuaternionResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\"/\n\x1cSetRateCameraAttitudeRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"`\n\x1dSetRateCameraAttitudeResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\",\n\x19SetRateVelocityNedRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"]\n\x1aSetRateVelocityNedResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\"(\n\x15SetRateGpsInfoRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"Y\n\x16SetRateGpsInfoResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\"\'\n\x14SetRateRawGpsRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"(\n\x15SetRateBatteryRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"Y\n\x16SetRateBatteryResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\")\n\x16SetRateRcStatusRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"Z\n\x17SetRateRcStatusResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\"6\n#SetRateActuatorControlTargetRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"g\n$SetRateActuatorControlTargetResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\"5\n\"SetRateActuatorOutputStatusRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"f\n#SetRateActuatorOutputStatusResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\")\n\x16SetRateOdometryRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"Z\n\x17SetRateOdometryResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\"4\n!SetRatePositionVelocityNedRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"e\n\"SetRatePositionVelocityNedResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\",\n\x19SetRateGroundTruthRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"]\n\x1aSetRateGroundTruthResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\"1\n\x1eSetRateFixedwingMetricsRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"b\n\x1fSetRateFixedwingMetricsResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\"$\n\x11SetRateImuRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"U\n\x12SetRateImuResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\"*\n\x17SetRateScaledImuRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"[\n\x18SetRateScaledImuResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\"\'\n\x14SetRateRawImuRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"X\n\x15SetRateRawImuResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\".\n\x1bSetRateUnixEpochTimeRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"_\n\x1cSetRateUnixEpochTimeResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\"/\n\x1cSetRateDistanceSensorRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"`\n\x1dSetRateDistanceSensorResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\"\x1b\n\x19GetGpsGlobalOriginRequest\"\x9f\x01\n\x1aGetGpsGlobalOriginResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\x12@\n\x11gps_global_origin\x18\x02 \x01(\x0b\x32%.mavsdk.rpc.telemetry.GpsGlobalOrigin\"\x95\x01\n\x08Position\x12\x1d\n\x0clatitude_deg\x18\x01 \x01(\x01\x42\x07\x82\xb5\x18\x03NaN\x12\x1e\n\rlongitude_deg\x18\x02 \x01(\x01\x42\x07\x82\xb5\x18\x03NaN\x12$\n\x13\x61\x62solute_altitude_m\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12$\n\x13relative_altitude_m\x18\x04 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"r\n\nQuaternion\x12\x12\n\x01w\x18\x01 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x12\n\x01x\x18\x02 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x12\n\x01y\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x12\n\x01z\x18\x04 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x14\n\x0ctimestamp_us\x18\x05 \x01(\x04\"s\n\nEulerAngle\x12\x19\n\x08roll_deg\x18\x01 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x1a\n\tpitch_deg\x18\x02 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x18\n\x07yaw_deg\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x14\n\x0ctimestamp_us\x18\x04 \x01(\x04\"l\n\x13\x41ngularVelocityBody\x12\x1b\n\nroll_rad_s\x18\x01 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x1c\n\x0bpitch_rad_s\x18\x02 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x1a\n\tyaw_rad_s\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"Y\n\x07GpsInfo\x12\x1d\n\x0enum_satellites\x18\x01 \x01(\x05\x42\x05\x82\xb5\x18\x01\x30\x12/\n\x08\x66ix_type\x18\x02 \x01(\x0e\x32\x1d.mavsdk.rpc.telemetry.FixType\"\xdf\x02\n\x06RawGps\x12\x14\n\x0ctimestamp_us\x18\x01 \x01(\x04\x12\x14\n\x0clatitude_deg\x18\x02 \x01(\x01\x12\x15\n\rlongitude_deg\x18\x03 \x01(\x01\x12\x1b\n\x13\x61\x62solute_altitude_m\x18\x04 \x01(\x02\x12\x0c\n\x04hdop\x18\x05 \x01(\x02\x12\x0c\n\x04vdop\x18\x06 \x01(\x02\x12\x14\n\x0cvelocity_m_s\x18\x07 \x01(\x02\x12\x0f\n\x07\x63og_deg\x18\x08 \x01(\x02\x12\x1c\n\x14\x61ltitude_ellipsoid_m\x18\t \x01(\x02\x12 \n\x18horizontal_uncertainty_m\x18\n \x01(\x02\x12\x1e\n\x16vertical_uncertainty_m\x18\x0b \x01(\x02\x12 \n\x18velocity_uncertainty_m_s\x18\x0c \x01(\x02\x12\x1f\n\x17heading_uncertainty_deg\x18\r \x01(\x02\x12\x0f\n\x07yaw_deg\x18\x0e \x01(\x02\"\\\n\x07\x42\x61ttery\x12\x11\n\x02id\x18\x03 \x01(\rB\x05\x82\xb5\x18\x01\x30\x12\x1a\n\tvoltage_v\x18\x01 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\"\n\x11remaining_percent\x18\x02 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"\xb9\x02\n\x06Health\x12.\n\x1bis_gyrometer_calibration_ok\x18\x01 \x01(\x08\x42\t\x82\xb5\x18\x05\x66\x61lse\x12\x32\n\x1fis_accelerometer_calibration_ok\x18\x02 \x01(\x08\x42\t\x82\xb5\x18\x05\x66\x61lse\x12\x31\n\x1eis_magnetometer_calibration_ok\x18\x03 \x01(\x08\x42\t\x82\xb5\x18\x05\x66\x61lse\x12\'\n\x14is_local_position_ok\x18\x05 \x01(\x08\x42\t\x82\xb5\x18\x05\x66\x61lse\x12(\n\x15is_global_position_ok\x18\x06 \x01(\x08\x42\t\x82\xb5\x18\x05\x66\x61lse\x12&\n\x13is_home_position_ok\x18\x07 \x01(\x08\x42\t\x82\xb5\x18\x05\x66\x61lse\x12\x1d\n\nis_armable\x18\x08 \x01(\x08\x42\t\x82\xb5\x18\x05\x66\x61lse\"|\n\x08RcStatus\x12%\n\x12was_available_once\x18\x01 \x01(\x08\x42\t\x82\xb5\x18\x05\x66\x61lse\x12\x1f\n\x0cis_available\x18\x02 \x01(\x08\x42\t\x82\xb5\x18\x05\x66\x61lse\x12(\n\x17signal_strength_percent\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"N\n\nStatusText\x12\x32\n\x04type\x18\x01 \x01(\x0e\x32$.mavsdk.rpc.telemetry.StatusTextType\x12\x0c\n\x04text\x18\x02 \x01(\t\"?\n\x15\x41\x63tuatorControlTarget\x12\x14\n\x05group\x18\x01 \x01(\x05\x42\x05\x82\xb5\x18\x01\x30\x12\x10\n\x08\x63ontrols\x18\x02 \x03(\x02\"?\n\x14\x41\x63tuatorOutputStatus\x12\x15\n\x06\x61\x63tive\x18\x01 \x01(\rB\x05\x82\xb5\x18\x01\x30\x12\x10\n\x08\x61\x63tuator\x18\x02 \x03(\x02\"\'\n\nCovariance\x12\x19\n\x11\x63ovariance_matrix\x18\x01 \x03(\x02\";\n\x0cVelocityBody\x12\r\n\x05x_m_s\x18\x01 \x01(\x02\x12\r\n\x05y_m_s\x18\x02 \x01(\x02\x12\r\n\x05z_m_s\x18\x03 \x01(\x02\"5\n\x0cPositionBody\x12\x0b\n\x03x_m\x18\x01 \x01(\x02\x12\x0b\n\x03y_m\x18\x02 \x01(\x02\x12\x0b\n\x03z_m\x18\x03 \x01(\x02\"\xec\x04\n\x08Odometry\x12\x11\n\ttime_usec\x18\x01 \x01(\x04\x12\x39\n\x08\x66rame_id\x18\x02 \x01(\x0e\x32\'.mavsdk.rpc.telemetry.Odometry.MavFrame\x12?\n\x0e\x63hild_frame_id\x18\x03 \x01(\x0e\x32\'.mavsdk.rpc.telemetry.Odometry.MavFrame\x12\x39\n\rposition_body\x18\x04 \x01(\x0b\x32\".mavsdk.rpc.telemetry.PositionBody\x12+\n\x01q\x18\x05 \x01(\x0b\x32 .mavsdk.rpc.telemetry.Quaternion\x12\x39\n\rvelocity_body\x18\x06 \x01(\x0b\x32\".mavsdk.rpc.telemetry.VelocityBody\x12H\n\x15\x61ngular_velocity_body\x18\x07 \x01(\x0b\x32).mavsdk.rpc.telemetry.AngularVelocityBody\x12\x39\n\x0fpose_covariance\x18\x08 \x01(\x0b\x32 .mavsdk.rpc.telemetry.Covariance\x12=\n\x13velocity_covariance\x18\t \x01(\x0b\x32 .mavsdk.rpc.telemetry.Covariance\"j\n\x08MavFrame\x12\x13\n\x0fMAV_FRAME_UNDEF\x10\x00\x12\x16\n\x12MAV_FRAME_BODY_NED\x10\x08\x12\x18\n\x14MAV_FRAME_VISION_NED\x10\x10\x12\x17\n\x13MAV_FRAME_ESTIM_NED\x10\x12\"\x7f\n\x0e\x44istanceSensor\x12#\n\x12minimum_distance_m\x18\x01 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12#\n\x12maximum_distance_m\x18\x02 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12#\n\x12\x63urrent_distance_m\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"\xb0\x01\n\x0eScaledPressure\x12\x14\n\x0ctimestamp_us\x18\x01 \x01(\x04\x12\x1d\n\x15\x61\x62solute_pressure_hpa\x18\x02 \x01(\x02\x12!\n\x19\x64ifferential_pressure_hpa\x18\x03 \x01(\x02\x12\x17\n\x0ftemperature_deg\x18\x04 \x01(\x02\x12-\n%differential_pressure_temperature_deg\x18\x05 \x01(\x02\"Y\n\x0bPositionNed\x12\x18\n\x07north_m\x18\x01 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x17\n\x06\x65\x61st_m\x18\x02 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x17\n\x06\x64own_m\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"D\n\x0bVelocityNed\x12\x11\n\tnorth_m_s\x18\x01 \x01(\x02\x12\x10\n\x08\x65\x61st_m_s\x18\x02 \x01(\x02\x12\x10\n\x08\x64own_m_s\x18\x03 \x01(\x02\"\x7f\n\x13PositionVelocityNed\x12\x33\n\x08position\x18\x01 \x01(\x0b\x32!.mavsdk.rpc.telemetry.PositionNed\x12\x33\n\x08velocity\x18\x02 \x01(\x0b\x32!.mavsdk.rpc.telemetry.VelocityNed\"r\n\x0bGroundTruth\x12\x1d\n\x0clatitude_deg\x18\x01 \x01(\x01\x42\x07\x82\xb5\x18\x03NaN\x12\x1e\n\rlongitude_deg\x18\x02 \x01(\x01\x42\x07\x82\xb5\x18\x03NaN\x12$\n\x13\x61\x62solute_altitude_m\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"x\n\x10\x46ixedwingMetrics\x12\x1d\n\x0c\x61irspeed_m_s\x18\x01 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12$\n\x13throttle_percentage\x18\x02 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x1f\n\x0e\x63limb_rate_m_s\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"i\n\x0f\x41\x63\x63\x65lerationFrd\x12\x1d\n\x0c\x66orward_m_s2\x18\x01 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x1b\n\nright_m_s2\x18\x02 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x1a\n\tdown_m_s2\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"o\n\x12\x41ngularVelocityFrd\x12\x1e\n\rforward_rad_s\x18\x01 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x1c\n\x0bright_rad_s\x18\x02 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x1b\n\ndown_rad_s\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"m\n\x10MagneticFieldFrd\x12\x1e\n\rforward_gauss\x18\x01 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x1c\n\x0bright_gauss\x18\x02 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x1b\n\ndown_gauss\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"\x8b\x02\n\x03Imu\x12?\n\x10\x61\x63\x63\x65leration_frd\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.AccelerationFrd\x12\x46\n\x14\x61ngular_velocity_frd\x18\x02 \x01(\x0b\x32(.mavsdk.rpc.telemetry.AngularVelocityFrd\x12\x42\n\x12magnetic_field_frd\x18\x03 \x01(\x0b\x32&.mavsdk.rpc.telemetry.MagneticFieldFrd\x12!\n\x10temperature_degc\x18\x04 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x14\n\x0ctimestamp_us\x18\x05 \x01(\x04\"m\n\x0fGpsGlobalOrigin\x12\x1d\n\x0clatitude_deg\x18\x01 \x01(\x01\x42\x07\x82\xb5\x18\x03NaN\x12\x1e\n\rlongitude_deg\x18\x02 \x01(\x01\x42\x07\x82\xb5\x18\x03NaN\x12\x1b\n\naltitude_m\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"\xa1\x02\n\x0fTelemetryResult\x12<\n\x06result\x18\x01 \x01(\x0e\x32,.mavsdk.rpc.telemetry.TelemetryResult.Result\x12\x12\n\nresult_str\x18\x02 \x01(\t\"\xbb\x01\n\x06Result\x12\x12\n\x0eRESULT_UNKNOWN\x10\x00\x12\x12\n\x0eRESULT_SUCCESS\x10\x01\x12\x14\n\x10RESULT_NO_SYSTEM\x10\x02\x12\x1b\n\x17RESULT_CONNECTION_ERROR\x10\x03\x12\x0f\n\x0bRESULT_BUSY\x10\x04\x12\x19\n\x15RESULT_COMMAND_DENIED\x10\x05\x12\x12\n\x0eRESULT_TIMEOUT\x10\x06\x12\x16\n\x12RESULT_UNSUPPORTED\x10\x07*\xa4\x01\n\x07\x46ixType\x12\x13\n\x0f\x46IX_TYPE_NO_GPS\x10\x00\x12\x13\n\x0f\x46IX_TYPE_NO_FIX\x10\x01\x12\x13\n\x0f\x46IX_TYPE_FIX_2D\x10\x02\x12\x13\n\x0f\x46IX_TYPE_FIX_3D\x10\x03\x12\x15\n\x11\x46IX_TYPE_FIX_DGPS\x10\x04\x12\x16\n\x12\x46IX_TYPE_RTK_FLOAT\x10\x05\x12\x16\n\x12\x46IX_TYPE_RTK_FIXED\x10\x06*\x86\x03\n\nFlightMode\x12\x17\n\x13\x46LIGHT_MODE_UNKNOWN\x10\x00\x12\x15\n\x11\x46LIGHT_MODE_READY\x10\x01\x12\x17\n\x13\x46LIGHT_MODE_TAKEOFF\x10\x02\x12\x14\n\x10\x46LIGHT_MODE_HOLD\x10\x03\x12\x17\n\x13\x46LIGHT_MODE_MISSION\x10\x04\x12 \n\x1c\x46LIGHT_MODE_RETURN_TO_LAUNCH\x10\x05\x12\x14\n\x10\x46LIGHT_MODE_LAND\x10\x06\x12\x18\n\x14\x46LIGHT_MODE_OFFBOARD\x10\x07\x12\x19\n\x15\x46LIGHT_MODE_FOLLOW_ME\x10\x08\x12\x16\n\x12\x46LIGHT_MODE_MANUAL\x10\t\x12\x16\n\x12\x46LIGHT_MODE_ALTCTL\x10\n\x12\x16\n\x12\x46LIGHT_MODE_POSCTL\x10\x0b\x12\x14\n\x10\x46LIGHT_MODE_ACRO\x10\x0c\x12\x1a\n\x16\x46LIGHT_MODE_STABILIZED\x10\r\x12\x19\n\x15\x46LIGHT_MODE_RATTITUDE\x10\x0e*\xf9\x01\n\x0eStatusTextType\x12\x1a\n\x16STATUS_TEXT_TYPE_DEBUG\x10\x00\x12\x19\n\x15STATUS_TEXT_TYPE_INFO\x10\x01\x12\x1b\n\x17STATUS_TEXT_TYPE_NOTICE\x10\x02\x12\x1c\n\x18STATUS_TEXT_TYPE_WARNING\x10\x03\x12\x1a\n\x16STATUS_TEXT_TYPE_ERROR\x10\x04\x12\x1d\n\x19STATUS_TEXT_TYPE_CRITICAL\x10\x05\x12\x1a\n\x16STATUS_TEXT_TYPE_ALERT\x10\x06\x12\x1e\n\x1aSTATUS_TEXT_TYPE_EMERGENCY\x10\x07*\x93\x01\n\x0bLandedState\x12\x18\n\x14LANDED_STATE_UNKNOWN\x10\x00\x12\x1a\n\x16LANDED_STATE_ON_GROUND\x10\x01\x12\x17\n\x13LANDED_STATE_IN_AIR\x10\x02\x12\x1b\n\x17LANDED_STATE_TAKING_OFF\x10\x03\x12\x18\n\x14LANDED_STATE_LANDING\x10\x04\x32\xa7\x33\n\x10TelemetryService\x12o\n\x11SubscribePosition\x12..mavsdk.rpc.telemetry.SubscribePositionRequest\x1a&.mavsdk.rpc.telemetry.PositionResponse\"\x00\x30\x01\x12\x63\n\rSubscribeHome\x12*.mavsdk.rpc.telemetry.SubscribeHomeRequest\x1a\".mavsdk.rpc.telemetry.HomeResponse\"\x00\x30\x01\x12\x66\n\x0eSubscribeInAir\x12+.mavsdk.rpc.telemetry.SubscribeInAirRequest\x1a#.mavsdk.rpc.telemetry.InAirResponse\"\x00\x30\x01\x12x\n\x14SubscribeLandedState\x12\x31.mavsdk.rpc.telemetry.SubscribeLandedStateRequest\x1a).mavsdk.rpc.telemetry.LandedStateResponse\"\x00\x30\x01\x12\x66\n\x0eSubscribeArmed\x12+.mavsdk.rpc.telemetry.SubscribeArmedRequest\x1a#.mavsdk.rpc.telemetry.ArmedResponse\"\x00\x30\x01\x12\x8d\x01\n\x1bSubscribeAttitudeQuaternion\x12\x38.mavsdk.rpc.telemetry.SubscribeAttitudeQuaternionRequest\x1a\x30.mavsdk.rpc.telemetry.AttitudeQuaternionResponse\"\x00\x30\x01\x12~\n\x16SubscribeAttitudeEuler\x12\x33.mavsdk.rpc.telemetry.SubscribeAttitudeEulerRequest\x1a+.mavsdk.rpc.telemetry.AttitudeEulerResponse\"\x00\x30\x01\x12\xa8\x01\n$SubscribeAttitudeAngularVelocityBody\x12\x41.mavsdk.rpc.telemetry.SubscribeAttitudeAngularVelocityBodyRequest\x1a\x39.mavsdk.rpc.telemetry.AttitudeAngularVelocityBodyResponse\"\x00\x30\x01\x12\x9f\x01\n!SubscribeCameraAttitudeQuaternion\x12>.mavsdk.rpc.telemetry.SubscribeCameraAttitudeQuaternionRequest\x1a\x36.mavsdk.rpc.telemetry.CameraAttitudeQuaternionResponse\"\x00\x30\x01\x12\x90\x01\n\x1cSubscribeCameraAttitudeEuler\x12\x39.mavsdk.rpc.telemetry.SubscribeCameraAttitudeEulerRequest\x1a\x31.mavsdk.rpc.telemetry.CameraAttitudeEulerResponse\"\x00\x30\x01\x12x\n\x14SubscribeVelocityNed\x12\x31.mavsdk.rpc.telemetry.SubscribeVelocityNedRequest\x1a).mavsdk.rpc.telemetry.VelocityNedResponse\"\x00\x30\x01\x12l\n\x10SubscribeGpsInfo\x12-.mavsdk.rpc.telemetry.SubscribeGpsInfoRequest\x1a%.mavsdk.rpc.telemetry.GpsInfoResponse\"\x00\x30\x01\x12i\n\x0fSubscribeRawGps\x12,.mavsdk.rpc.telemetry.SubscribeRawGpsRequest\x1a$.mavsdk.rpc.telemetry.RawGpsResponse\"\x00\x30\x01\x12l\n\x10SubscribeBattery\x12-.mavsdk.rpc.telemetry.SubscribeBatteryRequest\x1a%.mavsdk.rpc.telemetry.BatteryResponse\"\x00\x30\x01\x12u\n\x13SubscribeFlightMode\x12\x30.mavsdk.rpc.telemetry.SubscribeFlightModeRequest\x1a(.mavsdk.rpc.telemetry.FlightModeResponse\"\x00\x30\x01\x12i\n\x0fSubscribeHealth\x12,.mavsdk.rpc.telemetry.SubscribeHealthRequest\x1a$.mavsdk.rpc.telemetry.HealthResponse\"\x00\x30\x01\x12o\n\x11SubscribeRcStatus\x12..mavsdk.rpc.telemetry.SubscribeRcStatusRequest\x1a&.mavsdk.rpc.telemetry.RcStatusResponse\"\x00\x30\x01\x12u\n\x13SubscribeStatusText\x12\x30.mavsdk.rpc.telemetry.SubscribeStatusTextRequest\x1a(.mavsdk.rpc.telemetry.StatusTextResponse\"\x00\x30\x01\x12\x96\x01\n\x1eSubscribeActuatorControlTarget\x12;.mavsdk.rpc.telemetry.SubscribeActuatorControlTargetRequest\x1a\x33.mavsdk.rpc.telemetry.ActuatorControlTargetResponse\"\x00\x30\x01\x12\x93\x01\n\x1dSubscribeActuatorOutputStatus\x12:.mavsdk.rpc.telemetry.SubscribeActuatorOutputStatusRequest\x1a\x32.mavsdk.rpc.telemetry.ActuatorOutputStatusResponse\"\x00\x30\x01\x12o\n\x11SubscribeOdometry\x12..mavsdk.rpc.telemetry.SubscribeOdometryRequest\x1a&.mavsdk.rpc.telemetry.OdometryResponse\"\x00\x30\x01\x12\x90\x01\n\x1cSubscribePositionVelocityNed\x12\x39.mavsdk.rpc.telemetry.SubscribePositionVelocityNedRequest\x1a\x31.mavsdk.rpc.telemetry.PositionVelocityNedResponse\"\x00\x30\x01\x12x\n\x14SubscribeGroundTruth\x12\x31.mavsdk.rpc.telemetry.SubscribeGroundTruthRequest\x1a).mavsdk.rpc.telemetry.GroundTruthResponse\"\x00\x30\x01\x12\x87\x01\n\x19SubscribeFixedwingMetrics\x12\x36.mavsdk.rpc.telemetry.SubscribeFixedwingMetricsRequest\x1a..mavsdk.rpc.telemetry.FixedwingMetricsResponse\"\x00\x30\x01\x12`\n\x0cSubscribeImu\x12).mavsdk.rpc.telemetry.SubscribeImuRequest\x1a!.mavsdk.rpc.telemetry.ImuResponse\"\x00\x30\x01\x12r\n\x12SubscribeScaledImu\x12/.mavsdk.rpc.telemetry.SubscribeScaledImuRequest\x1a\'.mavsdk.rpc.telemetry.ScaledImuResponse\"\x00\x30\x01\x12i\n\x0fSubscribeRawImu\x12,.mavsdk.rpc.telemetry.SubscribeRawImuRequest\x1a$.mavsdk.rpc.telemetry.RawImuResponse\"\x00\x30\x01\x12x\n\x14SubscribeHealthAllOk\x12\x31.mavsdk.rpc.telemetry.SubscribeHealthAllOkRequest\x1a).mavsdk.rpc.telemetry.HealthAllOkResponse\"\x00\x30\x01\x12~\n\x16SubscribeUnixEpochTime\x12\x33.mavsdk.rpc.telemetry.SubscribeUnixEpochTimeRequest\x1a+.mavsdk.rpc.telemetry.UnixEpochTimeResponse\"\x00\x30\x01\x12\x81\x01\n\x17SubscribeDistanceSensor\x12\x34.mavsdk.rpc.telemetry.SubscribeDistanceSensorRequest\x1a,.mavsdk.rpc.telemetry.DistanceSensorResponse\"\x00\x30\x01\x12\x81\x01\n\x17SubscribeScaledPressure\x12\x34.mavsdk.rpc.telemetry.SubscribeScaledPressureRequest\x1a,.mavsdk.rpc.telemetry.ScaledPressureResponse\"\x00\x30\x01\x12p\n\x0fSetRatePosition\x12,.mavsdk.rpc.telemetry.SetRatePositionRequest\x1a-.mavsdk.rpc.telemetry.SetRatePositionResponse\"\x00\x12\x64\n\x0bSetRateHome\x12(.mavsdk.rpc.telemetry.SetRateHomeRequest\x1a).mavsdk.rpc.telemetry.SetRateHomeResponse\"\x00\x12g\n\x0cSetRateInAir\x12).mavsdk.rpc.telemetry.SetRateInAirRequest\x1a*.mavsdk.rpc.telemetry.SetRateInAirResponse\"\x00\x12y\n\x12SetRateLandedState\x12/.mavsdk.rpc.telemetry.SetRateLandedStateRequest\x1a\x30.mavsdk.rpc.telemetry.SetRateLandedStateResponse\"\x00\x12p\n\x0fSetRateAttitude\x12,.mavsdk.rpc.telemetry.SetRateAttitudeRequest\x1a-.mavsdk.rpc.telemetry.SetRateAttitudeResponse\"\x00\x12\x82\x01\n\x15SetRateCameraAttitude\x12\x32.mavsdk.rpc.telemetry.SetRateCameraAttitudeRequest\x1a\x33.mavsdk.rpc.telemetry.SetRateCameraAttitudeResponse\"\x00\x12y\n\x12SetRateVelocityNed\x12/.mavsdk.rpc.telemetry.SetRateVelocityNedRequest\x1a\x30.mavsdk.rpc.telemetry.SetRateVelocityNedResponse\"\x00\x12m\n\x0eSetRateGpsInfo\x12+.mavsdk.rpc.telemetry.SetRateGpsInfoRequest\x1a,.mavsdk.rpc.telemetry.SetRateGpsInfoResponse\"\x00\x12m\n\x0eSetRateBattery\x12+.mavsdk.rpc.telemetry.SetRateBatteryRequest\x1a,.mavsdk.rpc.telemetry.SetRateBatteryResponse\"\x00\x12p\n\x0fSetRateRcStatus\x12,.mavsdk.rpc.telemetry.SetRateRcStatusRequest\x1a-.mavsdk.rpc.telemetry.SetRateRcStatusResponse\"\x00\x12\x97\x01\n\x1cSetRateActuatorControlTarget\x12\x39.mavsdk.rpc.telemetry.SetRateActuatorControlTargetRequest\x1a:.mavsdk.rpc.telemetry.SetRateActuatorControlTargetResponse\"\x00\x12\x94\x01\n\x1bSetRateActuatorOutputStatus\x12\x38.mavsdk.rpc.telemetry.SetRateActuatorOutputStatusRequest\x1a\x39.mavsdk.rpc.telemetry.SetRateActuatorOutputStatusResponse\"\x00\x12p\n\x0fSetRateOdometry\x12,.mavsdk.rpc.telemetry.SetRateOdometryRequest\x1a-.mavsdk.rpc.telemetry.SetRateOdometryResponse\"\x00\x12\x91\x01\n\x1aSetRatePositionVelocityNed\x12\x37.mavsdk.rpc.telemetry.SetRatePositionVelocityNedRequest\x1a\x38.mavsdk.rpc.telemetry.SetRatePositionVelocityNedResponse\"\x00\x12y\n\x12SetRateGroundTruth\x12/.mavsdk.rpc.telemetry.SetRateGroundTruthRequest\x1a\x30.mavsdk.rpc.telemetry.SetRateGroundTruthResponse\"\x00\x12\x88\x01\n\x17SetRateFixedwingMetrics\x12\x34.mavsdk.rpc.telemetry.SetRateFixedwingMetricsRequest\x1a\x35.mavsdk.rpc.telemetry.SetRateFixedwingMetricsResponse\"\x00\x12\x61\n\nSetRateImu\x12\'.mavsdk.rpc.telemetry.SetRateImuRequest\x1a(.mavsdk.rpc.telemetry.SetRateImuResponse\"\x00\x12s\n\x10SetRateScaledImu\x12-.mavsdk.rpc.telemetry.SetRateScaledImuRequest\x1a..mavsdk.rpc.telemetry.SetRateScaledImuResponse\"\x00\x12j\n\rSetRateRawImu\x12*.mavsdk.rpc.telemetry.SetRateRawImuRequest\x1a+.mavsdk.rpc.telemetry.SetRateRawImuResponse\"\x00\x12\x7f\n\x14SetRateUnixEpochTime\x12\x31.mavsdk.rpc.telemetry.SetRateUnixEpochTimeRequest\x1a\x32.mavsdk.rpc.telemetry.SetRateUnixEpochTimeResponse\"\x00\x12\x82\x01\n\x15SetRateDistanceSensor\x12\x32.mavsdk.rpc.telemetry.SetRateDistanceSensorRequest\x1a\x33.mavsdk.rpc.telemetry.SetRateDistanceSensorResponse\"\x00\x12y\n\x12GetGpsGlobalOrigin\x12/.mavsdk.rpc.telemetry.GetGpsGlobalOriginRequest\x1a\x30.mavsdk.rpc.telemetry.GetGpsGlobalOriginResponse\"\x00\x42%\n\x13io.mavsdk.telemetryB\x0eTelemetryProtob\x06proto3' + serialized_pb=b'\n\x19telemetry/telemetry.proto\x12\x14mavsdk.rpc.telemetry\x1a\x14mavsdk_options.proto\"\x1a\n\x18SubscribePositionRequest\"D\n\x10PositionResponse\x12\x30\n\x08position\x18\x01 \x01(\x0b\x32\x1e.mavsdk.rpc.telemetry.Position\"\x16\n\x14SubscribeHomeRequest\"<\n\x0cHomeResponse\x12,\n\x04home\x18\x01 \x01(\x0b\x32\x1e.mavsdk.rpc.telemetry.Position\"\x17\n\x15SubscribeInAirRequest\"\"\n\rInAirResponse\x12\x11\n\tis_in_air\x18\x01 \x01(\x08\"\x1d\n\x1bSubscribeLandedStateRequest\"N\n\x13LandedStateResponse\x12\x37\n\x0clanded_state\x18\x01 \x01(\x0e\x32!.mavsdk.rpc.telemetry.LandedState\"\x17\n\x15SubscribeArmedRequest\"!\n\rArmedResponse\x12\x10\n\x08is_armed\x18\x01 \x01(\x08\"\x1b\n\x19SubscribeVtolStateRequest\"H\n\x11VtolStateResponse\x12\x33\n\nvtol_state\x18\x01 \x01(\x0e\x32\x1f.mavsdk.rpc.telemetry.VtolState\"$\n\"SubscribeAttitudeQuaternionRequest\"[\n\x1a\x41ttitudeQuaternionResponse\x12=\n\x13\x61ttitude_quaternion\x18\x01 \x01(\x0b\x32 .mavsdk.rpc.telemetry.Quaternion\"\x1f\n\x1dSubscribeAttitudeEulerRequest\"Q\n\x15\x41ttitudeEulerResponse\x12\x38\n\x0e\x61ttitude_euler\x18\x01 \x01(\x0b\x32 .mavsdk.rpc.telemetry.EulerAngle\"-\n+SubscribeAttitudeAngularVelocityBodyRequest\"x\n#AttitudeAngularVelocityBodyResponse\x12Q\n\x1e\x61ttitude_angular_velocity_body\x18\x01 \x01(\x0b\x32).mavsdk.rpc.telemetry.AngularVelocityBody\"*\n(SubscribeCameraAttitudeQuaternionRequest\"a\n CameraAttitudeQuaternionResponse\x12=\n\x13\x61ttitude_quaternion\x18\x01 \x01(\x0b\x32 .mavsdk.rpc.telemetry.Quaternion\"%\n#SubscribeCameraAttitudeEulerRequest\"W\n\x1b\x43\x61meraAttitudeEulerResponse\x12\x38\n\x0e\x61ttitude_euler\x18\x01 \x01(\x0b\x32 .mavsdk.rpc.telemetry.EulerAngle\"\x1d\n\x1bSubscribeVelocityNedRequest\"N\n\x13VelocityNedResponse\x12\x37\n\x0cvelocity_ned\x18\x01 \x01(\x0b\x32!.mavsdk.rpc.telemetry.VelocityNed\"\x19\n\x17SubscribeGpsInfoRequest\"B\n\x0fGpsInfoResponse\x12/\n\x08gps_info\x18\x01 \x01(\x0b\x32\x1d.mavsdk.rpc.telemetry.GpsInfo\"\x18\n\x16SubscribeRawGpsRequest\"?\n\x0eRawGpsResponse\x12-\n\x07raw_gps\x18\x01 \x01(\x0b\x32\x1c.mavsdk.rpc.telemetry.RawGps\"\x19\n\x17SubscribeBatteryRequest\"A\n\x0f\x42\x61tteryResponse\x12.\n\x07\x62\x61ttery\x18\x01 \x01(\x0b\x32\x1d.mavsdk.rpc.telemetry.Battery\"\x1c\n\x1aSubscribeFlightModeRequest\"K\n\x12\x46lightModeResponse\x12\x35\n\x0b\x66light_mode\x18\x01 \x01(\x0e\x32 .mavsdk.rpc.telemetry.FlightMode\"\x18\n\x16SubscribeHealthRequest\">\n\x0eHealthResponse\x12,\n\x06health\x18\x01 \x01(\x0b\x32\x1c.mavsdk.rpc.telemetry.Health\"\x1a\n\x18SubscribeRcStatusRequest\"E\n\x10RcStatusResponse\x12\x31\n\trc_status\x18\x01 \x01(\x0b\x32\x1e.mavsdk.rpc.telemetry.RcStatus\"\x1c\n\x1aSubscribeStatusTextRequest\"K\n\x12StatusTextResponse\x12\x35\n\x0bstatus_text\x18\x01 \x01(\x0b\x32 .mavsdk.rpc.telemetry.StatusText\"\'\n%SubscribeActuatorControlTargetRequest\"m\n\x1d\x41\x63tuatorControlTargetResponse\x12L\n\x17\x61\x63tuator_control_target\x18\x01 \x01(\x0b\x32+.mavsdk.rpc.telemetry.ActuatorControlTarget\"&\n$SubscribeActuatorOutputStatusRequest\"j\n\x1c\x41\x63tuatorOutputStatusResponse\x12J\n\x16\x61\x63tuator_output_status\x18\x01 \x01(\x0b\x32*.mavsdk.rpc.telemetry.ActuatorOutputStatus\"\x1a\n\x18SubscribeOdometryRequest\"D\n\x10OdometryResponse\x12\x30\n\x08odometry\x18\x01 \x01(\x0b\x32\x1e.mavsdk.rpc.telemetry.Odometry\"%\n#SubscribePositionVelocityNedRequest\"g\n\x1bPositionVelocityNedResponse\x12H\n\x15position_velocity_ned\x18\x01 \x01(\x0b\x32).mavsdk.rpc.telemetry.PositionVelocityNed\"\x1d\n\x1bSubscribeGroundTruthRequest\"N\n\x13GroundTruthResponse\x12\x37\n\x0cground_truth\x18\x01 \x01(\x0b\x32!.mavsdk.rpc.telemetry.GroundTruth\"\"\n SubscribeFixedwingMetricsRequest\"]\n\x18\x46ixedwingMetricsResponse\x12\x41\n\x11\x66ixedwing_metrics\x18\x01 \x01(\x0b\x32&.mavsdk.rpc.telemetry.FixedwingMetrics\"\x15\n\x13SubscribeImuRequest\"5\n\x0bImuResponse\x12&\n\x03imu\x18\x01 \x01(\x0b\x32\x19.mavsdk.rpc.telemetry.Imu\"\x1b\n\x19SubscribeScaledImuRequest\";\n\x11ScaledImuResponse\x12&\n\x03imu\x18\x01 \x01(\x0b\x32\x19.mavsdk.rpc.telemetry.Imu\"\x18\n\x16SubscribeRawImuRequest\"8\n\x0eRawImuResponse\x12&\n\x03imu\x18\x01 \x01(\x0b\x32\x19.mavsdk.rpc.telemetry.Imu\"\x1d\n\x1bSubscribeHealthAllOkRequest\"/\n\x13HealthAllOkResponse\x12\x18\n\x10is_health_all_ok\x18\x01 \x01(\x08\"\x1f\n\x1dSubscribeUnixEpochTimeRequest\"(\n\x15UnixEpochTimeResponse\x12\x0f\n\x07time_us\x18\x01 \x01(\x04\" \n\x1eSubscribeDistanceSensorRequest\"W\n\x16\x44istanceSensorResponse\x12=\n\x0f\x64istance_sensor\x18\x01 \x01(\x0b\x32$.mavsdk.rpc.telemetry.DistanceSensor\" \n\x1eSubscribeScaledPressureRequest\"W\n\x16ScaledPressureResponse\x12=\n\x0fscaled_pressure\x18\x01 \x01(\x0b\x32$.mavsdk.rpc.telemetry.ScaledPressure\"\x19\n\x17SubscribeHeadingRequest\"E\n\x0fHeadingResponse\x12\x32\n\x0bheading_deg\x18\x01 \x01(\x0b\x32\x1d.mavsdk.rpc.telemetry.Heading\")\n\x16SetRatePositionRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"Z\n\x17SetRatePositionResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\"%\n\x12SetRateHomeRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"V\n\x13SetRateHomeResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\"&\n\x13SetRateInAirRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"W\n\x14SetRateInAirResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\",\n\x19SetRateLandedStateRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"]\n\x1aSetRateLandedStateResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\"*\n\x17SetRateVtolStateRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"[\n\x18SetRateVtolStateResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\")\n\x16SetRateAttitudeRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"Z\n\x17SetRateAttitudeResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\"<\n)SetRateAttitudeAngularVelocityBodyRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"m\n*SetRateAttitudeAngularVelocityBodyResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\"9\n&SetRateCameraAttitudeQuaternionRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"j\n\'SetRateCameraAttitudeQuaternionResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\"/\n\x1cSetRateCameraAttitudeRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"`\n\x1dSetRateCameraAttitudeResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\",\n\x19SetRateVelocityNedRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"]\n\x1aSetRateVelocityNedResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\"(\n\x15SetRateGpsInfoRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"Y\n\x16SetRateGpsInfoResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\"\'\n\x14SetRateRawGpsRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"(\n\x15SetRateBatteryRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"Y\n\x16SetRateBatteryResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\")\n\x16SetRateRcStatusRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"Z\n\x17SetRateRcStatusResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\"6\n#SetRateActuatorControlTargetRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"g\n$SetRateActuatorControlTargetResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\"5\n\"SetRateActuatorOutputStatusRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"f\n#SetRateActuatorOutputStatusResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\")\n\x16SetRateOdometryRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"Z\n\x17SetRateOdometryResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\"4\n!SetRatePositionVelocityNedRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"e\n\"SetRatePositionVelocityNedResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\",\n\x19SetRateGroundTruthRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"]\n\x1aSetRateGroundTruthResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\"1\n\x1eSetRateFixedwingMetricsRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"b\n\x1fSetRateFixedwingMetricsResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\"$\n\x11SetRateImuRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"U\n\x12SetRateImuResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\"*\n\x17SetRateScaledImuRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"[\n\x18SetRateScaledImuResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\"\'\n\x14SetRateRawImuRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"X\n\x15SetRateRawImuResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\".\n\x1bSetRateUnixEpochTimeRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"_\n\x1cSetRateUnixEpochTimeResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\"/\n\x1cSetRateDistanceSensorRequest\x12\x0f\n\x07rate_hz\x18\x01 \x01(\x01\"`\n\x1dSetRateDistanceSensorResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\"\x1b\n\x19GetGpsGlobalOriginRequest\"\x9f\x01\n\x1aGetGpsGlobalOriginResponse\x12?\n\x10telemetry_result\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.TelemetryResult\x12@\n\x11gps_global_origin\x18\x02 \x01(\x0b\x32%.mavsdk.rpc.telemetry.GpsGlobalOrigin\"\x95\x01\n\x08Position\x12\x1d\n\x0clatitude_deg\x18\x01 \x01(\x01\x42\x07\x82\xb5\x18\x03NaN\x12\x1e\n\rlongitude_deg\x18\x02 \x01(\x01\x42\x07\x82\xb5\x18\x03NaN\x12$\n\x13\x61\x62solute_altitude_m\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12$\n\x13relative_altitude_m\x18\x04 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"\'\n\x07Heading\x12\x1c\n\x0bheading_deg\x18\x01 \x01(\x01\x42\x07\x82\xb5\x18\x03NaN\"r\n\nQuaternion\x12\x12\n\x01w\x18\x01 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x12\n\x01x\x18\x02 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x12\n\x01y\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x12\n\x01z\x18\x04 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x14\n\x0ctimestamp_us\x18\x05 \x01(\x04\"s\n\nEulerAngle\x12\x19\n\x08roll_deg\x18\x01 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x1a\n\tpitch_deg\x18\x02 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x18\n\x07yaw_deg\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x14\n\x0ctimestamp_us\x18\x04 \x01(\x04\"l\n\x13\x41ngularVelocityBody\x12\x1b\n\nroll_rad_s\x18\x01 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x1c\n\x0bpitch_rad_s\x18\x02 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x1a\n\tyaw_rad_s\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"Y\n\x07GpsInfo\x12\x1d\n\x0enum_satellites\x18\x01 \x01(\x05\x42\x05\x82\xb5\x18\x01\x30\x12/\n\x08\x66ix_type\x18\x02 \x01(\x0e\x32\x1d.mavsdk.rpc.telemetry.FixType\"\xdf\x02\n\x06RawGps\x12\x14\n\x0ctimestamp_us\x18\x01 \x01(\x04\x12\x14\n\x0clatitude_deg\x18\x02 \x01(\x01\x12\x15\n\rlongitude_deg\x18\x03 \x01(\x01\x12\x1b\n\x13\x61\x62solute_altitude_m\x18\x04 \x01(\x02\x12\x0c\n\x04hdop\x18\x05 \x01(\x02\x12\x0c\n\x04vdop\x18\x06 \x01(\x02\x12\x14\n\x0cvelocity_m_s\x18\x07 \x01(\x02\x12\x0f\n\x07\x63og_deg\x18\x08 \x01(\x02\x12\x1c\n\x14\x61ltitude_ellipsoid_m\x18\t \x01(\x02\x12 \n\x18horizontal_uncertainty_m\x18\n \x01(\x02\x12\x1e\n\x16vertical_uncertainty_m\x18\x0b \x01(\x02\x12 \n\x18velocity_uncertainty_m_s\x18\x0c \x01(\x02\x12\x1f\n\x17heading_uncertainty_deg\x18\r \x01(\x02\x12\x0f\n\x07yaw_deg\x18\x0e \x01(\x02\"\\\n\x07\x42\x61ttery\x12\x11\n\x02id\x18\x03 \x01(\rB\x05\x82\xb5\x18\x01\x30\x12\x1a\n\tvoltage_v\x18\x01 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\"\n\x11remaining_percent\x18\x02 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"\xb9\x02\n\x06Health\x12.\n\x1bis_gyrometer_calibration_ok\x18\x01 \x01(\x08\x42\t\x82\xb5\x18\x05\x66\x61lse\x12\x32\n\x1fis_accelerometer_calibration_ok\x18\x02 \x01(\x08\x42\t\x82\xb5\x18\x05\x66\x61lse\x12\x31\n\x1eis_magnetometer_calibration_ok\x18\x03 \x01(\x08\x42\t\x82\xb5\x18\x05\x66\x61lse\x12\'\n\x14is_local_position_ok\x18\x05 \x01(\x08\x42\t\x82\xb5\x18\x05\x66\x61lse\x12(\n\x15is_global_position_ok\x18\x06 \x01(\x08\x42\t\x82\xb5\x18\x05\x66\x61lse\x12&\n\x13is_home_position_ok\x18\x07 \x01(\x08\x42\t\x82\xb5\x18\x05\x66\x61lse\x12\x1d\n\nis_armable\x18\x08 \x01(\x08\x42\t\x82\xb5\x18\x05\x66\x61lse\"|\n\x08RcStatus\x12%\n\x12was_available_once\x18\x01 \x01(\x08\x42\t\x82\xb5\x18\x05\x66\x61lse\x12\x1f\n\x0cis_available\x18\x02 \x01(\x08\x42\t\x82\xb5\x18\x05\x66\x61lse\x12(\n\x17signal_strength_percent\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"N\n\nStatusText\x12\x32\n\x04type\x18\x01 \x01(\x0e\x32$.mavsdk.rpc.telemetry.StatusTextType\x12\x0c\n\x04text\x18\x02 \x01(\t\"?\n\x15\x41\x63tuatorControlTarget\x12\x14\n\x05group\x18\x01 \x01(\x05\x42\x05\x82\xb5\x18\x01\x30\x12\x10\n\x08\x63ontrols\x18\x02 \x03(\x02\"?\n\x14\x41\x63tuatorOutputStatus\x12\x15\n\x06\x61\x63tive\x18\x01 \x01(\rB\x05\x82\xb5\x18\x01\x30\x12\x10\n\x08\x61\x63tuator\x18\x02 \x03(\x02\"\'\n\nCovariance\x12\x19\n\x11\x63ovariance_matrix\x18\x01 \x03(\x02\";\n\x0cVelocityBody\x12\r\n\x05x_m_s\x18\x01 \x01(\x02\x12\r\n\x05y_m_s\x18\x02 \x01(\x02\x12\r\n\x05z_m_s\x18\x03 \x01(\x02\"5\n\x0cPositionBody\x12\x0b\n\x03x_m\x18\x01 \x01(\x02\x12\x0b\n\x03y_m\x18\x02 \x01(\x02\x12\x0b\n\x03z_m\x18\x03 \x01(\x02\"\xec\x04\n\x08Odometry\x12\x11\n\ttime_usec\x18\x01 \x01(\x04\x12\x39\n\x08\x66rame_id\x18\x02 \x01(\x0e\x32\'.mavsdk.rpc.telemetry.Odometry.MavFrame\x12?\n\x0e\x63hild_frame_id\x18\x03 \x01(\x0e\x32\'.mavsdk.rpc.telemetry.Odometry.MavFrame\x12\x39\n\rposition_body\x18\x04 \x01(\x0b\x32\".mavsdk.rpc.telemetry.PositionBody\x12+\n\x01q\x18\x05 \x01(\x0b\x32 .mavsdk.rpc.telemetry.Quaternion\x12\x39\n\rvelocity_body\x18\x06 \x01(\x0b\x32\".mavsdk.rpc.telemetry.VelocityBody\x12H\n\x15\x61ngular_velocity_body\x18\x07 \x01(\x0b\x32).mavsdk.rpc.telemetry.AngularVelocityBody\x12\x39\n\x0fpose_covariance\x18\x08 \x01(\x0b\x32 .mavsdk.rpc.telemetry.Covariance\x12=\n\x13velocity_covariance\x18\t \x01(\x0b\x32 .mavsdk.rpc.telemetry.Covariance\"j\n\x08MavFrame\x12\x13\n\x0fMAV_FRAME_UNDEF\x10\x00\x12\x16\n\x12MAV_FRAME_BODY_NED\x10\x08\x12\x18\n\x14MAV_FRAME_VISION_NED\x10\x10\x12\x17\n\x13MAV_FRAME_ESTIM_NED\x10\x12\"\x7f\n\x0e\x44istanceSensor\x12#\n\x12minimum_distance_m\x18\x01 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12#\n\x12maximum_distance_m\x18\x02 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12#\n\x12\x63urrent_distance_m\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"\xb0\x01\n\x0eScaledPressure\x12\x14\n\x0ctimestamp_us\x18\x01 \x01(\x04\x12\x1d\n\x15\x61\x62solute_pressure_hpa\x18\x02 \x01(\x02\x12!\n\x19\x64ifferential_pressure_hpa\x18\x03 \x01(\x02\x12\x17\n\x0ftemperature_deg\x18\x04 \x01(\x02\x12-\n%differential_pressure_temperature_deg\x18\x05 \x01(\x02\"Y\n\x0bPositionNed\x12\x18\n\x07north_m\x18\x01 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x17\n\x06\x65\x61st_m\x18\x02 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x17\n\x06\x64own_m\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"D\n\x0bVelocityNed\x12\x11\n\tnorth_m_s\x18\x01 \x01(\x02\x12\x10\n\x08\x65\x61st_m_s\x18\x02 \x01(\x02\x12\x10\n\x08\x64own_m_s\x18\x03 \x01(\x02\"\x7f\n\x13PositionVelocityNed\x12\x33\n\x08position\x18\x01 \x01(\x0b\x32!.mavsdk.rpc.telemetry.PositionNed\x12\x33\n\x08velocity\x18\x02 \x01(\x0b\x32!.mavsdk.rpc.telemetry.VelocityNed\"r\n\x0bGroundTruth\x12\x1d\n\x0clatitude_deg\x18\x01 \x01(\x01\x42\x07\x82\xb5\x18\x03NaN\x12\x1e\n\rlongitude_deg\x18\x02 \x01(\x01\x42\x07\x82\xb5\x18\x03NaN\x12$\n\x13\x61\x62solute_altitude_m\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"x\n\x10\x46ixedwingMetrics\x12\x1d\n\x0c\x61irspeed_m_s\x18\x01 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12$\n\x13throttle_percentage\x18\x02 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x1f\n\x0e\x63limb_rate_m_s\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"i\n\x0f\x41\x63\x63\x65lerationFrd\x12\x1d\n\x0c\x66orward_m_s2\x18\x01 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x1b\n\nright_m_s2\x18\x02 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x1a\n\tdown_m_s2\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"o\n\x12\x41ngularVelocityFrd\x12\x1e\n\rforward_rad_s\x18\x01 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x1c\n\x0bright_rad_s\x18\x02 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x1b\n\ndown_rad_s\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"m\n\x10MagneticFieldFrd\x12\x1e\n\rforward_gauss\x18\x01 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x1c\n\x0bright_gauss\x18\x02 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x1b\n\ndown_gauss\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"\x8b\x02\n\x03Imu\x12?\n\x10\x61\x63\x63\x65leration_frd\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry.AccelerationFrd\x12\x46\n\x14\x61ngular_velocity_frd\x18\x02 \x01(\x0b\x32(.mavsdk.rpc.telemetry.AngularVelocityFrd\x12\x42\n\x12magnetic_field_frd\x18\x03 \x01(\x0b\x32&.mavsdk.rpc.telemetry.MagneticFieldFrd\x12!\n\x10temperature_degc\x18\x04 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x14\n\x0ctimestamp_us\x18\x05 \x01(\x04\"m\n\x0fGpsGlobalOrigin\x12\x1d\n\x0clatitude_deg\x18\x01 \x01(\x01\x42\x07\x82\xb5\x18\x03NaN\x12\x1e\n\rlongitude_deg\x18\x02 \x01(\x01\x42\x07\x82\xb5\x18\x03NaN\x12\x1b\n\naltitude_m\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"\xa1\x02\n\x0fTelemetryResult\x12<\n\x06result\x18\x01 \x01(\x0e\x32,.mavsdk.rpc.telemetry.TelemetryResult.Result\x12\x12\n\nresult_str\x18\x02 \x01(\t\"\xbb\x01\n\x06Result\x12\x12\n\x0eRESULT_UNKNOWN\x10\x00\x12\x12\n\x0eRESULT_SUCCESS\x10\x01\x12\x14\n\x10RESULT_NO_SYSTEM\x10\x02\x12\x1b\n\x17RESULT_CONNECTION_ERROR\x10\x03\x12\x0f\n\x0bRESULT_BUSY\x10\x04\x12\x19\n\x15RESULT_COMMAND_DENIED\x10\x05\x12\x12\n\x0eRESULT_TIMEOUT\x10\x06\x12\x16\n\x12RESULT_UNSUPPORTED\x10\x07*\xa4\x01\n\x07\x46ixType\x12\x13\n\x0f\x46IX_TYPE_NO_GPS\x10\x00\x12\x13\n\x0f\x46IX_TYPE_NO_FIX\x10\x01\x12\x13\n\x0f\x46IX_TYPE_FIX_2D\x10\x02\x12\x13\n\x0f\x46IX_TYPE_FIX_3D\x10\x03\x12\x15\n\x11\x46IX_TYPE_FIX_DGPS\x10\x04\x12\x16\n\x12\x46IX_TYPE_RTK_FLOAT\x10\x05\x12\x16\n\x12\x46IX_TYPE_RTK_FIXED\x10\x06*\x86\x03\n\nFlightMode\x12\x17\n\x13\x46LIGHT_MODE_UNKNOWN\x10\x00\x12\x15\n\x11\x46LIGHT_MODE_READY\x10\x01\x12\x17\n\x13\x46LIGHT_MODE_TAKEOFF\x10\x02\x12\x14\n\x10\x46LIGHT_MODE_HOLD\x10\x03\x12\x17\n\x13\x46LIGHT_MODE_MISSION\x10\x04\x12 \n\x1c\x46LIGHT_MODE_RETURN_TO_LAUNCH\x10\x05\x12\x14\n\x10\x46LIGHT_MODE_LAND\x10\x06\x12\x18\n\x14\x46LIGHT_MODE_OFFBOARD\x10\x07\x12\x19\n\x15\x46LIGHT_MODE_FOLLOW_ME\x10\x08\x12\x16\n\x12\x46LIGHT_MODE_MANUAL\x10\t\x12\x16\n\x12\x46LIGHT_MODE_ALTCTL\x10\n\x12\x16\n\x12\x46LIGHT_MODE_POSCTL\x10\x0b\x12\x14\n\x10\x46LIGHT_MODE_ACRO\x10\x0c\x12\x1a\n\x16\x46LIGHT_MODE_STABILIZED\x10\r\x12\x19\n\x15\x46LIGHT_MODE_RATTITUDE\x10\x0e*\xf9\x01\n\x0eStatusTextType\x12\x1a\n\x16STATUS_TEXT_TYPE_DEBUG\x10\x00\x12\x19\n\x15STATUS_TEXT_TYPE_INFO\x10\x01\x12\x1b\n\x17STATUS_TEXT_TYPE_NOTICE\x10\x02\x12\x1c\n\x18STATUS_TEXT_TYPE_WARNING\x10\x03\x12\x1a\n\x16STATUS_TEXT_TYPE_ERROR\x10\x04\x12\x1d\n\x19STATUS_TEXT_TYPE_CRITICAL\x10\x05\x12\x1a\n\x16STATUS_TEXT_TYPE_ALERT\x10\x06\x12\x1e\n\x1aSTATUS_TEXT_TYPE_EMERGENCY\x10\x07*\x93\x01\n\x0bLandedState\x12\x18\n\x14LANDED_STATE_UNKNOWN\x10\x00\x12\x1a\n\x16LANDED_STATE_ON_GROUND\x10\x01\x12\x17\n\x13LANDED_STATE_IN_AIR\x10\x02\x12\x1b\n\x17LANDED_STATE_TAKING_OFF\x10\x03\x12\x18\n\x14LANDED_STATE_LANDING\x10\x04*\x8d\x01\n\tVtolState\x12\x18\n\x14VTOL_STATE_UNDEFINED\x10\x00\x12\x1f\n\x1bVTOL_STATE_TRANSITION_TO_FW\x10\x01\x12\x1f\n\x1bVTOL_STATE_TRANSITION_TO_MC\x10\x02\x12\x11\n\rVTOL_STATE_MC\x10\x03\x12\x11\n\rVTOL_STATE_FW\x10\x04\x32\xfe\x35\n\x10TelemetryService\x12o\n\x11SubscribePosition\x12..mavsdk.rpc.telemetry.SubscribePositionRequest\x1a&.mavsdk.rpc.telemetry.PositionResponse\"\x00\x30\x01\x12\x63\n\rSubscribeHome\x12*.mavsdk.rpc.telemetry.SubscribeHomeRequest\x1a\".mavsdk.rpc.telemetry.HomeResponse\"\x00\x30\x01\x12\x66\n\x0eSubscribeInAir\x12+.mavsdk.rpc.telemetry.SubscribeInAirRequest\x1a#.mavsdk.rpc.telemetry.InAirResponse\"\x00\x30\x01\x12x\n\x14SubscribeLandedState\x12\x31.mavsdk.rpc.telemetry.SubscribeLandedStateRequest\x1a).mavsdk.rpc.telemetry.LandedStateResponse\"\x00\x30\x01\x12\x66\n\x0eSubscribeArmed\x12+.mavsdk.rpc.telemetry.SubscribeArmedRequest\x1a#.mavsdk.rpc.telemetry.ArmedResponse\"\x00\x30\x01\x12r\n\x12SubscribeVtolState\x12/.mavsdk.rpc.telemetry.SubscribeVtolStateRequest\x1a\'.mavsdk.rpc.telemetry.VtolStateResponse\"\x00\x30\x01\x12\x8d\x01\n\x1bSubscribeAttitudeQuaternion\x12\x38.mavsdk.rpc.telemetry.SubscribeAttitudeQuaternionRequest\x1a\x30.mavsdk.rpc.telemetry.AttitudeQuaternionResponse\"\x00\x30\x01\x12~\n\x16SubscribeAttitudeEuler\x12\x33.mavsdk.rpc.telemetry.SubscribeAttitudeEulerRequest\x1a+.mavsdk.rpc.telemetry.AttitudeEulerResponse\"\x00\x30\x01\x12\xa8\x01\n$SubscribeAttitudeAngularVelocityBody\x12\x41.mavsdk.rpc.telemetry.SubscribeAttitudeAngularVelocityBodyRequest\x1a\x39.mavsdk.rpc.telemetry.AttitudeAngularVelocityBodyResponse\"\x00\x30\x01\x12\x9f\x01\n!SubscribeCameraAttitudeQuaternion\x12>.mavsdk.rpc.telemetry.SubscribeCameraAttitudeQuaternionRequest\x1a\x36.mavsdk.rpc.telemetry.CameraAttitudeQuaternionResponse\"\x00\x30\x01\x12\x90\x01\n\x1cSubscribeCameraAttitudeEuler\x12\x39.mavsdk.rpc.telemetry.SubscribeCameraAttitudeEulerRequest\x1a\x31.mavsdk.rpc.telemetry.CameraAttitudeEulerResponse\"\x00\x30\x01\x12x\n\x14SubscribeVelocityNed\x12\x31.mavsdk.rpc.telemetry.SubscribeVelocityNedRequest\x1a).mavsdk.rpc.telemetry.VelocityNedResponse\"\x00\x30\x01\x12l\n\x10SubscribeGpsInfo\x12-.mavsdk.rpc.telemetry.SubscribeGpsInfoRequest\x1a%.mavsdk.rpc.telemetry.GpsInfoResponse\"\x00\x30\x01\x12i\n\x0fSubscribeRawGps\x12,.mavsdk.rpc.telemetry.SubscribeRawGpsRequest\x1a$.mavsdk.rpc.telemetry.RawGpsResponse\"\x00\x30\x01\x12l\n\x10SubscribeBattery\x12-.mavsdk.rpc.telemetry.SubscribeBatteryRequest\x1a%.mavsdk.rpc.telemetry.BatteryResponse\"\x00\x30\x01\x12u\n\x13SubscribeFlightMode\x12\x30.mavsdk.rpc.telemetry.SubscribeFlightModeRequest\x1a(.mavsdk.rpc.telemetry.FlightModeResponse\"\x00\x30\x01\x12i\n\x0fSubscribeHealth\x12,.mavsdk.rpc.telemetry.SubscribeHealthRequest\x1a$.mavsdk.rpc.telemetry.HealthResponse\"\x00\x30\x01\x12o\n\x11SubscribeRcStatus\x12..mavsdk.rpc.telemetry.SubscribeRcStatusRequest\x1a&.mavsdk.rpc.telemetry.RcStatusResponse\"\x00\x30\x01\x12u\n\x13SubscribeStatusText\x12\x30.mavsdk.rpc.telemetry.SubscribeStatusTextRequest\x1a(.mavsdk.rpc.telemetry.StatusTextResponse\"\x00\x30\x01\x12\x96\x01\n\x1eSubscribeActuatorControlTarget\x12;.mavsdk.rpc.telemetry.SubscribeActuatorControlTargetRequest\x1a\x33.mavsdk.rpc.telemetry.ActuatorControlTargetResponse\"\x00\x30\x01\x12\x93\x01\n\x1dSubscribeActuatorOutputStatus\x12:.mavsdk.rpc.telemetry.SubscribeActuatorOutputStatusRequest\x1a\x32.mavsdk.rpc.telemetry.ActuatorOutputStatusResponse\"\x00\x30\x01\x12o\n\x11SubscribeOdometry\x12..mavsdk.rpc.telemetry.SubscribeOdometryRequest\x1a&.mavsdk.rpc.telemetry.OdometryResponse\"\x00\x30\x01\x12\x90\x01\n\x1cSubscribePositionVelocityNed\x12\x39.mavsdk.rpc.telemetry.SubscribePositionVelocityNedRequest\x1a\x31.mavsdk.rpc.telemetry.PositionVelocityNedResponse\"\x00\x30\x01\x12x\n\x14SubscribeGroundTruth\x12\x31.mavsdk.rpc.telemetry.SubscribeGroundTruthRequest\x1a).mavsdk.rpc.telemetry.GroundTruthResponse\"\x00\x30\x01\x12\x87\x01\n\x19SubscribeFixedwingMetrics\x12\x36.mavsdk.rpc.telemetry.SubscribeFixedwingMetricsRequest\x1a..mavsdk.rpc.telemetry.FixedwingMetricsResponse\"\x00\x30\x01\x12`\n\x0cSubscribeImu\x12).mavsdk.rpc.telemetry.SubscribeImuRequest\x1a!.mavsdk.rpc.telemetry.ImuResponse\"\x00\x30\x01\x12r\n\x12SubscribeScaledImu\x12/.mavsdk.rpc.telemetry.SubscribeScaledImuRequest\x1a\'.mavsdk.rpc.telemetry.ScaledImuResponse\"\x00\x30\x01\x12i\n\x0fSubscribeRawImu\x12,.mavsdk.rpc.telemetry.SubscribeRawImuRequest\x1a$.mavsdk.rpc.telemetry.RawImuResponse\"\x00\x30\x01\x12x\n\x14SubscribeHealthAllOk\x12\x31.mavsdk.rpc.telemetry.SubscribeHealthAllOkRequest\x1a).mavsdk.rpc.telemetry.HealthAllOkResponse\"\x00\x30\x01\x12~\n\x16SubscribeUnixEpochTime\x12\x33.mavsdk.rpc.telemetry.SubscribeUnixEpochTimeRequest\x1a+.mavsdk.rpc.telemetry.UnixEpochTimeResponse\"\x00\x30\x01\x12\x81\x01\n\x17SubscribeDistanceSensor\x12\x34.mavsdk.rpc.telemetry.SubscribeDistanceSensorRequest\x1a,.mavsdk.rpc.telemetry.DistanceSensorResponse\"\x00\x30\x01\x12\x81\x01\n\x17SubscribeScaledPressure\x12\x34.mavsdk.rpc.telemetry.SubscribeScaledPressureRequest\x1a,.mavsdk.rpc.telemetry.ScaledPressureResponse\"\x00\x30\x01\x12l\n\x10SubscribeHeading\x12-.mavsdk.rpc.telemetry.SubscribeHeadingRequest\x1a%.mavsdk.rpc.telemetry.HeadingResponse\"\x00\x30\x01\x12p\n\x0fSetRatePosition\x12,.mavsdk.rpc.telemetry.SetRatePositionRequest\x1a-.mavsdk.rpc.telemetry.SetRatePositionResponse\"\x00\x12\x64\n\x0bSetRateHome\x12(.mavsdk.rpc.telemetry.SetRateHomeRequest\x1a).mavsdk.rpc.telemetry.SetRateHomeResponse\"\x00\x12g\n\x0cSetRateInAir\x12).mavsdk.rpc.telemetry.SetRateInAirRequest\x1a*.mavsdk.rpc.telemetry.SetRateInAirResponse\"\x00\x12y\n\x12SetRateLandedState\x12/.mavsdk.rpc.telemetry.SetRateLandedStateRequest\x1a\x30.mavsdk.rpc.telemetry.SetRateLandedStateResponse\"\x00\x12s\n\x10SetRateVtolState\x12-.mavsdk.rpc.telemetry.SetRateVtolStateRequest\x1a..mavsdk.rpc.telemetry.SetRateVtolStateResponse\"\x00\x12p\n\x0fSetRateAttitude\x12,.mavsdk.rpc.telemetry.SetRateAttitudeRequest\x1a-.mavsdk.rpc.telemetry.SetRateAttitudeResponse\"\x00\x12\x82\x01\n\x15SetRateCameraAttitude\x12\x32.mavsdk.rpc.telemetry.SetRateCameraAttitudeRequest\x1a\x33.mavsdk.rpc.telemetry.SetRateCameraAttitudeResponse\"\x00\x12y\n\x12SetRateVelocityNed\x12/.mavsdk.rpc.telemetry.SetRateVelocityNedRequest\x1a\x30.mavsdk.rpc.telemetry.SetRateVelocityNedResponse\"\x00\x12m\n\x0eSetRateGpsInfo\x12+.mavsdk.rpc.telemetry.SetRateGpsInfoRequest\x1a,.mavsdk.rpc.telemetry.SetRateGpsInfoResponse\"\x00\x12m\n\x0eSetRateBattery\x12+.mavsdk.rpc.telemetry.SetRateBatteryRequest\x1a,.mavsdk.rpc.telemetry.SetRateBatteryResponse\"\x00\x12p\n\x0fSetRateRcStatus\x12,.mavsdk.rpc.telemetry.SetRateRcStatusRequest\x1a-.mavsdk.rpc.telemetry.SetRateRcStatusResponse\"\x00\x12\x97\x01\n\x1cSetRateActuatorControlTarget\x12\x39.mavsdk.rpc.telemetry.SetRateActuatorControlTargetRequest\x1a:.mavsdk.rpc.telemetry.SetRateActuatorControlTargetResponse\"\x00\x12\x94\x01\n\x1bSetRateActuatorOutputStatus\x12\x38.mavsdk.rpc.telemetry.SetRateActuatorOutputStatusRequest\x1a\x39.mavsdk.rpc.telemetry.SetRateActuatorOutputStatusResponse\"\x00\x12p\n\x0fSetRateOdometry\x12,.mavsdk.rpc.telemetry.SetRateOdometryRequest\x1a-.mavsdk.rpc.telemetry.SetRateOdometryResponse\"\x00\x12\x91\x01\n\x1aSetRatePositionVelocityNed\x12\x37.mavsdk.rpc.telemetry.SetRatePositionVelocityNedRequest\x1a\x38.mavsdk.rpc.telemetry.SetRatePositionVelocityNedResponse\"\x00\x12y\n\x12SetRateGroundTruth\x12/.mavsdk.rpc.telemetry.SetRateGroundTruthRequest\x1a\x30.mavsdk.rpc.telemetry.SetRateGroundTruthResponse\"\x00\x12\x88\x01\n\x17SetRateFixedwingMetrics\x12\x34.mavsdk.rpc.telemetry.SetRateFixedwingMetricsRequest\x1a\x35.mavsdk.rpc.telemetry.SetRateFixedwingMetricsResponse\"\x00\x12\x61\n\nSetRateImu\x12\'.mavsdk.rpc.telemetry.SetRateImuRequest\x1a(.mavsdk.rpc.telemetry.SetRateImuResponse\"\x00\x12s\n\x10SetRateScaledImu\x12-.mavsdk.rpc.telemetry.SetRateScaledImuRequest\x1a..mavsdk.rpc.telemetry.SetRateScaledImuResponse\"\x00\x12j\n\rSetRateRawImu\x12*.mavsdk.rpc.telemetry.SetRateRawImuRequest\x1a+.mavsdk.rpc.telemetry.SetRateRawImuResponse\"\x00\x12\x7f\n\x14SetRateUnixEpochTime\x12\x31.mavsdk.rpc.telemetry.SetRateUnixEpochTimeRequest\x1a\x32.mavsdk.rpc.telemetry.SetRateUnixEpochTimeResponse\"\x00\x12\x82\x01\n\x15SetRateDistanceSensor\x12\x32.mavsdk.rpc.telemetry.SetRateDistanceSensorRequest\x1a\x33.mavsdk.rpc.telemetry.SetRateDistanceSensorResponse\"\x00\x12y\n\x12GetGpsGlobalOrigin\x12/.mavsdk.rpc.telemetry.GetGpsGlobalOriginRequest\x1a\x30.mavsdk.rpc.telemetry.GetGpsGlobalOriginResponse\"\x00\x42%\n\x13io.mavsdk.telemetryB\x0eTelemetryProtob\x06proto3' , dependencies=[mavsdk__options__pb2.DESCRIPTOR,]) @@ -70,8 +70,8 @@ ], containing_type=None, serialized_options=None, - serialized_start=11231, - serialized_end=11395, + serialized_start=11610, + serialized_end=11774, ) _sym_db.RegisterEnumDescriptor(_FIXTYPE) @@ -161,8 +161,8 @@ ], containing_type=None, serialized_options=None, - serialized_start=11398, - serialized_end=11788, + serialized_start=11777, + serialized_end=12167, ) _sym_db.RegisterEnumDescriptor(_FLIGHTMODE) @@ -217,8 +217,8 @@ ], containing_type=None, serialized_options=None, - serialized_start=11791, - serialized_end=12040, + serialized_start=12170, + serialized_end=12419, ) _sym_db.RegisterEnumDescriptor(_STATUSTEXTTYPE) @@ -258,12 +258,53 @@ ], containing_type=None, serialized_options=None, - serialized_start=12043, - serialized_end=12190, + serialized_start=12422, + serialized_end=12569, ) _sym_db.RegisterEnumDescriptor(_LANDEDSTATE) LandedState = enum_type_wrapper.EnumTypeWrapper(_LANDEDSTATE) +_VTOLSTATE = _descriptor.EnumDescriptor( + name='VtolState', + full_name='mavsdk.rpc.telemetry.VtolState', + filename=None, + file=DESCRIPTOR, + create_key=_descriptor._internal_create_key, + values=[ + _descriptor.EnumValueDescriptor( + name='VTOL_STATE_UNDEFINED', index=0, number=0, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='VTOL_STATE_TRANSITION_TO_FW', index=1, number=1, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='VTOL_STATE_TRANSITION_TO_MC', index=2, number=2, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='VTOL_STATE_MC', index=3, number=3, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + _descriptor.EnumValueDescriptor( + name='VTOL_STATE_FW', index=4, number=4, + serialized_options=None, + type=None, + create_key=_descriptor._internal_create_key), + ], + containing_type=None, + serialized_options=None, + serialized_start=12572, + serialized_end=12713, +) +_sym_db.RegisterEnumDescriptor(_VTOLSTATE) + +VtolState = enum_type_wrapper.EnumTypeWrapper(_VTOLSTATE) FIX_TYPE_NO_GPS = 0 FIX_TYPE_NO_FIX = 1 FIX_TYPE_FIX_2D = 2 @@ -299,6 +340,11 @@ LANDED_STATE_IN_AIR = 2 LANDED_STATE_TAKING_OFF = 3 LANDED_STATE_LANDING = 4 +VTOL_STATE_UNDEFINED = 0 +VTOL_STATE_TRANSITION_TO_FW = 1 +VTOL_STATE_TRANSITION_TO_MC = 2 +VTOL_STATE_MC = 3 +VTOL_STATE_FW = 4 _ODOMETRY_MAVFRAME = _descriptor.EnumDescriptor( @@ -331,8 +377,8 @@ ], containing_type=None, serialized_options=None, - serialized_start=9282, - serialized_end=9388, + serialized_start=9661, + serialized_end=9767, ) _sym_db.RegisterEnumDescriptor(_ODOMETRY_MAVFRAME) @@ -386,8 +432,8 @@ ], containing_type=None, serialized_options=None, - serialized_start=11041, - serialized_end=11228, + serialized_start=11420, + serialized_end=11607, ) _sym_db.RegisterEnumDescriptor(_TELEMETRYRESULT_RESULT) @@ -677,6 +723,63 @@ ) +_SUBSCRIBEVTOLSTATEREQUEST = _descriptor.Descriptor( + name='SubscribeVtolStateRequest', + full_name='mavsdk.rpc.telemetry.SubscribeVtolStateRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=489, + serialized_end=516, +) + + +_VTOLSTATERESPONSE = _descriptor.Descriptor( + name='VtolStateResponse', + full_name='mavsdk.rpc.telemetry.VtolStateResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='vtol_state', full_name='mavsdk.rpc.telemetry.VtolStateResponse.vtol_state', index=0, + number=1, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=518, + serialized_end=590, +) + + _SUBSCRIBEATTITUDEQUATERNIONREQUEST = _descriptor.Descriptor( name='SubscribeAttitudeQuaternionRequest', full_name='mavsdk.rpc.telemetry.SubscribeAttitudeQuaternionRequest', @@ -697,8 +800,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=489, - serialized_end=525, + serialized_start=592, + serialized_end=628, ) @@ -729,8 +832,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=527, - serialized_end=618, + serialized_start=630, + serialized_end=721, ) @@ -754,8 +857,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=620, - serialized_end=651, + serialized_start=723, + serialized_end=754, ) @@ -786,8 +889,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=653, - serialized_end=734, + serialized_start=756, + serialized_end=837, ) @@ -811,8 +914,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=736, - serialized_end=781, + serialized_start=839, + serialized_end=884, ) @@ -843,8 +946,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=783, - serialized_end=903, + serialized_start=886, + serialized_end=1006, ) @@ -868,8 +971,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=905, - serialized_end=947, + serialized_start=1008, + serialized_end=1050, ) @@ -900,8 +1003,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=949, - serialized_end=1046, + serialized_start=1052, + serialized_end=1149, ) @@ -925,8 +1028,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1048, - serialized_end=1085, + serialized_start=1151, + serialized_end=1188, ) @@ -957,8 +1060,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1087, - serialized_end=1174, + serialized_start=1190, + serialized_end=1277, ) @@ -982,8 +1085,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1176, - serialized_end=1205, + serialized_start=1279, + serialized_end=1308, ) @@ -1014,8 +1117,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1207, - serialized_end=1285, + serialized_start=1310, + serialized_end=1388, ) @@ -1039,8 +1142,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1287, - serialized_end=1312, + serialized_start=1390, + serialized_end=1415, ) @@ -1071,8 +1174,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1314, - serialized_end=1380, + serialized_start=1417, + serialized_end=1483, ) @@ -1096,8 +1199,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1382, - serialized_end=1406, + serialized_start=1485, + serialized_end=1509, ) @@ -1128,8 +1231,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1408, - serialized_end=1471, + serialized_start=1511, + serialized_end=1574, ) @@ -1153,8 +1256,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1473, - serialized_end=1498, + serialized_start=1576, + serialized_end=1601, ) @@ -1185,8 +1288,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1500, - serialized_end=1565, + serialized_start=1603, + serialized_end=1668, ) @@ -1210,8 +1313,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1567, - serialized_end=1595, + serialized_start=1670, + serialized_end=1698, ) @@ -1242,8 +1345,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1597, - serialized_end=1672, + serialized_start=1700, + serialized_end=1775, ) @@ -1267,8 +1370,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1674, - serialized_end=1698, + serialized_start=1777, + serialized_end=1801, ) @@ -1299,8 +1402,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1700, - serialized_end=1762, + serialized_start=1803, + serialized_end=1865, ) @@ -1324,8 +1427,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1764, - serialized_end=1790, + serialized_start=1867, + serialized_end=1893, ) @@ -1356,8 +1459,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1792, - serialized_end=1861, + serialized_start=1895, + serialized_end=1964, ) @@ -1381,8 +1484,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1863, - serialized_end=1891, + serialized_start=1966, + serialized_end=1994, ) @@ -1413,8 +1516,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1893, - serialized_end=1968, + serialized_start=1996, + serialized_end=2071, ) @@ -1438,8 +1541,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1970, - serialized_end=2009, + serialized_start=2073, + serialized_end=2112, ) @@ -1470,8 +1573,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2011, - serialized_end=2120, + serialized_start=2114, + serialized_end=2223, ) @@ -1495,8 +1598,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2122, - serialized_end=2160, + serialized_start=2225, + serialized_end=2263, ) @@ -1527,8 +1630,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2162, - serialized_end=2268, + serialized_start=2265, + serialized_end=2371, ) @@ -1552,8 +1655,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2270, - serialized_end=2296, + serialized_start=2373, + serialized_end=2399, ) @@ -1584,8 +1687,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2298, - serialized_end=2366, + serialized_start=2401, + serialized_end=2469, ) @@ -1609,8 +1712,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2368, - serialized_end=2405, + serialized_start=2471, + serialized_end=2508, ) @@ -1641,8 +1744,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2407, - serialized_end=2510, + serialized_start=2510, + serialized_end=2613, ) @@ -1666,8 +1769,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2512, - serialized_end=2541, + serialized_start=2615, + serialized_end=2644, ) @@ -1698,8 +1801,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2543, - serialized_end=2621, + serialized_start=2646, + serialized_end=2724, ) @@ -1723,8 +1826,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2623, - serialized_end=2657, + serialized_start=2726, + serialized_end=2760, ) @@ -1755,8 +1858,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2659, - serialized_end=2752, + serialized_start=2762, + serialized_end=2855, ) @@ -1780,8 +1883,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2754, - serialized_end=2775, + serialized_start=2857, + serialized_end=2878, ) @@ -1812,8 +1915,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2777, - serialized_end=2830, + serialized_start=2880, + serialized_end=2933, ) @@ -1837,8 +1940,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2832, - serialized_end=2859, + serialized_start=2935, + serialized_end=2962, ) @@ -1869,8 +1972,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2861, - serialized_end=2920, + serialized_start=2964, + serialized_end=3023, ) @@ -1894,8 +1997,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2922, - serialized_end=2946, + serialized_start=3025, + serialized_end=3049, ) @@ -1926,8 +2029,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2948, - serialized_end=3004, + serialized_start=3051, + serialized_end=3107, ) @@ -1951,8 +2054,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=3006, - serialized_end=3035, + serialized_start=3109, + serialized_end=3138, ) @@ -1983,8 +2086,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=3037, - serialized_end=3084, + serialized_start=3140, + serialized_end=3187, ) @@ -2008,8 +2111,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=3086, - serialized_end=3117, + serialized_start=3189, + serialized_end=3220, ) @@ -2040,8 +2143,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=3119, - serialized_end=3159, + serialized_start=3222, + serialized_end=3262, ) @@ -2065,8 +2168,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=3161, - serialized_end=3193, + serialized_start=3264, + serialized_end=3296, ) @@ -2097,8 +2200,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=3195, - serialized_end=3282, + serialized_start=3298, + serialized_end=3385, ) @@ -2122,8 +2225,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=3284, - serialized_end=3316, + serialized_start=3387, + serialized_end=3419, ) @@ -2154,8 +2257,65 @@ extension_ranges=[], oneofs=[ ], - serialized_start=3318, - serialized_end=3405, + serialized_start=3421, + serialized_end=3508, +) + + +_SUBSCRIBEHEADINGREQUEST = _descriptor.Descriptor( + name='SubscribeHeadingRequest', + full_name='mavsdk.rpc.telemetry.SubscribeHeadingRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=3510, + serialized_end=3535, +) + + +_HEADINGRESPONSE = _descriptor.Descriptor( + name='HeadingResponse', + full_name='mavsdk.rpc.telemetry.HeadingResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='heading_deg', full_name='mavsdk.rpc.telemetry.HeadingResponse.heading_deg', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=3537, + serialized_end=3606, ) @@ -2186,8 +2346,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=3407, - serialized_end=3448, + serialized_start=3608, + serialized_end=3649, ) @@ -2218,8 +2378,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=3450, - serialized_end=3540, + serialized_start=3651, + serialized_end=3741, ) @@ -2250,8 +2410,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=3542, - serialized_end=3579, + serialized_start=3743, + serialized_end=3780, ) @@ -2282,8 +2442,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=3581, - serialized_end=3667, + serialized_start=3782, + serialized_end=3868, ) @@ -2314,8 +2474,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=3669, - serialized_end=3707, + serialized_start=3870, + serialized_end=3908, ) @@ -2346,8 +2506,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=3709, - serialized_end=3796, + serialized_start=3910, + serialized_end=3997, ) @@ -2378,8 +2538,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=3798, - serialized_end=3842, + serialized_start=3999, + serialized_end=4043, ) @@ -2410,8 +2570,72 @@ extension_ranges=[], oneofs=[ ], - serialized_start=3844, - serialized_end=3937, + serialized_start=4045, + serialized_end=4138, +) + + +_SETRATEVTOLSTATEREQUEST = _descriptor.Descriptor( + name='SetRateVtolStateRequest', + full_name='mavsdk.rpc.telemetry.SetRateVtolStateRequest', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='rate_hz', full_name='mavsdk.rpc.telemetry.SetRateVtolStateRequest.rate_hz', index=0, + number=1, type=1, cpp_type=5, label=1, + has_default_value=False, default_value=float(0), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=4140, + serialized_end=4182, +) + + +_SETRATEVTOLSTATERESPONSE = _descriptor.Descriptor( + name='SetRateVtolStateResponse', + full_name='mavsdk.rpc.telemetry.SetRateVtolStateResponse', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='telemetry_result', full_name='mavsdk.rpc.telemetry.SetRateVtolStateResponse.telemetry_result', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=4184, + serialized_end=4275, ) @@ -2442,8 +2666,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=3939, - serialized_end=3980, + serialized_start=4277, + serialized_end=4318, ) @@ -2474,8 +2698,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=3982, - serialized_end=4072, + serialized_start=4320, + serialized_end=4410, ) @@ -2506,8 +2730,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4074, - serialized_end=4134, + serialized_start=4412, + serialized_end=4472, ) @@ -2538,8 +2762,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4136, - serialized_end=4245, + serialized_start=4474, + serialized_end=4583, ) @@ -2570,8 +2794,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4247, - serialized_end=4304, + serialized_start=4585, + serialized_end=4642, ) @@ -2602,8 +2826,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4306, - serialized_end=4412, + serialized_start=4644, + serialized_end=4750, ) @@ -2634,8 +2858,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4414, - serialized_end=4461, + serialized_start=4752, + serialized_end=4799, ) @@ -2666,8 +2890,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4463, - serialized_end=4559, + serialized_start=4801, + serialized_end=4897, ) @@ -2698,8 +2922,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4561, - serialized_end=4605, + serialized_start=4899, + serialized_end=4943, ) @@ -2730,8 +2954,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4607, - serialized_end=4700, + serialized_start=4945, + serialized_end=5038, ) @@ -2762,8 +2986,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4702, - serialized_end=4742, + serialized_start=5040, + serialized_end=5080, ) @@ -2794,8 +3018,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4744, - serialized_end=4833, + serialized_start=5082, + serialized_end=5171, ) @@ -2826,8 +3050,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4835, - serialized_end=4874, + serialized_start=5173, + serialized_end=5212, ) @@ -2858,8 +3082,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4876, - serialized_end=4916, + serialized_start=5214, + serialized_end=5254, ) @@ -2890,8 +3114,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4918, - serialized_end=5007, + serialized_start=5256, + serialized_end=5345, ) @@ -2922,8 +3146,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5009, - serialized_end=5050, + serialized_start=5347, + serialized_end=5388, ) @@ -2954,8 +3178,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5052, - serialized_end=5142, + serialized_start=5390, + serialized_end=5480, ) @@ -2986,8 +3210,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5144, - serialized_end=5198, + serialized_start=5482, + serialized_end=5536, ) @@ -3018,8 +3242,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5200, - serialized_end=5303, + serialized_start=5538, + serialized_end=5641, ) @@ -3050,8 +3274,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5305, - serialized_end=5358, + serialized_start=5643, + serialized_end=5696, ) @@ -3082,8 +3306,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5360, - serialized_end=5462, + serialized_start=5698, + serialized_end=5800, ) @@ -3114,8 +3338,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5464, - serialized_end=5505, + serialized_start=5802, + serialized_end=5843, ) @@ -3146,8 +3370,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5507, - serialized_end=5597, + serialized_start=5845, + serialized_end=5935, ) @@ -3178,8 +3402,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5599, - serialized_end=5651, + serialized_start=5937, + serialized_end=5989, ) @@ -3210,8 +3434,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5653, - serialized_end=5754, + serialized_start=5991, + serialized_end=6092, ) @@ -3242,8 +3466,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5756, - serialized_end=5800, + serialized_start=6094, + serialized_end=6138, ) @@ -3274,8 +3498,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5802, - serialized_end=5895, + serialized_start=6140, + serialized_end=6233, ) @@ -3306,8 +3530,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5897, - serialized_end=5946, + serialized_start=6235, + serialized_end=6284, ) @@ -3338,8 +3562,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5948, - serialized_end=6046, + serialized_start=6286, + serialized_end=6384, ) @@ -3370,8 +3594,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=6048, - serialized_end=6084, + serialized_start=6386, + serialized_end=6422, ) @@ -3402,8 +3626,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=6086, - serialized_end=6171, + serialized_start=6424, + serialized_end=6509, ) @@ -3434,8 +3658,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=6173, - serialized_end=6215, + serialized_start=6511, + serialized_end=6553, ) @@ -3466,8 +3690,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=6217, - serialized_end=6308, + serialized_start=6555, + serialized_end=6646, ) @@ -3498,8 +3722,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=6310, - serialized_end=6349, + serialized_start=6648, + serialized_end=6687, ) @@ -3530,8 +3754,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=6351, - serialized_end=6439, + serialized_start=6689, + serialized_end=6777, ) @@ -3562,8 +3786,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=6441, - serialized_end=6487, + serialized_start=6779, + serialized_end=6825, ) @@ -3594,8 +3818,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=6489, - serialized_end=6584, + serialized_start=6827, + serialized_end=6922, ) @@ -3626,8 +3850,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=6586, - serialized_end=6633, + serialized_start=6924, + serialized_end=6971, ) @@ -3658,8 +3882,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=6635, - serialized_end=6731, + serialized_start=6973, + serialized_end=7069, ) @@ -3683,8 +3907,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=6733, - serialized_end=6760, + serialized_start=7071, + serialized_end=7098, ) @@ -3722,8 +3946,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=6763, - serialized_end=6922, + serialized_start=7101, + serialized_end=7260, ) @@ -3775,8 +3999,40 @@ extension_ranges=[], oneofs=[ ], - serialized_start=6925, - serialized_end=7074, + serialized_start=7263, + serialized_end=7412, +) + + +_HEADING = _descriptor.Descriptor( + name='Heading', + full_name='mavsdk.rpc.telemetry.Heading', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='heading_deg', full_name='mavsdk.rpc.telemetry.Heading.heading_deg', index=0, + number=1, type=1, cpp_type=5, label=1, + has_default_value=False, default_value=float(0), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=b'\202\265\030\003NaN', file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=7414, + serialized_end=7453, ) @@ -3835,8 +4091,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=7076, - serialized_end=7190, + serialized_start=7455, + serialized_end=7569, ) @@ -3888,8 +4144,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=7192, - serialized_end=7307, + serialized_start=7571, + serialized_end=7686, ) @@ -3934,8 +4190,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=7309, - serialized_end=7417, + serialized_start=7688, + serialized_end=7796, ) @@ -3973,8 +4229,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=7419, - serialized_end=7508, + serialized_start=7798, + serialized_end=7887, ) @@ -4096,8 +4352,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=7511, - serialized_end=7862, + serialized_start=7890, + serialized_end=8241, ) @@ -4142,8 +4398,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=7864, - serialized_end=7956, + serialized_start=8243, + serialized_end=8335, ) @@ -4216,8 +4472,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=7959, - serialized_end=8272, + serialized_start=8338, + serialized_end=8651, ) @@ -4262,8 +4518,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=8274, - serialized_end=8398, + serialized_start=8653, + serialized_end=8777, ) @@ -4301,8 +4557,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=8400, - serialized_end=8478, + serialized_start=8779, + serialized_end=8857, ) @@ -4340,8 +4596,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=8480, - serialized_end=8543, + serialized_start=8859, + serialized_end=8922, ) @@ -4379,8 +4635,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=8545, - serialized_end=8608, + serialized_start=8924, + serialized_end=8987, ) @@ -4411,8 +4667,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=8610, - serialized_end=8649, + serialized_start=8989, + serialized_end=9028, ) @@ -4457,8 +4713,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=8651, - serialized_end=8710, + serialized_start=9030, + serialized_end=9089, ) @@ -4503,8 +4759,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=8712, - serialized_end=8765, + serialized_start=9091, + serialized_end=9144, ) @@ -4592,8 +4848,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=8768, - serialized_end=9388, + serialized_start=9147, + serialized_end=9767, ) @@ -4638,8 +4894,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=9390, - serialized_end=9517, + serialized_start=9769, + serialized_end=9896, ) @@ -4698,8 +4954,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=9520, - serialized_end=9696, + serialized_start=9899, + serialized_end=10075, ) @@ -4744,8 +5000,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=9698, - serialized_end=9787, + serialized_start=10077, + serialized_end=10166, ) @@ -4790,8 +5046,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=9789, - serialized_end=9857, + serialized_start=10168, + serialized_end=10236, ) @@ -4829,8 +5085,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=9859, - serialized_end=9986, + serialized_start=10238, + serialized_end=10365, ) @@ -4875,8 +5131,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=9988, - serialized_end=10102, + serialized_start=10367, + serialized_end=10481, ) @@ -4921,8 +5177,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=10104, - serialized_end=10224, + serialized_start=10483, + serialized_end=10603, ) @@ -4967,8 +5223,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=10226, - serialized_end=10331, + serialized_start=10605, + serialized_end=10710, ) @@ -5013,8 +5269,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=10333, - serialized_end=10444, + serialized_start=10712, + serialized_end=10823, ) @@ -5059,8 +5315,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=10446, - serialized_end=10555, + serialized_start=10825, + serialized_end=10934, ) @@ -5119,8 +5375,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=10558, - serialized_end=10825, + serialized_start=10937, + serialized_end=11204, ) @@ -5165,8 +5421,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=10827, - serialized_end=10936, + serialized_start=11206, + serialized_end=11315, ) @@ -5205,13 +5461,14 @@ extension_ranges=[], oneofs=[ ], - serialized_start=10939, - serialized_end=11228, + serialized_start=11318, + serialized_end=11607, ) _POSITIONRESPONSE.fields_by_name['position'].message_type = _POSITION _HOMERESPONSE.fields_by_name['home'].message_type = _POSITION _LANDEDSTATERESPONSE.fields_by_name['landed_state'].enum_type = _LANDEDSTATE +_VTOLSTATERESPONSE.fields_by_name['vtol_state'].enum_type = _VTOLSTATE _ATTITUDEQUATERNIONRESPONSE.fields_by_name['attitude_quaternion'].message_type = _QUATERNION _ATTITUDEEULERRESPONSE.fields_by_name['attitude_euler'].message_type = _EULERANGLE _ATTITUDEANGULARVELOCITYBODYRESPONSE.fields_by_name['attitude_angular_velocity_body'].message_type = _ANGULARVELOCITYBODY @@ -5236,10 +5493,12 @@ _RAWIMURESPONSE.fields_by_name['imu'].message_type = _IMU _DISTANCESENSORRESPONSE.fields_by_name['distance_sensor'].message_type = _DISTANCESENSOR _SCALEDPRESSURERESPONSE.fields_by_name['scaled_pressure'].message_type = _SCALEDPRESSURE +_HEADINGRESPONSE.fields_by_name['heading_deg'].message_type = _HEADING _SETRATEPOSITIONRESPONSE.fields_by_name['telemetry_result'].message_type = _TELEMETRYRESULT _SETRATEHOMERESPONSE.fields_by_name['telemetry_result'].message_type = _TELEMETRYRESULT _SETRATEINAIRRESPONSE.fields_by_name['telemetry_result'].message_type = _TELEMETRYRESULT _SETRATELANDEDSTATERESPONSE.fields_by_name['telemetry_result'].message_type = _TELEMETRYRESULT +_SETRATEVTOLSTATERESPONSE.fields_by_name['telemetry_result'].message_type = _TELEMETRYRESULT _SETRATEATTITUDERESPONSE.fields_by_name['telemetry_result'].message_type = _TELEMETRYRESULT _SETRATEATTITUDEANGULARVELOCITYBODYRESPONSE.fields_by_name['telemetry_result'].message_type = _TELEMETRYRESULT _SETRATECAMERAATTITUDEQUATERNIONRESPONSE.fields_by_name['telemetry_result'].message_type = _TELEMETRYRESULT @@ -5289,6 +5548,8 @@ DESCRIPTOR.message_types_by_name['LandedStateResponse'] = _LANDEDSTATERESPONSE DESCRIPTOR.message_types_by_name['SubscribeArmedRequest'] = _SUBSCRIBEARMEDREQUEST DESCRIPTOR.message_types_by_name['ArmedResponse'] = _ARMEDRESPONSE +DESCRIPTOR.message_types_by_name['SubscribeVtolStateRequest'] = _SUBSCRIBEVTOLSTATEREQUEST +DESCRIPTOR.message_types_by_name['VtolStateResponse'] = _VTOLSTATERESPONSE DESCRIPTOR.message_types_by_name['SubscribeAttitudeQuaternionRequest'] = _SUBSCRIBEATTITUDEQUATERNIONREQUEST DESCRIPTOR.message_types_by_name['AttitudeQuaternionResponse'] = _ATTITUDEQUATERNIONRESPONSE DESCRIPTOR.message_types_by_name['SubscribeAttitudeEulerRequest'] = _SUBSCRIBEATTITUDEEULERREQUEST @@ -5341,6 +5602,8 @@ DESCRIPTOR.message_types_by_name['DistanceSensorResponse'] = _DISTANCESENSORRESPONSE DESCRIPTOR.message_types_by_name['SubscribeScaledPressureRequest'] = _SUBSCRIBESCALEDPRESSUREREQUEST DESCRIPTOR.message_types_by_name['ScaledPressureResponse'] = _SCALEDPRESSURERESPONSE +DESCRIPTOR.message_types_by_name['SubscribeHeadingRequest'] = _SUBSCRIBEHEADINGREQUEST +DESCRIPTOR.message_types_by_name['HeadingResponse'] = _HEADINGRESPONSE DESCRIPTOR.message_types_by_name['SetRatePositionRequest'] = _SETRATEPOSITIONREQUEST DESCRIPTOR.message_types_by_name['SetRatePositionResponse'] = _SETRATEPOSITIONRESPONSE DESCRIPTOR.message_types_by_name['SetRateHomeRequest'] = _SETRATEHOMEREQUEST @@ -5349,6 +5612,8 @@ DESCRIPTOR.message_types_by_name['SetRateInAirResponse'] = _SETRATEINAIRRESPONSE DESCRIPTOR.message_types_by_name['SetRateLandedStateRequest'] = _SETRATELANDEDSTATEREQUEST DESCRIPTOR.message_types_by_name['SetRateLandedStateResponse'] = _SETRATELANDEDSTATERESPONSE +DESCRIPTOR.message_types_by_name['SetRateVtolStateRequest'] = _SETRATEVTOLSTATEREQUEST +DESCRIPTOR.message_types_by_name['SetRateVtolStateResponse'] = _SETRATEVTOLSTATERESPONSE DESCRIPTOR.message_types_by_name['SetRateAttitudeRequest'] = _SETRATEATTITUDEREQUEST DESCRIPTOR.message_types_by_name['SetRateAttitudeResponse'] = _SETRATEATTITUDERESPONSE DESCRIPTOR.message_types_by_name['SetRateAttitudeAngularVelocityBodyRequest'] = _SETRATEATTITUDEANGULARVELOCITYBODYREQUEST @@ -5391,6 +5656,7 @@ DESCRIPTOR.message_types_by_name['GetGpsGlobalOriginRequest'] = _GETGPSGLOBALORIGINREQUEST DESCRIPTOR.message_types_by_name['GetGpsGlobalOriginResponse'] = _GETGPSGLOBALORIGINRESPONSE DESCRIPTOR.message_types_by_name['Position'] = _POSITION +DESCRIPTOR.message_types_by_name['Heading'] = _HEADING DESCRIPTOR.message_types_by_name['Quaternion'] = _QUATERNION DESCRIPTOR.message_types_by_name['EulerAngle'] = _EULERANGLE DESCRIPTOR.message_types_by_name['AngularVelocityBody'] = _ANGULARVELOCITYBODY @@ -5423,6 +5689,7 @@ DESCRIPTOR.enum_types_by_name['FlightMode'] = _FLIGHTMODE DESCRIPTOR.enum_types_by_name['StatusTextType'] = _STATUSTEXTTYPE DESCRIPTOR.enum_types_by_name['LandedState'] = _LANDEDSTATE +DESCRIPTOR.enum_types_by_name['VtolState'] = _VTOLSTATE _sym_db.RegisterFileDescriptor(DESCRIPTOR) SubscribePositionRequest = _reflection.GeneratedProtocolMessageType('SubscribePositionRequest', (_message.Message,), { @@ -5495,6 +5762,20 @@ }) _sym_db.RegisterMessage(ArmedResponse) +SubscribeVtolStateRequest = _reflection.GeneratedProtocolMessageType('SubscribeVtolStateRequest', (_message.Message,), { + 'DESCRIPTOR' : _SUBSCRIBEVTOLSTATEREQUEST, + '__module__' : 'telemetry.telemetry_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.telemetry.SubscribeVtolStateRequest) + }) +_sym_db.RegisterMessage(SubscribeVtolStateRequest) + +VtolStateResponse = _reflection.GeneratedProtocolMessageType('VtolStateResponse', (_message.Message,), { + 'DESCRIPTOR' : _VTOLSTATERESPONSE, + '__module__' : 'telemetry.telemetry_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.telemetry.VtolStateResponse) + }) +_sym_db.RegisterMessage(VtolStateResponse) + SubscribeAttitudeQuaternionRequest = _reflection.GeneratedProtocolMessageType('SubscribeAttitudeQuaternionRequest', (_message.Message,), { 'DESCRIPTOR' : _SUBSCRIBEATTITUDEQUATERNIONREQUEST, '__module__' : 'telemetry.telemetry_pb2' @@ -5859,6 +6140,20 @@ }) _sym_db.RegisterMessage(ScaledPressureResponse) +SubscribeHeadingRequest = _reflection.GeneratedProtocolMessageType('SubscribeHeadingRequest', (_message.Message,), { + 'DESCRIPTOR' : _SUBSCRIBEHEADINGREQUEST, + '__module__' : 'telemetry.telemetry_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.telemetry.SubscribeHeadingRequest) + }) +_sym_db.RegisterMessage(SubscribeHeadingRequest) + +HeadingResponse = _reflection.GeneratedProtocolMessageType('HeadingResponse', (_message.Message,), { + 'DESCRIPTOR' : _HEADINGRESPONSE, + '__module__' : 'telemetry.telemetry_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.telemetry.HeadingResponse) + }) +_sym_db.RegisterMessage(HeadingResponse) + SetRatePositionRequest = _reflection.GeneratedProtocolMessageType('SetRatePositionRequest', (_message.Message,), { 'DESCRIPTOR' : _SETRATEPOSITIONREQUEST, '__module__' : 'telemetry.telemetry_pb2' @@ -5915,6 +6210,20 @@ }) _sym_db.RegisterMessage(SetRateLandedStateResponse) +SetRateVtolStateRequest = _reflection.GeneratedProtocolMessageType('SetRateVtolStateRequest', (_message.Message,), { + 'DESCRIPTOR' : _SETRATEVTOLSTATEREQUEST, + '__module__' : 'telemetry.telemetry_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.telemetry.SetRateVtolStateRequest) + }) +_sym_db.RegisterMessage(SetRateVtolStateRequest) + +SetRateVtolStateResponse = _reflection.GeneratedProtocolMessageType('SetRateVtolStateResponse', (_message.Message,), { + 'DESCRIPTOR' : _SETRATEVTOLSTATERESPONSE, + '__module__' : 'telemetry.telemetry_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.telemetry.SetRateVtolStateResponse) + }) +_sym_db.RegisterMessage(SetRateVtolStateResponse) + SetRateAttitudeRequest = _reflection.GeneratedProtocolMessageType('SetRateAttitudeRequest', (_message.Message,), { 'DESCRIPTOR' : _SETRATEATTITUDEREQUEST, '__module__' : 'telemetry.telemetry_pb2' @@ -6209,6 +6518,13 @@ }) _sym_db.RegisterMessage(Position) +Heading = _reflection.GeneratedProtocolMessageType('Heading', (_message.Message,), { + 'DESCRIPTOR' : _HEADING, + '__module__' : 'telemetry.telemetry_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.telemetry.Heading) + }) +_sym_db.RegisterMessage(Heading) + Quaternion = _reflection.GeneratedProtocolMessageType('Quaternion', (_message.Message,), { 'DESCRIPTOR' : _QUATERNION, '__module__' : 'telemetry.telemetry_pb2' @@ -6411,6 +6727,7 @@ _POSITION.fields_by_name['longitude_deg']._options = None _POSITION.fields_by_name['absolute_altitude_m']._options = None _POSITION.fields_by_name['relative_altitude_m']._options = None +_HEADING.fields_by_name['heading_deg']._options = None _QUATERNION.fields_by_name['w']._options = None _QUATERNION.fields_by_name['x']._options = None _QUATERNION.fields_by_name['y']._options = None @@ -6470,8 +6787,8 @@ index=0, serialized_options=None, create_key=_descriptor._internal_create_key, - serialized_start=12193, - serialized_end=18760, + serialized_start=12716, + serialized_end=19626, methods=[ _descriptor.MethodDescriptor( name='SubscribePosition', @@ -6523,10 +6840,20 @@ serialized_options=None, create_key=_descriptor._internal_create_key, ), + _descriptor.MethodDescriptor( + name='SubscribeVtolState', + full_name='mavsdk.rpc.telemetry.TelemetryService.SubscribeVtolState', + index=5, + containing_service=None, + input_type=_SUBSCRIBEVTOLSTATEREQUEST, + output_type=_VTOLSTATERESPONSE, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), _descriptor.MethodDescriptor( name='SubscribeAttitudeQuaternion', full_name='mavsdk.rpc.telemetry.TelemetryService.SubscribeAttitudeQuaternion', - index=5, + index=6, containing_service=None, input_type=_SUBSCRIBEATTITUDEQUATERNIONREQUEST, output_type=_ATTITUDEQUATERNIONRESPONSE, @@ -6536,7 +6863,7 @@ _descriptor.MethodDescriptor( name='SubscribeAttitudeEuler', full_name='mavsdk.rpc.telemetry.TelemetryService.SubscribeAttitudeEuler', - index=6, + index=7, containing_service=None, input_type=_SUBSCRIBEATTITUDEEULERREQUEST, output_type=_ATTITUDEEULERRESPONSE, @@ -6546,7 +6873,7 @@ _descriptor.MethodDescriptor( name='SubscribeAttitudeAngularVelocityBody', full_name='mavsdk.rpc.telemetry.TelemetryService.SubscribeAttitudeAngularVelocityBody', - index=7, + index=8, containing_service=None, input_type=_SUBSCRIBEATTITUDEANGULARVELOCITYBODYREQUEST, output_type=_ATTITUDEANGULARVELOCITYBODYRESPONSE, @@ -6556,7 +6883,7 @@ _descriptor.MethodDescriptor( name='SubscribeCameraAttitudeQuaternion', full_name='mavsdk.rpc.telemetry.TelemetryService.SubscribeCameraAttitudeQuaternion', - index=8, + index=9, containing_service=None, input_type=_SUBSCRIBECAMERAATTITUDEQUATERNIONREQUEST, output_type=_CAMERAATTITUDEQUATERNIONRESPONSE, @@ -6566,7 +6893,7 @@ _descriptor.MethodDescriptor( name='SubscribeCameraAttitudeEuler', full_name='mavsdk.rpc.telemetry.TelemetryService.SubscribeCameraAttitudeEuler', - index=9, + index=10, containing_service=None, input_type=_SUBSCRIBECAMERAATTITUDEEULERREQUEST, output_type=_CAMERAATTITUDEEULERRESPONSE, @@ -6576,7 +6903,7 @@ _descriptor.MethodDescriptor( name='SubscribeVelocityNed', full_name='mavsdk.rpc.telemetry.TelemetryService.SubscribeVelocityNed', - index=10, + index=11, containing_service=None, input_type=_SUBSCRIBEVELOCITYNEDREQUEST, output_type=_VELOCITYNEDRESPONSE, @@ -6586,7 +6913,7 @@ _descriptor.MethodDescriptor( name='SubscribeGpsInfo', full_name='mavsdk.rpc.telemetry.TelemetryService.SubscribeGpsInfo', - index=11, + index=12, containing_service=None, input_type=_SUBSCRIBEGPSINFOREQUEST, output_type=_GPSINFORESPONSE, @@ -6596,7 +6923,7 @@ _descriptor.MethodDescriptor( name='SubscribeRawGps', full_name='mavsdk.rpc.telemetry.TelemetryService.SubscribeRawGps', - index=12, + index=13, containing_service=None, input_type=_SUBSCRIBERAWGPSREQUEST, output_type=_RAWGPSRESPONSE, @@ -6606,7 +6933,7 @@ _descriptor.MethodDescriptor( name='SubscribeBattery', full_name='mavsdk.rpc.telemetry.TelemetryService.SubscribeBattery', - index=13, + index=14, containing_service=None, input_type=_SUBSCRIBEBATTERYREQUEST, output_type=_BATTERYRESPONSE, @@ -6616,7 +6943,7 @@ _descriptor.MethodDescriptor( name='SubscribeFlightMode', full_name='mavsdk.rpc.telemetry.TelemetryService.SubscribeFlightMode', - index=14, + index=15, containing_service=None, input_type=_SUBSCRIBEFLIGHTMODEREQUEST, output_type=_FLIGHTMODERESPONSE, @@ -6626,7 +6953,7 @@ _descriptor.MethodDescriptor( name='SubscribeHealth', full_name='mavsdk.rpc.telemetry.TelemetryService.SubscribeHealth', - index=15, + index=16, containing_service=None, input_type=_SUBSCRIBEHEALTHREQUEST, output_type=_HEALTHRESPONSE, @@ -6636,7 +6963,7 @@ _descriptor.MethodDescriptor( name='SubscribeRcStatus', full_name='mavsdk.rpc.telemetry.TelemetryService.SubscribeRcStatus', - index=16, + index=17, containing_service=None, input_type=_SUBSCRIBERCSTATUSREQUEST, output_type=_RCSTATUSRESPONSE, @@ -6646,7 +6973,7 @@ _descriptor.MethodDescriptor( name='SubscribeStatusText', full_name='mavsdk.rpc.telemetry.TelemetryService.SubscribeStatusText', - index=17, + index=18, containing_service=None, input_type=_SUBSCRIBESTATUSTEXTREQUEST, output_type=_STATUSTEXTRESPONSE, @@ -6656,7 +6983,7 @@ _descriptor.MethodDescriptor( name='SubscribeActuatorControlTarget', full_name='mavsdk.rpc.telemetry.TelemetryService.SubscribeActuatorControlTarget', - index=18, + index=19, containing_service=None, input_type=_SUBSCRIBEACTUATORCONTROLTARGETREQUEST, output_type=_ACTUATORCONTROLTARGETRESPONSE, @@ -6666,7 +6993,7 @@ _descriptor.MethodDescriptor( name='SubscribeActuatorOutputStatus', full_name='mavsdk.rpc.telemetry.TelemetryService.SubscribeActuatorOutputStatus', - index=19, + index=20, containing_service=None, input_type=_SUBSCRIBEACTUATOROUTPUTSTATUSREQUEST, output_type=_ACTUATOROUTPUTSTATUSRESPONSE, @@ -6676,7 +7003,7 @@ _descriptor.MethodDescriptor( name='SubscribeOdometry', full_name='mavsdk.rpc.telemetry.TelemetryService.SubscribeOdometry', - index=20, + index=21, containing_service=None, input_type=_SUBSCRIBEODOMETRYREQUEST, output_type=_ODOMETRYRESPONSE, @@ -6686,7 +7013,7 @@ _descriptor.MethodDescriptor( name='SubscribePositionVelocityNed', full_name='mavsdk.rpc.telemetry.TelemetryService.SubscribePositionVelocityNed', - index=21, + index=22, containing_service=None, input_type=_SUBSCRIBEPOSITIONVELOCITYNEDREQUEST, output_type=_POSITIONVELOCITYNEDRESPONSE, @@ -6696,7 +7023,7 @@ _descriptor.MethodDescriptor( name='SubscribeGroundTruth', full_name='mavsdk.rpc.telemetry.TelemetryService.SubscribeGroundTruth', - index=22, + index=23, containing_service=None, input_type=_SUBSCRIBEGROUNDTRUTHREQUEST, output_type=_GROUNDTRUTHRESPONSE, @@ -6706,7 +7033,7 @@ _descriptor.MethodDescriptor( name='SubscribeFixedwingMetrics', full_name='mavsdk.rpc.telemetry.TelemetryService.SubscribeFixedwingMetrics', - index=23, + index=24, containing_service=None, input_type=_SUBSCRIBEFIXEDWINGMETRICSREQUEST, output_type=_FIXEDWINGMETRICSRESPONSE, @@ -6716,7 +7043,7 @@ _descriptor.MethodDescriptor( name='SubscribeImu', full_name='mavsdk.rpc.telemetry.TelemetryService.SubscribeImu', - index=24, + index=25, containing_service=None, input_type=_SUBSCRIBEIMUREQUEST, output_type=_IMURESPONSE, @@ -6726,7 +7053,7 @@ _descriptor.MethodDescriptor( name='SubscribeScaledImu', full_name='mavsdk.rpc.telemetry.TelemetryService.SubscribeScaledImu', - index=25, + index=26, containing_service=None, input_type=_SUBSCRIBESCALEDIMUREQUEST, output_type=_SCALEDIMURESPONSE, @@ -6736,7 +7063,7 @@ _descriptor.MethodDescriptor( name='SubscribeRawImu', full_name='mavsdk.rpc.telemetry.TelemetryService.SubscribeRawImu', - index=26, + index=27, containing_service=None, input_type=_SUBSCRIBERAWIMUREQUEST, output_type=_RAWIMURESPONSE, @@ -6746,7 +7073,7 @@ _descriptor.MethodDescriptor( name='SubscribeHealthAllOk', full_name='mavsdk.rpc.telemetry.TelemetryService.SubscribeHealthAllOk', - index=27, + index=28, containing_service=None, input_type=_SUBSCRIBEHEALTHALLOKREQUEST, output_type=_HEALTHALLOKRESPONSE, @@ -6756,7 +7083,7 @@ _descriptor.MethodDescriptor( name='SubscribeUnixEpochTime', full_name='mavsdk.rpc.telemetry.TelemetryService.SubscribeUnixEpochTime', - index=28, + index=29, containing_service=None, input_type=_SUBSCRIBEUNIXEPOCHTIMEREQUEST, output_type=_UNIXEPOCHTIMERESPONSE, @@ -6766,7 +7093,7 @@ _descriptor.MethodDescriptor( name='SubscribeDistanceSensor', full_name='mavsdk.rpc.telemetry.TelemetryService.SubscribeDistanceSensor', - index=29, + index=30, containing_service=None, input_type=_SUBSCRIBEDISTANCESENSORREQUEST, output_type=_DISTANCESENSORRESPONSE, @@ -6776,17 +7103,27 @@ _descriptor.MethodDescriptor( name='SubscribeScaledPressure', full_name='mavsdk.rpc.telemetry.TelemetryService.SubscribeScaledPressure', - index=30, + index=31, containing_service=None, input_type=_SUBSCRIBESCALEDPRESSUREREQUEST, output_type=_SCALEDPRESSURERESPONSE, serialized_options=None, create_key=_descriptor._internal_create_key, ), + _descriptor.MethodDescriptor( + name='SubscribeHeading', + full_name='mavsdk.rpc.telemetry.TelemetryService.SubscribeHeading', + index=32, + containing_service=None, + input_type=_SUBSCRIBEHEADINGREQUEST, + output_type=_HEADINGRESPONSE, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), _descriptor.MethodDescriptor( name='SetRatePosition', full_name='mavsdk.rpc.telemetry.TelemetryService.SetRatePosition', - index=31, + index=33, containing_service=None, input_type=_SETRATEPOSITIONREQUEST, output_type=_SETRATEPOSITIONRESPONSE, @@ -6796,7 +7133,7 @@ _descriptor.MethodDescriptor( name='SetRateHome', full_name='mavsdk.rpc.telemetry.TelemetryService.SetRateHome', - index=32, + index=34, containing_service=None, input_type=_SETRATEHOMEREQUEST, output_type=_SETRATEHOMERESPONSE, @@ -6806,7 +7143,7 @@ _descriptor.MethodDescriptor( name='SetRateInAir', full_name='mavsdk.rpc.telemetry.TelemetryService.SetRateInAir', - index=33, + index=35, containing_service=None, input_type=_SETRATEINAIRREQUEST, output_type=_SETRATEINAIRRESPONSE, @@ -6816,17 +7153,27 @@ _descriptor.MethodDescriptor( name='SetRateLandedState', full_name='mavsdk.rpc.telemetry.TelemetryService.SetRateLandedState', - index=34, + index=36, containing_service=None, input_type=_SETRATELANDEDSTATEREQUEST, output_type=_SETRATELANDEDSTATERESPONSE, serialized_options=None, create_key=_descriptor._internal_create_key, ), + _descriptor.MethodDescriptor( + name='SetRateVtolState', + full_name='mavsdk.rpc.telemetry.TelemetryService.SetRateVtolState', + index=37, + containing_service=None, + input_type=_SETRATEVTOLSTATEREQUEST, + output_type=_SETRATEVTOLSTATERESPONSE, + serialized_options=None, + create_key=_descriptor._internal_create_key, + ), _descriptor.MethodDescriptor( name='SetRateAttitude', full_name='mavsdk.rpc.telemetry.TelemetryService.SetRateAttitude', - index=35, + index=38, containing_service=None, input_type=_SETRATEATTITUDEREQUEST, output_type=_SETRATEATTITUDERESPONSE, @@ -6836,7 +7183,7 @@ _descriptor.MethodDescriptor( name='SetRateCameraAttitude', full_name='mavsdk.rpc.telemetry.TelemetryService.SetRateCameraAttitude', - index=36, + index=39, containing_service=None, input_type=_SETRATECAMERAATTITUDEREQUEST, output_type=_SETRATECAMERAATTITUDERESPONSE, @@ -6846,7 +7193,7 @@ _descriptor.MethodDescriptor( name='SetRateVelocityNed', full_name='mavsdk.rpc.telemetry.TelemetryService.SetRateVelocityNed', - index=37, + index=40, containing_service=None, input_type=_SETRATEVELOCITYNEDREQUEST, output_type=_SETRATEVELOCITYNEDRESPONSE, @@ -6856,7 +7203,7 @@ _descriptor.MethodDescriptor( name='SetRateGpsInfo', full_name='mavsdk.rpc.telemetry.TelemetryService.SetRateGpsInfo', - index=38, + index=41, containing_service=None, input_type=_SETRATEGPSINFOREQUEST, output_type=_SETRATEGPSINFORESPONSE, @@ -6866,7 +7213,7 @@ _descriptor.MethodDescriptor( name='SetRateBattery', full_name='mavsdk.rpc.telemetry.TelemetryService.SetRateBattery', - index=39, + index=42, containing_service=None, input_type=_SETRATEBATTERYREQUEST, output_type=_SETRATEBATTERYRESPONSE, @@ -6876,7 +7223,7 @@ _descriptor.MethodDescriptor( name='SetRateRcStatus', full_name='mavsdk.rpc.telemetry.TelemetryService.SetRateRcStatus', - index=40, + index=43, containing_service=None, input_type=_SETRATERCSTATUSREQUEST, output_type=_SETRATERCSTATUSRESPONSE, @@ -6886,7 +7233,7 @@ _descriptor.MethodDescriptor( name='SetRateActuatorControlTarget', full_name='mavsdk.rpc.telemetry.TelemetryService.SetRateActuatorControlTarget', - index=41, + index=44, containing_service=None, input_type=_SETRATEACTUATORCONTROLTARGETREQUEST, output_type=_SETRATEACTUATORCONTROLTARGETRESPONSE, @@ -6896,7 +7243,7 @@ _descriptor.MethodDescriptor( name='SetRateActuatorOutputStatus', full_name='mavsdk.rpc.telemetry.TelemetryService.SetRateActuatorOutputStatus', - index=42, + index=45, containing_service=None, input_type=_SETRATEACTUATOROUTPUTSTATUSREQUEST, output_type=_SETRATEACTUATOROUTPUTSTATUSRESPONSE, @@ -6906,7 +7253,7 @@ _descriptor.MethodDescriptor( name='SetRateOdometry', full_name='mavsdk.rpc.telemetry.TelemetryService.SetRateOdometry', - index=43, + index=46, containing_service=None, input_type=_SETRATEODOMETRYREQUEST, output_type=_SETRATEODOMETRYRESPONSE, @@ -6916,7 +7263,7 @@ _descriptor.MethodDescriptor( name='SetRatePositionVelocityNed', full_name='mavsdk.rpc.telemetry.TelemetryService.SetRatePositionVelocityNed', - index=44, + index=47, containing_service=None, input_type=_SETRATEPOSITIONVELOCITYNEDREQUEST, output_type=_SETRATEPOSITIONVELOCITYNEDRESPONSE, @@ -6926,7 +7273,7 @@ _descriptor.MethodDescriptor( name='SetRateGroundTruth', full_name='mavsdk.rpc.telemetry.TelemetryService.SetRateGroundTruth', - index=45, + index=48, containing_service=None, input_type=_SETRATEGROUNDTRUTHREQUEST, output_type=_SETRATEGROUNDTRUTHRESPONSE, @@ -6936,7 +7283,7 @@ _descriptor.MethodDescriptor( name='SetRateFixedwingMetrics', full_name='mavsdk.rpc.telemetry.TelemetryService.SetRateFixedwingMetrics', - index=46, + index=49, containing_service=None, input_type=_SETRATEFIXEDWINGMETRICSREQUEST, output_type=_SETRATEFIXEDWINGMETRICSRESPONSE, @@ -6946,7 +7293,7 @@ _descriptor.MethodDescriptor( name='SetRateImu', full_name='mavsdk.rpc.telemetry.TelemetryService.SetRateImu', - index=47, + index=50, containing_service=None, input_type=_SETRATEIMUREQUEST, output_type=_SETRATEIMURESPONSE, @@ -6956,7 +7303,7 @@ _descriptor.MethodDescriptor( name='SetRateScaledImu', full_name='mavsdk.rpc.telemetry.TelemetryService.SetRateScaledImu', - index=48, + index=51, containing_service=None, input_type=_SETRATESCALEDIMUREQUEST, output_type=_SETRATESCALEDIMURESPONSE, @@ -6966,7 +7313,7 @@ _descriptor.MethodDescriptor( name='SetRateRawImu', full_name='mavsdk.rpc.telemetry.TelemetryService.SetRateRawImu', - index=49, + index=52, containing_service=None, input_type=_SETRATERAWIMUREQUEST, output_type=_SETRATERAWIMURESPONSE, @@ -6976,7 +7323,7 @@ _descriptor.MethodDescriptor( name='SetRateUnixEpochTime', full_name='mavsdk.rpc.telemetry.TelemetryService.SetRateUnixEpochTime', - index=50, + index=53, containing_service=None, input_type=_SETRATEUNIXEPOCHTIMEREQUEST, output_type=_SETRATEUNIXEPOCHTIMERESPONSE, @@ -6986,7 +7333,7 @@ _descriptor.MethodDescriptor( name='SetRateDistanceSensor', full_name='mavsdk.rpc.telemetry.TelemetryService.SetRateDistanceSensor', - index=51, + index=54, containing_service=None, input_type=_SETRATEDISTANCESENSORREQUEST, output_type=_SETRATEDISTANCESENSORRESPONSE, @@ -6996,7 +7343,7 @@ _descriptor.MethodDescriptor( name='GetGpsGlobalOrigin', full_name='mavsdk.rpc.telemetry.TelemetryService.GetGpsGlobalOrigin', - index=52, + index=55, containing_service=None, input_type=_GETGPSGLOBALORIGINREQUEST, output_type=_GETGPSGLOBALORIGINRESPONSE, diff --git a/mavsdk/telemetry_pb2_grpc.py b/mavsdk/telemetry_pb2_grpc.py index 5a63ca5a..62a18aec 100644 --- a/mavsdk/telemetry_pb2_grpc.py +++ b/mavsdk/telemetry_pb2_grpc.py @@ -42,6 +42,11 @@ def __init__(self, channel): request_serializer=telemetry_dot_telemetry__pb2.SubscribeArmedRequest.SerializeToString, response_deserializer=telemetry_dot_telemetry__pb2.ArmedResponse.FromString, ) + self.SubscribeVtolState = channel.unary_stream( + '/mavsdk.rpc.telemetry.TelemetryService/SubscribeVtolState', + request_serializer=telemetry_dot_telemetry__pb2.SubscribeVtolStateRequest.SerializeToString, + response_deserializer=telemetry_dot_telemetry__pb2.VtolStateResponse.FromString, + ) self.SubscribeAttitudeQuaternion = channel.unary_stream( '/mavsdk.rpc.telemetry.TelemetryService/SubscribeAttitudeQuaternion', request_serializer=telemetry_dot_telemetry__pb2.SubscribeAttitudeQuaternionRequest.SerializeToString, @@ -172,6 +177,11 @@ def __init__(self, channel): request_serializer=telemetry_dot_telemetry__pb2.SubscribeScaledPressureRequest.SerializeToString, response_deserializer=telemetry_dot_telemetry__pb2.ScaledPressureResponse.FromString, ) + self.SubscribeHeading = channel.unary_stream( + '/mavsdk.rpc.telemetry.TelemetryService/SubscribeHeading', + request_serializer=telemetry_dot_telemetry__pb2.SubscribeHeadingRequest.SerializeToString, + response_deserializer=telemetry_dot_telemetry__pb2.HeadingResponse.FromString, + ) self.SetRatePosition = channel.unary_unary( '/mavsdk.rpc.telemetry.TelemetryService/SetRatePosition', request_serializer=telemetry_dot_telemetry__pb2.SetRatePositionRequest.SerializeToString, @@ -192,6 +202,11 @@ def __init__(self, channel): request_serializer=telemetry_dot_telemetry__pb2.SetRateLandedStateRequest.SerializeToString, response_deserializer=telemetry_dot_telemetry__pb2.SetRateLandedStateResponse.FromString, ) + self.SetRateVtolState = channel.unary_unary( + '/mavsdk.rpc.telemetry.TelemetryService/SetRateVtolState', + request_serializer=telemetry_dot_telemetry__pb2.SetRateVtolStateRequest.SerializeToString, + response_deserializer=telemetry_dot_telemetry__pb2.SetRateVtolStateResponse.FromString, + ) self.SetRateAttitude = channel.unary_unary( '/mavsdk.rpc.telemetry.TelemetryService/SetRateAttitude', request_serializer=telemetry_dot_telemetry__pb2.SetRateAttitudeRequest.SerializeToString, @@ -325,6 +340,13 @@ def SubscribeArmed(self, request, context): context.set_details('Method not implemented!') raise NotImplementedError('Method not implemented!') + def SubscribeVtolState(self, request, context): + """subscribe to vtol state Updates + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + def SubscribeAttitudeQuaternion(self, request, context): """Subscribe to 'attitude' updates (quaternion). """ @@ -507,6 +529,13 @@ def SubscribeScaledPressure(self, request, context): context.set_details('Method not implemented!') raise NotImplementedError('Method not implemented!') + def SubscribeHeading(self, request, context): + """Subscribe to 'Heading' updates. + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + def SetRatePosition(self, request, context): """Set rate to 'position' updates. """ @@ -535,6 +564,13 @@ def SetRateLandedState(self, request, context): context.set_details('Method not implemented!') raise NotImplementedError('Method not implemented!') + def SetRateVtolState(self, request, context): + """Set rate to VTOL state updates + """ + context.set_code(grpc.StatusCode.UNIMPLEMENTED) + context.set_details('Method not implemented!') + raise NotImplementedError('Method not implemented!') + def SetRateAttitude(self, request, context): """Set rate to 'attitude' updates. """ @@ -689,6 +725,11 @@ def add_TelemetryServiceServicer_to_server(servicer, server): request_deserializer=telemetry_dot_telemetry__pb2.SubscribeArmedRequest.FromString, response_serializer=telemetry_dot_telemetry__pb2.ArmedResponse.SerializeToString, ), + 'SubscribeVtolState': grpc.unary_stream_rpc_method_handler( + servicer.SubscribeVtolState, + request_deserializer=telemetry_dot_telemetry__pb2.SubscribeVtolStateRequest.FromString, + response_serializer=telemetry_dot_telemetry__pb2.VtolStateResponse.SerializeToString, + ), 'SubscribeAttitudeQuaternion': grpc.unary_stream_rpc_method_handler( servicer.SubscribeAttitudeQuaternion, request_deserializer=telemetry_dot_telemetry__pb2.SubscribeAttitudeQuaternionRequest.FromString, @@ -819,6 +860,11 @@ def add_TelemetryServiceServicer_to_server(servicer, server): request_deserializer=telemetry_dot_telemetry__pb2.SubscribeScaledPressureRequest.FromString, response_serializer=telemetry_dot_telemetry__pb2.ScaledPressureResponse.SerializeToString, ), + 'SubscribeHeading': grpc.unary_stream_rpc_method_handler( + servicer.SubscribeHeading, + request_deserializer=telemetry_dot_telemetry__pb2.SubscribeHeadingRequest.FromString, + response_serializer=telemetry_dot_telemetry__pb2.HeadingResponse.SerializeToString, + ), 'SetRatePosition': grpc.unary_unary_rpc_method_handler( servicer.SetRatePosition, request_deserializer=telemetry_dot_telemetry__pb2.SetRatePositionRequest.FromString, @@ -839,6 +885,11 @@ def add_TelemetryServiceServicer_to_server(servicer, server): request_deserializer=telemetry_dot_telemetry__pb2.SetRateLandedStateRequest.FromString, response_serializer=telemetry_dot_telemetry__pb2.SetRateLandedStateResponse.SerializeToString, ), + 'SetRateVtolState': grpc.unary_unary_rpc_method_handler( + servicer.SetRateVtolState, + request_deserializer=telemetry_dot_telemetry__pb2.SetRateVtolStateRequest.FromString, + response_serializer=telemetry_dot_telemetry__pb2.SetRateVtolStateResponse.SerializeToString, + ), 'SetRateAttitude': grpc.unary_unary_rpc_method_handler( servicer.SetRateAttitude, request_deserializer=telemetry_dot_telemetry__pb2.SetRateAttitudeRequest.FromString, @@ -1027,6 +1078,23 @@ def SubscribeArmed(request, options, channel_credentials, insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + @staticmethod + def SubscribeVtolState(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_stream(request, target, '/mavsdk.rpc.telemetry.TelemetryService/SubscribeVtolState', + telemetry_dot_telemetry__pb2.SubscribeVtolStateRequest.SerializeToString, + telemetry_dot_telemetry__pb2.VtolStateResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + @staticmethod def SubscribeAttitudeQuaternion(request, target, @@ -1469,6 +1537,23 @@ def SubscribeScaledPressure(request, options, channel_credentials, insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + @staticmethod + def SubscribeHeading(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_stream(request, target, '/mavsdk.rpc.telemetry.TelemetryService/SubscribeHeading', + telemetry_dot_telemetry__pb2.SubscribeHeadingRequest.SerializeToString, + telemetry_dot_telemetry__pb2.HeadingResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + @staticmethod def SetRatePosition(request, target, @@ -1537,6 +1622,23 @@ def SetRateLandedState(request, options, channel_credentials, insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + @staticmethod + def SetRateVtolState(request, + target, + options=(), + channel_credentials=None, + call_credentials=None, + insecure=False, + compression=None, + wait_for_ready=None, + timeout=None, + metadata=None): + return grpc.experimental.unary_unary(request, target, '/mavsdk.rpc.telemetry.TelemetryService/SetRateVtolState', + telemetry_dot_telemetry__pb2.SetRateVtolStateRequest.SerializeToString, + telemetry_dot_telemetry__pb2.SetRateVtolStateResponse.FromString, + options, channel_credentials, + insecure, call_credentials, compression, wait_for_ready, timeout, metadata) + @staticmethod def SetRateAttitude(request, target, diff --git a/mavsdk/telemetry_server.py b/mavsdk/telemetry_server.py index 817b7b37..72c4b9ef 100644 --- a/mavsdk/telemetry_server.py +++ b/mavsdk/telemetry_server.py @@ -82,144 +82,61 @@ def __str__(self): return self.name -class FlightMode(Enum): +class VtolState(Enum): """ - Flight modes. - - For more information about flight modes, check out - https://docs.px4.io/master/en/config/flight_mode.html. + Maps to MAV_VTOL_STATE Values ------ - UNKNOWN - Mode not known - - READY - Armed and ready to take off - - TAKEOFF - Taking off - - HOLD - Holding (hovering in place (or circling for fixed-wing vehicles) - - MISSION - In mission - - RETURN_TO_LAUNCH - Returning to launch position (then landing) - - LAND - Landing + UNDEFINED + Not VTOL - OFFBOARD - In 'offboard' mode + TRANSITION_TO_FW + Transitioning to fixed-wing - FOLLOW_ME - In 'follow-me' mode + TRANSITION_TO_MC + Transitioning to multi-copter - MANUAL - In 'Manual' mode + MC + Multi-copter - ALTCTL - In 'Altitude Control' mode - - POSCTL - In 'Position Control' mode - - ACRO - In 'Acro' mode - - STABILIZED - In 'Stabilize' mode - - RATTITUDE - In 'Rattitude' mode + FW + Fixed-wing """ - UNKNOWN = 0 - READY = 1 - TAKEOFF = 2 - HOLD = 3 - MISSION = 4 - RETURN_TO_LAUNCH = 5 - LAND = 6 - OFFBOARD = 7 - FOLLOW_ME = 8 - MANUAL = 9 - ALTCTL = 10 - POSCTL = 11 - ACRO = 12 - STABILIZED = 13 - RATTITUDE = 14 + UNDEFINED = 0 + TRANSITION_TO_FW = 1 + TRANSITION_TO_MC = 2 + MC = 3 + FW = 4 def translate_to_rpc(self): - if self == FlightMode.UNKNOWN: - return telemetry_server_pb2.FLIGHT_MODE_UNKNOWN - if self == FlightMode.READY: - return telemetry_server_pb2.FLIGHT_MODE_READY - if self == FlightMode.TAKEOFF: - return telemetry_server_pb2.FLIGHT_MODE_TAKEOFF - if self == FlightMode.HOLD: - return telemetry_server_pb2.FLIGHT_MODE_HOLD - if self == FlightMode.MISSION: - return telemetry_server_pb2.FLIGHT_MODE_MISSION - if self == FlightMode.RETURN_TO_LAUNCH: - return telemetry_server_pb2.FLIGHT_MODE_RETURN_TO_LAUNCH - if self == FlightMode.LAND: - return telemetry_server_pb2.FLIGHT_MODE_LAND - if self == FlightMode.OFFBOARD: - return telemetry_server_pb2.FLIGHT_MODE_OFFBOARD - if self == FlightMode.FOLLOW_ME: - return telemetry_server_pb2.FLIGHT_MODE_FOLLOW_ME - if self == FlightMode.MANUAL: - return telemetry_server_pb2.FLIGHT_MODE_MANUAL - if self == FlightMode.ALTCTL: - return telemetry_server_pb2.FLIGHT_MODE_ALTCTL - if self == FlightMode.POSCTL: - return telemetry_server_pb2.FLIGHT_MODE_POSCTL - if self == FlightMode.ACRO: - return telemetry_server_pb2.FLIGHT_MODE_ACRO - if self == FlightMode.STABILIZED: - return telemetry_server_pb2.FLIGHT_MODE_STABILIZED - if self == FlightMode.RATTITUDE: - return telemetry_server_pb2.FLIGHT_MODE_RATTITUDE + if self == VtolState.UNDEFINED: + return telemetry_server_pb2.VTOL_STATE_UNDEFINED + if self == VtolState.TRANSITION_TO_FW: + return telemetry_server_pb2.VTOL_STATE_TRANSITION_TO_FW + if self == VtolState.TRANSITION_TO_MC: + return telemetry_server_pb2.VTOL_STATE_TRANSITION_TO_MC + if self == VtolState.MC: + return telemetry_server_pb2.VTOL_STATE_MC + if self == VtolState.FW: + return telemetry_server_pb2.VTOL_STATE_FW @staticmethod def translate_from_rpc(rpc_enum_value): """ Parses a gRPC response """ - if rpc_enum_value == telemetry_server_pb2.FLIGHT_MODE_UNKNOWN: - return FlightMode.UNKNOWN - if rpc_enum_value == telemetry_server_pb2.FLIGHT_MODE_READY: - return FlightMode.READY - if rpc_enum_value == telemetry_server_pb2.FLIGHT_MODE_TAKEOFF: - return FlightMode.TAKEOFF - if rpc_enum_value == telemetry_server_pb2.FLIGHT_MODE_HOLD: - return FlightMode.HOLD - if rpc_enum_value == telemetry_server_pb2.FLIGHT_MODE_MISSION: - return FlightMode.MISSION - if rpc_enum_value == telemetry_server_pb2.FLIGHT_MODE_RETURN_TO_LAUNCH: - return FlightMode.RETURN_TO_LAUNCH - if rpc_enum_value == telemetry_server_pb2.FLIGHT_MODE_LAND: - return FlightMode.LAND - if rpc_enum_value == telemetry_server_pb2.FLIGHT_MODE_OFFBOARD: - return FlightMode.OFFBOARD - if rpc_enum_value == telemetry_server_pb2.FLIGHT_MODE_FOLLOW_ME: - return FlightMode.FOLLOW_ME - if rpc_enum_value == telemetry_server_pb2.FLIGHT_MODE_MANUAL: - return FlightMode.MANUAL - if rpc_enum_value == telemetry_server_pb2.FLIGHT_MODE_ALTCTL: - return FlightMode.ALTCTL - if rpc_enum_value == telemetry_server_pb2.FLIGHT_MODE_POSCTL: - return FlightMode.POSCTL - if rpc_enum_value == telemetry_server_pb2.FLIGHT_MODE_ACRO: - return FlightMode.ACRO - if rpc_enum_value == telemetry_server_pb2.FLIGHT_MODE_STABILIZED: - return FlightMode.STABILIZED - if rpc_enum_value == telemetry_server_pb2.FLIGHT_MODE_RATTITUDE: - return FlightMode.RATTITUDE + if rpc_enum_value == telemetry_server_pb2.VTOL_STATE_UNDEFINED: + return VtolState.UNDEFINED + if rpc_enum_value == telemetry_server_pb2.VTOL_STATE_TRANSITION_TO_FW: + return VtolState.TRANSITION_TO_FW + if rpc_enum_value == telemetry_server_pb2.VTOL_STATE_TRANSITION_TO_MC: + return VtolState.TRANSITION_TO_MC + if rpc_enum_value == telemetry_server_pb2.VTOL_STATE_MC: + return VtolState.MC + if rpc_enum_value == telemetry_server_pb2.VTOL_STATE_FW: + return VtolState.FW def __str__(self): return self.name @@ -475,6 +392,64 @@ def translate_to_rpc(self, rpcPosition): +class Heading: + """ + Heading type used for global position + + Parameters + ---------- + heading_deg : double + Heading in degrees (range: 0 to +360) + + """ + + + + def __init__( + self, + heading_deg): + """ Initializes the Heading object """ + self.heading_deg = heading_deg + + def __equals__(self, to_compare): + """ Checks if two Heading are the same """ + try: + # Try to compare - this likely fails when it is compared to a non + # Heading object + return \ + (self.heading_deg == to_compare.heading_deg) + + except AttributeError: + return False + + def __str__(self): + """ Heading in string representation """ + struct_repr = ", ".join([ + "heading_deg: " + str(self.heading_deg) + ]) + + return f"Heading: [{struct_repr}]" + + @staticmethod + def translate_from_rpc(rpcHeading): + """ Translates a gRPC struct to the SDK equivalent """ + return Heading( + + rpcHeading.heading_deg + ) + + def translate_to_rpc(self, rpcHeading): + """ Translates this SDK object into its gRPC equivalent """ + + + + + rpcHeading.heading_deg = self.heading_deg + + + + + class Quaternion: """ Quaternion type. @@ -1222,160 +1197,6 @@ def translate_to_rpc(self, rpcBattery): -class Health: - """ - Health type. - - Parameters - ---------- - is_gyrometer_calibration_ok : bool - True if the gyrometer is calibrated - - is_accelerometer_calibration_ok : bool - True if the accelerometer is calibrated - - is_magnetometer_calibration_ok : bool - True if the magnetometer is calibrated - - is_local_position_ok : bool - True if the local position estimate is good enough to fly in 'position control' mode - - is_global_position_ok : bool - True if the global position estimate is good enough to fly in 'position control' mode - - is_home_position_ok : bool - True if the home position has been initialized properly - - is_armable : bool - True if system can be armed - - """ - - - - def __init__( - self, - is_gyrometer_calibration_ok, - is_accelerometer_calibration_ok, - is_magnetometer_calibration_ok, - is_local_position_ok, - is_global_position_ok, - is_home_position_ok, - is_armable): - """ Initializes the Health object """ - self.is_gyrometer_calibration_ok = is_gyrometer_calibration_ok - self.is_accelerometer_calibration_ok = is_accelerometer_calibration_ok - self.is_magnetometer_calibration_ok = is_magnetometer_calibration_ok - self.is_local_position_ok = is_local_position_ok - self.is_global_position_ok = is_global_position_ok - self.is_home_position_ok = is_home_position_ok - self.is_armable = is_armable - - def __equals__(self, to_compare): - """ Checks if two Health are the same """ - try: - # Try to compare - this likely fails when it is compared to a non - # Health object - return \ - (self.is_gyrometer_calibration_ok == to_compare.is_gyrometer_calibration_ok) and \ - (self.is_accelerometer_calibration_ok == to_compare.is_accelerometer_calibration_ok) and \ - (self.is_magnetometer_calibration_ok == to_compare.is_magnetometer_calibration_ok) and \ - (self.is_local_position_ok == to_compare.is_local_position_ok) and \ - (self.is_global_position_ok == to_compare.is_global_position_ok) and \ - (self.is_home_position_ok == to_compare.is_home_position_ok) and \ - (self.is_armable == to_compare.is_armable) - - except AttributeError: - return False - - def __str__(self): - """ Health in string representation """ - struct_repr = ", ".join([ - "is_gyrometer_calibration_ok: " + str(self.is_gyrometer_calibration_ok), - "is_accelerometer_calibration_ok: " + str(self.is_accelerometer_calibration_ok), - "is_magnetometer_calibration_ok: " + str(self.is_magnetometer_calibration_ok), - "is_local_position_ok: " + str(self.is_local_position_ok), - "is_global_position_ok: " + str(self.is_global_position_ok), - "is_home_position_ok: " + str(self.is_home_position_ok), - "is_armable: " + str(self.is_armable) - ]) - - return f"Health: [{struct_repr}]" - - @staticmethod - def translate_from_rpc(rpcHealth): - """ Translates a gRPC struct to the SDK equivalent """ - return Health( - - rpcHealth.is_gyrometer_calibration_ok, - - - rpcHealth.is_accelerometer_calibration_ok, - - - rpcHealth.is_magnetometer_calibration_ok, - - - rpcHealth.is_local_position_ok, - - - rpcHealth.is_global_position_ok, - - - rpcHealth.is_home_position_ok, - - - rpcHealth.is_armable - ) - - def translate_to_rpc(self, rpcHealth): - """ Translates this SDK object into its gRPC equivalent """ - - - - - rpcHealth.is_gyrometer_calibration_ok = self.is_gyrometer_calibration_ok - - - - - - rpcHealth.is_accelerometer_calibration_ok = self.is_accelerometer_calibration_ok - - - - - - rpcHealth.is_magnetometer_calibration_ok = self.is_magnetometer_calibration_ok - - - - - - rpcHealth.is_local_position_ok = self.is_local_position_ok - - - - - - rpcHealth.is_global_position_ok = self.is_global_position_ok - - - - - - rpcHealth.is_home_position_ok = self.is_home_position_ok - - - - - - rpcHealth.is_armable = self.is_armable - - - - - class RcStatus: """ Remote control status type. @@ -3401,7 +3222,7 @@ def _extract_result(self, response): return TelemetryServerResult.translate_from_rpc(response.telemetry_server_result) - async def publish_position(self, position, velocity_ned): + async def publish_position(self, position, velocity_ned, heading): """ Publish to 'position' updates. @@ -3413,6 +3234,9 @@ async def publish_position(self, position, velocity_ned): velocity_ned : VelocityNed The next velocity (NED) + heading : Heading + Heading (yaw) in degrees + Raises ------ TelemetryServerError @@ -3428,13 +3252,17 @@ async def publish_position(self, position, velocity_ned): velocity_ned.translate_to_rpc(request.velocity_ned) + + heading.translate_to_rpc(request.heading) + + response = await self._stub.PublishPosition(request) result = self._extract_result(response) if result.result is not TelemetryServerResult.Result.SUCCESS: - raise TelemetryServerError(result, "publish_position()", position, velocity_ned) + raise TelemetryServerError(result, "publish_position()", position, velocity_ned, heading) async def publish_home(self, home): @@ -3466,76 +3294,96 @@ async def publish_home(self, home): raise TelemetryServerError(result, "publish_home()", home) - async def publish_armed(self, is_armed): + async def publish_sys_status(self, battery, rc_receiver_status, gyro_status, accel_status, mag_status, gps_status): """ - Publish to armed updates. + Publish 'sys status' updates. Parameters ---------- - is_armed : bool - The next 'armed' state + battery : Battery + The next 'battery' state + rc_receiver_status : bool + rc receiver status + + gyro_status : bool + + accel_status : bool + + mag_status : bool + + gps_status : bool + Raises ------ TelemetryServerError If the request fails. The error contains the reason for the failure. """ - request = telemetry_server_pb2.PublishArmedRequest() - request.is_armed = is_armed - response = await self._stub.PublishArmed(request) + request = telemetry_server_pb2.PublishSysStatusRequest() + + battery.translate_to_rpc(request.battery) + + + request.rc_receiver_status = rc_receiver_status + request.gyro_status = gyro_status + request.accel_status = accel_status + request.mag_status = mag_status + request.gps_status = gps_status + response = await self._stub.PublishSysStatus(request) result = self._extract_result(response) if result.result is not TelemetryServerResult.Result.SUCCESS: - raise TelemetryServerError(result, "publish_armed()", is_armed) + raise TelemetryServerError(result, "publish_sys_status()", battery, rc_receiver_status, gyro_status, accel_status, mag_status, gps_status) - async def publish_raw_gps(self, raw_gps, gps_info): + async def publish_extended_sys_state(self, vtol_state, landed_state): """ - Publish to 'Raw GPS' updates. + Publish 'extended sys state' updates. Parameters ---------- - raw_gps : RawGps - The next 'Raw GPS' state. Warning: this is an advanced feature, use `Position` updates to get the location of the drone! - - gps_info : GpsInfo - The next 'GPS info' state - + vtol_state : VtolState + + landed_state : LandedState + Raises ------ TelemetryServerError If the request fails. The error contains the reason for the failure. """ - request = telemetry_server_pb2.PublishRawGpsRequest() + request = telemetry_server_pb2.PublishExtendedSysStateRequest() - raw_gps.translate_to_rpc(request.raw_gps) + request.vtol_state = vtol_state.translate_to_rpc() - gps_info.translate_to_rpc(request.gps_info) + request.landed_state = landed_state.translate_to_rpc() - response = await self._stub.PublishRawGps(request) + response = await self._stub.PublishExtendedSysState(request) result = self._extract_result(response) if result.result is not TelemetryServerResult.Result.SUCCESS: - raise TelemetryServerError(result, "publish_raw_gps()", raw_gps, gps_info) + raise TelemetryServerError(result, "publish_extended_sys_state()", vtol_state, landed_state) - async def publish_battery(self, battery): + async def publish_raw_gps(self, raw_gps, gps_info): """ - Publish to 'battery' updates. + Publish to 'Raw GPS' updates. Parameters ---------- - battery : Battery - The next 'battery' state + raw_gps : RawGps + The next 'Raw GPS' state. Warning: this is an advanced feature, use `Position` updates to get the location of the drone! + + gps_info : GpsInfo + The next 'GPS info' state Raises ------ @@ -3543,57 +3391,32 @@ async def publish_battery(self, battery): If the request fails. The error contains the reason for the failure. """ - request = telemetry_server_pb2.PublishBatteryRequest() + request = telemetry_server_pb2.PublishRawGpsRequest() - battery.translate_to_rpc(request.battery) + raw_gps.translate_to_rpc(request.raw_gps) - response = await self._stub.PublishBattery(request) - - - result = self._extract_result(response) - - if result.result is not TelemetryServerResult.Result.SUCCESS: - raise TelemetryServerError(result, "publish_battery()", battery) - - async def publish_flight_mode(self, flight_mode): - """ - Publish to 'flight mode' updates. - - Parameters - ---------- - flight_mode : FlightMode - The next flight mode - - Raises - ------ - TelemetryServerError - If the request fails. The error contains the reason for the failure. - """ - - request = telemetry_server_pb2.PublishFlightModeRequest() - - request.flight_mode = flight_mode.translate_to_rpc() + gps_info.translate_to_rpc(request.gps_info) - response = await self._stub.PublishFlightMode(request) + response = await self._stub.PublishRawGps(request) result = self._extract_result(response) if result.result is not TelemetryServerResult.Result.SUCCESS: - raise TelemetryServerError(result, "publish_flight_mode()", flight_mode) + raise TelemetryServerError(result, "publish_raw_gps()", raw_gps, gps_info) - async def publish_health(self, health): + async def publish_battery(self, battery): """ - Publish to 'health' updates. + Publish to 'battery' updates. Parameters ---------- - health : Health - The next 'health' state + battery : Battery + The next 'battery' state Raises ------ @@ -3601,18 +3424,18 @@ async def publish_health(self, health): If the request fails. The error contains the reason for the failure. """ - request = telemetry_server_pb2.PublishHealthRequest() + request = telemetry_server_pb2.PublishBatteryRequest() - health.translate_to_rpc(request.health) + battery.translate_to_rpc(request.battery) - response = await self._stub.PublishHealth(request) + response = await self._stub.PublishBattery(request) result = self._extract_result(response) if result.result is not TelemetryServerResult.Result.SUCCESS: - raise TelemetryServerError(result, "publish_health()", health) + raise TelemetryServerError(result, "publish_battery()", battery) async def publish_status_text(self, status_text): @@ -3818,32 +3641,6 @@ async def publish_raw_imu(self, imu): raise TelemetryServerError(result, "publish_raw_imu()", imu) - async def publish_health_all_ok(self, is_health_all_ok): - """ - Publish to 'HealthAllOk' updates. - - Parameters - ---------- - is_health_all_ok : bool - The next 'health all ok' status - - Raises - ------ - TelemetryServerError - If the request fails. The error contains the reason for the failure. - """ - - request = telemetry_server_pb2.PublishHealthAllOkRequest() - request.is_health_all_ok = is_health_all_ok - response = await self._stub.PublishHealthAllOk(request) - - - result = self._extract_result(response) - - if result.result is not TelemetryServerResult.Result.SUCCESS: - raise TelemetryServerError(result, "publish_health_all_ok()", is_health_all_ok) - - async def publish_unix_epoch_time(self, time_us): """ Publish to 'unix epoch time' updates. diff --git a/mavsdk/telemetry_server_pb2.py b/mavsdk/telemetry_server_pb2.py index 6704b926..4d3dcb95 100644 --- a/mavsdk/telemetry_server_pb2.py +++ b/mavsdk/telemetry_server_pb2.py @@ -21,7 +21,7 @@ syntax='proto3', serialized_options=b'\n\032io.mavsdk.telemetry_serverB\024TelemetryServerProto', create_key=_descriptor._internal_create_key, - serialized_pb=b'\n\'telemetry_server/telemetry_server.proto\x12\x1bmavsdk.rpc.telemetry_server\x1a\x14mavsdk_options.proto\"\x91\x01\n\x16PublishPositionRequest\x12\x37\n\x08position\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry_server.Position\x12>\n\x0cvelocity_ned\x18\x02 \x01(\x0b\x32(.mavsdk.rpc.telemetry_server.VelocityNed\"I\n\x12PublishHomeRequest\x12\x33\n\x04home\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry_server.Position\"(\n\x13PublishInAirRequest\x12\x11\n\tis_in_air\x18\x01 \x01(\x08\"[\n\x19PublishLandedStateRequest\x12>\n\x0clanded_state\x18\x01 \x01(\x0e\x32(.mavsdk.rpc.telemetry_server.LandedState\"\'\n\x13PublishArmedRequest\x12\x10\n\x08is_armed\x18\x01 \x01(\x08\"\x84\x01\n\x14PublishRawGpsRequest\x12\x34\n\x07raw_gps\x18\x01 \x01(\x0b\x32#.mavsdk.rpc.telemetry_server.RawGps\x12\x36\n\x08gps_info\x18\x02 \x01(\x0b\x32$.mavsdk.rpc.telemetry_server.GpsInfo\"N\n\x15PublishBatteryRequest\x12\x35\n\x07\x62\x61ttery\x18\x01 \x01(\x0b\x32$.mavsdk.rpc.telemetry_server.Battery\"X\n\x18PublishFlightModeRequest\x12<\n\x0b\x66light_mode\x18\x01 \x01(\x0e\x32\'.mavsdk.rpc.telemetry_server.FlightMode\"K\n\x14PublishHealthRequest\x12\x33\n\x06health\x18\x01 \x01(\x0b\x32#.mavsdk.rpc.telemetry_server.Health\"R\n\x16PublishRcStatusRequest\x12\x38\n\trc_status\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry_server.RcStatus\"X\n\x18PublishStatusTextRequest\x12<\n\x0bstatus_text\x18\x01 \x01(\x0b\x32\'.mavsdk.rpc.telemetry_server.StatusText\"Q\n\x16PublishOdometryRequest\x12\x37\n\x08odometry\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry_server.Odometry\"t\n!PublishPositionVelocityNedRequest\x12O\n\x15position_velocity_ned\x18\x01 \x01(\x0b\x32\x30.mavsdk.rpc.telemetry_server.PositionVelocityNed\"[\n\x19PublishGroundTruthRequest\x12>\n\x0cground_truth\x18\x01 \x01(\x0b\x32(.mavsdk.rpc.telemetry_server.GroundTruth\"B\n\x11PublishImuRequest\x12-\n\x03imu\x18\x01 \x01(\x0b\x32 .mavsdk.rpc.telemetry_server.Imu\"H\n\x17PublishScaledImuRequest\x12-\n\x03imu\x18\x01 \x01(\x0b\x32 .mavsdk.rpc.telemetry_server.Imu\"E\n\x14PublishRawImuRequest\x12-\n\x03imu\x18\x01 \x01(\x0b\x32 .mavsdk.rpc.telemetry_server.Imu\"5\n\x19PublishHealthAllOkRequest\x12\x18\n\x10is_health_all_ok\x18\x01 \x01(\x08\".\n\x1bPublishUnixEpochTimeRequest\x12\x0f\n\x07time_us\x18\x01 \x01(\x04\"n\n\x17PublishPositionResponse\x12S\n\x17telemetry_server_result\x18\x01 \x01(\x0b\x32\x32.mavsdk.rpc.telemetry_server.TelemetryServerResult\"j\n\x13PublishHomeResponse\x12S\n\x17telemetry_server_result\x18\x01 \x01(\x0b\x32\x32.mavsdk.rpc.telemetry_server.TelemetryServerResult\"k\n\x14PublishArmedResponse\x12S\n\x17telemetry_server_result\x18\x01 \x01(\x0b\x32\x32.mavsdk.rpc.telemetry_server.TelemetryServerResult\"l\n\x15PublishRawGpsResponse\x12S\n\x17telemetry_server_result\x18\x01 \x01(\x0b\x32\x32.mavsdk.rpc.telemetry_server.TelemetryServerResult\"m\n\x16PublishBatteryResponse\x12S\n\x17telemetry_server_result\x18\x01 \x01(\x0b\x32\x32.mavsdk.rpc.telemetry_server.TelemetryServerResult\"p\n\x19PublishFlightModeResponse\x12S\n\x17telemetry_server_result\x18\x01 \x01(\x0b\x32\x32.mavsdk.rpc.telemetry_server.TelemetryServerResult\"l\n\x15PublishHealthResponse\x12S\n\x17telemetry_server_result\x18\x01 \x01(\x0b\x32\x32.mavsdk.rpc.telemetry_server.TelemetryServerResult\"p\n\x19PublishStatusTextResponse\x12S\n\x17telemetry_server_result\x18\x01 \x01(\x0b\x32\x32.mavsdk.rpc.telemetry_server.TelemetryServerResult\"n\n\x17PublishOdometryResponse\x12S\n\x17telemetry_server_result\x18\x01 \x01(\x0b\x32\x32.mavsdk.rpc.telemetry_server.TelemetryServerResult\"y\n\"PublishPositionVelocityNedResponse\x12S\n\x17telemetry_server_result\x18\x01 \x01(\x0b\x32\x32.mavsdk.rpc.telemetry_server.TelemetryServerResult\"q\n\x1aPublishGroundTruthResponse\x12S\n\x17telemetry_server_result\x18\x01 \x01(\x0b\x32\x32.mavsdk.rpc.telemetry_server.TelemetryServerResult\"i\n\x12PublishImuResponse\x12S\n\x17telemetry_server_result\x18\x01 \x01(\x0b\x32\x32.mavsdk.rpc.telemetry_server.TelemetryServerResult\"o\n\x18PublishScaledImuResponse\x12S\n\x17telemetry_server_result\x18\x01 \x01(\x0b\x32\x32.mavsdk.rpc.telemetry_server.TelemetryServerResult\"l\n\x15PublishRawImuResponse\x12S\n\x17telemetry_server_result\x18\x01 \x01(\x0b\x32\x32.mavsdk.rpc.telemetry_server.TelemetryServerResult\"q\n\x1aPublishHealthAllOkResponse\x12S\n\x17telemetry_server_result\x18\x01 \x01(\x0b\x32\x32.mavsdk.rpc.telemetry_server.TelemetryServerResult\"s\n\x1cPublishUnixEpochTimeResponse\x12S\n\x17telemetry_server_result\x18\x01 \x01(\x0b\x32\x32.mavsdk.rpc.telemetry_server.TelemetryServerResult\"\x95\x01\n\x08Position\x12\x1d\n\x0clatitude_deg\x18\x01 \x01(\x01\x42\x07\x82\xb5\x18\x03NaN\x12\x1e\n\rlongitude_deg\x18\x02 \x01(\x01\x42\x07\x82\xb5\x18\x03NaN\x12$\n\x13\x61\x62solute_altitude_m\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12$\n\x13relative_altitude_m\x18\x04 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"r\n\nQuaternion\x12\x12\n\x01w\x18\x01 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x12\n\x01x\x18\x02 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x12\n\x01y\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x12\n\x01z\x18\x04 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x14\n\x0ctimestamp_us\x18\x05 \x01(\x04\"s\n\nEulerAngle\x12\x19\n\x08roll_deg\x18\x01 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x1a\n\tpitch_deg\x18\x02 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x18\n\x07yaw_deg\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x14\n\x0ctimestamp_us\x18\x04 \x01(\x04\"l\n\x13\x41ngularVelocityBody\x12\x1b\n\nroll_rad_s\x18\x01 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x1c\n\x0bpitch_rad_s\x18\x02 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x1a\n\tyaw_rad_s\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"`\n\x07GpsInfo\x12\x1d\n\x0enum_satellites\x18\x01 \x01(\x05\x42\x05\x82\xb5\x18\x01\x30\x12\x36\n\x08\x66ix_type\x18\x02 \x01(\x0e\x32$.mavsdk.rpc.telemetry_server.FixType\"\xdf\x02\n\x06RawGps\x12\x14\n\x0ctimestamp_us\x18\x01 \x01(\x04\x12\x14\n\x0clatitude_deg\x18\x02 \x01(\x01\x12\x15\n\rlongitude_deg\x18\x03 \x01(\x01\x12\x1b\n\x13\x61\x62solute_altitude_m\x18\x04 \x01(\x02\x12\x0c\n\x04hdop\x18\x05 \x01(\x02\x12\x0c\n\x04vdop\x18\x06 \x01(\x02\x12\x14\n\x0cvelocity_m_s\x18\x07 \x01(\x02\x12\x0f\n\x07\x63og_deg\x18\x08 \x01(\x02\x12\x1c\n\x14\x61ltitude_ellipsoid_m\x18\t \x01(\x02\x12 \n\x18horizontal_uncertainty_m\x18\n \x01(\x02\x12\x1e\n\x16vertical_uncertainty_m\x18\x0b \x01(\x02\x12 \n\x18velocity_uncertainty_m_s\x18\x0c \x01(\x02\x12\x1f\n\x17heading_uncertainty_deg\x18\r \x01(\x02\x12\x0f\n\x07yaw_deg\x18\x0e \x01(\x02\"I\n\x07\x42\x61ttery\x12\x1a\n\tvoltage_v\x18\x01 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\"\n\x11remaining_percent\x18\x02 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"\xb9\x02\n\x06Health\x12.\n\x1bis_gyrometer_calibration_ok\x18\x01 \x01(\x08\x42\t\x82\xb5\x18\x05\x66\x61lse\x12\x32\n\x1fis_accelerometer_calibration_ok\x18\x02 \x01(\x08\x42\t\x82\xb5\x18\x05\x66\x61lse\x12\x31\n\x1eis_magnetometer_calibration_ok\x18\x03 \x01(\x08\x42\t\x82\xb5\x18\x05\x66\x61lse\x12\'\n\x14is_local_position_ok\x18\x05 \x01(\x08\x42\t\x82\xb5\x18\x05\x66\x61lse\x12(\n\x15is_global_position_ok\x18\x06 \x01(\x08\x42\t\x82\xb5\x18\x05\x66\x61lse\x12&\n\x13is_home_position_ok\x18\x07 \x01(\x08\x42\t\x82\xb5\x18\x05\x66\x61lse\x12\x1d\n\nis_armable\x18\x08 \x01(\x08\x42\t\x82\xb5\x18\x05\x66\x61lse\"|\n\x08RcStatus\x12%\n\x12was_available_once\x18\x01 \x01(\x08\x42\t\x82\xb5\x18\x05\x66\x61lse\x12\x1f\n\x0cis_available\x18\x02 \x01(\x08\x42\t\x82\xb5\x18\x05\x66\x61lse\x12(\n\x17signal_strength_percent\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"U\n\nStatusText\x12\x39\n\x04type\x18\x01 \x01(\x0e\x32+.mavsdk.rpc.telemetry_server.StatusTextType\x12\x0c\n\x04text\x18\x02 \x01(\t\"?\n\x15\x41\x63tuatorControlTarget\x12\x14\n\x05group\x18\x01 \x01(\x05\x42\x05\x82\xb5\x18\x01\x30\x12\x10\n\x08\x63ontrols\x18\x02 \x03(\x02\"?\n\x14\x41\x63tuatorOutputStatus\x12\x15\n\x06\x61\x63tive\x18\x01 \x01(\rB\x05\x82\xb5\x18\x01\x30\x12\x10\n\x08\x61\x63tuator\x18\x02 \x03(\x02\"\'\n\nCovariance\x12\x19\n\x11\x63ovariance_matrix\x18\x01 \x03(\x02\";\n\x0cVelocityBody\x12\r\n\x05x_m_s\x18\x01 \x01(\x02\x12\r\n\x05y_m_s\x18\x02 \x01(\x02\x12\r\n\x05z_m_s\x18\x03 \x01(\x02\"5\n\x0cPositionBody\x12\x0b\n\x03x_m\x18\x01 \x01(\x02\x12\x0b\n\x03y_m\x18\x02 \x01(\x02\x12\x0b\n\x03z_m\x18\x03 \x01(\x02\"\xa4\x05\n\x08Odometry\x12\x11\n\ttime_usec\x18\x01 \x01(\x04\x12@\n\x08\x66rame_id\x18\x02 \x01(\x0e\x32..mavsdk.rpc.telemetry_server.Odometry.MavFrame\x12\x46\n\x0e\x63hild_frame_id\x18\x03 \x01(\x0e\x32..mavsdk.rpc.telemetry_server.Odometry.MavFrame\x12@\n\rposition_body\x18\x04 \x01(\x0b\x32).mavsdk.rpc.telemetry_server.PositionBody\x12\x32\n\x01q\x18\x05 \x01(\x0b\x32\'.mavsdk.rpc.telemetry_server.Quaternion\x12@\n\rvelocity_body\x18\x06 \x01(\x0b\x32).mavsdk.rpc.telemetry_server.VelocityBody\x12O\n\x15\x61ngular_velocity_body\x18\x07 \x01(\x0b\x32\x30.mavsdk.rpc.telemetry_server.AngularVelocityBody\x12@\n\x0fpose_covariance\x18\x08 \x01(\x0b\x32\'.mavsdk.rpc.telemetry_server.Covariance\x12\x44\n\x13velocity_covariance\x18\t \x01(\x0b\x32\'.mavsdk.rpc.telemetry_server.Covariance\"j\n\x08MavFrame\x12\x13\n\x0fMAV_FRAME_UNDEF\x10\x00\x12\x16\n\x12MAV_FRAME_BODY_NED\x10\x08\x12\x18\n\x14MAV_FRAME_VISION_NED\x10\x10\x12\x17\n\x13MAV_FRAME_ESTIM_NED\x10\x12\"\x7f\n\x0e\x44istanceSensor\x12#\n\x12minimum_distance_m\x18\x01 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12#\n\x12maximum_distance_m\x18\x02 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12#\n\x12\x63urrent_distance_m\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"\xb0\x01\n\x0eScaledPressure\x12\x14\n\x0ctimestamp_us\x18\x01 \x01(\x04\x12\x1d\n\x15\x61\x62solute_pressure_hpa\x18\x02 \x01(\x02\x12!\n\x19\x64ifferential_pressure_hpa\x18\x03 \x01(\x02\x12\x17\n\x0ftemperature_deg\x18\x04 \x01(\x02\x12-\n%differential_pressure_temperature_deg\x18\x05 \x01(\x02\"Y\n\x0bPositionNed\x12\x18\n\x07north_m\x18\x01 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x17\n\x06\x65\x61st_m\x18\x02 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x17\n\x06\x64own_m\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"D\n\x0bVelocityNed\x12\x11\n\tnorth_m_s\x18\x01 \x01(\x02\x12\x10\n\x08\x65\x61st_m_s\x18\x02 \x01(\x02\x12\x10\n\x08\x64own_m_s\x18\x03 \x01(\x02\"\x8d\x01\n\x13PositionVelocityNed\x12:\n\x08position\x18\x01 \x01(\x0b\x32(.mavsdk.rpc.telemetry_server.PositionNed\x12:\n\x08velocity\x18\x02 \x01(\x0b\x32(.mavsdk.rpc.telemetry_server.VelocityNed\"r\n\x0bGroundTruth\x12\x1d\n\x0clatitude_deg\x18\x01 \x01(\x01\x42\x07\x82\xb5\x18\x03NaN\x12\x1e\n\rlongitude_deg\x18\x02 \x01(\x01\x42\x07\x82\xb5\x18\x03NaN\x12$\n\x13\x61\x62solute_altitude_m\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"x\n\x10\x46ixedwingMetrics\x12\x1d\n\x0c\x61irspeed_m_s\x18\x01 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12$\n\x13throttle_percentage\x18\x02 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x1f\n\x0e\x63limb_rate_m_s\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"i\n\x0f\x41\x63\x63\x65lerationFrd\x12\x1d\n\x0c\x66orward_m_s2\x18\x01 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x1b\n\nright_m_s2\x18\x02 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x1a\n\tdown_m_s2\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"o\n\x12\x41ngularVelocityFrd\x12\x1e\n\rforward_rad_s\x18\x01 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x1c\n\x0bright_rad_s\x18\x02 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x1b\n\ndown_rad_s\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"m\n\x10MagneticFieldFrd\x12\x1e\n\rforward_gauss\x18\x01 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x1c\n\x0bright_gauss\x18\x02 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x1b\n\ndown_gauss\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"\xa0\x02\n\x03Imu\x12\x46\n\x10\x61\x63\x63\x65leration_frd\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.telemetry_server.AccelerationFrd\x12M\n\x14\x61ngular_velocity_frd\x18\x02 \x01(\x0b\x32/.mavsdk.rpc.telemetry_server.AngularVelocityFrd\x12I\n\x12magnetic_field_frd\x18\x03 \x01(\x0b\x32-.mavsdk.rpc.telemetry_server.MagneticFieldFrd\x12!\n\x10temperature_degc\x18\x04 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x14\n\x0ctimestamp_us\x18\x05 \x01(\x04\"\xb4\x02\n\x15TelemetryServerResult\x12I\n\x06result\x18\x01 \x01(\x0e\x32\x39.mavsdk.rpc.telemetry_server.TelemetryServerResult.Result\x12\x12\n\nresult_str\x18\x02 \x01(\t\"\xbb\x01\n\x06Result\x12\x12\n\x0eRESULT_UNKNOWN\x10\x00\x12\x12\n\x0eRESULT_SUCCESS\x10\x01\x12\x14\n\x10RESULT_NO_SYSTEM\x10\x02\x12\x1b\n\x17RESULT_CONNECTION_ERROR\x10\x03\x12\x0f\n\x0bRESULT_BUSY\x10\x04\x12\x19\n\x15RESULT_COMMAND_DENIED\x10\x05\x12\x12\n\x0eRESULT_TIMEOUT\x10\x06\x12\x16\n\x12RESULT_UNSUPPORTED\x10\x07*\xa4\x01\n\x07\x46ixType\x12\x13\n\x0f\x46IX_TYPE_NO_GPS\x10\x00\x12\x13\n\x0f\x46IX_TYPE_NO_FIX\x10\x01\x12\x13\n\x0f\x46IX_TYPE_FIX_2D\x10\x02\x12\x13\n\x0f\x46IX_TYPE_FIX_3D\x10\x03\x12\x15\n\x11\x46IX_TYPE_FIX_DGPS\x10\x04\x12\x16\n\x12\x46IX_TYPE_RTK_FLOAT\x10\x05\x12\x16\n\x12\x46IX_TYPE_RTK_FIXED\x10\x06*\x86\x03\n\nFlightMode\x12\x17\n\x13\x46LIGHT_MODE_UNKNOWN\x10\x00\x12\x15\n\x11\x46LIGHT_MODE_READY\x10\x01\x12\x17\n\x13\x46LIGHT_MODE_TAKEOFF\x10\x02\x12\x14\n\x10\x46LIGHT_MODE_HOLD\x10\x03\x12\x17\n\x13\x46LIGHT_MODE_MISSION\x10\x04\x12 \n\x1c\x46LIGHT_MODE_RETURN_TO_LAUNCH\x10\x05\x12\x14\n\x10\x46LIGHT_MODE_LAND\x10\x06\x12\x18\n\x14\x46LIGHT_MODE_OFFBOARD\x10\x07\x12\x19\n\x15\x46LIGHT_MODE_FOLLOW_ME\x10\x08\x12\x16\n\x12\x46LIGHT_MODE_MANUAL\x10\t\x12\x16\n\x12\x46LIGHT_MODE_ALTCTL\x10\n\x12\x16\n\x12\x46LIGHT_MODE_POSCTL\x10\x0b\x12\x14\n\x10\x46LIGHT_MODE_ACRO\x10\x0c\x12\x1a\n\x16\x46LIGHT_MODE_STABILIZED\x10\r\x12\x19\n\x15\x46LIGHT_MODE_RATTITUDE\x10\x0e*\xf9\x01\n\x0eStatusTextType\x12\x1a\n\x16STATUS_TEXT_TYPE_DEBUG\x10\x00\x12\x19\n\x15STATUS_TEXT_TYPE_INFO\x10\x01\x12\x1b\n\x17STATUS_TEXT_TYPE_NOTICE\x10\x02\x12\x1c\n\x18STATUS_TEXT_TYPE_WARNING\x10\x03\x12\x1a\n\x16STATUS_TEXT_TYPE_ERROR\x10\x04\x12\x1d\n\x19STATUS_TEXT_TYPE_CRITICAL\x10\x05\x12\x1a\n\x16STATUS_TEXT_TYPE_ALERT\x10\x06\x12\x1e\n\x1aSTATUS_TEXT_TYPE_EMERGENCY\x10\x07*\x93\x01\n\x0bLandedState\x12\x18\n\x14LANDED_STATE_UNKNOWN\x10\x00\x12\x1a\n\x16LANDED_STATE_ON_GROUND\x10\x01\x12\x17\n\x13LANDED_STATE_IN_AIR\x10\x02\x12\x1b\n\x17LANDED_STATE_TAKING_OFF\x10\x03\x12\x18\n\x14LANDED_STATE_LANDING\x10\x04\x32\xb7\x10\n\x16TelemetryServerService\x12~\n\x0fPublishPosition\x12\x33.mavsdk.rpc.telemetry_server.PublishPositionRequest\x1a\x34.mavsdk.rpc.telemetry_server.PublishPositionResponse\"\x00\x12r\n\x0bPublishHome\x12/.mavsdk.rpc.telemetry_server.PublishHomeRequest\x1a\x30.mavsdk.rpc.telemetry_server.PublishHomeResponse\"\x00\x12u\n\x0cPublishArmed\x12\x30.mavsdk.rpc.telemetry_server.PublishArmedRequest\x1a\x31.mavsdk.rpc.telemetry_server.PublishArmedResponse\"\x00\x12x\n\rPublishRawGps\x12\x31.mavsdk.rpc.telemetry_server.PublishRawGpsRequest\x1a\x32.mavsdk.rpc.telemetry_server.PublishRawGpsResponse\"\x00\x12{\n\x0ePublishBattery\x12\x32.mavsdk.rpc.telemetry_server.PublishBatteryRequest\x1a\x33.mavsdk.rpc.telemetry_server.PublishBatteryResponse\"\x00\x12\x84\x01\n\x11PublishFlightMode\x12\x35.mavsdk.rpc.telemetry_server.PublishFlightModeRequest\x1a\x36.mavsdk.rpc.telemetry_server.PublishFlightModeResponse\"\x00\x12x\n\rPublishHealth\x12\x31.mavsdk.rpc.telemetry_server.PublishHealthRequest\x1a\x32.mavsdk.rpc.telemetry_server.PublishHealthResponse\"\x00\x12\x84\x01\n\x11PublishStatusText\x12\x35.mavsdk.rpc.telemetry_server.PublishStatusTextRequest\x1a\x36.mavsdk.rpc.telemetry_server.PublishStatusTextResponse\"\x00\x12~\n\x0fPublishOdometry\x12\x33.mavsdk.rpc.telemetry_server.PublishOdometryRequest\x1a\x34.mavsdk.rpc.telemetry_server.PublishOdometryResponse\"\x00\x12\x9f\x01\n\x1aPublishPositionVelocityNed\x12>.mavsdk.rpc.telemetry_server.PublishPositionVelocityNedRequest\x1a?.mavsdk.rpc.telemetry_server.PublishPositionVelocityNedResponse\"\x00\x12\x87\x01\n\x12PublishGroundTruth\x12\x36.mavsdk.rpc.telemetry_server.PublishGroundTruthRequest\x1a\x37.mavsdk.rpc.telemetry_server.PublishGroundTruthResponse\"\x00\x12o\n\nPublishImu\x12..mavsdk.rpc.telemetry_server.PublishImuRequest\x1a/.mavsdk.rpc.telemetry_server.PublishImuResponse\"\x00\x12\x81\x01\n\x10PublishScaledImu\x12\x34.mavsdk.rpc.telemetry_server.PublishScaledImuRequest\x1a\x35.mavsdk.rpc.telemetry_server.PublishScaledImuResponse\"\x00\x12x\n\rPublishRawImu\x12\x31.mavsdk.rpc.telemetry_server.PublishRawImuRequest\x1a\x32.mavsdk.rpc.telemetry_server.PublishRawImuResponse\"\x00\x12\x87\x01\n\x12PublishHealthAllOk\x12\x36.mavsdk.rpc.telemetry_server.PublishHealthAllOkRequest\x1a\x37.mavsdk.rpc.telemetry_server.PublishHealthAllOkResponse\"\x00\x12\x8d\x01\n\x14PublishUnixEpochTime\x12\x38.mavsdk.rpc.telemetry_server.PublishUnixEpochTimeRequest\x1a\x39.mavsdk.rpc.telemetry_server.PublishUnixEpochTimeResponse\"\x00\x42\x32\n\x1aio.mavsdk.telemetry_serverB\x14TelemetryServerProtob\x06proto3' + serialized_pb=b'\n\'telemetry_server/telemetry_server.proto\x12\x1bmavsdk.rpc.telemetry_server\x1a\x14mavsdk_options.proto\"\xc8\x01\n\x16PublishPositionRequest\x12\x37\n\x08position\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry_server.Position\x12>\n\x0cvelocity_ned\x18\x02 \x01(\x0b\x32(.mavsdk.rpc.telemetry_server.VelocityNed\x12\x35\n\x07heading\x18\x03 \x01(\x0b\x32$.mavsdk.rpc.telemetry_server.Heading\"I\n\x12PublishHomeRequest\x12\x33\n\x04home\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry_server.Position\"\xbf\x01\n\x17PublishSysStatusRequest\x12\x35\n\x07\x62\x61ttery\x18\x01 \x01(\x0b\x32$.mavsdk.rpc.telemetry_server.Battery\x12\x1a\n\x12rc_receiver_status\x18\x02 \x01(\x08\x12\x13\n\x0bgyro_status\x18\x03 \x01(\x08\x12\x14\n\x0c\x61\x63\x63\x65l_status\x18\x04 \x01(\x08\x12\x12\n\nmag_status\x18\x05 \x01(\x08\x12\x12\n\ngps_status\x18\x06 \x01(\x08\"\x9c\x01\n\x1ePublishExtendedSysStateRequest\x12:\n\nvtol_state\x18\x01 \x01(\x0e\x32&.mavsdk.rpc.telemetry_server.VtolState\x12>\n\x0clanded_state\x18\x02 \x01(\x0e\x32(.mavsdk.rpc.telemetry_server.LandedState\"(\n\x13PublishInAirRequest\x12\x11\n\tis_in_air\x18\x01 \x01(\x08\"[\n\x19PublishLandedStateRequest\x12>\n\x0clanded_state\x18\x01 \x01(\x0e\x32(.mavsdk.rpc.telemetry_server.LandedState\"\x84\x01\n\x14PublishRawGpsRequest\x12\x34\n\x07raw_gps\x18\x01 \x01(\x0b\x32#.mavsdk.rpc.telemetry_server.RawGps\x12\x36\n\x08gps_info\x18\x02 \x01(\x0b\x32$.mavsdk.rpc.telemetry_server.GpsInfo\"N\n\x15PublishBatteryRequest\x12\x35\n\x07\x62\x61ttery\x18\x01 \x01(\x0b\x32$.mavsdk.rpc.telemetry_server.Battery\"R\n\x16PublishRcStatusRequest\x12\x38\n\trc_status\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry_server.RcStatus\"X\n\x18PublishStatusTextRequest\x12<\n\x0bstatus_text\x18\x01 \x01(\x0b\x32\'.mavsdk.rpc.telemetry_server.StatusText\"Q\n\x16PublishOdometryRequest\x12\x37\n\x08odometry\x18\x01 \x01(\x0b\x32%.mavsdk.rpc.telemetry_server.Odometry\"t\n!PublishPositionVelocityNedRequest\x12O\n\x15position_velocity_ned\x18\x01 \x01(\x0b\x32\x30.mavsdk.rpc.telemetry_server.PositionVelocityNed\"[\n\x19PublishGroundTruthRequest\x12>\n\x0cground_truth\x18\x01 \x01(\x0b\x32(.mavsdk.rpc.telemetry_server.GroundTruth\"B\n\x11PublishImuRequest\x12-\n\x03imu\x18\x01 \x01(\x0b\x32 .mavsdk.rpc.telemetry_server.Imu\"H\n\x17PublishScaledImuRequest\x12-\n\x03imu\x18\x01 \x01(\x0b\x32 .mavsdk.rpc.telemetry_server.Imu\"E\n\x14PublishRawImuRequest\x12-\n\x03imu\x18\x01 \x01(\x0b\x32 .mavsdk.rpc.telemetry_server.Imu\".\n\x1bPublishUnixEpochTimeRequest\x12\x0f\n\x07time_us\x18\x01 \x01(\x04\"n\n\x17PublishPositionResponse\x12S\n\x17telemetry_server_result\x18\x01 \x01(\x0b\x32\x32.mavsdk.rpc.telemetry_server.TelemetryServerResult\"j\n\x13PublishHomeResponse\x12S\n\x17telemetry_server_result\x18\x01 \x01(\x0b\x32\x32.mavsdk.rpc.telemetry_server.TelemetryServerResult\"o\n\x18PublishSysStatusResponse\x12S\n\x17telemetry_server_result\x18\x01 \x01(\x0b\x32\x32.mavsdk.rpc.telemetry_server.TelemetryServerResult\"v\n\x1fPublishExtendedSysStateResponse\x12S\n\x17telemetry_server_result\x18\x01 \x01(\x0b\x32\x32.mavsdk.rpc.telemetry_server.TelemetryServerResult\"l\n\x15PublishRawGpsResponse\x12S\n\x17telemetry_server_result\x18\x01 \x01(\x0b\x32\x32.mavsdk.rpc.telemetry_server.TelemetryServerResult\"m\n\x16PublishBatteryResponse\x12S\n\x17telemetry_server_result\x18\x01 \x01(\x0b\x32\x32.mavsdk.rpc.telemetry_server.TelemetryServerResult\"p\n\x19PublishStatusTextResponse\x12S\n\x17telemetry_server_result\x18\x01 \x01(\x0b\x32\x32.mavsdk.rpc.telemetry_server.TelemetryServerResult\"n\n\x17PublishOdometryResponse\x12S\n\x17telemetry_server_result\x18\x01 \x01(\x0b\x32\x32.mavsdk.rpc.telemetry_server.TelemetryServerResult\"y\n\"PublishPositionVelocityNedResponse\x12S\n\x17telemetry_server_result\x18\x01 \x01(\x0b\x32\x32.mavsdk.rpc.telemetry_server.TelemetryServerResult\"q\n\x1aPublishGroundTruthResponse\x12S\n\x17telemetry_server_result\x18\x01 \x01(\x0b\x32\x32.mavsdk.rpc.telemetry_server.TelemetryServerResult\"i\n\x12PublishImuResponse\x12S\n\x17telemetry_server_result\x18\x01 \x01(\x0b\x32\x32.mavsdk.rpc.telemetry_server.TelemetryServerResult\"o\n\x18PublishScaledImuResponse\x12S\n\x17telemetry_server_result\x18\x01 \x01(\x0b\x32\x32.mavsdk.rpc.telemetry_server.TelemetryServerResult\"l\n\x15PublishRawImuResponse\x12S\n\x17telemetry_server_result\x18\x01 \x01(\x0b\x32\x32.mavsdk.rpc.telemetry_server.TelemetryServerResult\"s\n\x1cPublishUnixEpochTimeResponse\x12S\n\x17telemetry_server_result\x18\x01 \x01(\x0b\x32\x32.mavsdk.rpc.telemetry_server.TelemetryServerResult\"\x95\x01\n\x08Position\x12\x1d\n\x0clatitude_deg\x18\x01 \x01(\x01\x42\x07\x82\xb5\x18\x03NaN\x12\x1e\n\rlongitude_deg\x18\x02 \x01(\x01\x42\x07\x82\xb5\x18\x03NaN\x12$\n\x13\x61\x62solute_altitude_m\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12$\n\x13relative_altitude_m\x18\x04 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"\'\n\x07Heading\x12\x1c\n\x0bheading_deg\x18\x01 \x01(\x01\x42\x07\x82\xb5\x18\x03NaN\"r\n\nQuaternion\x12\x12\n\x01w\x18\x01 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x12\n\x01x\x18\x02 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x12\n\x01y\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x12\n\x01z\x18\x04 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x14\n\x0ctimestamp_us\x18\x05 \x01(\x04\"s\n\nEulerAngle\x12\x19\n\x08roll_deg\x18\x01 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x1a\n\tpitch_deg\x18\x02 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x18\n\x07yaw_deg\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x14\n\x0ctimestamp_us\x18\x04 \x01(\x04\"l\n\x13\x41ngularVelocityBody\x12\x1b\n\nroll_rad_s\x18\x01 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x1c\n\x0bpitch_rad_s\x18\x02 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x1a\n\tyaw_rad_s\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"`\n\x07GpsInfo\x12\x1d\n\x0enum_satellites\x18\x01 \x01(\x05\x42\x05\x82\xb5\x18\x01\x30\x12\x36\n\x08\x66ix_type\x18\x02 \x01(\x0e\x32$.mavsdk.rpc.telemetry_server.FixType\"\xdf\x02\n\x06RawGps\x12\x14\n\x0ctimestamp_us\x18\x01 \x01(\x04\x12\x14\n\x0clatitude_deg\x18\x02 \x01(\x01\x12\x15\n\rlongitude_deg\x18\x03 \x01(\x01\x12\x1b\n\x13\x61\x62solute_altitude_m\x18\x04 \x01(\x02\x12\x0c\n\x04hdop\x18\x05 \x01(\x02\x12\x0c\n\x04vdop\x18\x06 \x01(\x02\x12\x14\n\x0cvelocity_m_s\x18\x07 \x01(\x02\x12\x0f\n\x07\x63og_deg\x18\x08 \x01(\x02\x12\x1c\n\x14\x61ltitude_ellipsoid_m\x18\t \x01(\x02\x12 \n\x18horizontal_uncertainty_m\x18\n \x01(\x02\x12\x1e\n\x16vertical_uncertainty_m\x18\x0b \x01(\x02\x12 \n\x18velocity_uncertainty_m_s\x18\x0c \x01(\x02\x12\x1f\n\x17heading_uncertainty_deg\x18\r \x01(\x02\x12\x0f\n\x07yaw_deg\x18\x0e \x01(\x02\"I\n\x07\x42\x61ttery\x12\x1a\n\tvoltage_v\x18\x01 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\"\n\x11remaining_percent\x18\x02 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"|\n\x08RcStatus\x12%\n\x12was_available_once\x18\x01 \x01(\x08\x42\t\x82\xb5\x18\x05\x66\x61lse\x12\x1f\n\x0cis_available\x18\x02 \x01(\x08\x42\t\x82\xb5\x18\x05\x66\x61lse\x12(\n\x17signal_strength_percent\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"U\n\nStatusText\x12\x39\n\x04type\x18\x01 \x01(\x0e\x32+.mavsdk.rpc.telemetry_server.StatusTextType\x12\x0c\n\x04text\x18\x02 \x01(\t\"?\n\x15\x41\x63tuatorControlTarget\x12\x14\n\x05group\x18\x01 \x01(\x05\x42\x05\x82\xb5\x18\x01\x30\x12\x10\n\x08\x63ontrols\x18\x02 \x03(\x02\"?\n\x14\x41\x63tuatorOutputStatus\x12\x15\n\x06\x61\x63tive\x18\x01 \x01(\rB\x05\x82\xb5\x18\x01\x30\x12\x10\n\x08\x61\x63tuator\x18\x02 \x03(\x02\"\'\n\nCovariance\x12\x19\n\x11\x63ovariance_matrix\x18\x01 \x03(\x02\";\n\x0cVelocityBody\x12\r\n\x05x_m_s\x18\x01 \x01(\x02\x12\r\n\x05y_m_s\x18\x02 \x01(\x02\x12\r\n\x05z_m_s\x18\x03 \x01(\x02\"5\n\x0cPositionBody\x12\x0b\n\x03x_m\x18\x01 \x01(\x02\x12\x0b\n\x03y_m\x18\x02 \x01(\x02\x12\x0b\n\x03z_m\x18\x03 \x01(\x02\"\xa4\x05\n\x08Odometry\x12\x11\n\ttime_usec\x18\x01 \x01(\x04\x12@\n\x08\x66rame_id\x18\x02 \x01(\x0e\x32..mavsdk.rpc.telemetry_server.Odometry.MavFrame\x12\x46\n\x0e\x63hild_frame_id\x18\x03 \x01(\x0e\x32..mavsdk.rpc.telemetry_server.Odometry.MavFrame\x12@\n\rposition_body\x18\x04 \x01(\x0b\x32).mavsdk.rpc.telemetry_server.PositionBody\x12\x32\n\x01q\x18\x05 \x01(\x0b\x32\'.mavsdk.rpc.telemetry_server.Quaternion\x12@\n\rvelocity_body\x18\x06 \x01(\x0b\x32).mavsdk.rpc.telemetry_server.VelocityBody\x12O\n\x15\x61ngular_velocity_body\x18\x07 \x01(\x0b\x32\x30.mavsdk.rpc.telemetry_server.AngularVelocityBody\x12@\n\x0fpose_covariance\x18\x08 \x01(\x0b\x32\'.mavsdk.rpc.telemetry_server.Covariance\x12\x44\n\x13velocity_covariance\x18\t \x01(\x0b\x32\'.mavsdk.rpc.telemetry_server.Covariance\"j\n\x08MavFrame\x12\x13\n\x0fMAV_FRAME_UNDEF\x10\x00\x12\x16\n\x12MAV_FRAME_BODY_NED\x10\x08\x12\x18\n\x14MAV_FRAME_VISION_NED\x10\x10\x12\x17\n\x13MAV_FRAME_ESTIM_NED\x10\x12\"\x7f\n\x0e\x44istanceSensor\x12#\n\x12minimum_distance_m\x18\x01 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12#\n\x12maximum_distance_m\x18\x02 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12#\n\x12\x63urrent_distance_m\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"\xb0\x01\n\x0eScaledPressure\x12\x14\n\x0ctimestamp_us\x18\x01 \x01(\x04\x12\x1d\n\x15\x61\x62solute_pressure_hpa\x18\x02 \x01(\x02\x12!\n\x19\x64ifferential_pressure_hpa\x18\x03 \x01(\x02\x12\x17\n\x0ftemperature_deg\x18\x04 \x01(\x02\x12-\n%differential_pressure_temperature_deg\x18\x05 \x01(\x02\"Y\n\x0bPositionNed\x12\x18\n\x07north_m\x18\x01 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x17\n\x06\x65\x61st_m\x18\x02 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x17\n\x06\x64own_m\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"D\n\x0bVelocityNed\x12\x11\n\tnorth_m_s\x18\x01 \x01(\x02\x12\x10\n\x08\x65\x61st_m_s\x18\x02 \x01(\x02\x12\x10\n\x08\x64own_m_s\x18\x03 \x01(\x02\"\x8d\x01\n\x13PositionVelocityNed\x12:\n\x08position\x18\x01 \x01(\x0b\x32(.mavsdk.rpc.telemetry_server.PositionNed\x12:\n\x08velocity\x18\x02 \x01(\x0b\x32(.mavsdk.rpc.telemetry_server.VelocityNed\"r\n\x0bGroundTruth\x12\x1d\n\x0clatitude_deg\x18\x01 \x01(\x01\x42\x07\x82\xb5\x18\x03NaN\x12\x1e\n\rlongitude_deg\x18\x02 \x01(\x01\x42\x07\x82\xb5\x18\x03NaN\x12$\n\x13\x61\x62solute_altitude_m\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"x\n\x10\x46ixedwingMetrics\x12\x1d\n\x0c\x61irspeed_m_s\x18\x01 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12$\n\x13throttle_percentage\x18\x02 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x1f\n\x0e\x63limb_rate_m_s\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"i\n\x0f\x41\x63\x63\x65lerationFrd\x12\x1d\n\x0c\x66orward_m_s2\x18\x01 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x1b\n\nright_m_s2\x18\x02 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x1a\n\tdown_m_s2\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"o\n\x12\x41ngularVelocityFrd\x12\x1e\n\rforward_rad_s\x18\x01 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x1c\n\x0bright_rad_s\x18\x02 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x1b\n\ndown_rad_s\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"m\n\x10MagneticFieldFrd\x12\x1e\n\rforward_gauss\x18\x01 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x1c\n\x0bright_gauss\x18\x02 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x1b\n\ndown_gauss\x18\x03 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\"\xa0\x02\n\x03Imu\x12\x46\n\x10\x61\x63\x63\x65leration_frd\x18\x01 \x01(\x0b\x32,.mavsdk.rpc.telemetry_server.AccelerationFrd\x12M\n\x14\x61ngular_velocity_frd\x18\x02 \x01(\x0b\x32/.mavsdk.rpc.telemetry_server.AngularVelocityFrd\x12I\n\x12magnetic_field_frd\x18\x03 \x01(\x0b\x32-.mavsdk.rpc.telemetry_server.MagneticFieldFrd\x12!\n\x10temperature_degc\x18\x04 \x01(\x02\x42\x07\x82\xb5\x18\x03NaN\x12\x14\n\x0ctimestamp_us\x18\x05 \x01(\x04\"\xb4\x02\n\x15TelemetryServerResult\x12I\n\x06result\x18\x01 \x01(\x0e\x32\x39.mavsdk.rpc.telemetry_server.TelemetryServerResult.Result\x12\x12\n\nresult_str\x18\x02 \x01(\t\"\xbb\x01\n\x06Result\x12\x12\n\x0eRESULT_UNKNOWN\x10\x00\x12\x12\n\x0eRESULT_SUCCESS\x10\x01\x12\x14\n\x10RESULT_NO_SYSTEM\x10\x02\x12\x1b\n\x17RESULT_CONNECTION_ERROR\x10\x03\x12\x0f\n\x0bRESULT_BUSY\x10\x04\x12\x19\n\x15RESULT_COMMAND_DENIED\x10\x05\x12\x12\n\x0eRESULT_TIMEOUT\x10\x06\x12\x16\n\x12RESULT_UNSUPPORTED\x10\x07*\xa4\x01\n\x07\x46ixType\x12\x13\n\x0f\x46IX_TYPE_NO_GPS\x10\x00\x12\x13\n\x0f\x46IX_TYPE_NO_FIX\x10\x01\x12\x13\n\x0f\x46IX_TYPE_FIX_2D\x10\x02\x12\x13\n\x0f\x46IX_TYPE_FIX_3D\x10\x03\x12\x15\n\x11\x46IX_TYPE_FIX_DGPS\x10\x04\x12\x16\n\x12\x46IX_TYPE_RTK_FLOAT\x10\x05\x12\x16\n\x12\x46IX_TYPE_RTK_FIXED\x10\x06*\x8d\x01\n\tVtolState\x12\x18\n\x14VTOL_STATE_UNDEFINED\x10\x00\x12\x1f\n\x1bVTOL_STATE_TRANSITION_TO_FW\x10\x01\x12\x1f\n\x1bVTOL_STATE_TRANSITION_TO_MC\x10\x02\x12\x11\n\rVTOL_STATE_MC\x10\x03\x12\x11\n\rVTOL_STATE_FW\x10\x04*\xf9\x01\n\x0eStatusTextType\x12\x1a\n\x16STATUS_TEXT_TYPE_DEBUG\x10\x00\x12\x19\n\x15STATUS_TEXT_TYPE_INFO\x10\x01\x12\x1b\n\x17STATUS_TEXT_TYPE_NOTICE\x10\x02\x12\x1c\n\x18STATUS_TEXT_TYPE_WARNING\x10\x03\x12\x1a\n\x16STATUS_TEXT_TYPE_ERROR\x10\x04\x12\x1d\n\x19STATUS_TEXT_TYPE_CRITICAL\x10\x05\x12\x1a\n\x16STATUS_TEXT_TYPE_ALERT\x10\x06\x12\x1e\n\x1aSTATUS_TEXT_TYPE_EMERGENCY\x10\x07*\x93\x01\n\x0bLandedState\x12\x18\n\x14LANDED_STATE_UNKNOWN\x10\x00\x12\x1a\n\x16LANDED_STATE_ON_GROUND\x10\x01\x12\x17\n\x13LANDED_STATE_IN_AIR\x10\x02\x12\x1b\n\x17LANDED_STATE_TAKING_OFF\x10\x03\x12\x18\n\x14LANDED_STATE_LANDING\x10\x04\x32\x8c\x0f\n\x16TelemetryServerService\x12\x82\x01\n\x0fPublishPosition\x12\x33.mavsdk.rpc.telemetry_server.PublishPositionRequest\x1a\x34.mavsdk.rpc.telemetry_server.PublishPositionResponse\"\x04\x80\xb5\x18\x01\x12v\n\x0bPublishHome\x12/.mavsdk.rpc.telemetry_server.PublishHomeRequest\x1a\x30.mavsdk.rpc.telemetry_server.PublishHomeResponse\"\x04\x80\xb5\x18\x01\x12\x85\x01\n\x10PublishSysStatus\x12\x34.mavsdk.rpc.telemetry_server.PublishSysStatusRequest\x1a\x35.mavsdk.rpc.telemetry_server.PublishSysStatusResponse\"\x04\x80\xb5\x18\x01\x12\x9a\x01\n\x17PublishExtendedSysState\x12;.mavsdk.rpc.telemetry_server.PublishExtendedSysStateRequest\x1a<.mavsdk.rpc.telemetry_server.PublishExtendedSysStateResponse\"\x04\x80\xb5\x18\x01\x12|\n\rPublishRawGps\x12\x31.mavsdk.rpc.telemetry_server.PublishRawGpsRequest\x1a\x32.mavsdk.rpc.telemetry_server.PublishRawGpsResponse\"\x04\x80\xb5\x18\x01\x12\x7f\n\x0ePublishBattery\x12\x32.mavsdk.rpc.telemetry_server.PublishBatteryRequest\x1a\x33.mavsdk.rpc.telemetry_server.PublishBatteryResponse\"\x04\x80\xb5\x18\x01\x12\x88\x01\n\x11PublishStatusText\x12\x35.mavsdk.rpc.telemetry_server.PublishStatusTextRequest\x1a\x36.mavsdk.rpc.telemetry_server.PublishStatusTextResponse\"\x04\x80\xb5\x18\x01\x12\x82\x01\n\x0fPublishOdometry\x12\x33.mavsdk.rpc.telemetry_server.PublishOdometryRequest\x1a\x34.mavsdk.rpc.telemetry_server.PublishOdometryResponse\"\x04\x80\xb5\x18\x01\x12\xa3\x01\n\x1aPublishPositionVelocityNed\x12>.mavsdk.rpc.telemetry_server.PublishPositionVelocityNedRequest\x1a?.mavsdk.rpc.telemetry_server.PublishPositionVelocityNedResponse\"\x04\x80\xb5\x18\x01\x12\x8b\x01\n\x12PublishGroundTruth\x12\x36.mavsdk.rpc.telemetry_server.PublishGroundTruthRequest\x1a\x37.mavsdk.rpc.telemetry_server.PublishGroundTruthResponse\"\x04\x80\xb5\x18\x01\x12s\n\nPublishImu\x12..mavsdk.rpc.telemetry_server.PublishImuRequest\x1a/.mavsdk.rpc.telemetry_server.PublishImuResponse\"\x04\x80\xb5\x18\x01\x12\x85\x01\n\x10PublishScaledImu\x12\x34.mavsdk.rpc.telemetry_server.PublishScaledImuRequest\x1a\x35.mavsdk.rpc.telemetry_server.PublishScaledImuResponse\"\x04\x80\xb5\x18\x01\x12|\n\rPublishRawImu\x12\x31.mavsdk.rpc.telemetry_server.PublishRawImuRequest\x1a\x32.mavsdk.rpc.telemetry_server.PublishRawImuResponse\"\x04\x80\xb5\x18\x01\x12\x91\x01\n\x14PublishUnixEpochTime\x12\x38.mavsdk.rpc.telemetry_server.PublishUnixEpochTimeRequest\x1a\x39.mavsdk.rpc.telemetry_server.PublishUnixEpochTimeResponse\"\x04\x80\xb5\x18\x01\x42\x32\n\x1aio.mavsdk.telemetry_serverB\x14TelemetryServerProtob\x06proto3' , dependencies=[mavsdk__options__pb2.DESCRIPTOR,]) @@ -70,103 +70,53 @@ ], containing_type=None, serialized_options=None, - serialized_start=7761, - serialized_end=7925, + serialized_start=7416, + serialized_end=7580, ) _sym_db.RegisterEnumDescriptor(_FIXTYPE) FixType = enum_type_wrapper.EnumTypeWrapper(_FIXTYPE) -_FLIGHTMODE = _descriptor.EnumDescriptor( - name='FlightMode', - full_name='mavsdk.rpc.telemetry_server.FlightMode', +_VTOLSTATE = _descriptor.EnumDescriptor( + name='VtolState', + full_name='mavsdk.rpc.telemetry_server.VtolState', filename=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key, values=[ _descriptor.EnumValueDescriptor( - name='FLIGHT_MODE_UNKNOWN', index=0, number=0, + name='VTOL_STATE_UNDEFINED', index=0, number=0, serialized_options=None, type=None, create_key=_descriptor._internal_create_key), _descriptor.EnumValueDescriptor( - name='FLIGHT_MODE_READY', index=1, number=1, + name='VTOL_STATE_TRANSITION_TO_FW', index=1, number=1, serialized_options=None, type=None, create_key=_descriptor._internal_create_key), _descriptor.EnumValueDescriptor( - name='FLIGHT_MODE_TAKEOFF', index=2, number=2, + name='VTOL_STATE_TRANSITION_TO_MC', index=2, number=2, serialized_options=None, type=None, create_key=_descriptor._internal_create_key), _descriptor.EnumValueDescriptor( - name='FLIGHT_MODE_HOLD', index=3, number=3, + name='VTOL_STATE_MC', index=3, number=3, serialized_options=None, type=None, create_key=_descriptor._internal_create_key), _descriptor.EnumValueDescriptor( - name='FLIGHT_MODE_MISSION', index=4, number=4, - serialized_options=None, - type=None, - create_key=_descriptor._internal_create_key), - _descriptor.EnumValueDescriptor( - name='FLIGHT_MODE_RETURN_TO_LAUNCH', index=5, number=5, - serialized_options=None, - type=None, - create_key=_descriptor._internal_create_key), - _descriptor.EnumValueDescriptor( - name='FLIGHT_MODE_LAND', index=6, number=6, - serialized_options=None, - type=None, - create_key=_descriptor._internal_create_key), - _descriptor.EnumValueDescriptor( - name='FLIGHT_MODE_OFFBOARD', index=7, number=7, - serialized_options=None, - type=None, - create_key=_descriptor._internal_create_key), - _descriptor.EnumValueDescriptor( - name='FLIGHT_MODE_FOLLOW_ME', index=8, number=8, - serialized_options=None, - type=None, - create_key=_descriptor._internal_create_key), - _descriptor.EnumValueDescriptor( - name='FLIGHT_MODE_MANUAL', index=9, number=9, - serialized_options=None, - type=None, - create_key=_descriptor._internal_create_key), - _descriptor.EnumValueDescriptor( - name='FLIGHT_MODE_ALTCTL', index=10, number=10, - serialized_options=None, - type=None, - create_key=_descriptor._internal_create_key), - _descriptor.EnumValueDescriptor( - name='FLIGHT_MODE_POSCTL', index=11, number=11, - serialized_options=None, - type=None, - create_key=_descriptor._internal_create_key), - _descriptor.EnumValueDescriptor( - name='FLIGHT_MODE_ACRO', index=12, number=12, - serialized_options=None, - type=None, - create_key=_descriptor._internal_create_key), - _descriptor.EnumValueDescriptor( - name='FLIGHT_MODE_STABILIZED', index=13, number=13, - serialized_options=None, - type=None, - create_key=_descriptor._internal_create_key), - _descriptor.EnumValueDescriptor( - name='FLIGHT_MODE_RATTITUDE', index=14, number=14, + name='VTOL_STATE_FW', index=4, number=4, serialized_options=None, type=None, create_key=_descriptor._internal_create_key), ], containing_type=None, serialized_options=None, - serialized_start=7928, - serialized_end=8318, + serialized_start=7583, + serialized_end=7724, ) -_sym_db.RegisterEnumDescriptor(_FLIGHTMODE) +_sym_db.RegisterEnumDescriptor(_VTOLSTATE) -FlightMode = enum_type_wrapper.EnumTypeWrapper(_FLIGHTMODE) +VtolState = enum_type_wrapper.EnumTypeWrapper(_VTOLSTATE) _STATUSTEXTTYPE = _descriptor.EnumDescriptor( name='StatusTextType', full_name='mavsdk.rpc.telemetry_server.StatusTextType', @@ -217,8 +167,8 @@ ], containing_type=None, serialized_options=None, - serialized_start=8321, - serialized_end=8570, + serialized_start=7727, + serialized_end=7976, ) _sym_db.RegisterEnumDescriptor(_STATUSTEXTTYPE) @@ -258,8 +208,8 @@ ], containing_type=None, serialized_options=None, - serialized_start=8573, - serialized_end=8720, + serialized_start=7979, + serialized_end=8126, ) _sym_db.RegisterEnumDescriptor(_LANDEDSTATE) @@ -271,21 +221,11 @@ FIX_TYPE_FIX_DGPS = 4 FIX_TYPE_RTK_FLOAT = 5 FIX_TYPE_RTK_FIXED = 6 -FLIGHT_MODE_UNKNOWN = 0 -FLIGHT_MODE_READY = 1 -FLIGHT_MODE_TAKEOFF = 2 -FLIGHT_MODE_HOLD = 3 -FLIGHT_MODE_MISSION = 4 -FLIGHT_MODE_RETURN_TO_LAUNCH = 5 -FLIGHT_MODE_LAND = 6 -FLIGHT_MODE_OFFBOARD = 7 -FLIGHT_MODE_FOLLOW_ME = 8 -FLIGHT_MODE_MANUAL = 9 -FLIGHT_MODE_ALTCTL = 10 -FLIGHT_MODE_POSCTL = 11 -FLIGHT_MODE_ACRO = 12 -FLIGHT_MODE_STABILIZED = 13 -FLIGHT_MODE_RATTITUDE = 14 +VTOL_STATE_UNDEFINED = 0 +VTOL_STATE_TRANSITION_TO_FW = 1 +VTOL_STATE_TRANSITION_TO_MC = 2 +VTOL_STATE_MC = 3 +VTOL_STATE_FW = 4 STATUS_TEXT_TYPE_DEBUG = 0 STATUS_TEXT_TYPE_INFO = 1 STATUS_TEXT_TYPE_NOTICE = 2 @@ -331,8 +271,8 @@ ], containing_type=None, serialized_options=None, - serialized_start=5868, - serialized_end=5974, + serialized_start=5523, + serialized_end=5629, ) _sym_db.RegisterEnumDescriptor(_ODOMETRY_MAVFRAME) @@ -386,8 +326,8 @@ ], containing_type=None, serialized_options=None, - serialized_start=7571, - serialized_end=7758, + serialized_start=7226, + serialized_end=7413, ) _sym_db.RegisterEnumDescriptor(_TELEMETRYSERVERRESULT_RESULT) @@ -414,6 +354,13 @@ message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='heading', full_name='mavsdk.rpc.telemetry_server.PublishPositionRequest.heading', index=2, + number=3, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), ], extensions=[ ], @@ -427,7 +374,7 @@ oneofs=[ ], serialized_start=95, - serialized_end=240, + serialized_end=295, ) @@ -458,22 +405,57 @@ extension_ranges=[], oneofs=[ ], - serialized_start=242, - serialized_end=315, + serialized_start=297, + serialized_end=370, ) -_PUBLISHINAIRREQUEST = _descriptor.Descriptor( - name='PublishInAirRequest', - full_name='mavsdk.rpc.telemetry_server.PublishInAirRequest', +_PUBLISHSYSSTATUSREQUEST = _descriptor.Descriptor( + name='PublishSysStatusRequest', + full_name='mavsdk.rpc.telemetry_server.PublishSysStatusRequest', filename=None, file=DESCRIPTOR, containing_type=None, create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( - name='is_in_air', full_name='mavsdk.rpc.telemetry_server.PublishInAirRequest.is_in_air', index=0, - number=1, type=8, cpp_type=7, label=1, + name='battery', full_name='mavsdk.rpc.telemetry_server.PublishSysStatusRequest.battery', index=0, + number=1, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='rc_receiver_status', full_name='mavsdk.rpc.telemetry_server.PublishSysStatusRequest.rc_receiver_status', index=1, + number=2, type=8, cpp_type=7, label=1, + has_default_value=False, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='gyro_status', full_name='mavsdk.rpc.telemetry_server.PublishSysStatusRequest.gyro_status', index=2, + number=3, type=8, cpp_type=7, label=1, + has_default_value=False, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='accel_status', full_name='mavsdk.rpc.telemetry_server.PublishSysStatusRequest.accel_status', index=3, + number=4, type=8, cpp_type=7, label=1, + has_default_value=False, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='mag_status', full_name='mavsdk.rpc.telemetry_server.PublishSysStatusRequest.mag_status', index=4, + number=5, type=8, cpp_type=7, label=1, + has_default_value=False, default_value=False, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='gps_status', full_name='mavsdk.rpc.telemetry_server.PublishSysStatusRequest.gps_status', index=5, + number=6, type=8, cpp_type=7, label=1, has_default_value=False, default_value=False, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, @@ -490,26 +472,33 @@ extension_ranges=[], oneofs=[ ], - serialized_start=317, - serialized_end=357, + serialized_start=373, + serialized_end=564, ) -_PUBLISHLANDEDSTATEREQUEST = _descriptor.Descriptor( - name='PublishLandedStateRequest', - full_name='mavsdk.rpc.telemetry_server.PublishLandedStateRequest', +_PUBLISHEXTENDEDSYSSTATEREQUEST = _descriptor.Descriptor( + name='PublishExtendedSysStateRequest', + full_name='mavsdk.rpc.telemetry_server.PublishExtendedSysStateRequest', filename=None, file=DESCRIPTOR, containing_type=None, create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( - name='landed_state', full_name='mavsdk.rpc.telemetry_server.PublishLandedStateRequest.landed_state', index=0, + name='vtol_state', full_name='mavsdk.rpc.telemetry_server.PublishExtendedSysStateRequest.vtol_state', index=0, number=1, type=14, cpp_type=8, label=1, has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + _descriptor.FieldDescriptor( + name='landed_state', full_name='mavsdk.rpc.telemetry_server.PublishExtendedSysStateRequest.landed_state', index=1, + number=2, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), ], extensions=[ ], @@ -522,21 +511,21 @@ extension_ranges=[], oneofs=[ ], - serialized_start=359, - serialized_end=450, + serialized_start=567, + serialized_end=723, ) -_PUBLISHARMEDREQUEST = _descriptor.Descriptor( - name='PublishArmedRequest', - full_name='mavsdk.rpc.telemetry_server.PublishArmedRequest', +_PUBLISHINAIRREQUEST = _descriptor.Descriptor( + name='PublishInAirRequest', + full_name='mavsdk.rpc.telemetry_server.PublishInAirRequest', filename=None, file=DESCRIPTOR, containing_type=None, create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( - name='is_armed', full_name='mavsdk.rpc.telemetry_server.PublishArmedRequest.is_armed', index=0, + name='is_in_air', full_name='mavsdk.rpc.telemetry_server.PublishInAirRequest.is_in_air', index=0, number=1, type=8, cpp_type=7, label=1, has_default_value=False, default_value=False, message_type=None, enum_type=None, containing_type=None, @@ -554,30 +543,23 @@ extension_ranges=[], oneofs=[ ], - serialized_start=452, - serialized_end=491, + serialized_start=725, + serialized_end=765, ) -_PUBLISHRAWGPSREQUEST = _descriptor.Descriptor( - name='PublishRawGpsRequest', - full_name='mavsdk.rpc.telemetry_server.PublishRawGpsRequest', +_PUBLISHLANDEDSTATEREQUEST = _descriptor.Descriptor( + name='PublishLandedStateRequest', + full_name='mavsdk.rpc.telemetry_server.PublishLandedStateRequest', filename=None, file=DESCRIPTOR, containing_type=None, create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( - name='raw_gps', full_name='mavsdk.rpc.telemetry_server.PublishRawGpsRequest.raw_gps', index=0, - number=1, type=11, cpp_type=10, label=1, - has_default_value=False, default_value=None, - message_type=None, enum_type=None, containing_type=None, - is_extension=False, extension_scope=None, - serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), - _descriptor.FieldDescriptor( - name='gps_info', full_name='mavsdk.rpc.telemetry_server.PublishRawGpsRequest.gps_info', index=1, - number=2, type=11, cpp_type=10, label=1, - has_default_value=False, default_value=None, + name='landed_state', full_name='mavsdk.rpc.telemetry_server.PublishLandedStateRequest.landed_state', index=0, + number=1, type=14, cpp_type=8, label=1, + has_default_value=False, default_value=0, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), @@ -593,55 +575,30 @@ extension_ranges=[], oneofs=[ ], - serialized_start=494, - serialized_end=626, + serialized_start=767, + serialized_end=858, ) -_PUBLISHBATTERYREQUEST = _descriptor.Descriptor( - name='PublishBatteryRequest', - full_name='mavsdk.rpc.telemetry_server.PublishBatteryRequest', +_PUBLISHRAWGPSREQUEST = _descriptor.Descriptor( + name='PublishRawGpsRequest', + full_name='mavsdk.rpc.telemetry_server.PublishRawGpsRequest', filename=None, file=DESCRIPTOR, containing_type=None, create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( - name='battery', full_name='mavsdk.rpc.telemetry_server.PublishBatteryRequest.battery', index=0, + name='raw_gps', full_name='mavsdk.rpc.telemetry_server.PublishRawGpsRequest.raw_gps', index=0, number=1, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), - ], - extensions=[ - ], - nested_types=[], - enum_types=[ - ], - serialized_options=None, - is_extendable=False, - syntax='proto3', - extension_ranges=[], - oneofs=[ - ], - serialized_start=628, - serialized_end=706, -) - - -_PUBLISHFLIGHTMODEREQUEST = _descriptor.Descriptor( - name='PublishFlightModeRequest', - full_name='mavsdk.rpc.telemetry_server.PublishFlightModeRequest', - filename=None, - file=DESCRIPTOR, - containing_type=None, - create_key=_descriptor._internal_create_key, - fields=[ _descriptor.FieldDescriptor( - name='flight_mode', full_name='mavsdk.rpc.telemetry_server.PublishFlightModeRequest.flight_mode', index=0, - number=1, type=14, cpp_type=8, label=1, - has_default_value=False, default_value=0, + name='gps_info', full_name='mavsdk.rpc.telemetry_server.PublishRawGpsRequest.gps_info', index=1, + number=2, type=11, cpp_type=10, label=1, + has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, is_extension=False, extension_scope=None, serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), @@ -657,21 +614,21 @@ extension_ranges=[], oneofs=[ ], - serialized_start=708, - serialized_end=796, + serialized_start=861, + serialized_end=993, ) -_PUBLISHHEALTHREQUEST = _descriptor.Descriptor( - name='PublishHealthRequest', - full_name='mavsdk.rpc.telemetry_server.PublishHealthRequest', +_PUBLISHBATTERYREQUEST = _descriptor.Descriptor( + name='PublishBatteryRequest', + full_name='mavsdk.rpc.telemetry_server.PublishBatteryRequest', filename=None, file=DESCRIPTOR, containing_type=None, create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( - name='health', full_name='mavsdk.rpc.telemetry_server.PublishHealthRequest.health', index=0, + name='battery', full_name='mavsdk.rpc.telemetry_server.PublishBatteryRequest.battery', index=0, number=1, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, @@ -689,8 +646,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=798, - serialized_end=873, + serialized_start=995, + serialized_end=1073, ) @@ -721,8 +678,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=875, - serialized_end=957, + serialized_start=1075, + serialized_end=1157, ) @@ -753,8 +710,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=959, - serialized_end=1047, + serialized_start=1159, + serialized_end=1247, ) @@ -785,8 +742,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1049, - serialized_end=1130, + serialized_start=1249, + serialized_end=1330, ) @@ -817,8 +774,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1132, - serialized_end=1248, + serialized_start=1332, + serialized_end=1448, ) @@ -849,8 +806,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1250, - serialized_end=1341, + serialized_start=1450, + serialized_end=1541, ) @@ -881,8 +838,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1343, - serialized_end=1409, + serialized_start=1543, + serialized_end=1609, ) @@ -913,8 +870,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1411, - serialized_end=1483, + serialized_start=1611, + serialized_end=1683, ) @@ -945,40 +902,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1485, - serialized_end=1554, -) - - -_PUBLISHHEALTHALLOKREQUEST = _descriptor.Descriptor( - name='PublishHealthAllOkRequest', - full_name='mavsdk.rpc.telemetry_server.PublishHealthAllOkRequest', - filename=None, - file=DESCRIPTOR, - containing_type=None, - create_key=_descriptor._internal_create_key, - fields=[ - _descriptor.FieldDescriptor( - name='is_health_all_ok', full_name='mavsdk.rpc.telemetry_server.PublishHealthAllOkRequest.is_health_all_ok', index=0, - number=1, type=8, cpp_type=7, label=1, - has_default_value=False, default_value=False, - message_type=None, enum_type=None, containing_type=None, - is_extension=False, extension_scope=None, - serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), - ], - extensions=[ - ], - nested_types=[], - enum_types=[ - ], - serialized_options=None, - is_extendable=False, - syntax='proto3', - extension_ranges=[], - oneofs=[ - ], - serialized_start=1556, - serialized_end=1609, + serialized_start=1685, + serialized_end=1754, ) @@ -1009,8 +934,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1611, - serialized_end=1657, + serialized_start=1756, + serialized_end=1802, ) @@ -1041,8 +966,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1659, - serialized_end=1769, + serialized_start=1804, + serialized_end=1914, ) @@ -1073,21 +998,21 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1771, - serialized_end=1877, + serialized_start=1916, + serialized_end=2022, ) -_PUBLISHARMEDRESPONSE = _descriptor.Descriptor( - name='PublishArmedResponse', - full_name='mavsdk.rpc.telemetry_server.PublishArmedResponse', +_PUBLISHSYSSTATUSRESPONSE = _descriptor.Descriptor( + name='PublishSysStatusResponse', + full_name='mavsdk.rpc.telemetry_server.PublishSysStatusResponse', filename=None, file=DESCRIPTOR, containing_type=None, create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( - name='telemetry_server_result', full_name='mavsdk.rpc.telemetry_server.PublishArmedResponse.telemetry_server_result', index=0, + name='telemetry_server_result', full_name='mavsdk.rpc.telemetry_server.PublishSysStatusResponse.telemetry_server_result', index=0, number=1, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, @@ -1105,21 +1030,21 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1879, - serialized_end=1986, + serialized_start=2024, + serialized_end=2135, ) -_PUBLISHRAWGPSRESPONSE = _descriptor.Descriptor( - name='PublishRawGpsResponse', - full_name='mavsdk.rpc.telemetry_server.PublishRawGpsResponse', +_PUBLISHEXTENDEDSYSSTATERESPONSE = _descriptor.Descriptor( + name='PublishExtendedSysStateResponse', + full_name='mavsdk.rpc.telemetry_server.PublishExtendedSysStateResponse', filename=None, file=DESCRIPTOR, containing_type=None, create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( - name='telemetry_server_result', full_name='mavsdk.rpc.telemetry_server.PublishRawGpsResponse.telemetry_server_result', index=0, + name='telemetry_server_result', full_name='mavsdk.rpc.telemetry_server.PublishExtendedSysStateResponse.telemetry_server_result', index=0, number=1, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, @@ -1137,53 +1062,21 @@ extension_ranges=[], oneofs=[ ], - serialized_start=1988, - serialized_end=2096, + serialized_start=2137, + serialized_end=2255, ) -_PUBLISHBATTERYRESPONSE = _descriptor.Descriptor( - name='PublishBatteryResponse', - full_name='mavsdk.rpc.telemetry_server.PublishBatteryResponse', - filename=None, - file=DESCRIPTOR, - containing_type=None, - create_key=_descriptor._internal_create_key, - fields=[ - _descriptor.FieldDescriptor( - name='telemetry_server_result', full_name='mavsdk.rpc.telemetry_server.PublishBatteryResponse.telemetry_server_result', index=0, - number=1, type=11, cpp_type=10, label=1, - has_default_value=False, default_value=None, - message_type=None, enum_type=None, containing_type=None, - is_extension=False, extension_scope=None, - serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), - ], - extensions=[ - ], - nested_types=[], - enum_types=[ - ], - serialized_options=None, - is_extendable=False, - syntax='proto3', - extension_ranges=[], - oneofs=[ - ], - serialized_start=2098, - serialized_end=2207, -) - - -_PUBLISHFLIGHTMODERESPONSE = _descriptor.Descriptor( - name='PublishFlightModeResponse', - full_name='mavsdk.rpc.telemetry_server.PublishFlightModeResponse', +_PUBLISHRAWGPSRESPONSE = _descriptor.Descriptor( + name='PublishRawGpsResponse', + full_name='mavsdk.rpc.telemetry_server.PublishRawGpsResponse', filename=None, file=DESCRIPTOR, containing_type=None, create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( - name='telemetry_server_result', full_name='mavsdk.rpc.telemetry_server.PublishFlightModeResponse.telemetry_server_result', index=0, + name='telemetry_server_result', full_name='mavsdk.rpc.telemetry_server.PublishRawGpsResponse.telemetry_server_result', index=0, number=1, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, @@ -1201,21 +1094,21 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2209, - serialized_end=2321, + serialized_start=2257, + serialized_end=2365, ) -_PUBLISHHEALTHRESPONSE = _descriptor.Descriptor( - name='PublishHealthResponse', - full_name='mavsdk.rpc.telemetry_server.PublishHealthResponse', +_PUBLISHBATTERYRESPONSE = _descriptor.Descriptor( + name='PublishBatteryResponse', + full_name='mavsdk.rpc.telemetry_server.PublishBatteryResponse', filename=None, file=DESCRIPTOR, containing_type=None, create_key=_descriptor._internal_create_key, fields=[ _descriptor.FieldDescriptor( - name='telemetry_server_result', full_name='mavsdk.rpc.telemetry_server.PublishHealthResponse.telemetry_server_result', index=0, + name='telemetry_server_result', full_name='mavsdk.rpc.telemetry_server.PublishBatteryResponse.telemetry_server_result', index=0, number=1, type=11, cpp_type=10, label=1, has_default_value=False, default_value=None, message_type=None, enum_type=None, containing_type=None, @@ -1233,8 +1126,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2323, - serialized_end=2431, + serialized_start=2367, + serialized_end=2476, ) @@ -1265,8 +1158,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2433, - serialized_end=2545, + serialized_start=2478, + serialized_end=2590, ) @@ -1297,8 +1190,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2547, - serialized_end=2657, + serialized_start=2592, + serialized_end=2702, ) @@ -1329,8 +1222,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2659, - serialized_end=2780, + serialized_start=2704, + serialized_end=2825, ) @@ -1361,8 +1254,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2782, - serialized_end=2895, + serialized_start=2827, + serialized_end=2940, ) @@ -1393,8 +1286,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=2897, - serialized_end=3002, + serialized_start=2942, + serialized_end=3047, ) @@ -1425,8 +1318,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=3004, - serialized_end=3115, + serialized_start=3049, + serialized_end=3160, ) @@ -1457,40 +1350,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=3117, - serialized_end=3225, -) - - -_PUBLISHHEALTHALLOKRESPONSE = _descriptor.Descriptor( - name='PublishHealthAllOkResponse', - full_name='mavsdk.rpc.telemetry_server.PublishHealthAllOkResponse', - filename=None, - file=DESCRIPTOR, - containing_type=None, - create_key=_descriptor._internal_create_key, - fields=[ - _descriptor.FieldDescriptor( - name='telemetry_server_result', full_name='mavsdk.rpc.telemetry_server.PublishHealthAllOkResponse.telemetry_server_result', index=0, - number=1, type=11, cpp_type=10, label=1, - has_default_value=False, default_value=None, - message_type=None, enum_type=None, containing_type=None, - is_extension=False, extension_scope=None, - serialized_options=None, file=DESCRIPTOR, create_key=_descriptor._internal_create_key), - ], - extensions=[ - ], - nested_types=[], - enum_types=[ - ], - serialized_options=None, - is_extendable=False, - syntax='proto3', - extension_ranges=[], - oneofs=[ - ], - serialized_start=3227, - serialized_end=3340, + serialized_start=3162, + serialized_end=3270, ) @@ -1521,8 +1382,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=3342, - serialized_end=3457, + serialized_start=3272, + serialized_end=3387, ) @@ -1574,8 +1435,40 @@ extension_ranges=[], oneofs=[ ], - serialized_start=3460, - serialized_end=3609, + serialized_start=3390, + serialized_end=3539, +) + + +_HEADING = _descriptor.Descriptor( + name='Heading', + full_name='mavsdk.rpc.telemetry_server.Heading', + filename=None, + file=DESCRIPTOR, + containing_type=None, + create_key=_descriptor._internal_create_key, + fields=[ + _descriptor.FieldDescriptor( + name='heading_deg', full_name='mavsdk.rpc.telemetry_server.Heading.heading_deg', index=0, + number=1, type=1, cpp_type=5, label=1, + has_default_value=False, default_value=float(0), + message_type=None, enum_type=None, containing_type=None, + is_extension=False, extension_scope=None, + serialized_options=b'\202\265\030\003NaN', file=DESCRIPTOR, create_key=_descriptor._internal_create_key), + ], + extensions=[ + ], + nested_types=[], + enum_types=[ + ], + serialized_options=None, + is_extendable=False, + syntax='proto3', + extension_ranges=[], + oneofs=[ + ], + serialized_start=3541, + serialized_end=3580, ) @@ -1634,8 +1527,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=3611, - serialized_end=3725, + serialized_start=3582, + serialized_end=3696, ) @@ -1687,8 +1580,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=3727, - serialized_end=3842, + serialized_start=3698, + serialized_end=3813, ) @@ -1733,8 +1626,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=3844, - serialized_end=3952, + serialized_start=3815, + serialized_end=3923, ) @@ -1772,8 +1665,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=3954, - serialized_end=4050, + serialized_start=3925, + serialized_end=4021, ) @@ -1895,8 +1788,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4053, - serialized_end=4404, + serialized_start=4024, + serialized_end=4375, ) @@ -1934,82 +1827,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4406, - serialized_end=4479, -) - - -_HEALTH = _descriptor.Descriptor( - name='Health', - full_name='mavsdk.rpc.telemetry_server.Health', - filename=None, - file=DESCRIPTOR, - containing_type=None, - create_key=_descriptor._internal_create_key, - fields=[ - _descriptor.FieldDescriptor( - name='is_gyrometer_calibration_ok', full_name='mavsdk.rpc.telemetry_server.Health.is_gyrometer_calibration_ok', index=0, - number=1, type=8, cpp_type=7, label=1, - has_default_value=False, default_value=False, - message_type=None, enum_type=None, containing_type=None, - is_extension=False, extension_scope=None, - serialized_options=b'\202\265\030\005false', file=DESCRIPTOR, create_key=_descriptor._internal_create_key), - _descriptor.FieldDescriptor( - name='is_accelerometer_calibration_ok', full_name='mavsdk.rpc.telemetry_server.Health.is_accelerometer_calibration_ok', index=1, - number=2, type=8, cpp_type=7, label=1, - has_default_value=False, default_value=False, - message_type=None, enum_type=None, containing_type=None, - is_extension=False, extension_scope=None, - serialized_options=b'\202\265\030\005false', file=DESCRIPTOR, create_key=_descriptor._internal_create_key), - _descriptor.FieldDescriptor( - name='is_magnetometer_calibration_ok', full_name='mavsdk.rpc.telemetry_server.Health.is_magnetometer_calibration_ok', index=2, - number=3, type=8, cpp_type=7, label=1, - has_default_value=False, default_value=False, - message_type=None, enum_type=None, containing_type=None, - is_extension=False, extension_scope=None, - serialized_options=b'\202\265\030\005false', file=DESCRIPTOR, create_key=_descriptor._internal_create_key), - _descriptor.FieldDescriptor( - name='is_local_position_ok', full_name='mavsdk.rpc.telemetry_server.Health.is_local_position_ok', index=3, - number=5, type=8, cpp_type=7, label=1, - has_default_value=False, default_value=False, - message_type=None, enum_type=None, containing_type=None, - is_extension=False, extension_scope=None, - serialized_options=b'\202\265\030\005false', file=DESCRIPTOR, create_key=_descriptor._internal_create_key), - _descriptor.FieldDescriptor( - name='is_global_position_ok', full_name='mavsdk.rpc.telemetry_server.Health.is_global_position_ok', index=4, - number=6, type=8, cpp_type=7, label=1, - has_default_value=False, default_value=False, - message_type=None, enum_type=None, containing_type=None, - is_extension=False, extension_scope=None, - serialized_options=b'\202\265\030\005false', file=DESCRIPTOR, create_key=_descriptor._internal_create_key), - _descriptor.FieldDescriptor( - name='is_home_position_ok', full_name='mavsdk.rpc.telemetry_server.Health.is_home_position_ok', index=5, - number=7, type=8, cpp_type=7, label=1, - has_default_value=False, default_value=False, - message_type=None, enum_type=None, containing_type=None, - is_extension=False, extension_scope=None, - serialized_options=b'\202\265\030\005false', file=DESCRIPTOR, create_key=_descriptor._internal_create_key), - _descriptor.FieldDescriptor( - name='is_armable', full_name='mavsdk.rpc.telemetry_server.Health.is_armable', index=6, - number=8, type=8, cpp_type=7, label=1, - has_default_value=False, default_value=False, - message_type=None, enum_type=None, containing_type=None, - is_extension=False, extension_scope=None, - serialized_options=b'\202\265\030\005false', file=DESCRIPTOR, create_key=_descriptor._internal_create_key), - ], - extensions=[ - ], - nested_types=[], - enum_types=[ - ], - serialized_options=None, - is_extendable=False, - syntax='proto3', - extension_ranges=[], - oneofs=[ - ], - serialized_start=4482, - serialized_end=4795, + serialized_start=4377, + serialized_end=4450, ) @@ -2054,8 +1873,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4797, - serialized_end=4921, + serialized_start=4452, + serialized_end=4576, ) @@ -2093,8 +1912,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=4923, - serialized_end=5008, + serialized_start=4578, + serialized_end=4663, ) @@ -2132,8 +1951,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5010, - serialized_end=5073, + serialized_start=4665, + serialized_end=4728, ) @@ -2171,8 +1990,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5075, - serialized_end=5138, + serialized_start=4730, + serialized_end=4793, ) @@ -2203,8 +2022,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5140, - serialized_end=5179, + serialized_start=4795, + serialized_end=4834, ) @@ -2249,8 +2068,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5181, - serialized_end=5240, + serialized_start=4836, + serialized_end=4895, ) @@ -2295,8 +2114,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5242, - serialized_end=5295, + serialized_start=4897, + serialized_end=4950, ) @@ -2384,8 +2203,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5298, - serialized_end=5974, + serialized_start=4953, + serialized_end=5629, ) @@ -2430,8 +2249,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=5976, - serialized_end=6103, + serialized_start=5631, + serialized_end=5758, ) @@ -2490,8 +2309,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=6106, - serialized_end=6282, + serialized_start=5761, + serialized_end=5937, ) @@ -2536,8 +2355,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=6284, - serialized_end=6373, + serialized_start=5939, + serialized_end=6028, ) @@ -2582,8 +2401,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=6375, - serialized_end=6443, + serialized_start=6030, + serialized_end=6098, ) @@ -2621,8 +2440,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=6446, - serialized_end=6587, + serialized_start=6101, + serialized_end=6242, ) @@ -2667,8 +2486,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=6589, - serialized_end=6703, + serialized_start=6244, + serialized_end=6358, ) @@ -2713,8 +2532,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=6705, - serialized_end=6825, + serialized_start=6360, + serialized_end=6480, ) @@ -2759,8 +2578,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=6827, - serialized_end=6932, + serialized_start=6482, + serialized_end=6587, ) @@ -2805,8 +2624,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=6934, - serialized_end=7045, + serialized_start=6589, + serialized_end=6700, ) @@ -2851,8 +2670,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=7047, - serialized_end=7156, + serialized_start=6702, + serialized_end=6811, ) @@ -2911,8 +2730,8 @@ extension_ranges=[], oneofs=[ ], - serialized_start=7159, - serialized_end=7447, + serialized_start=6814, + serialized_end=7102, ) @@ -2951,19 +2770,21 @@ extension_ranges=[], oneofs=[ ], - serialized_start=7450, - serialized_end=7758, + serialized_start=7105, + serialized_end=7413, ) _PUBLISHPOSITIONREQUEST.fields_by_name['position'].message_type = _POSITION _PUBLISHPOSITIONREQUEST.fields_by_name['velocity_ned'].message_type = _VELOCITYNED +_PUBLISHPOSITIONREQUEST.fields_by_name['heading'].message_type = _HEADING _PUBLISHHOMEREQUEST.fields_by_name['home'].message_type = _POSITION +_PUBLISHSYSSTATUSREQUEST.fields_by_name['battery'].message_type = _BATTERY +_PUBLISHEXTENDEDSYSSTATEREQUEST.fields_by_name['vtol_state'].enum_type = _VTOLSTATE +_PUBLISHEXTENDEDSYSSTATEREQUEST.fields_by_name['landed_state'].enum_type = _LANDEDSTATE _PUBLISHLANDEDSTATEREQUEST.fields_by_name['landed_state'].enum_type = _LANDEDSTATE _PUBLISHRAWGPSREQUEST.fields_by_name['raw_gps'].message_type = _RAWGPS _PUBLISHRAWGPSREQUEST.fields_by_name['gps_info'].message_type = _GPSINFO _PUBLISHBATTERYREQUEST.fields_by_name['battery'].message_type = _BATTERY -_PUBLISHFLIGHTMODEREQUEST.fields_by_name['flight_mode'].enum_type = _FLIGHTMODE -_PUBLISHHEALTHREQUEST.fields_by_name['health'].message_type = _HEALTH _PUBLISHRCSTATUSREQUEST.fields_by_name['rc_status'].message_type = _RCSTATUS _PUBLISHSTATUSTEXTREQUEST.fields_by_name['status_text'].message_type = _STATUSTEXT _PUBLISHODOMETRYREQUEST.fields_by_name['odometry'].message_type = _ODOMETRY @@ -2974,11 +2795,10 @@ _PUBLISHRAWIMUREQUEST.fields_by_name['imu'].message_type = _IMU _PUBLISHPOSITIONRESPONSE.fields_by_name['telemetry_server_result'].message_type = _TELEMETRYSERVERRESULT _PUBLISHHOMERESPONSE.fields_by_name['telemetry_server_result'].message_type = _TELEMETRYSERVERRESULT -_PUBLISHARMEDRESPONSE.fields_by_name['telemetry_server_result'].message_type = _TELEMETRYSERVERRESULT +_PUBLISHSYSSTATUSRESPONSE.fields_by_name['telemetry_server_result'].message_type = _TELEMETRYSERVERRESULT +_PUBLISHEXTENDEDSYSSTATERESPONSE.fields_by_name['telemetry_server_result'].message_type = _TELEMETRYSERVERRESULT _PUBLISHRAWGPSRESPONSE.fields_by_name['telemetry_server_result'].message_type = _TELEMETRYSERVERRESULT _PUBLISHBATTERYRESPONSE.fields_by_name['telemetry_server_result'].message_type = _TELEMETRYSERVERRESULT -_PUBLISHFLIGHTMODERESPONSE.fields_by_name['telemetry_server_result'].message_type = _TELEMETRYSERVERRESULT -_PUBLISHHEALTHRESPONSE.fields_by_name['telemetry_server_result'].message_type = _TELEMETRYSERVERRESULT _PUBLISHSTATUSTEXTRESPONSE.fields_by_name['telemetry_server_result'].message_type = _TELEMETRYSERVERRESULT _PUBLISHODOMETRYRESPONSE.fields_by_name['telemetry_server_result'].message_type = _TELEMETRYSERVERRESULT _PUBLISHPOSITIONVELOCITYNEDRESPONSE.fields_by_name['telemetry_server_result'].message_type = _TELEMETRYSERVERRESULT @@ -2986,7 +2806,6 @@ _PUBLISHIMURESPONSE.fields_by_name['telemetry_server_result'].message_type = _TELEMETRYSERVERRESULT _PUBLISHSCALEDIMURESPONSE.fields_by_name['telemetry_server_result'].message_type = _TELEMETRYSERVERRESULT _PUBLISHRAWIMURESPONSE.fields_by_name['telemetry_server_result'].message_type = _TELEMETRYSERVERRESULT -_PUBLISHHEALTHALLOKRESPONSE.fields_by_name['telemetry_server_result'].message_type = _TELEMETRYSERVERRESULT _PUBLISHUNIXEPOCHTIMERESPONSE.fields_by_name['telemetry_server_result'].message_type = _TELEMETRYSERVERRESULT _GPSINFO.fields_by_name['fix_type'].enum_type = _FIXTYPE _STATUSTEXT.fields_by_name['type'].enum_type = _STATUSTEXTTYPE @@ -3008,13 +2827,12 @@ _TELEMETRYSERVERRESULT_RESULT.containing_type = _TELEMETRYSERVERRESULT DESCRIPTOR.message_types_by_name['PublishPositionRequest'] = _PUBLISHPOSITIONREQUEST DESCRIPTOR.message_types_by_name['PublishHomeRequest'] = _PUBLISHHOMEREQUEST +DESCRIPTOR.message_types_by_name['PublishSysStatusRequest'] = _PUBLISHSYSSTATUSREQUEST +DESCRIPTOR.message_types_by_name['PublishExtendedSysStateRequest'] = _PUBLISHEXTENDEDSYSSTATEREQUEST DESCRIPTOR.message_types_by_name['PublishInAirRequest'] = _PUBLISHINAIRREQUEST DESCRIPTOR.message_types_by_name['PublishLandedStateRequest'] = _PUBLISHLANDEDSTATEREQUEST -DESCRIPTOR.message_types_by_name['PublishArmedRequest'] = _PUBLISHARMEDREQUEST DESCRIPTOR.message_types_by_name['PublishRawGpsRequest'] = _PUBLISHRAWGPSREQUEST DESCRIPTOR.message_types_by_name['PublishBatteryRequest'] = _PUBLISHBATTERYREQUEST -DESCRIPTOR.message_types_by_name['PublishFlightModeRequest'] = _PUBLISHFLIGHTMODEREQUEST -DESCRIPTOR.message_types_by_name['PublishHealthRequest'] = _PUBLISHHEALTHREQUEST DESCRIPTOR.message_types_by_name['PublishRcStatusRequest'] = _PUBLISHRCSTATUSREQUEST DESCRIPTOR.message_types_by_name['PublishStatusTextRequest'] = _PUBLISHSTATUSTEXTREQUEST DESCRIPTOR.message_types_by_name['PublishOdometryRequest'] = _PUBLISHODOMETRYREQUEST @@ -3023,15 +2841,13 @@ DESCRIPTOR.message_types_by_name['PublishImuRequest'] = _PUBLISHIMUREQUEST DESCRIPTOR.message_types_by_name['PublishScaledImuRequest'] = _PUBLISHSCALEDIMUREQUEST DESCRIPTOR.message_types_by_name['PublishRawImuRequest'] = _PUBLISHRAWIMUREQUEST -DESCRIPTOR.message_types_by_name['PublishHealthAllOkRequest'] = _PUBLISHHEALTHALLOKREQUEST DESCRIPTOR.message_types_by_name['PublishUnixEpochTimeRequest'] = _PUBLISHUNIXEPOCHTIMEREQUEST DESCRIPTOR.message_types_by_name['PublishPositionResponse'] = _PUBLISHPOSITIONRESPONSE DESCRIPTOR.message_types_by_name['PublishHomeResponse'] = _PUBLISHHOMERESPONSE -DESCRIPTOR.message_types_by_name['PublishArmedResponse'] = _PUBLISHARMEDRESPONSE +DESCRIPTOR.message_types_by_name['PublishSysStatusResponse'] = _PUBLISHSYSSTATUSRESPONSE +DESCRIPTOR.message_types_by_name['PublishExtendedSysStateResponse'] = _PUBLISHEXTENDEDSYSSTATERESPONSE DESCRIPTOR.message_types_by_name['PublishRawGpsResponse'] = _PUBLISHRAWGPSRESPONSE DESCRIPTOR.message_types_by_name['PublishBatteryResponse'] = _PUBLISHBATTERYRESPONSE -DESCRIPTOR.message_types_by_name['PublishFlightModeResponse'] = _PUBLISHFLIGHTMODERESPONSE -DESCRIPTOR.message_types_by_name['PublishHealthResponse'] = _PUBLISHHEALTHRESPONSE DESCRIPTOR.message_types_by_name['PublishStatusTextResponse'] = _PUBLISHSTATUSTEXTRESPONSE DESCRIPTOR.message_types_by_name['PublishOdometryResponse'] = _PUBLISHODOMETRYRESPONSE DESCRIPTOR.message_types_by_name['PublishPositionVelocityNedResponse'] = _PUBLISHPOSITIONVELOCITYNEDRESPONSE @@ -3039,16 +2855,15 @@ DESCRIPTOR.message_types_by_name['PublishImuResponse'] = _PUBLISHIMURESPONSE DESCRIPTOR.message_types_by_name['PublishScaledImuResponse'] = _PUBLISHSCALEDIMURESPONSE DESCRIPTOR.message_types_by_name['PublishRawImuResponse'] = _PUBLISHRAWIMURESPONSE -DESCRIPTOR.message_types_by_name['PublishHealthAllOkResponse'] = _PUBLISHHEALTHALLOKRESPONSE DESCRIPTOR.message_types_by_name['PublishUnixEpochTimeResponse'] = _PUBLISHUNIXEPOCHTIMERESPONSE DESCRIPTOR.message_types_by_name['Position'] = _POSITION +DESCRIPTOR.message_types_by_name['Heading'] = _HEADING DESCRIPTOR.message_types_by_name['Quaternion'] = _QUATERNION DESCRIPTOR.message_types_by_name['EulerAngle'] = _EULERANGLE DESCRIPTOR.message_types_by_name['AngularVelocityBody'] = _ANGULARVELOCITYBODY DESCRIPTOR.message_types_by_name['GpsInfo'] = _GPSINFO DESCRIPTOR.message_types_by_name['RawGps'] = _RAWGPS DESCRIPTOR.message_types_by_name['Battery'] = _BATTERY -DESCRIPTOR.message_types_by_name['Health'] = _HEALTH DESCRIPTOR.message_types_by_name['RcStatus'] = _RCSTATUS DESCRIPTOR.message_types_by_name['StatusText'] = _STATUSTEXT DESCRIPTOR.message_types_by_name['ActuatorControlTarget'] = _ACTUATORCONTROLTARGET @@ -3070,7 +2885,7 @@ DESCRIPTOR.message_types_by_name['Imu'] = _IMU DESCRIPTOR.message_types_by_name['TelemetryServerResult'] = _TELEMETRYSERVERRESULT DESCRIPTOR.enum_types_by_name['FixType'] = _FIXTYPE -DESCRIPTOR.enum_types_by_name['FlightMode'] = _FLIGHTMODE +DESCRIPTOR.enum_types_by_name['VtolState'] = _VTOLSTATE DESCRIPTOR.enum_types_by_name['StatusTextType'] = _STATUSTEXTTYPE DESCRIPTOR.enum_types_by_name['LandedState'] = _LANDEDSTATE _sym_db.RegisterFileDescriptor(DESCRIPTOR) @@ -3089,6 +2904,20 @@ }) _sym_db.RegisterMessage(PublishHomeRequest) +PublishSysStatusRequest = _reflection.GeneratedProtocolMessageType('PublishSysStatusRequest', (_message.Message,), { + 'DESCRIPTOR' : _PUBLISHSYSSTATUSREQUEST, + '__module__' : 'telemetry_server.telemetry_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.telemetry_server.PublishSysStatusRequest) + }) +_sym_db.RegisterMessage(PublishSysStatusRequest) + +PublishExtendedSysStateRequest = _reflection.GeneratedProtocolMessageType('PublishExtendedSysStateRequest', (_message.Message,), { + 'DESCRIPTOR' : _PUBLISHEXTENDEDSYSSTATEREQUEST, + '__module__' : 'telemetry_server.telemetry_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.telemetry_server.PublishExtendedSysStateRequest) + }) +_sym_db.RegisterMessage(PublishExtendedSysStateRequest) + PublishInAirRequest = _reflection.GeneratedProtocolMessageType('PublishInAirRequest', (_message.Message,), { 'DESCRIPTOR' : _PUBLISHINAIRREQUEST, '__module__' : 'telemetry_server.telemetry_server_pb2' @@ -3103,13 +2932,6 @@ }) _sym_db.RegisterMessage(PublishLandedStateRequest) -PublishArmedRequest = _reflection.GeneratedProtocolMessageType('PublishArmedRequest', (_message.Message,), { - 'DESCRIPTOR' : _PUBLISHARMEDREQUEST, - '__module__' : 'telemetry_server.telemetry_server_pb2' - # @@protoc_insertion_point(class_scope:mavsdk.rpc.telemetry_server.PublishArmedRequest) - }) -_sym_db.RegisterMessage(PublishArmedRequest) - PublishRawGpsRequest = _reflection.GeneratedProtocolMessageType('PublishRawGpsRequest', (_message.Message,), { 'DESCRIPTOR' : _PUBLISHRAWGPSREQUEST, '__module__' : 'telemetry_server.telemetry_server_pb2' @@ -3124,20 +2946,6 @@ }) _sym_db.RegisterMessage(PublishBatteryRequest) -PublishFlightModeRequest = _reflection.GeneratedProtocolMessageType('PublishFlightModeRequest', (_message.Message,), { - 'DESCRIPTOR' : _PUBLISHFLIGHTMODEREQUEST, - '__module__' : 'telemetry_server.telemetry_server_pb2' - # @@protoc_insertion_point(class_scope:mavsdk.rpc.telemetry_server.PublishFlightModeRequest) - }) -_sym_db.RegisterMessage(PublishFlightModeRequest) - -PublishHealthRequest = _reflection.GeneratedProtocolMessageType('PublishHealthRequest', (_message.Message,), { - 'DESCRIPTOR' : _PUBLISHHEALTHREQUEST, - '__module__' : 'telemetry_server.telemetry_server_pb2' - # @@protoc_insertion_point(class_scope:mavsdk.rpc.telemetry_server.PublishHealthRequest) - }) -_sym_db.RegisterMessage(PublishHealthRequest) - PublishRcStatusRequest = _reflection.GeneratedProtocolMessageType('PublishRcStatusRequest', (_message.Message,), { 'DESCRIPTOR' : _PUBLISHRCSTATUSREQUEST, '__module__' : 'telemetry_server.telemetry_server_pb2' @@ -3194,13 +3002,6 @@ }) _sym_db.RegisterMessage(PublishRawImuRequest) -PublishHealthAllOkRequest = _reflection.GeneratedProtocolMessageType('PublishHealthAllOkRequest', (_message.Message,), { - 'DESCRIPTOR' : _PUBLISHHEALTHALLOKREQUEST, - '__module__' : 'telemetry_server.telemetry_server_pb2' - # @@protoc_insertion_point(class_scope:mavsdk.rpc.telemetry_server.PublishHealthAllOkRequest) - }) -_sym_db.RegisterMessage(PublishHealthAllOkRequest) - PublishUnixEpochTimeRequest = _reflection.GeneratedProtocolMessageType('PublishUnixEpochTimeRequest', (_message.Message,), { 'DESCRIPTOR' : _PUBLISHUNIXEPOCHTIMEREQUEST, '__module__' : 'telemetry_server.telemetry_server_pb2' @@ -3222,12 +3023,19 @@ }) _sym_db.RegisterMessage(PublishHomeResponse) -PublishArmedResponse = _reflection.GeneratedProtocolMessageType('PublishArmedResponse', (_message.Message,), { - 'DESCRIPTOR' : _PUBLISHARMEDRESPONSE, +PublishSysStatusResponse = _reflection.GeneratedProtocolMessageType('PublishSysStatusResponse', (_message.Message,), { + 'DESCRIPTOR' : _PUBLISHSYSSTATUSRESPONSE, + '__module__' : 'telemetry_server.telemetry_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.telemetry_server.PublishSysStatusResponse) + }) +_sym_db.RegisterMessage(PublishSysStatusResponse) + +PublishExtendedSysStateResponse = _reflection.GeneratedProtocolMessageType('PublishExtendedSysStateResponse', (_message.Message,), { + 'DESCRIPTOR' : _PUBLISHEXTENDEDSYSSTATERESPONSE, '__module__' : 'telemetry_server.telemetry_server_pb2' - # @@protoc_insertion_point(class_scope:mavsdk.rpc.telemetry_server.PublishArmedResponse) + # @@protoc_insertion_point(class_scope:mavsdk.rpc.telemetry_server.PublishExtendedSysStateResponse) }) -_sym_db.RegisterMessage(PublishArmedResponse) +_sym_db.RegisterMessage(PublishExtendedSysStateResponse) PublishRawGpsResponse = _reflection.GeneratedProtocolMessageType('PublishRawGpsResponse', (_message.Message,), { 'DESCRIPTOR' : _PUBLISHRAWGPSRESPONSE, @@ -3243,20 +3051,6 @@ }) _sym_db.RegisterMessage(PublishBatteryResponse) -PublishFlightModeResponse = _reflection.GeneratedProtocolMessageType('PublishFlightModeResponse', (_message.Message,), { - 'DESCRIPTOR' : _PUBLISHFLIGHTMODERESPONSE, - '__module__' : 'telemetry_server.telemetry_server_pb2' - # @@protoc_insertion_point(class_scope:mavsdk.rpc.telemetry_server.PublishFlightModeResponse) - }) -_sym_db.RegisterMessage(PublishFlightModeResponse) - -PublishHealthResponse = _reflection.GeneratedProtocolMessageType('PublishHealthResponse', (_message.Message,), { - 'DESCRIPTOR' : _PUBLISHHEALTHRESPONSE, - '__module__' : 'telemetry_server.telemetry_server_pb2' - # @@protoc_insertion_point(class_scope:mavsdk.rpc.telemetry_server.PublishHealthResponse) - }) -_sym_db.RegisterMessage(PublishHealthResponse) - PublishStatusTextResponse = _reflection.GeneratedProtocolMessageType('PublishStatusTextResponse', (_message.Message,), { 'DESCRIPTOR' : _PUBLISHSTATUSTEXTRESPONSE, '__module__' : 'telemetry_server.telemetry_server_pb2' @@ -3306,13 +3100,6 @@ }) _sym_db.RegisterMessage(PublishRawImuResponse) -PublishHealthAllOkResponse = _reflection.GeneratedProtocolMessageType('PublishHealthAllOkResponse', (_message.Message,), { - 'DESCRIPTOR' : _PUBLISHHEALTHALLOKRESPONSE, - '__module__' : 'telemetry_server.telemetry_server_pb2' - # @@protoc_insertion_point(class_scope:mavsdk.rpc.telemetry_server.PublishHealthAllOkResponse) - }) -_sym_db.RegisterMessage(PublishHealthAllOkResponse) - PublishUnixEpochTimeResponse = _reflection.GeneratedProtocolMessageType('PublishUnixEpochTimeResponse', (_message.Message,), { 'DESCRIPTOR' : _PUBLISHUNIXEPOCHTIMERESPONSE, '__module__' : 'telemetry_server.telemetry_server_pb2' @@ -3327,6 +3114,13 @@ }) _sym_db.RegisterMessage(Position) +Heading = _reflection.GeneratedProtocolMessageType('Heading', (_message.Message,), { + 'DESCRIPTOR' : _HEADING, + '__module__' : 'telemetry_server.telemetry_server_pb2' + # @@protoc_insertion_point(class_scope:mavsdk.rpc.telemetry_server.Heading) + }) +_sym_db.RegisterMessage(Heading) + Quaternion = _reflection.GeneratedProtocolMessageType('Quaternion', (_message.Message,), { 'DESCRIPTOR' : _QUATERNION, '__module__' : 'telemetry_server.telemetry_server_pb2' @@ -3369,13 +3163,6 @@ }) _sym_db.RegisterMessage(Battery) -Health = _reflection.GeneratedProtocolMessageType('Health', (_message.Message,), { - 'DESCRIPTOR' : _HEALTH, - '__module__' : 'telemetry_server.telemetry_server_pb2' - # @@protoc_insertion_point(class_scope:mavsdk.rpc.telemetry_server.Health) - }) -_sym_db.RegisterMessage(Health) - RcStatus = _reflection.GeneratedProtocolMessageType('RcStatus', (_message.Message,), { 'DESCRIPTOR' : _RCSTATUS, '__module__' : 'telemetry_server.telemetry_server_pb2' @@ -3522,6 +3309,7 @@ _POSITION.fields_by_name['longitude_deg']._options = None _POSITION.fields_by_name['absolute_altitude_m']._options = None _POSITION.fields_by_name['relative_altitude_m']._options = None +_HEADING.fields_by_name['heading_deg']._options = None _QUATERNION.fields_by_name['w']._options = None _QUATERNION.fields_by_name['x']._options = None _QUATERNION.fields_by_name['y']._options = None @@ -3535,13 +3323,6 @@ _GPSINFO.fields_by_name['num_satellites']._options = None _BATTERY.fields_by_name['voltage_v']._options = None _BATTERY.fields_by_name['remaining_percent']._options = None -_HEALTH.fields_by_name['is_gyrometer_calibration_ok']._options = None -_HEALTH.fields_by_name['is_accelerometer_calibration_ok']._options = None -_HEALTH.fields_by_name['is_magnetometer_calibration_ok']._options = None -_HEALTH.fields_by_name['is_local_position_ok']._options = None -_HEALTH.fields_by_name['is_global_position_ok']._options = None -_HEALTH.fields_by_name['is_home_position_ok']._options = None -_HEALTH.fields_by_name['is_armable']._options = None _RCSTATUS.fields_by_name['was_available_once']._options = None _RCSTATUS.fields_by_name['is_available']._options = None _RCSTATUS.fields_by_name['signal_strength_percent']._options = None @@ -3577,8 +3358,8 @@ index=0, serialized_options=None, create_key=_descriptor._internal_create_key, - serialized_start=8723, - serialized_end=10826, + serialized_start=8129, + serialized_end=10061, methods=[ _descriptor.MethodDescriptor( name='PublishPosition', @@ -3587,7 +3368,7 @@ containing_service=None, input_type=_PUBLISHPOSITIONREQUEST, output_type=_PUBLISHPOSITIONRESPONSE, - serialized_options=None, + serialized_options=b'\200\265\030\001', create_key=_descriptor._internal_create_key, ), _descriptor.MethodDescriptor( @@ -3597,147 +3378,127 @@ containing_service=None, input_type=_PUBLISHHOMEREQUEST, output_type=_PUBLISHHOMERESPONSE, - serialized_options=None, + serialized_options=b'\200\265\030\001', create_key=_descriptor._internal_create_key, ), _descriptor.MethodDescriptor( - name='PublishArmed', - full_name='mavsdk.rpc.telemetry_server.TelemetryServerService.PublishArmed', + name='PublishSysStatus', + full_name='mavsdk.rpc.telemetry_server.TelemetryServerService.PublishSysStatus', index=2, containing_service=None, - input_type=_PUBLISHARMEDREQUEST, - output_type=_PUBLISHARMEDRESPONSE, - serialized_options=None, + input_type=_PUBLISHSYSSTATUSREQUEST, + output_type=_PUBLISHSYSSTATUSRESPONSE, + serialized_options=b'\200\265\030\001', + create_key=_descriptor._internal_create_key, + ), + _descriptor.MethodDescriptor( + name='PublishExtendedSysState', + full_name='mavsdk.rpc.telemetry_server.TelemetryServerService.PublishExtendedSysState', + index=3, + containing_service=None, + input_type=_PUBLISHEXTENDEDSYSSTATEREQUEST, + output_type=_PUBLISHEXTENDEDSYSSTATERESPONSE, + serialized_options=b'\200\265\030\001', create_key=_descriptor._internal_create_key, ), _descriptor.MethodDescriptor( name='PublishRawGps', full_name='mavsdk.rpc.telemetry_server.TelemetryServerService.PublishRawGps', - index=3, + index=4, containing_service=None, input_type=_PUBLISHRAWGPSREQUEST, output_type=_PUBLISHRAWGPSRESPONSE, - serialized_options=None, + serialized_options=b'\200\265\030\001', create_key=_descriptor._internal_create_key, ), _descriptor.MethodDescriptor( name='PublishBattery', full_name='mavsdk.rpc.telemetry_server.TelemetryServerService.PublishBattery', - index=4, + index=5, containing_service=None, input_type=_PUBLISHBATTERYREQUEST, output_type=_PUBLISHBATTERYRESPONSE, - serialized_options=None, - create_key=_descriptor._internal_create_key, - ), - _descriptor.MethodDescriptor( - name='PublishFlightMode', - full_name='mavsdk.rpc.telemetry_server.TelemetryServerService.PublishFlightMode', - index=5, - containing_service=None, - input_type=_PUBLISHFLIGHTMODEREQUEST, - output_type=_PUBLISHFLIGHTMODERESPONSE, - serialized_options=None, - create_key=_descriptor._internal_create_key, - ), - _descriptor.MethodDescriptor( - name='PublishHealth', - full_name='mavsdk.rpc.telemetry_server.TelemetryServerService.PublishHealth', - index=6, - containing_service=None, - input_type=_PUBLISHHEALTHREQUEST, - output_type=_PUBLISHHEALTHRESPONSE, - serialized_options=None, + serialized_options=b'\200\265\030\001', create_key=_descriptor._internal_create_key, ), _descriptor.MethodDescriptor( name='PublishStatusText', full_name='mavsdk.rpc.telemetry_server.TelemetryServerService.PublishStatusText', - index=7, + index=6, containing_service=None, input_type=_PUBLISHSTATUSTEXTREQUEST, output_type=_PUBLISHSTATUSTEXTRESPONSE, - serialized_options=None, + serialized_options=b'\200\265\030\001', create_key=_descriptor._internal_create_key, ), _descriptor.MethodDescriptor( name='PublishOdometry', full_name='mavsdk.rpc.telemetry_server.TelemetryServerService.PublishOdometry', - index=8, + index=7, containing_service=None, input_type=_PUBLISHODOMETRYREQUEST, output_type=_PUBLISHODOMETRYRESPONSE, - serialized_options=None, + serialized_options=b'\200\265\030\001', create_key=_descriptor._internal_create_key, ), _descriptor.MethodDescriptor( name='PublishPositionVelocityNed', full_name='mavsdk.rpc.telemetry_server.TelemetryServerService.PublishPositionVelocityNed', - index=9, + index=8, containing_service=None, input_type=_PUBLISHPOSITIONVELOCITYNEDREQUEST, output_type=_PUBLISHPOSITIONVELOCITYNEDRESPONSE, - serialized_options=None, + serialized_options=b'\200\265\030\001', create_key=_descriptor._internal_create_key, ), _descriptor.MethodDescriptor( name='PublishGroundTruth', full_name='mavsdk.rpc.telemetry_server.TelemetryServerService.PublishGroundTruth', - index=10, + index=9, containing_service=None, input_type=_PUBLISHGROUNDTRUTHREQUEST, output_type=_PUBLISHGROUNDTRUTHRESPONSE, - serialized_options=None, + serialized_options=b'\200\265\030\001', create_key=_descriptor._internal_create_key, ), _descriptor.MethodDescriptor( name='PublishImu', full_name='mavsdk.rpc.telemetry_server.TelemetryServerService.PublishImu', - index=11, + index=10, containing_service=None, input_type=_PUBLISHIMUREQUEST, output_type=_PUBLISHIMURESPONSE, - serialized_options=None, + serialized_options=b'\200\265\030\001', create_key=_descriptor._internal_create_key, ), _descriptor.MethodDescriptor( name='PublishScaledImu', full_name='mavsdk.rpc.telemetry_server.TelemetryServerService.PublishScaledImu', - index=12, + index=11, containing_service=None, input_type=_PUBLISHSCALEDIMUREQUEST, output_type=_PUBLISHSCALEDIMURESPONSE, - serialized_options=None, + serialized_options=b'\200\265\030\001', create_key=_descriptor._internal_create_key, ), _descriptor.MethodDescriptor( name='PublishRawImu', full_name='mavsdk.rpc.telemetry_server.TelemetryServerService.PublishRawImu', - index=13, + index=12, containing_service=None, input_type=_PUBLISHRAWIMUREQUEST, output_type=_PUBLISHRAWIMURESPONSE, - serialized_options=None, - create_key=_descriptor._internal_create_key, - ), - _descriptor.MethodDescriptor( - name='PublishHealthAllOk', - full_name='mavsdk.rpc.telemetry_server.TelemetryServerService.PublishHealthAllOk', - index=14, - containing_service=None, - input_type=_PUBLISHHEALTHALLOKREQUEST, - output_type=_PUBLISHHEALTHALLOKRESPONSE, - serialized_options=None, + serialized_options=b'\200\265\030\001', create_key=_descriptor._internal_create_key, ), _descriptor.MethodDescriptor( name='PublishUnixEpochTime', full_name='mavsdk.rpc.telemetry_server.TelemetryServerService.PublishUnixEpochTime', - index=15, + index=13, containing_service=None, input_type=_PUBLISHUNIXEPOCHTIMEREQUEST, output_type=_PUBLISHUNIXEPOCHTIMERESPONSE, - serialized_options=None, + serialized_options=b'\200\265\030\001', create_key=_descriptor._internal_create_key, ), ]) diff --git a/mavsdk/telemetry_server_pb2_grpc.py b/mavsdk/telemetry_server_pb2_grpc.py index a9cca53b..fbe82598 100644 --- a/mavsdk/telemetry_server_pb2_grpc.py +++ b/mavsdk/telemetry_server_pb2_grpc.py @@ -27,10 +27,15 @@ def __init__(self, channel): request_serializer=telemetry__server_dot_telemetry__server__pb2.PublishHomeRequest.SerializeToString, response_deserializer=telemetry__server_dot_telemetry__server__pb2.PublishHomeResponse.FromString, ) - self.PublishArmed = channel.unary_unary( - '/mavsdk.rpc.telemetry_server.TelemetryServerService/PublishArmed', - request_serializer=telemetry__server_dot_telemetry__server__pb2.PublishArmedRequest.SerializeToString, - response_deserializer=telemetry__server_dot_telemetry__server__pb2.PublishArmedResponse.FromString, + self.PublishSysStatus = channel.unary_unary( + '/mavsdk.rpc.telemetry_server.TelemetryServerService/PublishSysStatus', + request_serializer=telemetry__server_dot_telemetry__server__pb2.PublishSysStatusRequest.SerializeToString, + response_deserializer=telemetry__server_dot_telemetry__server__pb2.PublishSysStatusResponse.FromString, + ) + self.PublishExtendedSysState = channel.unary_unary( + '/mavsdk.rpc.telemetry_server.TelemetryServerService/PublishExtendedSysState', + request_serializer=telemetry__server_dot_telemetry__server__pb2.PublishExtendedSysStateRequest.SerializeToString, + response_deserializer=telemetry__server_dot_telemetry__server__pb2.PublishExtendedSysStateResponse.FromString, ) self.PublishRawGps = channel.unary_unary( '/mavsdk.rpc.telemetry_server.TelemetryServerService/PublishRawGps', @@ -42,16 +47,6 @@ def __init__(self, channel): request_serializer=telemetry__server_dot_telemetry__server__pb2.PublishBatteryRequest.SerializeToString, response_deserializer=telemetry__server_dot_telemetry__server__pb2.PublishBatteryResponse.FromString, ) - self.PublishFlightMode = channel.unary_unary( - '/mavsdk.rpc.telemetry_server.TelemetryServerService/PublishFlightMode', - request_serializer=telemetry__server_dot_telemetry__server__pb2.PublishFlightModeRequest.SerializeToString, - response_deserializer=telemetry__server_dot_telemetry__server__pb2.PublishFlightModeResponse.FromString, - ) - self.PublishHealth = channel.unary_unary( - '/mavsdk.rpc.telemetry_server.TelemetryServerService/PublishHealth', - request_serializer=telemetry__server_dot_telemetry__server__pb2.PublishHealthRequest.SerializeToString, - response_deserializer=telemetry__server_dot_telemetry__server__pb2.PublishHealthResponse.FromString, - ) self.PublishStatusText = channel.unary_unary( '/mavsdk.rpc.telemetry_server.TelemetryServerService/PublishStatusText', request_serializer=telemetry__server_dot_telemetry__server__pb2.PublishStatusTextRequest.SerializeToString, @@ -87,11 +82,6 @@ def __init__(self, channel): request_serializer=telemetry__server_dot_telemetry__server__pb2.PublishRawImuRequest.SerializeToString, response_deserializer=telemetry__server_dot_telemetry__server__pb2.PublishRawImuResponse.FromString, ) - self.PublishHealthAllOk = channel.unary_unary( - '/mavsdk.rpc.telemetry_server.TelemetryServerService/PublishHealthAllOk', - request_serializer=telemetry__server_dot_telemetry__server__pb2.PublishHealthAllOkRequest.SerializeToString, - response_deserializer=telemetry__server_dot_telemetry__server__pb2.PublishHealthAllOkResponse.FromString, - ) self.PublishUnixEpochTime = channel.unary_unary( '/mavsdk.rpc.telemetry_server.TelemetryServerService/PublishUnixEpochTime', request_serializer=telemetry__server_dot_telemetry__server__pb2.PublishUnixEpochTimeRequest.SerializeToString, @@ -119,36 +109,29 @@ def PublishHome(self, request, context): context.set_details('Method not implemented!') raise NotImplementedError('Method not implemented!') - def PublishArmed(self, request, context): - """Publish to armed updates. + def PublishSysStatus(self, request, context): + """Publish 'sys status' updates. """ context.set_code(grpc.StatusCode.UNIMPLEMENTED) context.set_details('Method not implemented!') raise NotImplementedError('Method not implemented!') - def PublishRawGps(self, request, context): - """Publish to 'Raw GPS' updates. + def PublishExtendedSysState(self, request, context): + """Publish 'extended sys state' updates. """ context.set_code(grpc.StatusCode.UNIMPLEMENTED) context.set_details('Method not implemented!') raise NotImplementedError('Method not implemented!') - def PublishBattery(self, request, context): - """Publish to 'battery' updates. - """ - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') - - def PublishFlightMode(self, request, context): - """Publish to 'flight mode' updates. + def PublishRawGps(self, request, context): + """Publish to 'Raw GPS' updates. """ context.set_code(grpc.StatusCode.UNIMPLEMENTED) context.set_details('Method not implemented!') raise NotImplementedError('Method not implemented!') - def PublishHealth(self, request, context): - """Publish to 'health' updates. + def PublishBattery(self, request, context): + """Publish to 'battery' updates. """ context.set_code(grpc.StatusCode.UNIMPLEMENTED) context.set_details('Method not implemented!') @@ -203,13 +186,6 @@ def PublishRawImu(self, request, context): context.set_details('Method not implemented!') raise NotImplementedError('Method not implemented!') - def PublishHealthAllOk(self, request, context): - """Publish to 'HealthAllOk' updates. - """ - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') - def PublishUnixEpochTime(self, request, context): """Publish to 'unix epoch time' updates. """ @@ -230,10 +206,15 @@ def add_TelemetryServerServiceServicer_to_server(servicer, server): request_deserializer=telemetry__server_dot_telemetry__server__pb2.PublishHomeRequest.FromString, response_serializer=telemetry__server_dot_telemetry__server__pb2.PublishHomeResponse.SerializeToString, ), - 'PublishArmed': grpc.unary_unary_rpc_method_handler( - servicer.PublishArmed, - request_deserializer=telemetry__server_dot_telemetry__server__pb2.PublishArmedRequest.FromString, - response_serializer=telemetry__server_dot_telemetry__server__pb2.PublishArmedResponse.SerializeToString, + 'PublishSysStatus': grpc.unary_unary_rpc_method_handler( + servicer.PublishSysStatus, + request_deserializer=telemetry__server_dot_telemetry__server__pb2.PublishSysStatusRequest.FromString, + response_serializer=telemetry__server_dot_telemetry__server__pb2.PublishSysStatusResponse.SerializeToString, + ), + 'PublishExtendedSysState': grpc.unary_unary_rpc_method_handler( + servicer.PublishExtendedSysState, + request_deserializer=telemetry__server_dot_telemetry__server__pb2.PublishExtendedSysStateRequest.FromString, + response_serializer=telemetry__server_dot_telemetry__server__pb2.PublishExtendedSysStateResponse.SerializeToString, ), 'PublishRawGps': grpc.unary_unary_rpc_method_handler( servicer.PublishRawGps, @@ -245,16 +226,6 @@ def add_TelemetryServerServiceServicer_to_server(servicer, server): request_deserializer=telemetry__server_dot_telemetry__server__pb2.PublishBatteryRequest.FromString, response_serializer=telemetry__server_dot_telemetry__server__pb2.PublishBatteryResponse.SerializeToString, ), - 'PublishFlightMode': grpc.unary_unary_rpc_method_handler( - servicer.PublishFlightMode, - request_deserializer=telemetry__server_dot_telemetry__server__pb2.PublishFlightModeRequest.FromString, - response_serializer=telemetry__server_dot_telemetry__server__pb2.PublishFlightModeResponse.SerializeToString, - ), - 'PublishHealth': grpc.unary_unary_rpc_method_handler( - servicer.PublishHealth, - request_deserializer=telemetry__server_dot_telemetry__server__pb2.PublishHealthRequest.FromString, - response_serializer=telemetry__server_dot_telemetry__server__pb2.PublishHealthResponse.SerializeToString, - ), 'PublishStatusText': grpc.unary_unary_rpc_method_handler( servicer.PublishStatusText, request_deserializer=telemetry__server_dot_telemetry__server__pb2.PublishStatusTextRequest.FromString, @@ -290,11 +261,6 @@ def add_TelemetryServerServiceServicer_to_server(servicer, server): request_deserializer=telemetry__server_dot_telemetry__server__pb2.PublishRawImuRequest.FromString, response_serializer=telemetry__server_dot_telemetry__server__pb2.PublishRawImuResponse.SerializeToString, ), - 'PublishHealthAllOk': grpc.unary_unary_rpc_method_handler( - servicer.PublishHealthAllOk, - request_deserializer=telemetry__server_dot_telemetry__server__pb2.PublishHealthAllOkRequest.FromString, - response_serializer=telemetry__server_dot_telemetry__server__pb2.PublishHealthAllOkResponse.SerializeToString, - ), 'PublishUnixEpochTime': grpc.unary_unary_rpc_method_handler( servicer.PublishUnixEpochTime, request_deserializer=telemetry__server_dot_telemetry__server__pb2.PublishUnixEpochTimeRequest.FromString, @@ -348,24 +314,7 @@ def PublishHome(request, insecure, call_credentials, compression, wait_for_ready, timeout, metadata) @staticmethod - def PublishArmed(request, - target, - options=(), - channel_credentials=None, - call_credentials=None, - insecure=False, - compression=None, - wait_for_ready=None, - timeout=None, - metadata=None): - return grpc.experimental.unary_unary(request, target, '/mavsdk.rpc.telemetry_server.TelemetryServerService/PublishArmed', - telemetry__server_dot_telemetry__server__pb2.PublishArmedRequest.SerializeToString, - telemetry__server_dot_telemetry__server__pb2.PublishArmedResponse.FromString, - options, channel_credentials, - insecure, call_credentials, compression, wait_for_ready, timeout, metadata) - - @staticmethod - def PublishRawGps(request, + def PublishSysStatus(request, target, options=(), channel_credentials=None, @@ -375,14 +324,14 @@ def PublishRawGps(request, wait_for_ready=None, timeout=None, metadata=None): - return grpc.experimental.unary_unary(request, target, '/mavsdk.rpc.telemetry_server.TelemetryServerService/PublishRawGps', - telemetry__server_dot_telemetry__server__pb2.PublishRawGpsRequest.SerializeToString, - telemetry__server_dot_telemetry__server__pb2.PublishRawGpsResponse.FromString, + return grpc.experimental.unary_unary(request, target, '/mavsdk.rpc.telemetry_server.TelemetryServerService/PublishSysStatus', + telemetry__server_dot_telemetry__server__pb2.PublishSysStatusRequest.SerializeToString, + telemetry__server_dot_telemetry__server__pb2.PublishSysStatusResponse.FromString, options, channel_credentials, insecure, call_credentials, compression, wait_for_ready, timeout, metadata) @staticmethod - def PublishBattery(request, + def PublishExtendedSysState(request, target, options=(), channel_credentials=None, @@ -392,14 +341,14 @@ def PublishBattery(request, wait_for_ready=None, timeout=None, metadata=None): - return grpc.experimental.unary_unary(request, target, '/mavsdk.rpc.telemetry_server.TelemetryServerService/PublishBattery', - telemetry__server_dot_telemetry__server__pb2.PublishBatteryRequest.SerializeToString, - telemetry__server_dot_telemetry__server__pb2.PublishBatteryResponse.FromString, + return grpc.experimental.unary_unary(request, target, '/mavsdk.rpc.telemetry_server.TelemetryServerService/PublishExtendedSysState', + telemetry__server_dot_telemetry__server__pb2.PublishExtendedSysStateRequest.SerializeToString, + telemetry__server_dot_telemetry__server__pb2.PublishExtendedSysStateResponse.FromString, options, channel_credentials, insecure, call_credentials, compression, wait_for_ready, timeout, metadata) @staticmethod - def PublishFlightMode(request, + def PublishRawGps(request, target, options=(), channel_credentials=None, @@ -409,14 +358,14 @@ def PublishFlightMode(request, wait_for_ready=None, timeout=None, metadata=None): - return grpc.experimental.unary_unary(request, target, '/mavsdk.rpc.telemetry_server.TelemetryServerService/PublishFlightMode', - telemetry__server_dot_telemetry__server__pb2.PublishFlightModeRequest.SerializeToString, - telemetry__server_dot_telemetry__server__pb2.PublishFlightModeResponse.FromString, + return grpc.experimental.unary_unary(request, target, '/mavsdk.rpc.telemetry_server.TelemetryServerService/PublishRawGps', + telemetry__server_dot_telemetry__server__pb2.PublishRawGpsRequest.SerializeToString, + telemetry__server_dot_telemetry__server__pb2.PublishRawGpsResponse.FromString, options, channel_credentials, insecure, call_credentials, compression, wait_for_ready, timeout, metadata) @staticmethod - def PublishHealth(request, + def PublishBattery(request, target, options=(), channel_credentials=None, @@ -426,9 +375,9 @@ def PublishHealth(request, wait_for_ready=None, timeout=None, metadata=None): - return grpc.experimental.unary_unary(request, target, '/mavsdk.rpc.telemetry_server.TelemetryServerService/PublishHealth', - telemetry__server_dot_telemetry__server__pb2.PublishHealthRequest.SerializeToString, - telemetry__server_dot_telemetry__server__pb2.PublishHealthResponse.FromString, + return grpc.experimental.unary_unary(request, target, '/mavsdk.rpc.telemetry_server.TelemetryServerService/PublishBattery', + telemetry__server_dot_telemetry__server__pb2.PublishBatteryRequest.SerializeToString, + telemetry__server_dot_telemetry__server__pb2.PublishBatteryResponse.FromString, options, channel_credentials, insecure, call_credentials, compression, wait_for_ready, timeout, metadata) @@ -551,23 +500,6 @@ def PublishRawImu(request, options, channel_credentials, insecure, call_credentials, compression, wait_for_ready, timeout, metadata) - @staticmethod - def PublishHealthAllOk(request, - target, - options=(), - channel_credentials=None, - call_credentials=None, - insecure=False, - compression=None, - wait_for_ready=None, - timeout=None, - metadata=None): - return grpc.experimental.unary_unary(request, target, '/mavsdk.rpc.telemetry_server.TelemetryServerService/PublishHealthAllOk', - telemetry__server_dot_telemetry__server__pb2.PublishHealthAllOkRequest.SerializeToString, - telemetry__server_dot_telemetry__server__pb2.PublishHealthAllOkResponse.FromString, - options, channel_credentials, - insecure, call_credentials, compression, wait_for_ready, timeout, metadata) - @staticmethod def PublishUnixEpochTime(request, target, diff --git a/proto b/proto index a84ff0f6..757979ee 160000 --- a/proto +++ b/proto @@ -1 +1 @@ -Subproject commit a84ff0f67a73a28564142767227720e04250ad38 +Subproject commit 757979eeebaef378446622c3807e114bc358f547