hamnet70/impl
2024-12-12 19:44:07 +01:00
..
src Handle received packets 2024-12-12 19:44:07 +01:00
test Handle received packets 2024-12-12 19:44:07 +01:00
utils Apply free software+documentation licenses 2024-08-23 11:53:40 +02:00
.gitignore Initial commit: infrastructure 2021-10-17 19:25:42 +02:00
CMakeLists.txt Combine layer2_rx and layer2_tx in a new connection module 2024-08-25 22:26:56 +02:00
make.sh make.sh: allow passing parameters to make 2024-01-03 17:29:05 +01:00
README.md Remove config.h from Git; must be adapted by the user 2024-08-25 20:26:41 +02:00
setup_tundev.sh setup_tundev: limit TX queue len to 16 2024-07-19 21:59:38 +02:00

Hamnet70 Implementation

This directory contains an implementation of the Hamnet70 protocol.

Before you can compile and use this code, some additional steps are necessary:

  1. Copy src/config.h.template to src/config.h and set the following variables:
    • MY_CALL: the station call sign (i.e. your amateur radio call sign). This will be encoded into the address fields of outgoing packets.
  2. Install dependencies:
    • libliquid compiled with libfec support
    • libfec
    • fftw3
    • libhackrf

After everything is prepared, compile the code using ./make.sh. Parameters to this script are forwarded to make so you can speed things up a little with ./make.sh -j4 (on a CPU with 4 threads).

When compiled, you have two options for running Hamnet70:

  1. In digipeater (base station) mode: build/hamnet70 -c. This will broadcast beacons and wait for clients to connect.
  2. In client mode: build/hamnet70. This will wait for a beacon to arrive and connect to it.