Is there documentation somewhere that lists all of the requirements and checks that a flight mode does under certain conditions? I am having problems with the Pixhawk rejecting certain flight modes and there is no explanation of the reason for rejecting it.
Here is my specific, current problem. I realize someone can probably answer this specific issue more quickly, but as a whole this type of documentation would be very helpful for other similar situations.
My Pixhawk rejects position control mode. Here’s my setup:
- Estimator: Local Position Estimator (LPE)
- Sensors: External vision sensor, no GPS, no Optical Flow
In the LPE parameters, I’ve disabled GPS and Optical Flow, and have enabled Vision. I am able to use the “analyze” tool to see that the LPE is getting very good results using my vision system, so that whole interface is working just fine.
I take off in stabilize mode, and then in the air I try to switch to position control mode. It gets rejected with no explanation. I assumed it would just check that the LPE has good results with low noise. Is it specifically looking for certain sensors to be used? Is there a way to configure the checks it makes? I’ve seen online people disable the GPS check and use just Optical Flow. I followed very similar steps to disable both GPS and Optical Flow and enable Vision. But it doesn’t seem to work.
As I have understood so far, all other flight mode such as loiter and position control require GPS lock,
If you don’t have GPS you will never be able to switch to these flight mode.
I also had the same issue as you, I have seen some people switching to position control without having
GPS as they reclaim. by the way I have gps module, but I didn’t connect it, and i don’t know if it will be possible to switch to these mode with out having the GPS values, as all of the time I work in an indoor
And I agree totally with you about the issue of documentation. Both of them developer and user manual require some more details.
In PX4 you can definitely do position hold with no GPS. I have done it in the past with my only sensors being Optical Flow and a LidarLite height sensor. Using the LPE you can just change the bitmask to not fuse GPS. I tried changing that bitmask to fuse only vision and it appears to work using the “analyze” widget in QGroundControl, but it still refuses the mode.
So my specific problem with Position Hold ended up being a completely separate problem. I was having power issues with my off-board computer that was providing vision estimates. I fixed that hardware problem and now it works fine.
However, the general question still stands. It would be nice if there was documentation about what the checks are that lead to a mode being rejected.
while it is an issue not just for you, but also for me and for several person in this forum,
I would like to contribute to the documentation, if someone can explain and point to the the condition,
that for it we can choose each flight mode,
I would happy to see if this message could be read be the administrator of this forum, and for several
developer and programmer working on the px4 firmware.