Signal Server GUI is designed as a companion to Signal Server. Signal Server GUI provides a simple and intuitive interface to manage the many configuration options available within Signal Server. This web interface allows you to build and save three item types (Stations, Antennas, and Plots). As you develop plots you are afforded opportunity to manipulate some of the many parameters which can affect propagation. Reasonable default values are provided, which can be changed as you develop and refine your model.
Glompos21: Added the ability to show the plot on top of a map and misc fix/updates
Clone repository
git clone https://github.com/glompos21/signalserver_gui.git
cd signalserver_gui
git submodule update --init --recursiveComplile Signal-Server See Signal-Server Readme.md
Install python dependencies
cd signalserver_gui
python -m venv .venv
source .venv/bin/activate
pip install -rrequirements.txtInstall kmzToGeoTiff.sh
sudo apt install gdal-binUpdate required parameters config.ini
Config entries listed below are required.
[signalservergui]
data_dir = data
output_dir = downloads
database_dir = db
[signalserver]
path = /usr/bin/signalserver
[convert]
path = /usr/bin/convert
output_type = png
signalservergui- Config section with signalservergui settingsdata_dir- Specifies the directory containing various types of data. This option is used to automatically infer the subdirectories for all specific data types.- Example
- data_dir = data
- (inferred) elevation_data_dir = data/elevation
- (inferred) lidar_data_dir = data/lidar
- (inferred) user_data_dir = data/user
- (inferred) clutter_data_dir = data/clutter
- (inferred) antenna_profiles_dir = data/antennas
- (inferred) color_profiles_dir = data/color_profiles
- (inferred) color_profile = data/color_profiles/rainbow.dcf
- Example
output_dir- Specifies the directory into which signalservergui will generate files and make available for download.- Each time a plot is generate, a subfolder will be created using the plot_id. This folder will contain all files available for that plot.
database_dir- Specifies the directory where the sqlite database (signalserver_gui.db) will be created.
signalserver- Config section with signalserver settingspath- Specifies the path to the signal server binary. Signal Server GUI assumes the signalserverHD and signalserverLIDAR binaries are co-located with the base signalserver binary.- Example
- path = /usr/bin/signalserver
- (inferred) /usr/bin/signalserverHD
- (inferred) /usr/bin/signalserverLIDAR
- Example
convert- Config section with convert settingspath- Specifies the path to the convert binary. Convert is included with the ImageMagick suite of tools.output_type- Specifies the preferred image format for graphics. Recommendpngto allow image transparency.
The data needs to be download and placed on data/elevation More information on Signal-Server Readme.md.
Another source of data is: https://dwtkns.com/srtm30m/
Starting Signal Server GUI:
cd signalserver_gui
source .venv/bin/activate
python -m signalserver_gui
(Bottle server console log)...
Listening on http://localhost:8080/Once signalserver_gui is running, open a browser to the url indicated in the console log.
Example: http://localhost:8080/
Populate database with sample sites and plots.
Caution: Loading test data with re-initialize database and all existing data will be lost.
$ cd signalserver_gui
(No output)
$ source .venv/bin/activate
(No output)
$ python -m db.test_initThe current app can be build into a docker image. run:
docker compose builddocker compose up