Skip to content

geoffreynyaga/ANGA-UTM

Repository files navigation

ANGA UTM

Build Status

Netlify Status

This is a LAANC (Low Altitude Authorization and Notification Capability) to UTM (UAV Traffic Management) implementation for drones / UAS / RPAS. It includes drone Registrations, drone flight plans, drone Geofences and drone approvals

It is a PWA (Progressive Web App) purely done in Django/python

Anga UTM

NB: To login as a normal user/pilot/ drone company staff use the following credentials to sign in

  • username: pilot
  • password: anga2020

To login as a Civil Aviation staff use the following credentials to sign in

  • username: admin
  • password: aviation2020

Keep in mind the map is bound to Kenya and to change it see the end of this page

Overview

The software is a LAANC implementation.

  1. Registration
  2. Flight Plans submission and Authorization.
  3. Geofences.
  4. NOTAM and Notifications

Install Instructions 📥

The new version of the app works best on linux/MacOS environment. For windows installation, kindly check out the official Django documentation to install GEOS and GDAL libraries and how to configure them. Alternatively, I can recommend you install Windows Subsystem for Linux (WSL) and use the Ubuntu environment inorder to install the dependacies using the steps below

Steps

  • Clone the repo
git clone https://github.com/geoffreynyaga/ANGA-UTM.git
  • create a python virtualenvironment
virtualenv venv
  • activate the virtualenvironment
source venv/bin/activate
  • install python packages
pip install -r requirements.txt
  • install geojango Geospatial Libraries packages
sudo apt-get install binutils libproj-dev gdal-bin
  • create a postgres database on called "anga_utm" or equivalently give it a custom name and make sure to change the value in the local.py settings file

  • run migrations

python manage.py migrate
  • create superuser
  python manage.py createsuperuser
  • log in to the admin and under "Authentication and Authorization" create a group called CAA and give the group the relevant permissions that Civil Aviation requires e.g. changing reserved airspaces, adding/changing NOTAMs

  • One more thing... By default, the application is meant to be country-specific, and the default country is Kenya (if you disable location on the browser), but this constraint can be removed.

    MAP BOUNDS

    If you log in the and not grant the location permission, the map will ALWAYS be bound to Kenyan borders. To change this to another country, accept the location on the browser and the map will be bound to your specific country

    An example for the extent on coverage if you are in Kenya can be seen in the image below

    Anga UTM country box

Now the app should be working well. However, you will realise that you can not create a reserve airspace yet, and that you have to have an RPAS registered, which when you attempt does not go through because you are not registered to any organisation.

This is a deliberate design choice, you have to register an organisation on the admin page http://localhost:8000/admin/ and add the user to that organisation. This is the supposed role that Civil Aviation bodies will have to play.

Finally, you can create a user in the admin page and make sure to assign them to the CAA group that we created in on of the steps above. If you now login with this user on the site, you should have additional features such as Approve Flight Plans, Create Notams etc.