A free, open-source, multi-platform application for sending files and messages, using the codec2 HF modems
Go to file
DJ2LS 6adf7db483
bleeding edge ARQ RPT
no working, but with tooo much debugging output
furthermore the frame ACK is not working correctly on the TX side
2021-02-08 21:25:22 +01:00
arq.py bleeding edge ARQ RPT 2021-02-08 21:25:22 +01:00
helpers.py global audio buffer 2021-01-06 13:17:17 +01:00
install_jate.sh Add files via upload 2021-01-17 12:53:44 +01:00
LICENSE Initial commit 2020-12-12 19:57:27 +01:00
main.py complete ARQ redesign 2021-01-20 22:51:14 +01:00
modem.py bleeding edge ARQ RPT 2021-02-08 21:25:22 +01:00
README.md Merge branch 'dev' into ARQ 2021-01-16 15:08:12 +01:00
socketclient.py first multimode support 2021-01-05 15:03:41 +01:00
static.py bleeding edge ARQ RPT 2021-02-08 21:25:22 +01:00
tnc.py support for large data 2021-02-06 17:55:14 +01: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