Skip to main content

ORBCOMM satellites downlink signal demodulator

Project description

Orbcomm_Demodulator DOI

Orbcomm_Demodulator is a Python-based toolkit for demodulating ORBCOMM satellite downlink signals.
This project was originally developed to process raw voltage data captured by the 21CMA (21 Centimeter Array) radio telescope, and aims to provide a complete, standardized processing pipeline from raw samples to decoded ORBCOMM data packets.


Core Pipeline Features

The demodulation chain includes:

  • Digital Down Conversion (DDC) for raw high-rate samples.
  • Symbol Timing Recovery using Gardner TED and Farrow interpolator.
  • Carrier Phase Recovery via a 2nd-order Costas Loop.
  • Differential Decoding and Frame Synchronization.
  • Fletcher-16 Checksum with 1-bit Error Correction (ECC).

Installation

You can install the package directly from GitHub using:

pip install git+https://github.com/JinYi1108/Orbcomm_Demodulator.git

For development and debugging, an editable installation is recommended:

git clone https://github.com/JinYi1108/Orbcomm_Demodulator.git
cd Orbcomm_Demodulator
pip install -e .

Examples and Test Data

Example scripts are provided in the examples/ directory. Due to storage limits, large raw datasets are hosted on Zenodo.

1. Raw Voltage Data (21CMA)

2. DDC Processed IQ Data (21CMA)

  • File: raw_data/iq_data_0.dat
  • Description: This is the IQ data generated from the raw 21CMA .dat file after Digital Down Conversion (DDC). It is provided for quick testing of the backend stages (STR, Costas, etc.).

3. Test Data (from ORBCOMM-receiver)

  • File: raw_data/1552071892p6.dat
  • Description: Derived from the original 1552071892p6.mat from Frank Bieberly's project. It has been downsampled and filtered to a baseband IQ format.

alt text


Acknowledgements

This project is developed based on ORBCOMM-receiver project by Frank Bieberly (https://github.com/fbieberly/ORBCOMM-receiver).

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

orbdemod-0.1.0.tar.gz (16.6 kB view details)

Uploaded Source

Built Distribution

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

orbdemod-0.1.0-py3-none-any.whl (19.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: orbdemod-0.1.0.tar.gz
  • Upload date:
  • Size: 16.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for orbdemod-0.1.0.tar.gz
Algorithm Hash digest
SHA256 560ffa31f60b7af1a456c8244ea00ced79ac8cbad8edd0f8e4a579f58bcf5619
MD5 ae100a3fcd4bb803732c7e92e59835a0
BLAKE2b-256 adccaf0b0564c4d73772165e105816c047681c4e88ebb1f155dd3a09bcd5cb3f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: orbdemod-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 19.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for orbdemod-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 080110fa577bcf59d3f60d318fa661e21369d7ce433aaee8047e728715d0af5d
MD5 9f92e3947f36b88e2c58a596e7c6ca5f
BLAKE2b-256 7ef04760c7335113e83ce77a921a00c4df80f6bc1aded25bdd3bc95212ec1703

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