https://github.com/dogusyuksel/libcsp-works
libcsp library workspace to use ist in Rust, Python and embedded systems
https://github.com/dogusyuksel/libcsp-works
arm bindings embedded libcsp python rust
Last synced: about 1 month ago
JSON representation
libcsp library workspace to use ist in Rust, Python and embedded systems
- Host: GitHub
- URL: https://github.com/dogusyuksel/libcsp-works
- Owner: dogusyuksel
- Created: 2025-10-14T09:55:34.000Z (8 months ago)
- Default Branch: master
- Last Pushed: 2026-03-18T11:54:14.000Z (3 months ago)
- Last Synced: 2026-03-19T02:34:59.170Z (3 months ago)
- Topics: arm, bindings, embedded, libcsp, python, rust
- Language: C
- Homepage:
- Size: 15.8 MB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
🚀 libcsp-works
Rust • Python • Embedded experiments with CubeSat Space Protocol
---
## ✨ Overview
libcsp-works is a workspace and experimental playground for working with the CubeSat Space Protocol (CSP) across multiple ecosystems. The project focuses on integrating the C-based libcsp library with modern languages and environments such as Rust, Python, and embedded systems, while keeping the setup reproducible, automation-friendly, and suitable for real-world embedded and space applications.
---
## 🎯 Goals
- Create safe and ergonomic Rust bindings for libcsp
- Provide Python-accessible APIs for rapid prototyping and tooling
- Enable CSP usage on embedded targets (ARM, RISC-V, etc.)
- Collect experiments, tools, and example applications in a single workspace
- Support automation and reproducibility via Makefile helpers
---
## 📂 Project Structure
```
libcsp-works/
├── .github/
│ └── workflows/
├── rust-server/
├── embedded-client/
├── thirdparty/
├── .gitmodules
├── Makefile
└── README.md
```
---
## 🧰 Requirements
Git, C compiler (gcc or clang), Make, Rust & Cargo, Python 3, and optional embedded cross-compilation toolchains.
---
## ⚡ Quick Start
git clone https://github.com/dogusyuksel/libcsp-works.git
cd libcsp-works
git submodule update --init --recursive
make create-bindings
make build-server
make console
---
## 🦀 Rust Usage
```
cd rust-server
make build-docker
make create-bindings
make build-server
```
---
## 🐍 Embedded Usage
```
cd embedded-client
make build-docker
make all
```
---
## 🛰️ What is CSP?
CubeSat Space Protocol (CSP) is a lightweight networking protocol designed for resource-constrained systems such as CubeSats and embedded devices.
---
## 🛣️ Roadmap
Complete Rust API coverage, Python examples, embedded board demos, CSP simulations, and CI automation.
---
## 🤝 Contributing
Fork, create a branch, commit changes, and open a pull request.
---
## 📜 License
MIT License.