This is a customised Ardupilot firmware builder which allows to integrate custom patches, recall old builds etc. This is hosted on a private server but publicly accessible and the source code can be downloaded by anyone. Detailed instruction on how to build your custom firmware patcher based with this code are in the readme below. A live version of this app can be accessed here: https://ardupilot.equalmass.com

Stephen Dade d1614264ad Move zipping from terraingen to app 5 jaren geleden
templates 9bc462a2dc Hard set spacing to 100m 5 jaren geleden
.gitignore 519e1f8813 Initial commit 5 jaren geleden
LICENSE 519e1f8813 Initial commit 5 jaren geleden
README.md f5c8c5dca3 Small fixes 5 jaren geleden
app.py d1614264ad Move zipping from terraingen to app 5 jaren geleden
app_test.py 9bc462a2dc Hard set spacing to 100m 5 jaren geleden
create_terrain.py 6341bb9833 Initial code 5 jaren geleden
terrain_gen.py d1614264ad Move zipping from terraingen to app 5 jaren geleden

README.md

ArduPilot terrain generator

Summary

This is a website that pre-generates terrain files for Ardupilot. The user enters in the details of the area they wish the generate terrain for, then the website will download (if not already cached) the raw terrain from ardupilot.org and process it. The user will end up with a terrain.zip that they then need to unzip to a "terrain" folder on the SD card in their flight controller.

For developers

This website uses the flask library.

To install dependencies:

pip install flask wheel numpy mavproxy crc16 pytest

To run:

export FLASK_APP=app.py
flask run

The cached terrain files are stored in ./srtmcache

The unzipped processed files are temporarily stored in ./outputTer-tmp. These are deleted upon the zipping into a single downloadable file

The downloadable files are stored in ./outputTer

Each user request is given a UUID, which is incorporated into the folder/filename of the terrain files.

To run the unit tests, type pytest

Deployment

Use gunicorn for deployment:

pip install gunicorn

gunicorn app:app