ArduPilot / ArduPilot/MAVProxy

MAVProxy TCP CLI access from other app (network)

Open
#165 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
595
Forks
773
Avg merge
2d 6h
Merged PRs (30d)
18

Description

This is a feature missing, why we don't add a TCP server module (simple telnet, or SSH) inside MAVProxy to use it from remote app ? this is a usefull feature because at this time this is like a closed box:(

Another feature missing is How to use the very cool DroneAPI high level cmds from external language ?
I made this small REST server inside a DroneAPI script to get data from the vehicles in JSON format

```
from droneapi.lib import VehicleMode
from pymavlink import mavutil

import web
import json
import sys

# First get an instance of the API endpoint
api = local_connect()
# Get the connected vehicle (currently only one vehicle can be returned).
v = api.get_vehicles()[0]

urls = (
'/data', 'get_data'
)

app = web.application(urls, globals())

class get_data:
def GET(self):
pyDict = {'lat':v.location.lat, 'lon':v.location.lon, 'alt':v.location.alt, 'roll':v.attitude.roll, 'pitch':v.attitude.pitch, 'yaw':v.attitude.yaw}
return json.dumps(pyDict)

sys.argv[1:] = ['0.0.0.0', '8080']
app.run()
```

http://127.0.0.1:8080/data
{"yaw": 0.013543915934860706, "lon": 2.254991, "pitch": 0.0019646603614091873, "lat": 48.8906287, "alt": 0.0, "roll": 0.0009096061112359166}

Contributor guide

No contributing guide indexed for this repository

Research direction

No source files, tests, or entry points are named. Start by locating MAVProxy's CLI and module architecture, then review how DroneAPI is exposed and compare the requested TCP or SSH access with the REST example; done requires a defined remote interface and an agreed scope for external DroneAPI use.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
api, cli, networking
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.