# Question Decomposition

## Original Question
Assess solution_draft02.md against updated acceptance criteria and restrictions. The AC and restrictions have been significantly revised to reflect real onboard deployment requirements (MAVLink integration, ground station telemetry, startup/failsafe, object localization, thermal management, satellite imagery specs).

## Active Mode
Mode B: Solution Assessment — `solution_draft02.md` is the latest draft in OUTPUT_DIR.

## Question Type
Problem Diagnosis + Decision Support

## Research Subject Boundary
- **Population**: GPS-denied UAV navigation systems on edge hardware (Jetson Orin Nano Super)
- **Geography**: Eastern/southern Ukraine (east of Dnipro River), conflict zone
- **Timeframe**: Current (2025-2026), latest available tools and libraries
- **Level**: Onboard companion computer, real-time flight controller integration via MAVLink

## Key Delta: What Changed in AC/Restrictions

### Restrictions Changes
1. Two cameras: Navigation (fixed, downward) + AI camera (configurable angle/zoom)
2. Processing on Jetson Orin Nano Super (was "stationary computer or laptop")
3. IMU data IS available via flight controller (was "NO data from IMU")
4. MAVLink protocol via MAVSDK for flight controller communication
5. Must output GPS_INPUT messages as GPS replacement
6. Ground station telemetry link available but bandwidth-limited
7. Thermal throttling must be accounted for
8. Satellite imagery pre-loaded, storage limited

### Acceptance Criteria Changes
1. <400ms per frame to flight controller (was <5s for processing)
2. MAVLink GPS_INPUT output (was REST API + SSE)
3. Ground station: stream position/confidence, receive re-localization commands
4. Object localization: trigonometric GPS from AI camera angle/zoom/altitude
5. Startup: initialize from last known GPS before GPS denial
6. Failsafe: IMU-only fallback after N seconds of total failure
7. Reboot recovery: re-initialize from flight controller IMU-extrapolated position
8. Max cumulative VO drift <100m between satellite anchors
9. Confidence score per position estimate (high/low)
10. Satellite imagery: ≥0.5 m/pixel, <2 years old
11. WGS84 output format
12. Re-localization via telemetry to ground station (not REST API user input)

## Decomposed Sub-Questions

### Q1: MAVLink GPS_INPUT Integration
- How does MAVSDK Python handle GPS_INPUT messages?
- What fields are required in GPS_INPUT?
- What update rate does the flight controller expect?
- Can we send confidence/accuracy indicators via MAVLink?
- How does this replace the REST API + SSE architecture?

### Q2: Ground Station Telemetry Integration
- How to stream position + confidence over bandwidth-limited telemetry?
- How to receive operator re-localization commands?
- What MAVLink messages support custom data?
- What bandwidth is typical for UAV telemetry links?

### Q3: Startup & Failsafe Mechanisms
- How to initialize from flight controller's last GPS position?
- How to detect GPS denial onset?
- What happens on companion computer reboot mid-flight?
- How to implement IMU-only dead reckoning fallback?

### Q4: Object Localization via AI Camera
- How to compute ground GPS from UAV position + camera angle + zoom + altitude?
- What accuracy can be expected given GPS-denied position error?
- How to handle the API between GPS-denied system and AI detection system?

### Q5: Thermal Management on Jetson Orin Nano Super
- What is sustained thermal performance under GPU load?
- How to monitor and mitigate thermal throttling?
- What power modes are available?

### Q6: VO Drift Budget & Monitoring
- How to measure cumulative drift between satellite anchors?
- How to trigger satellite matching when drift approaches 100m?
- ESKF covariance as drift proxy?

### Q7: Weak Points in Draft02 Architecture
- REST API + SSE architecture is wrong — must be MAVLink
- No ground station integration
- No startup/shutdown procedures
- No thermal management
- No object localization detail for AI camera with configurable angle/zoom
- Memory budget doesn't account for MAVSDK overhead

## Timeliness Sensitivity Assessment
- **Research Topic**: MAVLink integration, MAVSDK for Jetson, ground station telemetry, thermal management
- **Sensitivity Level**: 🟠 High
- **Rationale**: MAVSDK actively developed; MAVLink message set evolving; Jetson JetPack 6.2 specific
- **Source Time Window**: 12 months
- **Priority official sources**:
  1. MAVSDK Python documentation (mavsdk.io)
  2. MAVLink message definitions (mavlink.io)
  3. NVIDIA Jetson Orin Nano thermal documentation
  4. PX4/ArduPilot GPS_INPUT documentation
- **Key version information**:
  - MAVSDK-Python: latest PyPI version
  - MAVLink: v2 protocol
  - JetPack: 6.2.2
  - PyCuVSLAM: v15.0.0
