The future pipeline moves three-axis stabilization to the companion computer, connecting the IMU, flight-controller heading, servo driver and vision lock. All three paths are target designs; the agent-native option remains a research feature.
The agent-native path is designed but not operationally ready. Do not connect it as a finished KairOS feature.
KairOS repository ↗On this page +
Three design paths at different readiness levels
| Path | Where the loop runs | Mission Control | Vision lock | KairOS status |
|---|---|---|---|---|
| FC servo mount | Flight controller | Planned | No | Requires integration |
| MAVLink Gimbal v2 | External controller | Planned | No | Requires integration |
| Agent-native | Companion computer | Planned | Planned | R&D |
Mission Control should be able to aim an FC servo mount and an external MAVLink Gimbal v2. The second path calls for a separate KairOS extension. The agent-native path is a new implementation in which the estimator and controller run on the SBC and output PWM directly.
A fast loop on the companion computer
Orientation input
The gyroscope and accelerometer provide rapid pitch/roll changes; flight-controller heading helps maintain the reference yaw.
Estimator
Filters noisy measurements and produces orientation state on a real-time thread.
Command target
Mission Control, ROI or the vision engine provides the desired pan/tilt/roll.
3-axis controller
Calculates error and outputs commands separately for each axis.
PWM output
An I²C PWM driver controls three positional servos from a separate 5 V power rail.
MAVLink identity
The system registers as Gimbal v2 component 154 so the GCS sees a standard device.
The vision target must be fresh and confident
The vision engine publishes a bounding box, track ID, confidence and timestamp. The controller converts the bounding-box center’s offset within the frame into an angular correction. It does not wait for the next slow detector frame: the tracker updates the target between detections.
- A fresh target and sufficient confidence permit correction.
- A lost track immediately stops autonomous motion.
- A stale timestamp must not drive motion based on old data.
- Manual operator commands must have a defined priority and a way to cancel the lock.
- Uncertain recognition must not cause automatic reacquisition of another object.
Mechanics and power define the actual limits
- The first version targets positional hobby servos; continuous-rotation servos without position feedback are unsuitable.
- The 0.5–1° accuracy and approximately 180° per-axis travel are design targets, not measurements of a KairOS gimbal.
- Servo stall current can reboot the SBC, so servos need a separate 5 V regulator and a common ground.
- Mechanical stops, axis directions, neutral PWM and travel limits are calibrated before the closed loop starts.
- 500 Hz is the target loop rate, to be verified on the chosen board, IMU, kernel scheduling and driver path.