# RPPS
RF Parameter Processor Suite
RPPS is a generic signal processor/generator library.
- [Documentation](https://anonoei.github.io/RPPS/)
- [PyPI](https://pypi.org/project/rpps/)
## Example Usage
```
import rpps as rp
def main():
mod = rp.mod.name("QPSK", 0) # Use QPSK modulation, with mapping 0
ecc = rp.coding.name("BLK", "Repetition", 3) # Use Repetition coding, with rate of 2
pipeline = rp.Pipeline(mod, ecc) # Initialize a processing pipeline
enc_msg = b"Test" # Define the data to process
syms = pipeline.enc(enc_msg) # Encode data with ecc, and mod. Get the symbols
path = pipeline.meta.serialize(syms) # Serialize the symbols to file
data = pipeline.from_file(path) # Read the symbols and metadata from file, use the same pipeline processing
print(data) # Check decoded data is what you encoded
if __name__ == "__main__":
main()
```
## Install
1. Run `python3 -m pip install rpps`
2. In your project, `import rpps as rp`
## Roadmap
- [ ] [Interfaces](https://github.com/Anonoei/RPPS/tree/main/src/rpps/inter)
- [X] File
- [ ] (Linux only) tun/tap
- [ ] Socket
- [ ] [Pre-processing](https://github.com/Anonoei/RPPS/tree/main/src/rpps/process)
- [ ] Filters
- [ ] Pulse Shaping
- [ ] [Modulation](https://github.com/Anonoei/RPPS/tree/main/src/rpps/mod)
- [ ] PSK
- [X] BPSK
- [X] QPSK
- [X] 8PSK
- [ ] QAM
- [ ] APSK
- [ ] ASK
- [ ] FSK
- [ ] [Coding](https://github.com/Anonoei/RPPS/tree/main/src/rpps/coding)
- [ ] Block
- [X] Repetition
- [ ] LDPC
- [ ] TPC
- [ ] Convolutional
- [ ] Viterbi
- [ ] De-scramble
- [ ] v.35
- [ ] De-frame
- [ ] HDLC
- [ ] PPP
## Contributing
1. `git clone https://github.com/Anonoei/RPPS`
2. `cd RPPS`
3. `git branch -c feature/<your feature>`
4. `python3 builder.py -b -l` build and install rpps locally
- This also installs deps, and dev_deps automatically
5. run `python3 tests/dev.py`
6. Check out the `dev` branch for latest changes
Raw data
{
"_id": null,
"home_page": null,
"name": "rpps",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.6",
"maintainer_email": null,
"keywords": "anonoei, dsp, sdr",
"author": null,
"author_email": "Anonoei <dev@anonoei.com>",
"download_url": "https://files.pythonhosted.org/packages/d9/1b/c74905d435df32bccf4aa33a2bfb082316b40e667ad4f29a24f781811fad/rpps-0.1.0.tar.gz",
"platform": null,
"description": "# RPPS\n RF Parameter Processor Suite\n\nRPPS is a generic signal processor/generator library.\n\n - [Documentation](https://anonoei.github.io/RPPS/)\n - [PyPI](https://pypi.org/project/rpps/)\n\n## Example Usage\n```\nimport rpps as rp\n\ndef main():\n mod = rp.mod.name(\"QPSK\", 0) # Use QPSK modulation, with mapping 0\n ecc = rp.coding.name(\"BLK\", \"Repetition\", 3) # Use Repetition coding, with rate of 2\n\n pipeline = rp.Pipeline(mod, ecc) # Initialize a processing pipeline\n\n enc_msg = b\"Test\" # Define the data to process\n syms = pipeline.enc(enc_msg) # Encode data with ecc, and mod. Get the symbols\n path = pipeline.meta.serialize(syms) # Serialize the symbols to file\n\n data = pipeline.from_file(path) # Read the symbols and metadata from file, use the same pipeline processing\n print(data) # Check decoded data is what you encoded\n\nif __name__ == \"__main__\":\n main()\n```\n\n## Install\n1. Run `python3 -m pip install rpps`\n2. In your project, `import rpps as rp`\n\n## Roadmap\n - [ ] [Interfaces](https://github.com/Anonoei/RPPS/tree/main/src/rpps/inter)\n - [X] File\n - [ ] (Linux only) tun/tap\n - [ ] Socket\n - [ ] [Pre-processing](https://github.com/Anonoei/RPPS/tree/main/src/rpps/process)\n - [ ] Filters\n - [ ] Pulse Shaping\n - [ ] [Modulation](https://github.com/Anonoei/RPPS/tree/main/src/rpps/mod)\n - [ ] PSK\n - [X] BPSK\n - [X] QPSK\n - [X] 8PSK\n - [ ] QAM\n - [ ] APSK\n - [ ] ASK\n - [ ] FSK\n - [ ] [Coding](https://github.com/Anonoei/RPPS/tree/main/src/rpps/coding)\n - [ ] Block\n - [X] Repetition\n - [ ] LDPC\n - [ ] TPC\n - [ ] Convolutional\n - [ ] Viterbi\n - [ ] De-scramble\n - [ ] v.35\n - [ ] De-frame\n - [ ] HDLC\n - [ ] PPP\n\n## Contributing\n 1. `git clone https://github.com/Anonoei/RPPS`\n 2. `cd RPPS`\n 3. `git branch -c feature/<your feature>`\n 4. `python3 builder.py -b -l` build and install rpps locally\n - This also installs deps, and dev_deps automatically\n 5. run `python3 tests/dev.py`\n 6. Check out the `dev` branch for latest changes\n",
"bugtrack_url": null,
"license": null,
"summary": "RF Parameter Processor Suite",
"version": "0.1.0",
"project_urls": {
"Documentation": "https://anonoei.github.io/RPPS/",
"Homepage": "https://github.com/anonoei/RPPS",
"Issues": "https://github.com/Anonoei/RPPS/issues",
"Repository": "https://github.com/Anonoei/RPPS.git",
"Source": "https://github.com/anonoei/RPPS"
},
"split_keywords": [
"anonoei",
" dsp",
" sdr"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "4ff1ef8f29236b3a696a267920aa583914bdb231a6771626bc4b4590e58da759",
"md5": "e971263ca8541af55006f449eed6e383",
"sha256": "df08c5695abaaecfe10410638816b52b31f4fb8b92cd9c3669b989cb2c4978f2"
},
"downloads": -1,
"filename": "rpps-0.1.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "e971263ca8541af55006f449eed6e383",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6",
"size": 27573,
"upload_time": "2024-09-08T04:45:51",
"upload_time_iso_8601": "2024-09-08T04:45:51.690326Z",
"url": "https://files.pythonhosted.org/packages/4f/f1/ef8f29236b3a696a267920aa583914bdb231a6771626bc4b4590e58da759/rpps-0.1.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "d91bc74905d435df32bccf4aa33a2bfb082316b40e667ad4f29a24f781811fad",
"md5": "054bdfae66a8ae1866571d8ec48561f8",
"sha256": "ec7f9207b25dd9e4dec9d06c91de1f2307948d43eb0b58fbcccc4810e801c438"
},
"downloads": -1,
"filename": "rpps-0.1.0.tar.gz",
"has_sig": false,
"md5_digest": "054bdfae66a8ae1866571d8ec48561f8",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6",
"size": 20657,
"upload_time": "2024-09-08T04:45:53",
"upload_time_iso_8601": "2024-09-08T04:45:53.218001Z",
"url": "https://files.pythonhosted.org/packages/d9/1b/c74905d435df32bccf4aa33a2bfb082316b40e667ad4f29a24f781811fad/rpps-0.1.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-09-08 04:45:53",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "anonoei",
"github_project": "RPPS",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"requirements": [
{
"name": "pyboiler-anonoei",
"specs": []
},
{
"name": "numpy",
"specs": []
},
{
"name": "matplotlib",
"specs": []
}
],
"lcname": "rpps"
}