Skip to main content

HoverPilot

License

Minimal Python 3.10+ client to connect to RealFlight Link (TCP 18083), exchange RC commands, and expose a Gymnasium-compatible hover environment.

Installation

Install the base package from PyPI:

pip install hover-pilot

Install the optional PPO training, evaluation, and reporting dependencies:

pip install "hover-pilot[rl]"

With uv, use uv add hover-pilot or uv add "hover-pilot[rl]".

Quickstart

From a source checkout, install dependencies and run the demo with uv:

uv sync
cp .env.example .env
uv run hoverpilot-demo

Install the optional reinforcement-learning dependencies to train or play a PPO policy:

uv sync --extra rl
uv run hoverpilot-ppo train --timesteps 50000 --save-path ppo_hoverpilot.pt

HoverPilot periodically evaluates the deterministic policy, keeps latest and best checkpoints separately, and stores the complete training state for exact continuation. A repository checkout also includes an example TOML experiment:

uv run hoverpilot-ppo train --config configs/elevator.toml

Evaluate the best checkpoint or generate an HTML summary from a TensorBoard run:

uv run hoverpilot-ppo evaluate --checkpoint ppo_hoverpilot.best.pt
uv run hoverpilot-ppo report runs/hoverpilot-ppo

The user guide describes TOML overrides, checkpoint comparison, full-state resume, evaluation metrics, and HTML reports in detail.

By default HoverPilot connects to RealFlight Link at 127.0.0.1:18083. Set RFLINK_HOST when RealFlight runs on another host or outside the current network namespace.

Gymnasium Environment

import numpy as np

from hoverpilot.config import HOST, PORT
from hoverpilot.envs import HoverPilotHoverEnv

env = HoverPilotHoverEnv(host=HOST, port=PORT, max_episode_steps=250)
observation, info = env.reset()
action = np.asarray([0.0, 0.0, 0.55, 0.0], dtype=np.float32)
observation, reward, terminated, truncated, info = env.step(action)

The action contains aileron, elevator, throttle, and rudder. See the user guide for observation layouts, reward and termination behavior, and trainer modes.

Documentation

License

This project is licensed under the MIT License. See the LICENSE file for details.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hover_pilot-2.1.0.tar.gz (97.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

hover_pilot-2.1.0-py3-none-any.whl (78.4 kB view details)

Uploaded Python 3

File details

Details for the file hover_pilot-2.1.0.tar.gz.

File metadata

  • Download URL: hover_pilot-2.1.0.tar.gz
  • Upload date:
  • Size: 97.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for hover_pilot-2.1.0.tar.gz
Algorithm Hash digest
SHA256 35b16b4673795e3a59889de1105ee35d3d22fa4a678db83c0e5a46471f910aab
MD5 53c76f0ba2673c6c0e2e57e9798fb0fe
BLAKE2b-256 168a62e762f80f620c020262cb85b8405a46b6446f0c4e74022ece051c30af15

See more details on using hashes here.

Provenance

The following attestation bundles were made for hover_pilot-2.1.0.tar.gz:

Publisher: release.yml on ruddyscent/hover-pilot

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file hover_pilot-2.1.0-py3-none-any.whl.

File metadata

  • Download URL: hover_pilot-2.1.0-py3-none-any.whl
  • Upload date:
  • Size: 78.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for hover_pilot-2.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4b8009f3c012a4c32611c5819bb01642ecc6a99d85af89606a14855cf0b29be4
MD5 d536e7504a75f852b3685122f027f3f3
BLAKE2b-256 55b225b740120fd472402ed27dba518227e7031765798c4ecbdc34474f094b40

See more details on using hashes here.

Provenance

The following attestation bundles were made for hover_pilot-2.1.0-py3-none-any.whl:

Publisher: release.yml on ruddyscent/hover-pilot

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

2.1.0 This release

2 files

2.0.0

2 files

0.1.0

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page