mirror of
https://github.com/azaion/gps-denied-onboard.git
synced 2026-06-21 18:51:12 +00:00
69 lines
3.0 KiB
Markdown
69 lines
3.0 KiB
Markdown
# Deployment Procedures
|
|
|
|
## Deployment Targets
|
|
|
|
| Target | Purpose |
|
|
|--------|---------|
|
|
| Replay environment | Development and CI fixtures |
|
|
| Plane SITL | MAVLink/failsafe validation |
|
|
| Jetson companion computer | Production runtime and release gating |
|
|
| Representative flight/replay rig | Final acceptance evidence |
|
|
|
|
## Pre-Deployment Checklist
|
|
|
|
- Camera lens, resolution, FPS, sensor dimensions, and operating temperature are manufacturer-verified.
|
|
- Camera intrinsics/extrinsics are calibrated and versioned.
|
|
- BASALT, OpenCV, FAISS, LightGlue, DINOv2/ONNX/TensorRT dependencies are pinned.
|
|
- TensorRT/ONNX descriptor-fidelity tests pass before optimized engines are used.
|
|
- Satellite cache manifests and sidecars validate signatures, hashes, freshness, and resolution.
|
|
- Plane SITL validates `GPS_INPUT` behavior with production parameters.
|
|
- Jetson latency, memory, and thermal release gates pass.
|
|
- FDR rollover test passes.
|
|
|
|
## Deployment Steps
|
|
|
|
1. Install JetPack-compatible runtime dependencies on the companion computer.
|
|
2. Install/build BASALT and native vision dependencies.
|
|
3. Pre-build any ONNX/TensorRT engines accepted by fidelity tests.
|
|
4. Sync mission cache from Satellite Service before flight.
|
|
5. Validate cache manifest, descriptors, signatures, resolution, and freshness.
|
|
6. Start the onboard service and verify FC telemetry connection.
|
|
7. Run cold-start first-fix check.
|
|
8. Confirm QGroundControl status and FDR segment creation.
|
|
|
|
## Health Checks
|
|
|
|
| Check | Pass Condition |
|
|
|-------|----------------|
|
|
| Camera input | Frames received with expected resolution/rate |
|
|
| FC telemetry | IMU/attitude/altitude/GPS-health stream healthy |
|
|
| Cache | Manifest and descriptor index valid |
|
|
| First fix | Valid `GPS_INPUT` <30 s p95 in cold-start test |
|
|
| Resource health | Memory <8 GB, no thermal throttle |
|
|
| QGC status | Status visible at configured downsample rate |
|
|
| FDR | Segment open and writable |
|
|
|
|
## Rollback
|
|
|
|
- If runtime dependency update fails tests, revert to previous pinned build.
|
|
- If cache manifest validation fails, reject the mission cache and resync/rebuild before flight.
|
|
- If optimized engine fidelity fails, fall back to PyTorch/ONNX path that passed descriptor tests.
|
|
- If BASALT candidate fails representative replay gates, evaluate Kimera backup or custom fallback tasks before production deployment.
|
|
|
|
## Post-Flight Procedure
|
|
|
|
1. Stop the onboard service cleanly.
|
|
2. Export FDR summary and integrity hashes.
|
|
3. Package generated tiles with sidecars and manifest delta.
|
|
4. Upload generated tile package to Satellite Service when connectivity is available.
|
|
5. Archive release evidence: tlogs, FDR summary, cache validation report, test results.
|
|
|
|
## Deployment Blockers
|
|
|
|
- ADTi camera spec mismatch unresolved for FPS/resolution/lens/temperature.
|
|
- Missing representative synchronized nav-camera + FC telemetry + ground truth for final acceptance.
|
|
- Any false-position safety budget failure.
|
|
- Any cache-poisoning gate failure.
|
|
- Any Plane SITL `GPS_INPUT` failure.
|
|
- Thermal throttling during the 8-hour target workload.
|