PX4 without GPS

I am trying to make drone using px4 to fly in inside spaces. Because of that I won’t be able to use GPS. From what I have seen, there are a number of functions that use GPS. How usable is px4 without GPS (how much does it rely on GPS) and how hard would it be to use it without? Also any tip for GPS denied px4 usage would be great :smiley:
For now I don’t know yet which sensors to use for navigation without GPS, but I am familiar with options and will determine that when I know which work the best with px4 functions. I don’t use QGC with it or anything similar so that is also not a restriction, doesn’t need to work with any of that but needs to work in some sort of SITL and of course on a real drone.

2 Likes

Without GPS you can use altitude control, but it will drift horizontally and require human input at all times. That’s unless you add some sort of position or velocity estimate from other sources. This could be a tracking system like VICON or OptiTrack, or onboard using vision (SLAM, VIO) or optical flow. Using a flow sensor is probably the cheapest/easiest but it will still have drift over time as it’s only giving you a velocity estimate and no position as such.

You should be able to try it in SITL, I think there is a model called iris_flow, then you’d just have to disable GPS. You can use failure injection to set GPS off, or you can just comment out this line to prevent it from publishing GPS:

2 Likes