From 183c324108cc844e3da21bc783d90b943d99012b Mon Sep 17 00:00:00 2001 From: Hamish Willee Date: Wed, 8 Apr 2026 16:06:41 +1000 Subject: [PATCH] Prettier, minor subedit --- docs/en/sim_hawkeye/index.md | 60 +++++++++++++++++++----------------- docs/en/sim_sih/index.md | 22 ++++++------- 2 files changed, 43 insertions(+), 39 deletions(-) diff --git a/docs/en/sim_hawkeye/index.md b/docs/en/sim_hawkeye/index.md index 32eba699fb..f8548a2a4a 100644 --- a/docs/en/sim_hawkeye/index.md +++ b/docs/en/sim_hawkeye/index.md @@ -1,18 +1,21 @@ -# Hawkeye Flight Visualizer +# Hawkeye Flight Visualiser -[Hawkeye](https://github.com/PX4/Hawkeye) is a real-time 3D flight visualizer for PX4. +[Hawkeye](https://github.com/PX4/Hawkeye) is a real-time 3D flight visualiser for PX4. It connects to any MAVLink source (SITL or hardware) and renders vehicle state from [`HIL_STATE_QUATERNION`](https://mavlink.io/en/messages/common.html#HIL_STATE_QUATERNION) messages. -Hawkeye is a **visualizer**, not a simulator. -It does not model physics or generate sensor data — it only renders what PX4 is doing. -This makes it the recommended visual companion for [SIH](../sim_sih/index.md), which runs its own physics internally. +::: tip +Hawkeye is the recommended visualiser for [SIH Simulation](../sim_sih/index.md) (which doesn't have a default visualiser). +::: -Built in C with [Raylib](https://www.raylib.com/), Hawkeye has zero runtime dependencies. +Note that Hawkeye is not a simulator — it doesn't model physics or generate sensor data — it only renders what PX4 is doing. + +Hawkeye has no runtime dependencies. +It is built in in C with [Raylib](https://www.raylib.com/). ## Features - Real-time 3D rendering of vehicle state via MAVLink -- Multi-vehicle swarm visualization (up to 16 vehicles simultaneously) +- Multi-vehicle swarm visualisation (up to 16 vehicles simultaneously) - ULog replay with ghost mode for visual flight comparison (e.g. before/after PID tuning) - Vehicle models: quadrotor, hexarotor, fixed-wing, tailsitter, VTOL, rover, ROV - Three camera modes: Chase, FPV, Free (WASD fly) @@ -75,7 +78,7 @@ Hawkeye connects on UDP port **19410** by default — the same port SIH sends `H ### Multi-Vehicle -Each SIH instance sends visualization data on port `19410 + N` (where N is the instance number). +Each SIH instance sends visualisation data on port `19410 + N` (where N is the instance number). Launch multiple SIH instances, then start Hawkeye with the vehicle count: ```sh @@ -84,13 +87,14 @@ hawkeye -n 3 ### Vehicle Type Selection -By default, Hawkeye renders a quadrotor. Use flags to select a different model: +By default, Hawkeye renders a quadrotor. +Use flags to select a different model: -| Flag | Vehicle | -| ---- | ------- | +| Flag | Vehicle | +| ----- | --------------------- | | `-mc` | Multicopter (default) | -| `-fw` | Fixed-wing | -| `-ts` | Tailsitter | +| `-fw` | Fixed-wing | +| `-ts` | Tailsitter | Example for fixed-wing: @@ -118,26 +122,26 @@ This is useful for comparing flights before and after tuning changes. ## CLI Reference -| Option | Description | -| ------ | ----------- | -| `-udp ` | Set UDP listen port (default: 19410) | -| `-n ` | Number of vehicles to visualize | -| `-origin ` | Set map origin | -| `-mc` | Multicopter model | -| `-fw` | Fixed-wing model | -| `-ts` | Tailsitter model | -| `--replay ` | Replay a ULog file | -| `--ghost ` | Overlay a ghost flight for comparison | +| Option | Description | +| --------------------------- | ------------------------------------- | +| `-udp ` | Set UDP listen port (default: 19410) | +| `-n ` | Number of vehicles to visualise | +| `-origin ` | Set map origin | +| `-mc` | Multicopter model | +| `-fw` | Fixed-wing model | +| `-ts` | Tailsitter model | +| `--replay ` | Replay a ULog file | +| `--ghost ` | Overlay a ghost flight for comparison | ## Camera Controls -| Mode | Description | -| ---- | ----------- | +| Mode | Description | +| ----- | ------------------------------------ | | Chase | Follows behind the vehicle (default) | -| FPV | First-person view from the vehicle | -| Free | Fly freely with WASD + mouse | +| FPV | First-person view from the vehicle | +| Free | Fly freely with WASD + mouse | ## See Also - [Hawkeye GitHub Repository](https://github.com/PX4/Hawkeye) -- [SIH Simulation](../sim_sih/index.md) — the headless simulator Hawkeye is designed to visualize +- [SIH Simulation](../sim_sih/index.md) — the headless simulator Hawkeye is designed to visualise diff --git a/docs/en/sim_sih/index.md b/docs/en/sim_sih/index.md index 293ec16407..4771a400d9 100644 --- a/docs/en/sim_sih/index.md +++ b/docs/en/sim_sih/index.md @@ -80,9 +80,9 @@ If you need a visual aid to see what the vehicle is doing you can use QGroundCon QGC auto-connects on UDP port 14550. Open QGC while SIH is running and the vehicle appears on the map view with attitude, position, and telemetry. -#### Hawkeye (3D Visualizer) +#### Hawkeye (3D Visualiser) -[Hawkeye](../sim_hawkeye/index.md) renders a real-time 3D view of the vehicle using MAVLink position data. No physics are simulated in Hawkeye — it is a visualizer only. +[Hawkeye](../sim_hawkeye/index.md) renders a real-time 3D view of the vehicle using MAVLink position data. No physics are simulated in Hawkeye — it is a visualiser only. In a separate terminal, run: @@ -92,7 +92,7 @@ hawkeye Hawkeye connects on UDP port 19410 by default (the same port SIH sends `HIL_STATE_QUATERNION` on). -Use `-fw` for fixed-wing or `-ts` for tailsitter models. See the [Hawkeye docs](../sim_hawkeye/index.md) for multi-vehicle visualization and ULog replay. +Use `-fw` for fixed-wing or `-ts` for tailsitter models. See the [Hawkeye docs](../sim_hawkeye/index.md) for multi-vehicle visualisation and ULog replay. ### Environment Configuration @@ -146,14 +146,14 @@ See [uXRCE-DDS (PX4-ROS 2/DDS Bridge)](../middleware/uxrce_dds.md) for full setu PX4 SITL opens the following UDP ports (all instance-aware, offset by instance number N). -| PX4 sends to (remote) | PX4 listens on (local) | Use for | Instance offset | -| --------------------- | ---------------------- | ------------------------------- | ----------------------------------------- | -| **14550** | 18570 (+N) | QGroundControl, GCS tools | Yes | -| **14540** (+N) | 14580 (+N) | MAVSDK, MAVROS, offboard APIs | Yes (capped at 14549 for 10+ instances) | -| **14030** (+N) | 14280 (+N) | Onboard camera/payload | Yes | -| **13280** (+N) | 13030 (+N) | Gimbal control | Yes | -| **19410** (+N) | 19450 (+N) | Hawkeye visualizer (SIH only) | Yes | -| **8888** | - | uXRCE-DDS / ROS 2 | No (use DDS namespace for multi-instance) | +| PX4 sends to (remote) | PX4 listens on (local) | Use for | Instance offset | +| --------------------- | ---------------------- | ----------------------------- | ----------------------------------------- | +| **14550** | 18570 (+N) | QGroundControl, GCS tools | Yes | +| **14540** (+N) | 14580 (+N) | MAVSDK, MAVROS, offboard APIs | Yes (capped at 14549 for 10+ instances) | +| **14030** (+N) | 14280 (+N) | Onboard camera/payload | Yes | +| **13280** (+N) | 13030 (+N) | Gimbal control | Yes | +| **19410** (+N) | 19450 (+N) | Hawkeye visualizer (SIH only) | Yes | +| **8888** | - | uXRCE-DDS / ROS 2 | No (use DDS namespace for multi-instance) | QGC auto-connects on port **14550** by default. MAVSDK connects on **14540**. No manual port configuration needed for single-instance use.