A free, open-source, multi-platform application for sending files and messages, using the codec2 HF modems
Go to file
DJ2LS 67a8938e2e
first attempt with hamlib
- created a separate function "ptt_and_wait" which is waiting  a little bit
- this improved the transmission quality drastically *party*
2021-05-09 11:36:08 +02:00
tools PEP8 cleaner 2021-03-12 14:14:08 +01:00
data_handler.py fixed watchdog not beeing started 2021-04-17 17:42:25 +02:00
hamlib.py switching to signalling mode as default 2021-02-24 14:16:29 +01:00
helpers.py huge code cleanup, removed threaded timers 2021-03-18 15:14:19 +01:00
LICENSE Initial commit 2020-12-12 19:57:27 +01:00
main.py first attempt with hamlib 2021-05-09 11:36:08 +02:00
modem.py first attempt with hamlib 2021-05-09 11:36:08 +02:00
README.md switching to signalling mode as default 2021-02-24 14:16:29 +01:00
sock.py added frames per burst selector 2021-03-19 11:16:24 +01:00
static.py first attempt with hamlib 2021-05-09 11:36:08 +02:00

FreeDV-JATE

FreeDV- Just Another TNC Experiment

My first attempt to learn more about FreeDV and how to create a TNC which gets data from a TCP/IP socket

Credits

David Rowe and the FreeDV team for developing the modem and libraries FreeDV Codec 2 : https://github.com/drowe67/codec2

This software has been heavily inspired by https://github.com/xssfox/freedv-tnc/

Setup

Install FreeDV-Socket-TNC directly to home folder and compile codec2 automatically

sudo apt install portaudio19-dev build-essential cmake
wget https://raw.githubusercontent.com/DJ2LS/FreeDV-Socket-TNC/dev/install_socket_tnc.sh -O ~/install_socket_tnc.sh
chmod +x ~/install_socket_tnc.sh
./install_socket_tnc.sh

Usage main program

./main.py --port 3000 --tx 1 --rx 1

Usage testclient

./socketclient.py --port 3000 --data "BC: hello"

Socket Commands

Send a simple broadcast

BC:<DATA>    

Send an ARQ like frame which will ask the receiver for acknowledgement

ACK:<DATA>    

Other stuff

Audio sinkhole

Send real audio without external devices or sound cards

sudo modprobe snd-aloop index=1,2 enable=1,1 pcm_substreams=1,1 id=CHAT1,CHAT2 

TNC 1

./main.py --port 3000 --tx 1 --rx 1

TNC 2

./main.py --port 3001 --tx 2 --rx 2