Skip to main content

RF Parameter Processor Suite

Project description

RPPS

RF Parameter Processor Suite

RPPS is a generic signal processor/generator library.

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
    • File
    • (Linux only) tun/tap
    • Socket
  • Pre-processing
    • Filters
    • Pulse Shaping
  • Modulation
    • PSK
      • BPSK
      • QPSK
      • 8PSK
    • QAM
    • APSK
    • ASK
    • FSK
  • Coding
    • Block
      • 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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rpps-0.1.0.tar.gz (20.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

rpps-0.1.0-py3-none-any.whl (27.6 kB view details)

Uploaded Python 3

File details

Details for the file rpps-0.1.0.tar.gz.

File metadata

  • Download URL: rpps-0.1.0.tar.gz
  • Upload date:
  • Size: 20.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.4

File hashes

Hashes for rpps-0.1.0.tar.gz
Algorithm Hash digest
SHA256 ec7f9207b25dd9e4dec9d06c91de1f2307948d43eb0b58fbcccc4810e801c438
MD5 054bdfae66a8ae1866571d8ec48561f8
BLAKE2b-256 d91bc74905d435df32bccf4aa33a2bfb082316b40e667ad4f29a24f781811fad

See more details on using hashes here.

File details

Details for the file rpps-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: rpps-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 27.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.4

File hashes

Hashes for rpps-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 df08c5695abaaecfe10410638816b52b31f4fb8b92cd9c3669b989cb2c4978f2
MD5 e971263ca8541af55006f449eed6e383
BLAKE2b-256 4ff1ef8f29236b3a696a267920aa583914bdb231a6771626bc4b4590e58da759

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page