Skip to content

osqzss/PocketSDR-AFS

Repository files navigation

PocketSDR-AFS

PocketSDR-AFS is an enhanced version of Tomoji Takasu’s PocketSDR v0.13 designed to support the Augmented Forward Signal (AFS) for the Lunar Augmented Navigation Service (LANS).

LANS is the lunar counterpart to GNSS, developed to enable precise navigation and positioning for future lunar exploration missions. The AFS is a standardized signal structure for LANS. It is transmitted by multiple LunaNet Service Provider (LNSP) nodes, including NASA's Lunar Communications Relay and Navigation Systems (LCRNS), ESA's Moonlight Lunar Communications and Navigation Services (LCNS), and JAXA's Luna Navigation Satellite System (LNSS). The recommended standard for AFS can be found at NASA's LunaNet Interoperability Specification site.

PocketSDR-AFS, in conjunction with a software-defined LANS AFS baseband simulator such as LANS-AFS-SIM, offers a flexible platform for validating LANS signal processing algorithms and evaluating lunar navigation performance.

Build Instructions

1. Install Prerequisite Packages

sudo apt update
sudo apt install libusb-1.0-0-dev libfftw3-dev

2. Clone the Repository

git clone https://github.com/osqzss/PocketSDR-AFS.git
cd PocketSDR-AFS

3. Install External Library Source Trees

cd lib
chmod +x clone_lib.sh
./clone_lib.sh

4. Build the Libraries

cd build
make
make install

5. Build the pocket_trk Executable

cd ../../app/pocket_trk
make

Usage

The pocket_trk.sh script in app/pocket_trk provides example command-line instructions for both offline and real-time testing:

  • Offline Testing: Process 2-bit I/Q sample data generated by LANS-AFS-SIM.
  • Real-time Testing: Use with the FE2CH frontend on a desktop PC or Raspberry Pi 5.

Offline Testing Example

sudo ./pocket_trk.sh afssim_iq2.bin

Real-time Testing Example (with FE2CH frontend)

sudo ./pocket_trk.sh

Notes

  • For development and testing purposes, the center frequency of the LANS AFS is set to 1575.42MHz. While the actual LANS AFS is transmitted in the S-band, this L-band configuration enables compatibility with the FE2CH frontend device, facilitating convenient real-time testing on desktop PCs or Raspberry Pi devices.
  • To configure the receiver for S-band signal acquisition, edit the src/pocket_sdr.h file and comment out the #define DEMO_L1 directive. This modification enables support for the S-band center frequency used by the actual LANS AFS broadcast.

References

For additional details on the architecture and examples of offline and real-time test results, please refer to our publication:

Sobukawa, R., & Ebinuma, T. (2025). Open-Source Real-Time SDR Platform for Rapid Prototyping of LANS AFS Receiver. Aerospace, 12(7), 620. https://doi.org/10.3390/aerospace12070620

About

Software-Defined LunaNet LANS AFS Receiver

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published