spacepackets


Namespacepackets JSON
Version 0.26.1 PyPI version JSON
download
home_pageNone
SummaryVarious CCSDS and ECSS packet implementations
upload_time2024-11-30 13:39:27
maintainerNone
docs_urlNone
authorNone
requires_python>=3.9
licenseApache-2.0
keywords ccsds ecss space communication packet
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            [![ci](https://github.com/us-irs/py-spacepackets/actions/workflows/ci.yml/badge.svg)](https://github.com/us-irs/py-spacepackets/actions/workflows/ci.yml)
[![Documentation Status](https://readthedocs.org/projects/spacepackets/badge/?version=latest)](https://spacepackets.readthedocs.io/en/latest/?badge=latest)
[![codecov](https://codecov.io/gh/us-irs/spacepackets-py/graph/badge.svg?token=YFLM60LCVI)](https://codecov.io/gh/us-irs/spacepackets-py)
[![PyPI version](https://badge.fury.io/py/spacepackets.svg)](https://badge.fury.io/py/spacepackets)

ECSS and CCSDS Spacepackets
======

This package contains generic implementations for various CCSDS
(Consultative Committee for Space Data Systems) and ECSS
(European Cooperation for Space Standardization) packet standards.

Currently, this includes the following components:

- Space Packet implementation according to
  [CCSDS Blue Book 133.0-B-2](https://public.ccsds.org/Pubs/133x0b2e1.pdf)
- CCSDS CDS short timestamp implementation according to
  [CCSDS 301.0-B-4 3.3](https://public.ccsds.org/Pubs/301x0b4e1.pdf).
- PUS Telecommand and PUS Telemetry implementation according to the
  [ECSS-E-ST-70-41C standard](https://ecss.nl/standard/ecss-e-st-70-41c-space-engineering-telemetry-and-telecommand-packet-utilization-15-april-2016/).
- CCSDS File Delivery Protcol (CFDP) packet implementations according to
  [CCSDS Blue Book 727.0-B-5](https://public.ccsds.org/Pubs/727x0b5.pdf).
- Unified Space Data Link Protocol (USLP) frame implementations according to
  [CCSDS Blue Book 732.1-B-2](https://public.ccsds.org/Pubs/732x1b2.pdf).

It also contains various helper modules which are commonly used when working with these standards:

- `PusVerificator` module to track the verification of sent telecommands.
- [PTC and PFC definitions](https://spacepackets.readthedocs.io/en/latest/api/ecss.html#module-spacepackets.ecss.fields) for ECSS packets.
- `Countdown` utility class.
- Sequence counter utility classes.

# Install

You can install this package from PyPI

Linux:

```sh
python3 -m pip install spacepackets
```

Windows:

```sh
py -m pip install spacepackets
```

# Examples

You can find all examples [inside the documentation](https://spacepackets.readthedocs.io/en/latest/examples.html).


# Tests

If you want to run the tests, it is recommended to install `pytest` and `coverage` (optional)
first:

```sh
pip install coverage pytest
```

Running tests regularly:

```sh
pytest .
```

Running tests with coverage:

```sh
coverage run -m pytest
```

# Documentation

The documentation is built with Sphinx and new documentation should be written using the
[NumPy format](https://www.sphinx-doc.org/en/master/usage/extensions/example_numpy.html#example-numpy).

Install the required dependencies first:

```sh
pip install -r docs/requirements.txt
```

Then the documentation can be built with

```sh
cd docs
make html
```

You can run the doctests with

```sh
make doctest
```

# Formatting and Linting

Linting:

```sh
ruff check .
```

Formatting:

```sh
ruff format .
```

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "spacepackets",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.9",
    "maintainer_email": null,
    "keywords": "ccsds, ecss, space, communication, packet",
    "author": null,
    "author_email": "Robin Mueller <robin.mueller.m@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/ae/0f/3bc464045c28af2e84a11737517d1c9485437f6f6ef603325de530d281da/spacepackets-0.26.1.tar.gz",
    "platform": null,
    "description": "[![ci](https://github.com/us-irs/py-spacepackets/actions/workflows/ci.yml/badge.svg)](https://github.com/us-irs/py-spacepackets/actions/workflows/ci.yml)\n[![Documentation Status](https://readthedocs.org/projects/spacepackets/badge/?version=latest)](https://spacepackets.readthedocs.io/en/latest/?badge=latest)\n[![codecov](https://codecov.io/gh/us-irs/spacepackets-py/graph/badge.svg?token=YFLM60LCVI)](https://codecov.io/gh/us-irs/spacepackets-py)\n[![PyPI version](https://badge.fury.io/py/spacepackets.svg)](https://badge.fury.io/py/spacepackets)\n\nECSS and CCSDS Spacepackets\n======\n\nThis package contains generic implementations for various CCSDS\n(Consultative Committee for Space Data Systems) and ECSS\n(European Cooperation for Space Standardization) packet standards.\n\nCurrently, this includes the following components:\n\n- Space Packet implementation according to\n  [CCSDS Blue Book 133.0-B-2](https://public.ccsds.org/Pubs/133x0b2e1.pdf)\n- CCSDS CDS short timestamp implementation according to\n  [CCSDS 301.0-B-4 3.3](https://public.ccsds.org/Pubs/301x0b4e1.pdf).\n- PUS Telecommand and PUS Telemetry implementation according to the\n  [ECSS-E-ST-70-41C standard](https://ecss.nl/standard/ecss-e-st-70-41c-space-engineering-telemetry-and-telecommand-packet-utilization-15-april-2016/).\n- CCSDS File Delivery Protcol (CFDP) packet implementations according to\n  [CCSDS Blue Book 727.0-B-5](https://public.ccsds.org/Pubs/727x0b5.pdf).\n- Unified Space Data Link Protocol (USLP) frame implementations according to\n  [CCSDS Blue Book 732.1-B-2](https://public.ccsds.org/Pubs/732x1b2.pdf).\n\nIt also contains various helper modules which are commonly used when working with these standards:\n\n- `PusVerificator` module to track the verification of sent telecommands.\n- [PTC and PFC definitions](https://spacepackets.readthedocs.io/en/latest/api/ecss.html#module-spacepackets.ecss.fields) for ECSS packets.\n- `Countdown` utility class.\n- Sequence counter utility classes.\n\n# Install\n\nYou can install this package from PyPI\n\nLinux:\n\n```sh\npython3 -m pip install spacepackets\n```\n\nWindows:\n\n```sh\npy -m pip install spacepackets\n```\n\n# Examples\n\nYou can find all examples [inside the documentation](https://spacepackets.readthedocs.io/en/latest/examples.html).\n\n\n# Tests\n\nIf you want to run the tests, it is recommended to install `pytest` and `coverage` (optional)\nfirst:\n\n```sh\npip install coverage pytest\n```\n\nRunning tests regularly:\n\n```sh\npytest .\n```\n\nRunning tests with coverage:\n\n```sh\ncoverage run -m pytest\n```\n\n# Documentation\n\nThe documentation is built with Sphinx and new documentation should be written using the\n[NumPy format](https://www.sphinx-doc.org/en/master/usage/extensions/example_numpy.html#example-numpy).\n\nInstall the required dependencies first:\n\n```sh\npip install -r docs/requirements.txt\n```\n\nThen the documentation can be built with\n\n```sh\ncd docs\nmake html\n```\n\nYou can run the doctests with\n\n```sh\nmake doctest\n```\n\n# Formatting and Linting\n\nLinting:\n\n```sh\nruff check .\n```\n\nFormatting:\n\n```sh\nruff format .\n```\n",
    "bugtrack_url": null,
    "license": "Apache-2.0",
    "summary": "Various CCSDS and ECSS packet implementations",
    "version": "0.26.1",
    "project_urls": {
        "Homepage": "https://github.com/us-irs/spacepackets-py"
    },
    "split_keywords": [
        "ccsds",
        " ecss",
        " space",
        " communication",
        " packet"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "3d15fafd5c43e02d774ac3446e2c273c03c94c0b92eba90b9a8bc6847043ad4e",
                "md5": "f8de15e4cb319922f1b2f87cf411e862",
                "sha256": "43077673434f521b2278d8b7d7f116a57436e309b3fea2a5debff9852d0c5c80"
            },
            "downloads": -1,
            "filename": "spacepackets-0.26.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "f8de15e4cb319922f1b2f87cf411e862",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.9",
            "size": 163212,
            "upload_time": "2024-11-30T13:39:19",
            "upload_time_iso_8601": "2024-11-30T13:39:19.964995Z",
            "url": "https://files.pythonhosted.org/packages/3d/15/fafd5c43e02d774ac3446e2c273c03c94c0b92eba90b9a8bc6847043ad4e/spacepackets-0.26.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ae0f3bc464045c28af2e84a11737517d1c9485437f6f6ef603325de530d281da",
                "md5": "3ed16cc56cdfcf3cab68284237171cf4",
                "sha256": "ca2dcc2c3f5bc1630cf629c411682411f0a851d77e2c1d877d33e55b01c814e0"
            },
            "downloads": -1,
            "filename": "spacepackets-0.26.1.tar.gz",
            "has_sig": false,
            "md5_digest": "3ed16cc56cdfcf3cab68284237171cf4",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9",
            "size": 120703,
            "upload_time": "2024-11-30T13:39:27",
            "upload_time_iso_8601": "2024-11-30T13:39:27.599516Z",
            "url": "https://files.pythonhosted.org/packages/ae/0f/3bc464045c28af2e84a11737517d1c9485437f6f6ef603325de530d281da/spacepackets-0.26.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-11-30 13:39:27",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "us-irs",
    "github_project": "spacepackets-py",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [],
    "lcname": "spacepackets"
}
        
Elapsed time: 1.18773s