FreeDATA/README.md
2021-09-11 17:06:25 +02:00

84 lines
2.2 KiB
Markdown

# codec2 | FreeDATA
My attempt to create a free and opensource TNC with a GUI for [codec2](https://github.com/drowe67/codec2) to send data over HF channels.
The TNC itself will be completely controllable via network.
## Under development
The project is still a prototype and not usable at this time.
## Manual Installation Ubuntu
```
wget https://raw.githubusercontent.com/DJ2LS/codec2-FreeDATA/main/tools/install-codec2-FreeDATA.sh
chmod +x install-codec2-FreeDATA.sh
./install-codec2-FreeDATA.sh
sudo apt install npm
cd gui
npm i
sudo apt install python3
pip3 install psutil
pip3 install crcengine
pip3 install ujson
pip3 install pyserial
pip3 install numpy
```
## Manual Installation macOS
### Install brew and python3
#### https://docs.python-guide.org/starting/install3/osx/
```
$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
brew install python
pip3 install psutil
pip3 install crcengine
pip3 install ujson
pip3 install pyserial
pip3 install numpy
```
### Install dependencies
```
xcode-select --install
brew remove portaudio
brew install portaudio
pip3 install pyaudio
```
## Manual Installation Windows
### Install python3
```
Download Python from https://www.python.org/downloads/
Add Python to systempath https://www.educative.io/edpresso/how-to-add-python-to-path-variable-in-windows
Download and install pyaudio from https://www.lfd.uci.edu/~gohlke/pythonlibs/#pyaudio
eg.: pip install PyAudio-0.2.11-cp37-cp37m-win_amd64.whl
pip install psutil
pip install crcengine
pip install ujson
pip install pyserial
pip install numpy
python daemon.py
```
### Install nodejs
```
https://nodejs.org/en/download/
cd codec2-FreeDATA/gui
npm i
npm i electron
npx electron main.js
```
## GUI Preview
![alt text](https://github.com/DJ2LS/FreeDATA/blob/main/documentation/FreeDATA_GUI_Preview.png "GUI Preview")
## TNC Preview
![alt text](https://github.com/DJ2LS/FreeDATA/blob/main/documentation/FreeDATA_TNC_Preview.png "TNC Preview")
##
npm outdated --> list outdated npm packages
npx npm-check-updates -u --> updated all packages
npm install --> install all updated packages
## Credits
David Rowe and the FreeDV team for developing the modem and libraries
FreeDV Codec 2 : https://github.com/drowe67/codec2