spacepackets
Various CCSDS and ECSS packet implementations
What it is and what it does
Spacepackets provides reference implementations of international space packet standards—CCSDS (Consultative Committee for Space Data Systems) and ECSS (European Cooperation for Space Standardization)—used in satellite and spacecraft communications. It handles encoding and decoding of Space Packets, PUS Telecommand and Telemetry packets, CFDP file delivery frames, and USLP data link frames, all according to their published specifications. The package also includes utility classes for common tasks like tracking telecommand verification, managing sequence counters, and countdown operations.
The library is designed for developers building ground stations, mission control systems, or onboard spacecraft software that must conform to these international standards. It abstracts away the bit-level details of packet structure and serialization, letting you work with structured Python objects instead of raw binary data. With only two runtime dependencies and pure-Python distribution, it integrates easily into existing space-systems workflows.
Use it for:
- Build ground station software that receives and parses telemetry packets from spacecraft using CCSDS/ECSS standards.
- Generate and validate PUS telecommand packets for sending commands to satellites or space probes.
- Implement CFDP file transfer protocols for reliable data delivery between spacecraft and ground systems.
- Develop mission control systems that track verification status of sent commands using the PusVerificator module.
- Create test harnesses for space hardware that need to simulate or validate packet exchanges conforming to CCSDS standards.
- Integrate space packet handling into Python-based data processing pipelines for mission operations.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Implements CCSDS and ECSS packet standards for space communications, including Space Packets, PUS Telecommand/Telemetry, CFDP, and USLP frame formats with helper utilities for verification and sequencing.
Yes. The package is actively maintained, has no known vulnerabilities, uses a permissive license, and installs with minimal friction. Install it if you are working with CCSDS or ECSS packet standards in any capacity—ground stations, mission control, spacecraft software, or testing. The reference implementations and helper utilities will save significant development time versus implementing these standards from scratch.
Install
spacepackets on PyPI
pip
pip install spacepacketsuv
uv add spacepacketspoetry
poetry add spacepacketsInstalling spacepackets
Before you install
Low friction: pure Python wheel with only two lightweight runtime dependencies (fastcrc and deprecation). Active maintenance with recent releases; last commit 2026-05-03.
License in practice
Apache-2.0 permissive license allows commercial and private use with minimal restrictions; suitable for proprietary space systems work.
Quickstart
pip install spacepackets
from spacepackets.ccsds import SpacePacket
from spacepackets.ecss import PusTelemetry
# Create and work with CCSDS/ECSS packets according to standards
Requires Python 3.9 or later; minimum version constraint enforced by package metadata.
Verify before relying
- Whether fastcrc is a pure-Python or compiled dependency affecting portability
- Specific CCSDS/ECSS standard versions supported beyond those named in description
- Whether PusVerificator and helper utilities require additional setup or configuration
Package facts
| License | Apache-2.0 (permissive) |
| Python support | supports the current Python release (>=3.9) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 2 — fastcrc, deprecation |
| Maintenance | actively maintained — 103 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 107,592/month — #12,608 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: spacepackets-0.32.0-py3-none-any.whl
Keywords: ccsds, ecss, space, communication, packet
Tags
More Libraries packages
urllib3 is an HTTP client library that provides…
permissive · top 100 on PyPI
requestsRequests is a Python HTTP library that…
permissive · top 100 on PyPI
pluggyPluggy provides a plugin system that lets you…
permissive · top 100 on PyPI
python-dateutilProvides parsing, arithmetic, and recurrence…
permissive · top 100 on PyPI
sixSix provides utility functions to write Python…
permissive · top 100 on PyPI
pytestpytest is a testing framework that lets you…
permissive · top 100 on PyPI
cobsEncodes and decodes data using Consistent…
permissive · top 15,000 on PyPI
dpktdpkt parses and creates TCP/IP protocol packets…
permissive · top 5,000 on PyPI
lcmLCM provides publish/subscribe message passing…
unclear · top 15,000 on PyPI
rtpDecodes, encodes, and manipulates RTP…
permissive · top 15,000 on PyPI
pmd-net-protoParses, assembles, and validates network…
copyleft · top 15,000 on PyPI
opentelemetry-exporter-otlp-proto-commonProvides Protobuf encoding utilities for…
permissive · top 1,000 on PyPI
zhinst-commszhinst-comms provides protocol stack bindings…
permissive · top 15,000 on PyPI
glean-sdkGlean SDK is Mozilla's telemetry collection…
unclear · top 15,000 on PyPI
pydivertPyDivert is a Python binding for the WinDivert…
copyleft · top 15,000 on PyPI
ciris-edgeA Rust-based transport and replication layer…
agpl · top 15,000 on PyPI