ArduPilot / ardupilot

ArduPlane, ArduCopter, ArduRover, ArduSub source
http://ardupilot.org/
GNU General Public License v3.0
10.9k stars 17.38k forks source link

AP_Arming: remove arming checks 'all' #15326

Open IamPete1 opened 4 years ago

IamPete1 commented 4 years ago

I have been pondering this, but suspect it will be controversial, so I thought I would open a issue before going to the effort of a PR.

Having the 'all' arming check option encourages users to switch them all off. If instead we were to move to the default being 0xFFFFFFFF people would have to switch them off individually so its more likely that they will keep most. In particular I'm thinking of the mission planner bitmask helper.

For example I want to turn off the camera check, I just un-check all. But most likely I do not then go and re-check all the other options except camera.

image

I can see this might be annoying for those without the benefit of the helper. This also makes it more effort to switch them all on again if they were off.

Maybe a middle ground would be to change the default to be all but not 'all'but not remove the all option.

amilcarlucas commented 4 years ago

I agree with changing the default

rmackay9 commented 4 years ago

.. it's not a bad idea..

peterbarker commented 4 years ago

So someone flicks a bit off (and unchecks "all").

Saves the parameter to the vehicle.

We allocate a new arming check, "User is happy".

That new option will not be active on that user's vehicle - and will silently be skipped.

These bits should have been options to skip arming checks, not enable them - but given it moved from a boolean to a bitmask....

WickedShell commented 4 years ago

The other relevant point is 0xFFFFFFFF doesn't work with the existing float transport system. We can pick the highest one we can actually transport, but that's about it. (And we'd definitely have to remove the @Values stuff for sure).

The best solution as @peterbarker pointed out is to swap to making it a skip, rather then an enable, but that's probably fairly breaking everywhere.

rmackay9 commented 4 years ago

I'll add my personal opinion that I think "skip" and "ignore" are not great in general. I think the double negative just makes it harder for users to understand. It's a mute point though anyway as others have said above.