Astro~/0.3
** CLI / astro pxdl * PAGE 07 / 22
** Astro * CLI
** /cli/pxdl

astro pxdl

Proximity-1 data link, encode, decode, SPDUs.

Proximity-1 transfer frames and supervisory protocol data units (CCSDS 211.0-B-6).

Proximity-1 is the short-range link: a lander to an orbiter, rather than a spacecraft to the ground.

Subcommands

CommandDescription
astro pxdl encodeBuild a transfer frame
astro pxdl decodeDecode a transfer frame
astro pxdl spduDecode supervisory protocol data units

astro pxdl encode

astro pxdl encode [flags]

Flags

FlagDefaultDescription
--scid0Spacecraft ID (10 bits)
--port0Port ID (3 bits)
--data(required)Frame data as hex
--seq0Frame sequence number
--pcid0Physical Channel ID (1 bit)
--formathexOutput format: text, json, or hex

Examples

astro pxdl encode --scid 42 --port 1 --data 0102030405

astro pxdl decode

astro pxdl decode [file] [flags]

Flags

FlagDefaultDescription
--inputhexInput format: hex or bin
--formattextOutput format: text, json, or hex

Examples

# Round trip
astro pxdl encode --scid 42 --port 1 --data 0102 | astro pxdl decode --input hex

# Out of a PLTU
astro pxsc unwrap --input hex < pltu.hex | astro pxdl decode --input hex

astro pxdl spdu

Decode the Supervisory Protocol Data Units a supervisory frame carries: the PLCW that reports link status, and the variable-length SPDUs that carry directives.

Several SPDUs can share one frame, so this decodes all of them and reports each.

astro pxdl spdu [file] [flags]

Flags

FlagDefaultDescription
--inputhexInput format: hex or bin
--formattextOutput format: text or json

Note that --format takes no hex here, unlike decode: an SPDU decode reports several units, so there is no single octet string to hand back.


See also: the protocol page for the standard and the Go API, and the conformance statement for what is and is not implemented.