Fix for QGC disconnect

Prerequisites

You will need 3 separate terminals open inside the greenhorn container.

(Use ucrt enter greenhorn to open new ones as needed).


Terminal 1: The Physics Engine

This starts the simulation world and the ArduPilot firmware.

Bash

ros2 launch greenhorn_bringup sim.launch.py

(Let this run. It will load Gazebo and open the initial ports.)


Terminal 2: The Network Hub

This is the most critical step. We kill the default "dumb" proxy and replace it with our custom "smart" router.