Randy Mackay
cd38940ecf
RC_Channel: formatting fixes
2020-02-25 17:38:24 +09:00
Randy Mackay
77d5165c01
RC_Channel: add norm_input_ignore_trim
...
same as norm_input but ignores the trim value
2020-02-25 17:38:24 +09:00
Matt Lawrence
27e825b058
RC_Channel: Add GoPro mode toggle Aux switch
2020-02-18 11:13:27 +11:00
Peter Barker
73e51c480a
RC_Channel: correct RC_set_override parameter name
...
This was just misnamed. All callers appear to be passing ms in.
2020-02-10 13:46:33 -07:00
Peter Barker
ac25b90dda
RC_Channel: factor out a do_aux_function_armdisarm method
2020-01-08 18:36:02 +11:00
Andrew Tridgell
7769cf5316
RC_Channel: added FPort pad option
2020-01-02 09:52:57 +11:00
Peter Hall
df3ffb215e
RC_Channel: add Flap input
2020-01-01 08:11:01 +11:00
Andy Piper
fcc7b58b5f
RC_Channel: add runcam osd control option
2019-12-30 13:02:04 +11:00
Andy Piper
3cba76123b
RC_Channel: add support for RunCam camera control
...
make read_3pos_switch and enum public
2019-12-30 13:02:04 +11:00
Andrew Tridgell
dfd7b022fd
RC_Channel: added get_pwm() function for Lua
2019-12-20 19:51:46 -07:00
Andrew Tridgell
6ff303adf4
RC_Channel: added comment on odd inheritance
2019-12-19 14:52:33 +11:00
Peter Barker
e12a841eb5
RC_Channel: move support for ADSB avoidance switch enable up
2019-11-12 13:48:09 +11:00
Peter Barker
3bec1c7d4f
RC_Channel: correct description of standby option
...
Also canonicalise on STANDBY rather than STANDBY
2019-10-21 21:22:17 +08:00
Henry Wurzburg
119f0a95ad
RC_Channel: added RC option for new takeoff mode
2019-10-21 08:41:58 +11:00
Leonard Hall
05f1161e63
RC_Channel: Support for Standby functions
2019-10-17 14:57:18 +09:00
Randy Mackay
6be4adbe02
RC_Channels: define surface tracking auxiliary function
2019-09-28 11:13:14 +09:00
Peter Hall
2f3c0447eb
RC_Channel: add fence and value for rover
2019-09-02 11:03:27 +09:00
Peter Hall
fdb6da0793
RC_Channel: define sailboat mainsail and motor input channels
...
The unusual use of 207 is in preparation for Peter Barker's RCMAP replacement PR which uses 200 to 206
2019-09-01 09:11:25 +09:00
SergeyBokhantsev
c73a4fd227
RC_Channel: unify debounce code
2019-08-02 12:34:02 +01:00
Peter Barker
aab787b08b
RC_Channel: move mission reset in from Copter
2019-07-16 09:24:18 +10:00
Andrew Tridgell
30d27147a8
RC_Channel: added RC switch for killing IMUs
2019-07-07 19:03:01 +10:00
Andrew Tridgell
19ace7cace
RC_Channel: guarantee logging of RCIN on switch changes
2019-05-22 07:37:56 +10:00
Tom Pittenger
fbe43dba5c
RC_Channel: refactor stick_mixing to library
2019-05-03 13:14:11 -07:00
Arjun Vinod
54302d4943
RC_Channel: added left out copter flight modes as auxiliary switch options
2019-04-16 10:47:25 +09:00
Andrew Tridgell
4b0339d940
RC_Channel: fixed crash in RC_ProtocolTest example test
2019-04-09 12:50:17 +10:00
Patrick José Pereira
3a0ac4bb09
RC_Channel: Move aux_func to class enum
...
aux_func declaration shadows enums of mavlink ardupilotmega
RC_Channel declares `PARACHUTE_ENABLE = 21`
ardupilotmega defines it as `PARACHUTE_ENABLE=1`
This fix a compilation error with clang-8
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2019-04-03 09:53:58 -07:00
Peter Barker
e869eaeda4
RC_Channel: make has_new_overrides non-static
2019-04-02 10:16:30 +11:00
Peter Barker
2331232bdd
RC_Channel: remove static override_timeout
2019-04-02 10:16:30 +11:00
Peter Barker
bc2ede5582
RC_Channel: tidy RC option flag handling
2019-04-02 10:16:30 +11:00
Peter Barker
8808991638
RC_Channel: remove unused enumeration
2019-04-02 10:16:30 +11:00
Andrew Tridgell
59082a0833
RC_Channel: added RC_OPTIONS flag for failsafe ignore
...
this is useful for SBUS with a receiver setup for HOLD on failsafe to
not trigger a RC failsafe
2019-03-15 14:38:57 +11:00
Pierre Kancir
c81ddd85b6
RC_Channel: fix receiver typos
2019-01-25 10:01:00 +09:00
Randy Mackay
413bceda9d
RC_Channel: minor format fix
2019-01-21 14:47:32 +09:00
ChrisBird
fad02bf55a
AP_Relay: Adding a 5th and 6th Relay as per issue #8979
2019-01-16 13:26:25 +00:00
Peter Barker
87aeaf7315
RC_Channel: adjust type for auxillary switch position
2019-01-09 17:21:00 +11:00
Peter Barker
bb0a4f3c78
RC_Channel: avoid using out-of-range aux switch values
...
We already use these ranges for the mode switch
2019-01-08 12:56:32 +09:00
Randy Mackay
aa7c9ec89e
RC_Channel: minor format fixes
2018-12-05 19:18:31 +09:00
Andrew Tridgell
ee78374513
RC_Channel: added GPS_DISABLE option on a switch
2018-11-29 08:49:23 +11:00
Peter Barker
c9714ae962
RC_Channel: read_aux_all is no longer overrridden by any class
2018-11-23 10:56:17 +11:00
Andrew Tridgell
285935f8b3
RC_Channel: added reverse throttle RC option
...
used in plane for reverse on a switch
2018-11-16 08:33:35 +11:00
IamPete1
e42c3c6fab
RC_Channel: add Sailboat Tack to aux switch
2018-11-01 18:04:19 +09:00
Randy Mackay
2c29f0d45a
RC_Channel: handle AC_Avoid enable and disable
...
Also change Copter's option from Object Avoidance to Proximity Avoidance
due to impending AP_Avoidance stuff
RC_Channel: update aux switch param docs to add object avoidance
2018-10-30 12:10:42 +11:00
Randy Mackay
e6b8607baf
RC_Channel: formatting and comment fix
2018-10-30 12:10:42 +11:00
Andrew Tridgell
5fe9334a18
RC_Channel: allow compass learning to be triggered on option
...
this allows for RCn_OPTION=62 to trigger compass learning, so you can
enable in-flight without using the GCS
2018-10-24 07:25:42 +10:00
Peter Barker
c7d052eec8
RC_Channel: add const keyword to many methods
2018-10-23 12:30:35 +11:00
Peter Barker
ea426a3d45
RC_Channel: fix erroneous comment on RC relay options
2018-10-23 11:42:47 +11:00
CAO MUQING
09030b1b13
RC_Channel: add aux switch options for ZigZag mode and ZigZag SaveWP
2018-10-05 10:05:45 +09:00
Ammarf
2beb3a278a
RC_Channel: add simple mode to aux functions
2018-09-11 16:43:17 +09:00
Michael du Breuil
20c56f3e06
RC_Channel: Add an accessor for a channels range and type
2018-09-11 09:07:00 +10:00
Peter Barker
047689981b
RC_Channel: honour gcs_overrides_enabled as part of set_override
...
This will stop situations like we currently have where the
MANUAL_CONTROL GCS mavlink packets can still affect the vehicle
Also resolves an issue where has_new_overrides may not be set
appropriately
2018-09-05 11:54:32 +10:00
Peter Barker
7bdd9b1aea
RC_Channel: move handling of disable-gcs-rc-overrides-channel-option
2018-09-05 11:54:32 +10:00
Peter Barker
3c8738b4d8
RC_Channel: add clear-waypoints option
2018-09-04 10:32:26 +10:00
Peter Barker
a7acc92663
RC_Channel: move rc-channel option for lost-vehicle sound up to base class
2018-09-03 16:57:25 +09:00
Peter Barker
e4d3ed7e39
RC_Channel: move handling of sprayer and gripper in from Copter
2018-08-17 15:33:35 +09:00
Peter Barker
e4ff937c96
RC_Channel: remove min-max-configured pre-arm checks
...
These are really, really expensive to run while your RC isn't
configured.
We now have a split between inputs (RC) and servos (SRV), so these
aren't as critical as they were. We also have range checks to ensure
they're roughly good enough to fly with.
2018-08-07 09:45:09 +10:00
Peter Barker
ff36eb3aca
RC_Channel: remove old members objects
2018-08-03 13:07:50 +10:00
Peter Barker
0f084ed5bf
RC_Channel: add compatability static functions
...
Just to avoid churn in Sub, Plane and Tracker
2018-08-01 12:11:30 +09:00
Peter Barker
747fc3814d
RC_Channel: rename in_rc_failsafe to has_valid_input
2018-08-01 12:11:30 +09:00
Peter Barker
61c34ea98c
RC_Channel: move handling of auxillary switches into RC_Channel
...
RC_Channel: move handling of Rover's functions into RC_Channel
RC_Channel: move auxsw handling for camera to base RC_Channel
RC_Channel: add responsibility for servorelay events
RC_Channel: move mode switch handling to base class
2018-08-01 12:11:30 +09:00
Michael du Breuil
60f19bbf02
RC_Channel: Allow an input to be ignored
2018-08-01 09:19:20 +10:00
Michael du Breuil
95eda5d9b7
RC_Channel: Remove unneeded interfaces
2018-06-11 16:29:36 -07:00
Michael du Breuil
0fcf07fde7
RC_Channel: Remove input() method from individual channels
2018-06-05 09:51:09 +10:00
Michael du Breuil
4253c7f74d
RC_Channel: Move overrides out of the HAL
2018-06-05 09:51:09 +10:00
Michael du Breuil
c8a93f9b76
RC_Channel: Remove set_overrides() method
2018-05-11 12:13:39 +01:00
Michael du Breuil
30554d0de0
RC_Channels: Collapse has_new_input() with set_pwm_all()
2018-04-26 08:00:09 +10:00
Michael du Breuil
c8fdb90ab5
RC_Channel: Rework set_pwm_no_deadzone() to a recompute function
2018-04-14 14:05:20 +10:00
Michael du Breuil
a6afc69c13
RC_Channel: Support most hal.rcin functions in RC_Channels
2018-04-11 21:47:07 +01:00
Andrew Tridgell
ac4017e2ae
RC_Channel: added set_and_save_radio_trim()
...
# Conflicts:
# libraries/RC_Channel/RC_Channel.h
2018-02-08 17:36:33 +11:00
Andrew Tridgell
e5813effff
RC_Channel: improved efficiency of min_max_configured
...
this is quite a costly function due to scan in AP_Param. It takes
about 4 to 5 milliseconds when done as part of AP_Arming
2018-01-10 16:42:51 +09:00
Andrew Tridgell
64f722876f
RC_Channel: use set_and_save_ifchanged
2017-07-03 11:17:42 +10:00
Andrew Tridgell
b50ab75f4c
RC_Channel: added set_and_save_trim()
2017-07-03 11:17:42 +10:00
Peter Barker
d2b2ddcb02
RC_Channel: make min_max_configured const
2017-01-20 13:02:53 +09:00
Andrew Tridgell
77a7e7ca01
RC_Channel: give access to internals to SRV_Channel
...
needed for parameter upgrade
2017-01-12 17:39:37 +11:00
Andrew Tridgell
b6aa4205b4
RC_Channel: cleanup API and comments a bit
2017-01-12 17:39:37 +11:00
Andrew Tridgell
64aa13e7f4
RC_Channel: 2nd stage of SRV_Channels conversion
...
allow for 16 output channel objects
2017-01-12 17:39:37 +11:00
Mathieu OTHACEHE
152edf7189
Global: remove mode line from headers
...
Using a global .dir-locals.el file is a better alternative than
reincluding the same emacs header in every file of the project.
2016-10-24 09:42:01 -02:00
Andrew Tridgell
73b9123495
RC_Channel: added set_trim() API to SRV_Channels object
2016-10-15 16:59:35 +11:00
Andrew Tridgell
fea7903aa8
RC_Channel: added get_radio_out_normalised()
2016-10-15 16:59:35 +11:00
Andrew Tridgell
96c7d9dde8
RC_Channel: make output_trim() go via _radio_out
...
this ensures that _radio_out always contains the value that would be
output to the channel. This will be used by the SRV_Channels object
2016-10-15 16:59:35 +11:00
Andrew Tridgell
3377714300
RC_Channel: fixed typo
2016-07-01 15:35:55 +10:00
Andrew Tridgell
934d2b6ae4
RC_Channel: added setup_failsafe_trim_mask()
2016-06-30 16:46:57 +10:00
skyscraper
d9ab3baf84
RC_Channel: Refactor to make data members private
...
rename all public data members of RC_Channnels with
leading underscore and make all data members private.
Provide get_xx and set_xx methods for access
Rationale:
RC_Channel is a complicated class, which combines
several functionalities dealing with stick inputs
in pwm and logical units, logical and actual actuator
outputs, unit conversion etc, etc
The intent of this PR is to clarify existing use of
the class. At the basic level it should now be possible
to grep all places where private variable is set by
searching for the set_xx function.
(The wider purpose is to provide a more generic and
logically simpler method of output mixing. This is a small step)
add function to save radio trim
(expression where c is an object of type RC_Channel)
old public member(int16_t) get function -> int16_t set function (int16_t)
(expression where c is an object of type RC_Channel)
c.radio_in c.get_radio_in() c.set_radio_in(v)
c.control_in c.get_control_in() c.set_control_in(v)
c.servo_out c.get_servo_out() c.set_servo_out(v)
c.pwm_out c.get_pwm_out() // use existing
c.radio_out c.get_radio_out() c.set_radio_out(v)
c.radio_max c.get_radio_max() c.set_radio_max(v)
c.radio_min c.get_radio_min() c.set_radio_min(v)
c.radio_trim c.get_radio_trim() c.set_radio_trim(v);
// other
c.min_max_configured() // return true if min and max are configured
c.save_radio_trim() // save radio trim to eeprom
2016-05-10 16:21:15 +10:00
skyscraper
134ea338da
RC_Channel: remove unused control_mix method
2016-05-05 18:58:17 -03:00
Andrew Tridgell
1ecfa6b487
RC_Channel: fixed example in SITL
2016-03-25 21:35:33 +11:00
Lucas De Marchi
08cc7b2472
RC_Channel: replace header guard with pragma once
2016-03-16 18:40:44 +11:00
Andrew Tridgell
a07a8aece1
RC_Channel: added pwm_to_angle_dz_trim()
2016-01-06 22:47:21 +11:00
Andrew Tridgell
48b774bc63
RC_Channel: allow more complete separation of input and output of channels
...
this allows for the type and range of channels to be different on
input and output
2016-01-04 11:23:30 +09:00
Grant Morphett
7edf8c0e0a
RC_Channel: New method to detect if channel is in trim location
...
This is a new method which will return true if an RC_Channel has a PWM
value that is at its TRIM value plus or minus the allowed dead zone
around the TRIM.
2015-11-11 13:39:38 +11:00
Grant Morphett
122e88dbed
RC_Channel: remove the unused test function get_failsafe
2015-09-09 10:28:02 +10:00
Gustavo Jose de Sousa
d2780623f7
RC_Channel: standardize inclusion of libaries headers
...
This commit changes the way libraries headers are included in source files:
- If the header is in the same directory the source belongs to, so the
notation '#include ""' is used with the path relative to the directory
containing the source.
- If the header is outside the directory containing the source, then we use
the notation '#include <>' with the path relative to libraries folder.
Some of the advantages of such approach:
- Only one search path for libraries headers.
- OSs like Windows may have a better lookup time.
2015-08-11 16:38:25 +10:00
Randy Mackay
73f3b50e2f
RC_Channel: make get_control_mid const
2014-11-17 18:16:12 -08:00
Jonathan Challinger
9375fc8947
RC_Channel: add get_control_mid function
2014-11-17 18:16:09 -08:00
Andrew Tridgell
6b0c15b70f
RC_Channel: added norm_input_dz()
...
normalised input, taking into account dead zone
2014-11-18 12:44:05 +11:00
Andrew Tridgell
0d4985079e
RC_Channel: added support for LimitValue settings
...
this allows you to set a channel failsafe or radio_out to a limit
value
2014-04-21 11:52:41 +10:00
Andrew Tridgell
7f4178d967
RC_Channel: added setup_failsafe_trim_all() function
...
sets all channels to output trim values on FMU failure
2014-04-21 08:37:24 +10:00
Andrew Tridgell
11f196318e
RC_Channel: added static functions to simplify operations on all channels
...
this avoids vehicle code having to loop over all channels for common
operations
2014-04-03 12:18:56 +11:00
Andrew Tridgell
a788405c8b
RC_Channel: added percent_input() function
...
useful for plane flaps
2014-03-05 09:17:50 +11:00
Mike McCauley
be34e0358a
RC_Channel: Removed duplicate defines from RC_Channel.h
2014-03-03 06:34:34 +11:00
Andrew Tridgell
00d2d5946c
RC_Channel: added disable_aux_channel()
...
this will be used by copter to ensure motor channels are not enabled
for aux functions
2014-02-06 21:30:55 +11:00
Andrew Tridgell
f6d888e0da
RC_Channel: added disable_out() method
2013-12-20 11:58:53 +11:00