Mapping rooms with drone swarms!
The repo is structured as 4 subprojects:
client
: the web front-endserver
: the back-end server used to communicate with the drone swarmdrone
: the Crazyflie drone firmwareargos
: the ARGoS simulation used to test the drones
Clone the repo with its submodules:
git clone --recurse-submodules https://gitlab.com/KRMisha/Hivexplore
Or, if you already cloned the repo but forgot the --recurse-submodules
option, use the following command to fetch the submodules manually:
git submodule update --init --recursive
- Linux
- Bash
- Docker
- Docker Compose
- x11docker
-
Setup:
- Make sure the USB permissions are correct for the Crazyradio to function properly
- Plug in the Crazyradio PA USB dongle
- Make sure all the drones are flashed with the latest version of the firmware
- Assign a unique address to each Crazyflie
- Set each Crazyflie's offset relative to the base in the
server/server/config/crazyflies_config.json
file
-
Start Hivexplore in drone mode:
./start.sh drone
-
Setup - no prior setup is needed
-
Start Hivexplore in ARGoS mode:
./start.sh argos
-
Open the web client by heading to
localhost:3995
in your browser's address bar -
Using another device on the LAN (including a mobile device):
-
Find your host machine's local network IP address with the following command:
ip route get 1.2.3.4 | awk '{print $7}'
-
On your other device, head to
<ip>:3995
, replacing<ip>
with the IP address you found in the last step
-
-
Shutdown
- Press Ctrl+C to perform a graceful shutdown of all the containers
- The server logs can still be read after shutting down the program by accessing their Docker volume, in
/var/lib/docker/volumes/hivexplore_logs/_data
-
Rebuild containers after an update:
./start.sh build
-
See help information:
./start.sh --help
To open the project in VS Code, use the multi-root workspace for best results:
code Hivexplore.code-workspace
This lets you take advantage of integration with extensions, language support, debugging, formatting, linting, and settings directly within VS Code.
Alternatively, you can double-click on the Hivexplore.code-workspace
file in your file explorer.
See each subproject's README for more information.