# TMTC Commander EIVE This application can be used to test the EIVE On-Board Software. Furthermore, it can also be used to retrieve all sorts of telemetry data like housekeeping data. It is recommended to use this application with a virtual environment. The [virtual environment](#venv) chapter describes how to set one up. The [requirements](#reqs) describes how to install all required packages. The configuration file can currently be found at `tmtc_conf.json`. It caches settings like the default communication interface or parameters like the TCP port when using the TCP communication interface. # Examples Assuming you are running in a [virtual environment](#venv) and all [package requirements](#reqs) were installed properly. Run CLI mode ```sh ./tmtcc.py ``` Run GUI mode ```sh ./tmtcc.py -g ``` # Set up virtual environment ## Linux 1. Create virtual environment ```sh python3 -m venv venv ``` 2. Activate virtual environment ```sh . venv/bin/activate ``` ## Windows 1. Create virtual environment ```sh py -m venv venv ``` 2. Activate virtual environment ```sh venv\Scripts\activate.bat ``` # Install requirements There are two ways to install the requirements. One is to install the primary dependency `tmtccmd` interactively. ## Installing via PyPI It is recommended to install `eive-tmtc` itself interactively, which also installs all required dependencies. ```sh pip install -e . ``` If you only want to install all dependencies: ```sh pip install -r requirements.txt ``` ## Install interactively Clone the dependency first inside the `deps` folder ```sh cd deps ./install_tmtccmd.sh ``` Then you can install `tmtccmd` interactively ```sh cd tmtccmd pip install -e . ``` # Run Linter Can be used to quickly check validity of script. Install `flake8` first ```sh python3 -m pip install ruff ``` or on Windows ```sh py -m pip install ruff ``` and then run it ```sh ruff . ``` # Run Auto-Formatter This repo is auto-formatted using `black`. Assuming `black` is installed, you can simply run ```sh black . ```