Create IP links over M17
In order to build this program, you'll need the following dependencies:
liquid-sdrpkg-configfftw3(actuallyfftw3ffor floats)
- Clone the repository:
git clone git@github.com:mdiepart/M17Netd.git - Enter the repository:
cd M17Netd - Init the submodules:
git submodule init && git submodule update - Create a build directory:
mkdir build && cd build - Configure the project:
cmake .. -DCMAKE_BUILD_TYPE=Debugfor debug mode compilation orcmake .. -DCMAKE_BUILD_TYPE=Releasefor release mode compilation
- Compile the project:
make
Several tests have been implemented for:
- performing a raw signal acquisition (test_acq.cpp)
- filtering a raw signal acquisition (test_filter.cpp)
- test the BERT implementation (test_bert_encode_decode.cpp)
- run a BERT transmitter (test_bert_tx.cpp)
- run a BERT receiver and display statistics (test_bert_rx.cpp)
- perform the demodulation steps on a raw acquisition file (test_demod.cpp)
- Transmit a pure tone (test_tone.cpp)
To compile a test, run make {test_name} and execute the resulting binary file.
You can also run make tests to compile all the tests at once.
The compiled program is in the build folder and is called M17Netd
It requires superuser rights to run (because it must create a tun interface). It also expects a path to a config file as only argument. File example.toml at the root of the directory contains an example configuration.
Example: sudo ./M17Netd ../example.toml