https://github.com/ravisuhag/astro
Astro is an open-source Go (Golang) library that aims to implement all space protocols including CCSDS (Consultative Committee for Space Data Systems) protocols, PUS and others.
https://github.com/ravisuhag/astro
ccsds ground-station space
Last synced: 4 months ago
JSON representation
Astro is an open-source Go (Golang) library that aims to implement all space protocols including CCSDS (Consultative Committee for Space Data Systems) protocols, PUS and others.
- Host: GitHub
- URL: https://github.com/ravisuhag/astro
- Owner: ravisuhag
- License: apache-2.0
- Created: 2025-01-24T17:46:07.000Z (12 months ago)
- Default Branch: main
- Last Pushed: 2025-03-19T14:40:53.000Z (10 months ago)
- Last Synced: 2025-03-19T15:36:58.682Z (10 months ago)
- Topics: ccsds, ground-station, space
- Language: Go
- Homepage:
- Size: 65.4 KB
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Security: .github/SECURITY.md
Awesome Lists containing this project
README
# Astro
Astro is an open-source Go (Golang) library that aims to implement all CCSDS (Consultative Committee for Space Data Systems) protocols. This project provides a comprehensive, idiomatic, and efficient implementation of these standards for use in space-related applications.
## Overview
The CCSDS protocols are a set of international standards designed to ensure interoperability in space data systems. By implementing these protocols in Go, Astro aims to:
- Simplify the development of space data systems.
- Provide reusable, modular components for space-related applications.
- Enable easy integration with other tools and libraries in the Go ecosystem.
## Features
- Idiomatic Go design, adhering to best practices.
- Modular and extensible architecture.
- Comprehensive documentation and examples.
## Goals
1. Implement a full suite of CCSDS protocols.
2. Provide thorough documentation, including use cases and examples.
3. Ensure high performance and reliability for production use.
4. Foster community collaboration to enhance and expand the library.
## Usage
Astro is currently under active development. The library will be available for use
once the initial protocols are implemented. To stay updated, please follow the project
progress on GitHub.
## Roadmap
Implementation of all CCSDS protocols, including:
| Protocol | Status |
|------------------------------------------------------------------------------------------|:------:|
| [CCSDS 121.0-B-3](https://public.ccsds.org/Pubs/121x0b3.pdf) - Lossless Data Compression | |
| [CCSDS 122.0-B-2](https://public.ccsds.org/Pubs/122x0b2e1.pdf) - Image Data Compression
| [CCSDS 122.1-B-1](https://public.ccsds.org/Pubs/122x1b1e1.pdf) - Spectral Preprocessing Transform for Multispectral and Hyperspectral Image Compression
| [CCSDS 123.0-B-2](https://public.ccsds.org/Pubs/123x0b2e2c3.pdf) - Low-Complexity Lossless and Near-Lossless Multispectral and Hyperspectral Image Compression
| [CCSDS 124.0-B-1](https://public.ccsds.org/Pubs/124x0b1.pdf) - Robust Compression of Fixed-Length Housekeeping Data
| [CCSDS 131.0-B-5](https://public.ccsds.org/Pubs/131x0b5.pdf) - TM Synchronization and Channel Coding
| [CCSDS 131.2-B-2](https://public.ccsds.org/Pubs/131x2b2.pdf) - Flexible Advanced Coding and Modulation Scheme for High Rate Telemetry Applications
| [CCSDS 131.3-B-2](https://public.ccsds.org/Pubs/131x3b2e1.pdf) - CCSDS Space Link Protocols over ETSI DVB-S2 Standard
| [CCSDS 132.0-B-3](https://public.ccsds.org/Pubs/132x0b3.pdf) - TM Space Data Link Protocol
| [CCSDS 133.0-B-2](https://public.ccsds.org/Pubs/133x0b2e2.pdf) - Space Packet Protocol | ✅ |
| [CCSDS 133.1-B-3](https://public.ccsds.org/Pubs/133x1b3e1.pdf) - Encapsulation Packet Protocol
| [CCSDS 141.0-B-1](https://public.ccsds.org/Pubs/141x0b1.pdf) - Optical Communications Physical Layer
| [CCSDS 142.0-B-1](https://public.ccsds.org/Pubs/142x0b1.pdf) - Optical Communications Coding and Synchronization
| [CCSDS 211.0-B-6](https://public.ccsds.org/Pubs/211x0b6e1.pdf) - Proximity-1 Space Link Protocol-Data Link Layer
| [CCSDS 211.1-B-4](https://public.ccsds.org/Pubs/211x1b4e1.pdf) - Proximity-1 Space Link Protocol--Physical Layer
| [CCSDS 211.2-B-3](https://public.ccsds.org/Pubs/211x2b3.pdf) - Proximity-1 Space Link Protocol--Coding and Synchronization Sublayer
| [CCSDS 231.0-B-4](https://public.ccsds.org/Pubs/231x0b4e1.pdf) - TC Synchronization and Channel Coding
| [CCSDS 232.0-B-4](https://public.ccsds.org/Pubs/232x0b4e1c1.pdf) - TC Space Data Link Protocol
| [CCSDS 301.0-B-4](https://public.ccsds.org/Pubs/301x0b4e1.pdf) - Time Code Formats
## License
This project is licensed under the [Apache 2.0 License](LICENSE).
## Contributing
We welcome contributions from the community! If you are interested in contributing:
1. Fork the repository.
2. Create a new branch for your feature or bugfix.
3. Submit a pull request with a clear description of the changes.
## Stay Updated
Follow us on social media for updates, progress, and insights:
- Twitter: [@ravi_suhag](https://twitter.com/ravi_suhag)
Feel free to star this repository to stay updated with new releases!