mirror of
https://github.com/DJ2LS/FreeDATA
synced 2024-05-14 08:04:33 +00:00
Update README.md
This commit is contained in:
parent
1f1234254a
commit
4bd8119b25
1 changed files with 78 additions and 19 deletions
97
README.md
97
README.md
|
@ -2,18 +2,21 @@
|
|||
## 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
|
||||
|
||||
## ToDo
|
||||
|
||||
## 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/
|
||||
|
||||
|
||||
|
||||
|
||||
- [x] ARQ: Stop-And-Wait
|
||||
- [x] ARQ: Go-Back-N
|
||||
- [x] ARQ: Selective repeating of lost arq frames
|
||||
- [x] ARQ: Dynamic number of frames per burst
|
||||
- [ ] ARQ: Set frames per burst automatically by channel quality
|
||||
- [ ] SOCKET: Run commands via TCP/IP socket
|
||||
- [ ] TRX: Control radio via hamlib
|
||||
- [ ] MODE: Beacon
|
||||
- [ ] MODE: Broadcast
|
||||
- [ ] MODE: ARQ AX25
|
||||
- [ ] MODE: Gear shifting ARQ
|
||||
- [ ] TNC: CLI GUI for basic settings
|
||||
- [ ] TNC: Multicore support
|
||||
|
||||
## Setup
|
||||
Install FreeDV-Socket-TNC directly to home folder and compile codec2 automatically
|
||||
|
@ -26,26 +29,73 @@ chmod +x ~/install_socket_tnc.sh
|
|||
|
||||
## Usage main program
|
||||
```
|
||||
./main.py --port 3000 --tx 1 --rx 1
|
||||
./main.py --port 3000 --tx 1 --rx 1 --mode 12
|
||||
```
|
||||
|
||||
## Usage testclient
|
||||
## Usage TCP/IP socket client
|
||||
```
|
||||
./socketclient.py --port 3000 --data "BC: hello"
|
||||
python3 readfromsocket.py --port 3000 --data "GET:RX_BUFFER:0
|
||||
```
|
||||
|
||||
|
||||
## Socket Commands
|
||||
|
||||
Send a simple broadcast
|
||||
#### SOCKETTEST
|
||||
Message for testing purposes which repeats:
|
||||
```
|
||||
BC:<DATA>
|
||||
SOCKETTEST
|
||||
```
|
||||
Send an ARQ like frame which will ask the receiver for acknowledgement
|
||||
"WELL DONE! YOU ARE ABLE TO COMMUNICATE WITH THE TNC"
|
||||
|
||||
|
||||
#### TRANSMIT ARQ MESSAGE 'HELLO!'
|
||||
```
|
||||
ACK:<DATA>
|
||||
ARQ:HELLO!
|
||||
```
|
||||
|
||||
#### SET NEW CALLSIGN
|
||||
```
|
||||
SET:MYCALLSIGN:AA1AA
|
||||
```
|
||||
|
||||
#### GET CALLSIGN
|
||||
```
|
||||
GET:MYCALLSIGN
|
||||
```
|
||||
|
||||
#### GET CALLSIGN CRC8
|
||||
```
|
||||
GET:MYCALLSIGN_CRC8
|
||||
```
|
||||
|
||||
#### GET DX CALLSIGN
|
||||
```
|
||||
GET:DXCALLSIGN
|
||||
```
|
||||
|
||||
#### GET ARQ STATE
|
||||
```
|
||||
GET:ARQ_STATE
|
||||
```
|
||||
|
||||
#### GET RX BUFFER LENGTH / SIZE
|
||||
```
|
||||
GET:RX_BUFFER_LENGTH
|
||||
```
|
||||
|
||||
#### GET RX BUFFER
|
||||
```
|
||||
GET:RX_BUFFER:POSITION
|
||||
```
|
||||
Position = 0 --> Latest Data
|
||||
Position 1-N --> Buffer positions
|
||||
|
||||
#### DELETE RX BUFFER
|
||||
```
|
||||
DEL:RX_BUFFER
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
||||
## Other stuff
|
||||
|
||||
|
@ -63,3 +113,12 @@ sudo modprobe snd-aloop index=1,2 enable=1,1 pcm_substreams=1,1 id=CHAT1,CHAT2
|
|||
./main.py --port 3001 --tx 2 --rx 2
|
||||
```
|
||||
|
||||
|
||||
## 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 inspired by https://github.com/xssfox/freedv-tnc/
|
||||
|
||||
|
|
Loading…
Reference in a new issue