Commit Graph

680 Commits

Author SHA1 Message Date
Andy Piper
e22f7ed353 Copter: remove duplicate include 2020-09-24 08:22:16 -07:00
Andy Piper
b8f613c965 Copter: rename ADSB_ENABLED to HAL_ADSB_ENABLED and remove from config 2020-09-22 09:33:51 +10:00
Iampete1
c265a38344 Copter: add gripper release FS_Option 2020-08-26 17:58:24 +09:00
Peter Barker
afa153fb6f Copter: remove wrapper for get_avoidance_adjusted_climbrate
Only the modes are interested in this - there's no point having it on
the Copter object.
2020-08-22 08:31:25 +09:00
Randy Mackay
315d9da138 Copter: add ekf alt pre-arm and mode init checks 2020-08-20 12:41:40 +09:00
Michael du Breuil
376494027b Copter: Support higher resolution percent based motor tests 2020-08-09 13:47:48 +10:00
Randy Mackay
925f76c048 Copter: integrate winch changes
includes the following changes
winch_update called at 50hz
removed ability to set winch rate from ch6 tuning
remove wheel encoder
call winch library to log at 10hz
fix winch param prefix
2020-08-07 21:55:07 +09:00
Peter Barker
d87986ecdd Copter: move set_throttle_takeoff implementation into Mode
No callers except the mode objects, so move it.
2020-08-05 08:23:03 +09:00
Andy Piper
54c3d07547 Copter: make make/gimbal configurable on a per-board basis 2020-08-04 09:18:14 +10:00
Mirko Denecke
89d423556c ArduCopter: update_trigger() is now called in AP_Camera update() 2020-07-15 08:37:28 +09:00
Randy Mackay
980c1f5020 Copter: update ekf terrain height stable setting
setting is true only when taking off or landing and horizontal speed is no more than 0.5m/s
2020-06-24 21:16:50 +09:00
Andy Piper
25dcc1a623 Copter: add support for individually tracking fft peaks and motor rpms with harmonic notches
log harmonic notch even if FFT is disabled. Fallback to throttle notch for BLHeli
move harmonic notch update to AP_Vehicle
2020-06-21 19:09:35 +10:00
Iampete1
e797685771 Copter: add set guided mode angle for scripting 2020-06-19 10:09:35 +10:00
Andy Piper
8d2f2443a2 Copter: add air mode aux function 2020-06-16 20:30:26 +10:00
Peter Barker
0eb03ba7d5 Copter: make SuperSimple type-safe 2020-06-16 19:39:42 +10:00
Peter Barker
9b64ca040d Copter: do not adjust trims while landed
Closes #1282

Also cancels autotrim if you change modes, disarm the vehicle or land
again.
2020-06-03 16:19:01 +10:00
Randy Mackay
680e417c2c Copter: remove unnecessary includes 2020-04-24 18:18:05 +09:00
Randy Mackay
04c3f040a8 Copter: visual odometry moved to AP_Vehicle 2020-04-09 19:41:08 +09:00
Randy Mackay
e2469d29bc Copter: implement start_takeoff and set_target_velocity_NED for use in scripting 2020-03-19 15:17:11 -07:00
Randy Mackay
a9630d67d1 Copter: implement set_target_location method 2020-03-03 10:06:38 -07:00
Randy Mackay
9a32b3bdd9 Copter: rename update_throttle_mix
was called update_throttle_thr_mix
also minor formatting fixes
2020-02-25 16:52:40 +09:00
Andrew Tridgell
dd5fafe30e Copter: added rangefinder height interpolated using inertial alt
this smooths rangefinder heights and allows for good estimated for
precision landing even with loss of some rangefinder samples during landing
2020-02-25 09:10:30 +09:00
murata
94901edaf2 Copter: Match the column of element description 2020-02-19 09:44:57 +09:00
Peter Barker
1424945c14 ArduCopter: remove unused compass_init_location state 2020-02-18 10:35:49 +11:00
Peter Barker
18670d681e Copter: let AP_Vehicle handle loop() 2020-02-06 14:41:06 +11:00
Peter Barker
9e8af48cce ArduCopter: move some common init_ardupilot code up to AP_Vehicle 2020-01-28 11:34:51 +11:00
Peter Barker
debedd9d34 Copter: move setup method up to AP_Vehicle base class 2020-01-28 11:34:51 +11:00
Peter Barker
9466126fa8 Copter: let AP_Vehicle base class worry about scheduler delay callback 2020-01-21 11:37:28 +11:00
Andrew Tridgell
4445313661 Copter: fixed build warnings 2020-01-18 17:19:07 +11:00
Andrew Tridgell
1fae2009db Copter: update for new SRV_Channels parameter conversion call 2020-01-14 14:23:11 +11:00
Tatsuya Yamaguchi
e01e924711 Copter: allow scripts to get modes 2020-01-14 11:16:29 +11:00
bnsgeyer
64f98622c0 Copter: fix tradheli RSC RC passthrough mode
Copter: heli get_pilot_desired_rotor_speed converts interlock input to desired rotor speed
2020-01-09 19:55:02 +09:00
Peter Barker
1ff07762de Copter: remove report_compass method
This wasn't actually responsible for saving offsets any more.

The data spewed out was rather unlikely to be seen, and will be present
in logs anyway.
2020-01-04 10:46:51 +09:00
Peter Barker
2694560c38 Copter: generally unseen remove report_version
This won't generally be seen or useful to anyone
2020-01-04 10:46:51 +09:00
Peter Barker
326a569ea8 Copter: remove dangling read_control_switch method declaration 2020-01-02 10:13:35 +09:00
Randy Mackay
3e7fb66a77 Copter: precision landing does not use terrain database
precision landing was always only using the range finder, there was no use of the provided alt unless the rangefinder was good
2019-12-17 20:02:01 +09:00
Randy Mackay
f768e80458 Copter: remove unused prev_control_mode_reason 2019-12-12 09:13:24 +09:00
Peter Barker
544eb5f179 Copter: correct duplicate button instance 2019-12-10 09:29:52 +09:00
Peter Barker
62869b5be8 Copter: vehicle parent class now instantiates AHRS 2019-12-02 09:16:22 +11:00
Gone4Dirt
180d4e713c Copter: Added autorotation flight mode and support 2019-11-29 08:06:10 +08:00
Randy Mackay
adc1d60ea5 Copter: CTUN logging fix for SAlt
sonar altitude was not being logged in modes that don't use surface tracking including Auto
SAlt scaling was also incorrect
2019-11-12 09:10:21 +08:00
Peter Barker
201adb6818 Copter: correct Heli compilation when some modes are disabled 2019-11-06 16:36:35 +11:00
Peter Barker
38d3c2daa1 Copter: stop providing current location to mount 2019-11-05 19:55:45 +11:00
Peter Barker
e6c6189fe5 Copter: cope with change in namespace of LogEvent enum
Also move Acro Trainer types into an enum class as the global defines
interfere with the Event names.

Also eliminate the Log_Write_Event wrappers.
2019-11-05 08:19:26 +08:00
Matt Lawrence
f71ef4c7ab Copter: Refactor failsafes, add fs_options bitmask parameter
- Radio failsafe, battery failsafe, GCS failsafe refactoring
- Add new FS_OPTIONS parameter
- Enhance GCS Failsafe abilities
2019-11-03 07:07:34 +08:00
Peter Barker
b6920e14c8 Copter: remove redundant SurfaceTracking enumeration namespacing
Also rename State to Surface to be more specific about what is being
set/tracked.
2019-10-26 08:08:22 +08:00
Michael du Breuil
b42b1c08c4 Copter: Support new AP_Vehicle::set_mode 2019-10-25 08:48:22 +08:00
Randy Mackay
7b0da89708 Copter: add vibration check 2019-10-18 11:15:25 +09:00
Leonard Hall
50a098c359 Copter: Standby functions 2019-10-17 14:57:18 +09:00
Leonard Hall
c11f2247eb Copter: System ID mode 2019-10-16 08:17:09 +09:00
Randy Mackay
36327d56de Copter: reject reboot request from GCS if auto esc cal on next reboot
this resolves an edge case in which the motors could spin up on the next reboot because the user didn't unplug the battery to reboot the flight controller
2019-10-15 07:41:44 +09:00
Andy Piper
8ce7f02167 ArduCopter: add functions to update dynamic notch frequency. Periodically log the frequency.
tradheli- make RPM sensor input to harmonic notch in hertz
2019-10-10 20:26:02 +09:00
Peter Barker
9e5d5c023c Copter: move many members up to base class 2019-10-08 11:26:04 +11:00
Peter Barker
95f81297d9 Copter: become an AP_Vehicle 2019-10-08 11:26:04 +11:00
murata
abb91fc33a Copter: Change external button specification to option
Copter: Change the definition name from BUTTON to BUTTON_ENABLED.
2019-10-08 08:09:19 +09:00
Randy Mackay
1c4f47f882 Copter: add upward facing surface tracking 2019-09-28 11:13:14 +09:00
Randy Mackay
d5d7fbe761 Copter: rangefinder glitch detection moved to read_rangefinder 2019-09-28 11:13:14 +09:00
Randy Mackay
808efa4c79 Copter: surface tracking format fixes 2019-09-28 11:13:14 +09:00
Peter Barker
b4537bebd8 Copter: move control_mode_t into being Mode::Number enum class
Fixes this compiler error:

In file included from ../../ArduCopter/sensors.cpp:1:
In file included from ../../ArduCopter/Copter.h:195:
../../ArduCopter/mode.h:1291:9: fatal error: declaration shadows a variable in the global namespace [-Wshadow]
        AUTO,           // after A and B defined, pilot toggle the switch from one side to the other, vehicle flies autonomously
        ^
../../ArduCopter/defines.h:38:5: note: previous declaration is here
    AUTO =          3,  // fully automatic waypoint control using mission commands
    ^
1 error generated.
2019-09-13 13:12:08 +09:00
Randy Mackay
709c874d8b Copter: integrate AP_OAPathPlanner 2019-08-17 09:42:43 +09:00
Peter Barker
4fa83ed40d Copter: move automatic declination setting into AP_Compass itself 2019-08-13 10:02:13 +10:00
Peter Barker
c0e8d319c6 Copter: make surface tracking adjust_climb_rate take a float
Its callers all pass in floats and we return a float, so stop going via
an int16_t
2019-08-06 14:09:09 +09:00
Peter Barker
b0428f0fe8 Copter: make surface_tracking a class, various functions methods 2019-08-06 14:09:09 +09:00
Peter Barker
97bb846310 Copter: RangeFinder uses AP_SerialManager singleton 2019-07-16 09:29:48 +10:00
Peter Barker
9412075b9c Copter: avoidance no longer takes ahrs in constructor 2019-07-16 09:29:48 +10:00
Peter Barker
e977fce3ad Copter: stop passing relay and ahrs into camera constructor 2019-07-09 09:32:39 +10:00
Peter Barker
05925b57ad Copter: mark position_ok methods as const 2019-07-09 09:26:45 +10:00
Peter Barker
eb82126758 Copter: ServoRelayEvents uses Relay singleton 2019-07-03 23:59:24 -07:00
Peter Barker
cf45108efb Copter: set Heli frame default at compile-time 2019-07-04 10:05:01 +09:00
Peter Barker
bb3d2a0b37 Copter: pass GCS_MAVLink object rather than channel number in motortest 2019-07-02 10:04:56 +10:00
Peter Barker
f3c1791341 Copter: stop passing gcs chan into method which wants an object 2019-06-25 09:45:54 +10:00
Michael du Breuil
df37a3d603 Copter: Remove wrapper around MAVLink send heartbeat 2019-06-18 13:59:52 +01:00
Peter Barker
676d75c391 Copter: correct namespacing of Copter modes
This makes us look like Rover and Plane in terms of namespacing for the
Mode classes, and removes a wart where we #include mode.h in the middle
of the Mode class.

This was done mechanically for the most part.

I've had to remove the convenience reference for ap as part of this.
2019-06-11 09:18:22 +09:00
Peter Barker
9f6b48b743 Copter: remove unneeded initialisation 2019-06-03 16:48:38 +09:00
Peter Barker
6dce39cbe1 Copter: use AP_Arming methods to arm and disarm vehicle
Really just changing the namespace of init_arm_motors
2019-05-30 07:37:30 +09:00
Peter Barker
3ef84d2b96 Copter: stop passing references to AC_Avoid constructor 2019-05-22 07:48:02 -06:00
Randy Mackay
01909cf4c8 Copter: zigzag mode gets terrain following support 2019-04-19 07:45:52 +09:00
Randy Mackay
89eb876faf Copter: move surface tracking variables into structure 2019-04-19 07:45:52 +09:00
Randy Mackay
33a57361bd Copter: reduce args passed to get_surface_tracking_climb_rate
The same arguments are always passed in
2019-04-19 07:45:52 +09:00
Pierre Kancir
4f29d2e5a6 Copter: factorize esc calibration setup 2019-04-09 08:44:46 +09:00
Randy Mackay
a5bdd12bfa Copter: replace TUNE_LOW/HIGH params with TUNE_MIN/MAX
change from uint16 to floats to ease setup
also add check that no function assigned to rc6
2019-04-08 15:24:00 +09:00
bnsgeyer
d949c80d54 Copter: tradheli replaces rotor_runup_complete with spool state 2019-04-08 09:42:21 +09:00
Michael du Breuil
d1246f5868 Copter: Fix RangeFinder init 2019-04-06 09:15:22 +11:00
Michael du Breuil
0e8c3dc485 Copter: include FWversion 2019-04-05 20:12:53 +11:00
Peter Barker
2040580ce7 Copter: move enabled parameter into compass library 2019-04-02 10:24:49 +11:00
Tom Pittenger
7824b64ad6 Copter: rename dataflash to logger 2019-03-28 16:40:57 +11:00
Peter Barker
8441542a52 Copter: remove climb_rate cache of inertial_nav.get_velocity_z
There were only two users of it and dozens of places using
get_velocity_z
2019-03-28 12:10:31 +11:00
Peter Barker
c7e21d95ef Copter: move Log_Write_Error into library 2019-03-27 12:36:40 +11:00
Peter Barker
34d9ce27af Copter: make get_pilot_desired_throttle a method on Mode 2019-03-26 20:57:15 +11:00
Patrick José Pereira
33764d6c3b Copter: Fix typo
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2019-03-26 15:39:23 +11:00
bnsgeyer
2fc942ac24 Copter: tradheli-convert swash parameters on firmware upgrade 2019-03-20 10:40:20 +10:00
Peter Barker
451f5f17ce Copter: move devo telemetry handling to GCS 2019-03-19 14:39:14 +11:00
Peter Barker
e22b29bce4 Copter: FrSky support has moved to GCS 2019-03-19 14:39:14 +11:00
Peter Barker
85d9dd6f64 Copter: move sending of RPM message up 2019-03-16 10:33:01 +09:00
Peter Barker
f189860162 Copter: use enum class for ArmingMethod and ArmingRequired 2019-03-12 19:48:14 +11:00
Peter Barker
4f69eefd4a Copter: remove unused includes 2019-03-05 13:19:29 +09:00
Michael du Breuil
cac4b91671 Copter: Allow scripting to run 2019-03-05 08:45:54 +11:00
IamPete1
ba3d1bc6c7 Copter: move E-stop state to SRV_Channel 2019-02-27 08:51:24 +09:00
Peter Barker
a48f461158 Copter: remove position-vector methods
Both were used in just one place
2019-02-26 14:09:21 +11:00
Peter Barker
4187243e5c Copter: Rally no longer takes ahrs in constructor 2019-02-20 18:03:38 +11:00
Peter Barker
5ff80e06d1 Copter: move update_sensor_status_flags into GCS subclasses 2019-02-19 14:09:59 +11:00
Peter Barker
f759c7ac7e Copter: GCS_MAVLink takes care of mavlink capabilities 2019-02-19 13:14:52 +11:00
Peter Barker
9bc23d3f28 Copter: move try_send_message of nav_controller_output up 2019-02-19 10:08:00 +11:00
Peter Barker
f64ad2f433 Copter: move visual odometry update function into AP_VisualOdom 2019-02-16 15:13:59 +11:00
Peter Barker
31f796f0c5 Copter: remove unused scaleLongDown member 2019-02-15 11:45:13 +09:00
Peter Barker
5ae52038fa Copter: make setting of home boolean in preparation for sanity checks 2019-02-15 08:28:45 +11:00
Peter Barker
8de7f4a520 Copter: devo telemetry no long requires singleton classes to be passed in 2019-02-13 19:24:07 +00:00
Peter Barker
a0189d6060 Copter: AP_Frsky_Telem uses singletons 2019-02-12 17:53:23 +00:00
Peter Barker
587e02e92e Copter: remove pv_ functions that duplicate Location functions 2019-02-06 11:02:50 +09:00
Peter Barker
7197cf9e5c Copter: move sending of sys_status message up 2019-02-05 11:07:39 +11:00
Peter Barker
3521d98b52 Copter: move handling Write_Event into AP_Logger 2019-02-04 09:30:07 +09:00
Peter Barker
1412921561 Copter: move sending of fence_status message up 2019-01-31 13:44:29 +09:00
Peter Barker
5dc743f1ba Copter: fence no longer takes reference to ahrs in constructor 2019-01-31 11:25:38 +09:00
Peter Barker
b47733142f GLOBAL: rename DataFlash_Class to AP_Logger 2019-01-18 18:08:20 +11:00
Peter Barker
845f015648 Copter: adjust for Location_Class and Location unification 2019-01-16 11:45:29 +11:00
Randy Mackay
50c5ad7076 Copter: TradHelis force spool up before takeoff 2019-01-15 11:41:44 +09:00
Peter Barker
f50418f72a Copter: Terrain uses rally singleton 2019-01-09 10:14:16 +11:00
Michael du Breuil
ec8a82e8a0 Copter: Remove unneeded AP_Buffer include 2018-12-31 11:41:43 +09:00
Andrew Tridgell
89d54767b1 Copter: convert to use AC_AutoTune library
this maintains existing behaviour
2018-12-18 10:34:42 +09:00
Francisco Ferreira
a2fa63bcf7 Copter: fix Cygwin build
Static initialization doesn't have an exact order, we can't rely on it
2018-12-13 09:28:44 +09:00
Peter Barker
75fb9780f7 Copter: rename send_extended_status1 to send_sys_status 2018-12-10 12:52:41 +09:00
murata
b252eae404 Copter: Flip mode is an option.
Copter: Flip mode is an option.
2018-11-26 09:29:47 +09:00
Peter Barker
d49431488e Copter: remove pointless wrappers around RC_Channels functions 2018-11-23 10:56:17 +11:00
Peter Barker
ee5339f931 Copter: remove pointless wrappers around gcs functions 2018-11-23 10:56:17 +11:00
Peter Barker
33ca577653 Copter: OpticalFlow takes care of its own logging 2018-11-13 10:40:23 +11:00
Peter Barker
ee456e8870 Copter: do not pass ahrs to opticalflow constructor 2018-11-13 10:40:23 +11:00
Andrew Tridgell
2f79932611 Copter: auto-convert landing gear PWM parameters 2018-11-10 21:24:19 +11:00
Peter Barker
73940df48e Copter: move mission into mode_auto 2018-11-09 13:35:40 +09:00
Peter Barker
bf1c82ffe1 Copter: don't pass ahrs to terrain constructor 2018-11-08 20:59:45 +11:00
Peter Barker
f598cff99c Copter: stop passing ahrs to Mission constructor 2018-11-08 10:01:16 +09:00
Peter Barker
1d322046b0 Copter: tidy up send_pid_tuning 2018-11-06 08:19:15 +09:00
Peter Barker
859f4828a1 Copter: move handling of gimbal messages up
Copter: move handling of mav_cmd_do_mount_control up

Copter: move handling of deprecated mount messages up

Copter: move handling of command_do_set_roi up

Copter: move handling of command_do_set_roi up

Copter: mount no longer takes ahrs in constructor
2018-10-30 17:19:14 +11:00
Leonard Hall
54a59f581f Copter: add motor thrust lost check 2018-10-16 00:44:50 +09:00
Peter Barker
26ca75efae Copter: make libraries get EKF control limits themselves 2018-10-09 10:47:38 +11:00
CAO MUQING
71beab7502 Copter: create and update Zigzag flight mode 2018-10-05 10:05:45 +09:00
Peter Barker
a30cdf6806 Copter: eliminate failsafe.rc_override_active
Use RC_Channels::has_active_overrides() instead
2018-09-05 11:54:32 +10:00
Peter Barker
ec6c59faa3 Copter: move handling of disable-gcs-rc-overrides-channel-option up 2018-09-05 11:54:32 +10:00
SergeyBokhantsev
af6303c82b Copter: User parameters implementation 2018-08-31 08:42:03 +09:00
Randy Mackay
920300899e Copter: rename gcs_check_input to gcs_update
this makes the names consistent with Rover and Plane
2018-08-24 15:30:50 +09:00
Peter Barker
09d8a33aaf Copter: stop passing ahrs to PrecLand constructor 2018-08-17 21:14:57 +09:00
Alexander Malishev
f5c540a127 Copter: publish navigation info to OSD 2018-08-16 10:26:34 +10:00
Randy Mackay
346e9e36db Copter: remove compass accumulate 2018-08-06 11:05:34 +10:00
Peter Barker
e7e56dde7a Copter: move handling of RC switches into RC_Channel 2018-08-01 12:11:30 +09:00
Peter Barker
22f7f29045 Copter: move all of waypoint-takeoff into Mode namespace 2018-07-27 13:08:27 +10:00
SergeyBokhantsev
ea3de59107 Copter: implement user auxswitch functions 2018-07-26 20:27:49 +09:00
Peter Barker
f06637d48e Copter: update servorelayevents @50Hz rather than 3Hz
One of the functions we allow for is toggling the servo at a set
frequency.  3Hz - the old rate - doesn't allow for precise triggering of
the servo.  This patch increases that rate to 50Hz - somewhat better.
2018-07-20 09:42:58 +09:00
Michael du Breuil
3755b2ac0f Copter: Remove unused ADC include 2018-07-17 09:29:50 +10:00
Peter Barker
c2f9b857a4 Copter: remove unused baro_climbrate variable 2018-07-04 21:08:47 +01:00
Peter Barker
df83cb034e Copter: use ArmingMethod enumeration 2018-07-03 15:16:38 +10:00
Peter Barker
a1f29e92d1 Copter: use singletons in AP_Arming 2018-07-03 13:44:11 +10:00