# 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 environemnt](#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. This is the recommended way Assuming you are running in a virtual environment: 1. Install `tmtccmd` for virtual environment. `-e` for interactive installation. ```sh cd deps/tmtccmd pip install -e .[gui] ``` Alternatively you can also install the packages from PyPI completely, but the risk of incompatibilities will be high there ```sh pip install -r requirements.txt ``` # Run Linter Can be used to quickly check validity of script. Install `flake8` first ```sh python3 -m pip install flake8 ``` or on Windows ```sh py -m pip install flake8 ``` and then run the `lint.py` script ```sh ./lint.py ``` # Run Auto-Formatter This repo is auto-formatted using `black`. Assuming `black` is installed, you can simply run ```sh black . ```