Matthias Grob
af607e3040
Use separate arm_request instead of vehicle_command for RC arming
2021-11-09 16:05:25 +01:00
Matthias Grob
c4473bdab7
ManualControl: clean up arm/disarm gesture
2021-11-09 16:05:25 +01:00
Julian Oes
b3a5072de5
commander/manual_control: use msg enum for params
...
Instead of using a private enum class we should define the enum in the
vehicle_command message and then use it consistently.
2021-11-09 16:05:25 +01:00
Julian Oes
963d15eacc
manual_control: use correct sysid/compid
2021-11-09 16:05:25 +01:00
Julian Oes
60de330f18
manual_control: add hysteresis for arm button back
2021-11-09 16:05:25 +01:00
Julian Oes
75209a7552
manual_control: address review comments
2021-11-09 16:05:25 +01:00
Julian Oes
efd8757fda
manual_control: handle NAN
2021-11-09 16:05:25 +01:00
Julian Oes
374c9f38a7
manual_control: use constrain() instead
2021-11-09 16:05:25 +01:00
Julian Oes
d0fea93d72
manual_control: add reset to diff
...
This should prevent triggering user override right after RC re-appears.
2021-11-09 16:05:25 +01:00
Julian Oes
bd0c1014d9
manual_control: support arming button
...
The arming button required some refactoring in order to support to
toggle arm/disarm using the vehicle_command. Otherwise manual_control
would have to subscribe to the arming topic and we would spread out the
logic again, and risk race conditions.
2021-11-09 16:05:25 +01:00
Julian Oes
56b2b81600
manual_control: use filter to check user override
...
Instead of only looking at the diff between two RC samples to decide
whether a user wants to override, we now look at the filtered diff over
one second. This should be more robust to RC sent at various or varying
rates.
2021-11-09 16:05:25 +01:00
Julian Oes
916ffef04c
manual_control: send initial mode in the beginning
...
In order for commander to know the desired mode we need to send the
initial position of the mode slot.
2021-11-09 16:05:25 +01:00
Julian Oes
97aa06cc19
commander: move switch handling to manual_control
2021-11-09 16:05:25 +01:00
Julian Oes
71d6aa913d
manual_control: starting to implement switches
2021-11-09 16:05:25 +01:00
Julian Oes
cda6524421
manual_control: move override detection
...
This also removes the option to ignore throttle for the override
detection as it's not really required anymore.
2021-11-09 16:05:25 +01:00
Julian Oes
1c15cc11d8
manual_control: implement (dis)arming via command
2021-11-09 16:05:25 +01:00
Julian Oes
8876af9150
manual_control: add instance to selector
...
This instance is then used to schedule the callback for the
subscription.
2021-11-09 16:05:25 +01:00
Julian Oes
723db8bf2a
manual_control: add selector class [WIP]
...
This adds a selector class with unit tests.
The idea is to have a valid flag in manual_control_septoint and set that
according to the selection and/or timeout of manual_control_inputs.
2021-11-09 16:05:25 +01:00
Daniel Agar
2d816e0b3e
[WIP] manual_control selector hacks
2021-11-09 16:05:25 +01:00