@@ -15,24 +15,42 @@ of the drone's *approximate* global position retrieved from an onboard GIS syste
15
15
The below steps demonstrate how GISNav enables GNSS-free flight with PX4 Autopilot's [ Mission mode] [ 1 ] in a SITL
16
16
simulation.
17
17
18
- You will need to have the [ docker compose plugin] [ 2 ] and [ NVIDIA Container Toolkit] [ 3 ] installed.
18
+ You will need to have the [ Docker Compose plugin] [ 2 ] and [ NVIDIA Container Toolkit] [ 3 ] installed.
19
19
20
20
[ 1 ] : https://docs.px4.io/main/en/flight_modes/mission.html
21
21
[ 2 ] : https://docs.docker.com/compose/install/linux/
22
22
[ 3 ] : https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/install-guide.html
23
23
24
+ ## Install GISNav CLI
25
+
26
+ The GISNav CLI (` gnc ` ) is a Docker Compose wrapper that significantly simplifies building and deploying GISNav's Docker Compose services.
27
+
28
+ Create the Debian package yourself and install ` gnc ` from it using the following commands:
29
+
30
+ ``` bash
31
+ git clone https://github.com/hmakelin/gisnav.git
32
+ cd gisnav
33
+ make install
34
+ ```
35
+
24
36
## Build and run SITL simulation
25
37
26
38
Build the Docker images and create and run the containers (downloading and building
27
39
everything will take a long time):
28
40
29
- > ** Note** This script will automatically expose your xhost to the created
30
- > Docker containers to make the GUI applications work.
41
+ > ** Note**
42
+ > * This script will automatically expose your X server to the created
43
+ > Docker containers to make the GUI applications work.
44
+ > * We stop autoheal because current healthchecks are quite naive and often
45
+ > flag healthy services as unhealthy.
46
+ > * Gazebo in the ` px4 ` service will on first run download a number of models
47
+ > and will be slow to start up (on first run).
48
+ > * ` mapserver ` service will on first run transfer some files to a shared
49
+ > volume and will be slow to start up (on first run).
31
50
32
51
``` bash
33
- git clone https://github.com/hmakelin/gisnav.git
34
- cd gisnav
35
- make -C docker demo
52
+ gnc create --build px4 gisnav
53
+ gnc start px4 gisnav && gnc stop autoheal
36
54
```
37
55
38
56
[ 4 ] : http://wiki.ros.org/docker/Tutorials/GUI
@@ -61,8 +79,21 @@ You can check if PX4 is receiving the mock GPS position estimates by typing the
61
79
listener sensor_gps
62
80
```
63
81
82
+ > ** Note**
83
+ > The ` gisnav ` service will by default will send uORB messages to PX4 via the
84
+ > micro-ROS agent which bypasses the GPS driver so you will not see the GPS
85
+ > status with commands like ` gps status ` .
86
+
64
87
[ 5 ] : https://docs.px4.io/main/en/debug/mavlink_shell.html#qgroundcontrol
65
88
89
+ ## Build and run SITL simulation
90
+
91
+ Stop all simulation services with the below command:
92
+
93
+ ``` bash
94
+ gnc stop
95
+ ```
96
+
66
97
# Documentation
67
98
68
99
See the [ latest developer documentation] [ 6 ] for information on how to setup a local environment for GISNav development,
0 commit comments