Fisheye task
Task type: dphi.space.cg2.fisheye
The fisheye task requests onboard fisheye handling. It writes the reported image to the selected onboard volume; it does not itself deliver a file to the ground namespace. Add a downlink task when the image must be retrieved on the ground.
Definition
- id: capture_fisheye
type: dphi.space.cg2.fisheye
description: Request a fisheye image at a known onboard path.
volume: payload
destination: /fisheye
filename: capture-request.png
volume is required and identifies the onboard volume. destination is a path
inside that volume, and filename is the explicit file name. Together, the task
requests payload/fisheye/capture-request.png. Do not include /data in these
fields: a pod that mounts payload sees the volume at /data.
The task output reports the requested filename. It is not evidence that the file is
present in a namespace or that a new exposure was produced. The deployed onboard
camera contract, including capture timing, timestamps, ordering, and retention,
cannot be verified from this repository. In particular, SUCCESS only confirms
the task's reported completion; check a later file/downlink result before treating
an image as available or fresh.
Retrieve an explicitly selected existing image
Use this workflow when an image is already exposed through the onboard image API.
It lists the API response, requires you to choose one exact name, writes that image
to /data/fisheye/selected-fisheye.png, then downlinks it. It never assumes that
the first, last, or timestamp-looking item is newest.
- Download the Python client.
- Download the complete operation YAML.
Set DPHI_FISHEYE_IMAGE in the YAML to an exact image name printed by the client.
The endpoint is an observed integration used by the advanced example, not a
versioned public API guarantee; failures are reported with the URL and cause.
The operation requires an onboard python:3.11 image. Use an image already made
available to your environment if that tag is unavailable.
id: fisheye-existing-image
namespace: fisheye
tasks:
- id: uplink_fisheye_client
type: dphi.space.cg2.uplink
source: [fisheye_existing_image.py]
destination: /fisheye
volume: payload
- id: fetch_selected_fisheye
type: dphi.space.cg2.pod.run
pod_name: fisheye-existing-image
image: {name: python, tag: "3.11"}
command: [python]
args: [/data/fisheye/fisheye_existing_image.py]
env:
- {name: DPHI_FISHEYE_IMAGE, value: selected-image-name.png}
node: MPU
volume: payload
max_duration: 2
- id: downlink_selected_fisheye
type: dphi.space.cg2.downlink
source: [/fisheye/selected-fisheye.png]
destination: /fisheye
volume: payload
Troubleshooting
- Task succeeds but no ground file appears: onboard delivery and ground downlink are separate tasks. Inspect the downlink output and namespace path.
- Downlink succeeds with an empty
fileslist: this means no files were uploaded for that result. It differs from a missing result, which should be investigated as a task or transport failure. - Invalid destination: use a relative path within the named volume; do not use path traversal or a host path.
- Image API error: confirm the selected name came from that run's list response and that the pod has network access to the onboard service.