Skip to content

Low Frequency and Weak Signal Underwater Communications in GNU Radio.

Notifications You must be signed in to change notification settings

michelbarbeau/gr-uwspr

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

61 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Low Frequency and Weak Signal Underwater Communications in GNU Radio.

See the Wiki section of this repository for a list of related papers and MATLAB Live Scripts explaining some of the details of the software design.

Copyright 2019 Michel Barbeau, Carleton University.

Author: Michel Barbeau

Version: February 22, 2019

Installing

git clone https://github.com/michelbarbeau/gr-uwspr

Building

cd gr-uwspr

mkdir build

cd build

cmake ../

make

sudo make install

sudo ldconfig

Running

Sender: To run a sender, a file in the ".c2" format must be generated first. The program "wprsim" is used to generate that file, for example:

./wsprsim VE3EMB.c2 "VE3EMB FN25 30"

This program is available in directory "examples".

The source code of "wsprsim" is available here: http://physics.princeton.edu/pulsar/K1JT/wspr.html

The program "wsprsim" generates an audio file in the ".c2" format, named "VE3EMB.c2" in this example. It has in-phase and quadrature signals.

For playing that file, there are two options.

(1) Within GNU Radio companion, load and run the flowgraph "examples/c2ToAudioSink.grc".

c2ToAudioSink Example

(2) Within GNU Radio companion, load and run the flowgraph "examples/c2ToWaveFile".

c2ToWaveFile Example

This program converts the ".c2" format into a audio file in the ".wav" format, at 12,000 samples per second. The baseband signal (in the ".c2" file ) is translated to center frequency 1,500 Hz. The output file "test.wav" can be played with any audio player. There is no need to have GNU Radio on the system on which it is played.

Receiver: To run a receiver, load and run the flowgraph "examples/AudioSourceDecode.grc".

AudioSourceDecode Example

Closed-loop simulation: A closed-loop simulation is implemented in the flowgraph "examples/WaveFilePlusNoiseDecode.grc". It connects a sender and a noise source to a receiver.

WaveFilePlusNoiseDecode Example

Note: Paths to local files in "Wav File Source" blocks must be updated according to your local installation.

Watch the following demo on Youtube.

Demo

About

Low Frequency and Weak Signal Underwater Communications in GNU Radio.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published