Aileen, a hardware/software suite designed for NGOs, counts signals from devices with a wireless interface enabled (such as smartphones) to deliver population data in an organized and actionable format.
We used this:
- ALFA AWUS036NH HIGH POWER WIFI USB-ADAPTER
- Computer running Ubuntu 18.04 LTS (the picture below is an Intel NUC)
- Make a virtual environment, e.g.:
virtualenv env_aileen - Activate it, e.g:
source env_aileen/bin/activate - Install the
aileendependencies:python setup.py develop - If you want to collaborate on code, please install pre-commit for it to hook into commits:
pre-commit install - TODO: Maybe run installation script?
Use sqlite
- We use black for code formatting.
- We use isort for package importing.
To run the aileen box you should have at least the following in an aileen/.env file. See settings.py for more configuration.
(You can also use env vars directly)
WIFI_INTERFACES='theWifiInterfaceOfDevice'
DISABLE_AUTO_TITLE='true'
Aileen-wifi will tell you about the wifi interfaces it sees if you don't know what to put for the first setting.
Initialize the database
python manage.py makemigrationspython manage.py migrate
Create a super user
python manage.py createsuperuser
Check if everything was installed correctly with either:
python manage.py runserverpython manage.py run_box
The wifi card is being set into monitor mode. To restart the box, these steps might be necessary:
- python manage.py stop_box
- sudo /path/to/airmon-ng stop wlan0mon
- python manage.py start_box
Go to the /admin url and add a location for the aileen box
When creating an app on a server be sure to tell the server to collect the static files with the following
python manage.py collectstatic

