Pierre Kancir
eb78a473f6
AP_Vehicle: correct virtual specifier
2021-02-10 18:49:42 +11:00
Patrick José Pereira
b8360a08c7
AP_Vehicle: Add missing const in member functions
...
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Peter Barker
f15a1fbd62
AP_Vehicle: move control_mode_reason up to AP_Vehicle
2021-02-03 18:24:52 +11:00
Andrew Tridgell
66297bd061
AP_Vehicle: added ExternalAHRS param tree and object
...
using EAHRS param prefix
2021-01-05 21:13:12 +11:00
yaapu
edf2291fb0
AP_Vehicle: added getters for waypoint info, refactored osd publish_nav_info()
2020-12-10 12:39:44 +11:00
Andrew Tridgell
a1c05e74b5
AP_Vehicle: call init_safety after first loop has run
...
this fixes a bug where servos can be driven to an out of range value
if PWM output happens before first loop has completed
thanks to Kris for reporting
2020-12-08 11:14:24 +11:00
Gone4Dirt
d25f9d5d3a
AP_Vehicle: Move AP_Generator to all vehicles
2020-11-24 12:54:52 +11:00
Andrew Tridgell
790a5ffa38
AP_Vehicle: added bootloader vehicle type
2020-11-10 16:15:45 +11:00
Andrew Tridgell
0700ca4882
AP_Vehicle: added DAL standalone vehicle type
2020-11-10 16:15:45 +11:00
Andrew Tridgell
ae56f554b9
AP_Vehicle: send watchdog reset msg at startup
...
this helps if the watchdog will happen within 10s of startup
2020-11-10 16:15:45 +11:00
Mark Whitehorn
5f8b4968ec
AP_Vehicle: add instructions for config_error loop
2020-11-05 15:04:10 +11:00
yaapu
0012b83d86
AP_vehicle: added support for frsky bidirectional telemetry
2020-10-27 10:17:53 +11:00
Patrick José Pereira
75e9550bce
AP_Vehicle: Define APM_BUILD_DIRECTORY as UNKNOWN if not defined
...
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2020-10-07 19:32:12 +11:00
Peter Barker
3aabb45059
AP_Vehicle: move orderly rebooting code from GCS into AP_Vehicle
...
Several places we reboot the vehicle we should probably do several of
the things done in this code - flushing parameters, forcing safety on
etc.
2020-09-29 18:07:59 +10:00
Tatsuya Yamaguchi
fb27dbbd4f
AP_Vehicle: replace message indicating that initialisation has completed
2020-09-22 09:52:52 +10:00
Peter Barker
0d396f4235
AP_Vehicle: don't do any GCS stuff in delay callback if we're Replay
...
We haven't initialised the GCS at all, so it's not a great idea to
update_receive() and the like.
2020-09-15 10:02:36 +10:00
Peter Barker
29d042dbc7
AP_Vehicle: Replay now creates vehicle singleton reference
2020-09-15 10:02:36 +10:00
ashvath100
9248272baa
Rover: walking_height input sent to motors
2020-09-10 08:27:01 +09:00
Andrew Tridgell
7ae64d20aa
AP_Vehicle: init MSP earlier
...
this allows for MSP sensors (baro, compass) to be ready during probe
2020-09-09 06:35:50 +10:00
yaapu
7f789fb443
AP_Vehicle: added support for the MSP protocol
2020-09-02 05:56:46 +10:00
ashvath100
df42618e0e
AP_Vehicle: add get_control_outputs() for lua motor drivers
2020-08-20 14:09:29 +09:00
Siddharth Purohit
bb460647a5
AP_Vehicle: use new CANIface drivers and CANManager
2020-08-19 17:31:09 +10:00
Peter Barker
38f4de9aac
AP_Vehicle: move generator to before scheduler and parameter objects
2020-08-05 16:26:19 +09:00
Peter Barker
34be953085
AP_Vehicle: add is_crashed method to AP_Vehicle
2020-08-05 16:26:19 +09:00
Tom Pittenger
88d28460f5
AP_Vehicles: add more ModeReasons
2020-07-28 11:52:39 -07:00
Andy Piper
820d6654af
AP_Vehicle: add VideoTX
2020-07-07 18:48:06 +10:00
Peter Barker
4296f6ed4b
AP_Vehicle: add instance for RichenPower generator
2020-07-03 08:21:42 +09:00
Randy Mackay
473b027e03
AP_Vehicle: minor formatting fix
2020-06-24 08:34:41 +09:00
Randy Mackay
73508564f7
AP_Vehicle: add set_steering_and_throttle
...
only for use with scripting on rover
2020-06-24 08:34:41 +09:00
Andy Piper
cb524b7d3d
AP_Vehicle: add function to log dynamic notch frequencies
...
move harmonic notch update here
2020-06-21 19:09:35 +10:00
Iampete1
98d5aa91a8
AP_Vehicle: add scripting guided mode set angle
2020-06-19 10:09:35 +10:00
Andy Piper
d873ec4533
AP_Vehicle: separate gyrofft gyro sampling from fft initiation
...
move FFT gyro sampling into fast loop for all vehicles
rename FFT update method
2020-05-24 07:43:34 +10:00
Andrew Tridgell
77b8f88289
AP_Vehicle: report thread name in watchdog mavlink msg
2020-04-29 07:36:55 +10:00
Peter Barker
1b99cfb10a
AP_Vehicle: rename APMrover2 to Rover
2020-04-14 09:50:34 +09:00
Randy Mackay
d1aa3858f0
AP_Vehicle: add visual odometry
2020-04-09 19:41:08 +09:00
Samuel Tabor
013628bd1d
Plane: Soaring - better reporting of exit due to drift.
2020-04-08 09:11:54 +10:00
Tom Pittenger
f6396d7a6d
Plane: add reason to exit Thermal loiter and adjust LOW alt reaon to cause RTL
2020-04-08 09:11:54 +10:00
Peter Barker
ec460b4244
AP_Vehicle: send statustext at regular intervals after watchdog reset
2020-03-31 14:30:11 +11:00
Randy Mackay
849adcd678
AP_Vehicle: add start_takeoff and set_target_velocity_NED for use in scripting
2020-03-19 15:17:11 -07:00
Andrew Tridgell
d192544107
AP_Vehicle: added get_target_location() method
...
for scripting
2020-03-12 08:36:40 +11:00
Peter Barker
621d029207
AP_Vehicle: add warning about get_scheduler_task implementations
...
We don't initialise these values we pass in. Considering how few times
we need to get this right, requiring it of the implementation would seem
to make sense and save a few bytes.
2020-03-11 22:23:56 +11:00
Peter Barker
1db081b095
AP_Vehicle: move AP_PARM_KEY_DUMP function up to AP_Vehicle base class
...
Common to all vehicles now, including Tracker
2020-03-10 11:00:14 +11:00
Randy Mackay
8d12c25555
AP_Vehicle: formatting fixes
2020-03-03 10:06:38 -07:00
Randy Mackay
6f5d733ba9
AP_Vehicle: add set_target_location method
2020-03-03 10:06:38 -07:00
Peter Barker
2ede027635
AP_Vehicle: move initialisation of serial and gcs to AP_Vehicle
2020-02-25 11:50:55 +11:00
Peter Barker
2b7af4d70b
AP_Vehicle: fold init_vehicle back into AP_Vehicle init method
2020-02-25 11:47:52 +11:00
Andy Piper
6613d4da3d
AP_Vehicle: add FFT configuration and initialization
...
add arming checks to validate FFT performance
allow gyros to be sampled at either the fastloop rate or gyro rate.
add gyro and parameter update loops for GyroFFT
add GYRO_FFT aux function
save FFT results on disarm
2020-02-22 11:15:37 +11:00
Randy Mackay
72612d3cb9
AP_Vehicle: add AP_ESC_Telem
2020-02-12 11:58:34 +09:00
Peter Barker
de2cf89b60
AP_Vehicle: initialise scheduler early
...
So the loop rate gets clamped before we memoise it and the loop period
in AP_Scheduler
2020-02-06 14:41:06 +11:00
Peter Barker
a523bb4b68
AP_Vehicle: let AP_Vehicle handle loop()
2020-02-06 14:41:06 +11:00
Peter Barker
07c7a98269
AP_Vehicle: move some common init_ardupilot code up to AP_Vehicle
2020-01-28 11:34:51 +11:00
Peter Barker
1211ea88b5
AP_Vehicle: move setup method up to AP_Vehicle base class
2020-01-28 11:34:51 +11:00
Peter Barker
373b8be7ef
AP_Vehicle: move EKF objects into AP_AHRS_NavEKF
2020-01-21 11:53:18 +11:00
Peter Barker
8f550ffdd4
AP_Vehicle: change string to Initialising ArduPilot
2020-01-21 11:37:28 +11:00
Peter Barker
342e502da4
AP_vehicle: let AP_Vehicle base class worry about scheduler delay callback
2020-01-21 11:37:28 +11:00
Andrew Tridgell
f6c9c6fd8c
AP_Vehicle: setup for Hott telem
2020-01-16 20:36:54 +11:00
Peter Hall
7a620ca95c
AP_Vehicle: add flying time and bool
2020-01-14 22:34:37 -07:00
Tatsuya Yamaguchi
1309101a4b
AP_Vehicle: allow scripts to get modes
2020-01-14 11:16:29 +11:00
Andrew Tridgell
9d8821f3d7
AP_Vehicle: make init_vehicle() public
...
and protect against double call.
This is needed for the call from AP_BoardConfig
2019-12-30 13:02:04 +11:00
Andy Piper
3ea05fa78b
AP_Vehicle: add common parameter and scheduling management. Add runcam.
2019-12-30 13:02:04 +11:00
Peter Barker
b2b5077949
AP_Vehicle: stop passing rangefinder in constructors of NavEKF objects
2019-12-11 08:09:01 +11:00
Peter Barker
ebd2b1d544
AP_Vehicle: instantiate the AHRS object
2019-12-02 09:16:22 +11:00
Gone4Dirt
71f7761975
AP_Vehicle: Added mode change reasons for autorotation
2019-11-29 08:06:10 +08:00
Michael du Breuil
a44a7f541b
AP_Vehicle: Support set_mode
2019-10-25 08:48:22 +08:00
Peter Barker
9fee2a9c06
AP_Vehicle: add singleton
2019-10-15 13:24:20 +11:00
Peter Barker
1ea365d52a
AP_Vehicle: move many members up to base class
2019-10-08 11:26:04 +11:00
Andrew Tridgell
88fbbfba09
AP_Vehicle: added AP_Periph vehicle type
2019-08-27 10:29:56 +10:00
Andrew Tridgell
ac3da71efd
AP_Vehicle: added iofirmware vehicle type
2019-03-15 14:38:57 +11:00
Peter Barker
2cea90eefe
AP_Vehicle: remove ancient, misleading Arduino comment
2018-11-23 10:56:17 +11:00
jaxxzer
44c9efad50
AP_Vehicle: Add the ArduSub vehicle type.
...
This also fixes the issue causing accel calibration to be unresponsive
in gcs.
2017-02-21 11:26:14 +11:00
Michael du Breuil
302e80d72c
AP_Vehicle: Move loiter_radius to vehicle
2017-01-30 10:43:54 -08:00
Michael du Breuil
ac27241a42
AP_Vehicle: Remove unused flight stages
2017-01-26 13:11:44 -08:00
Tom Pittenger
063f517424
Plane, TECS, AP_Landing: rename stage LAND_ABORT to ABORT_LAND
...
this will reduce confusion when searching for FLIGHT_LAND_* and you get a bunch of takeoff related hits. It will also make more sense when the landing library fully manages the FLIGHT_LAND stage entirely because it will not mange FLIGHT_LAND_ABORT
2016-12-30 23:50:03 -08:00
Tom Pittenger
8019cedf5b
AP_Vehicle,AP_SpdHgtControl,AP_TECS: move enum FlightStages to AP_Vehicle::FixedWing
2016-12-30 23:50:02 -08:00
Tom Pittenger
15ec551990
AP_Vehicle: migrate aparm "LAND_" params from plane to AP_Landing
2016-11-25 19:07:30 -08:00
Tom Pittenger
f556f705e6
Plane: move various g params to aparms
2016-11-25 19:07:30 -08:00
Tom Pittenger
ce8db1fdba
Plane: move struct Rangefinder_State to AP_Vehicle
2016-11-25 19:07:30 -08:00
Tom Pittenger
44037c13a1
Revert "AP_Vehicle: Removed unused airspeed_min and airspeed_max as now part of AP_Airspeed."
...
This reverts commit bf7ab052c1
.
2016-08-07 17:54:24 -07:00
AndersonRayner
bf7ab052c1
AP_Vehicle: Removed unused airspeed_min and airspeed_max as now part of AP_Airspeed.
2016-08-04 10:09:04 -07:00
Andrew Tridgell
1f29b51dd6
AP_Vehicle: moved roll_limit_cd into AP_Vehicle
...
will be used by APM_Control
2016-06-24 11:39:21 +10:00
Lucas De Marchi
80749af698
AP_Vehicle: replace header guard with pragma once
2016-03-16 18:40:44 +11:00
Tom Pittenger
96833a0b73
AP_Vehicle: new params for pre-flare
2016-02-09 14:18:02 +11:00
Peter Barker
f21774d3e8
AP_Vehicle: define vehicle type APM_BUILD_Replay
2016-01-30 12:52:51 -02:00
Gustavo Jose de Sousa
5eea2683f2
AP_Vehicle: 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:24 +10:00
Andrew Tridgell
f24e69f4a0
AP_Vehicle: all vehicles now use functors
2015-06-01 15:18:32 +10:00
Andrew Tridgell
9ed0ee12fb
AP_Vehicle: all vehicle types now use functors
2015-06-01 15:06:31 +10:00
Andrew Tridgell
1088e72fda
AP_Vehicle: make copter use functors
2015-05-30 15:21:22 +09:00
Andrew Tridgell
83e6181024
AP_Vehicle: removed BUILD_DELEGATES code
...
no longer needed
2015-05-26 14:34:58 +10:00
Lucas De Marchi
0daeeb9518
ArduPlane: Start using new Functor implementation
...
It both reduces flash size and move symbols to read-only sections.
The scheduler_tasks table is one known not to be in read-only section before due
to the FastDelegate implementation. Before and after this patch:
ArduPlane $ size ArduPlane.elf{.old,}
text data bss dec hex filename
733368 8252 67352 808972 c580c ArduPlane.elf.old
730632 8236 64792 803660 c434c ArduPlane.elf
ArduPlane $ nm -C ArduPlane.elf.old|grep scheduler_tasks
0000000000402800 t _GLOBAL__sub_I__ZN5Plane15scheduler_tasksE
00000000006b54c0 B Plane::scheduler_tasks
ArduPlane $ nm -C ArduPlane.elf|grep scheduler_tasks
0000000000490900 R Plane::scheduler_tasks
As can be seen above, now the scheduler_tasks symbol is in a read-only data
section and in all of them we decreased the total size.
For APM2 we have a little increase in the text size size.
ArduPlane $ size ArduPlane.elf{.old,}
text data bss dec hex filename
241940 942 4447 247329 3c621 ArduPlane.elf.old
242222 942 4431 247595 3c72b ArduPlane.elf
ArduPlane $ nm -C ArduPlane.elf.old|grep scheduler_tasks
00001f8f T Plane::scheduler_tasks
ArduPlane $ nm -C ArduPlane.elf|grep scheduler_tasks
00001f8f T Plane::scheduler_tasks
2015-05-26 13:46:55 +10:00
Lucas De Marchi
84f399ec3c
APMrover2: Start using new Functor implementation
...
It both reduces flash size and move symbols to read-only sections.
The scheduler_tasks table is one known not to be in read-only section before due
to the FastDelegate implementation. Before and after this patch:
APMrover2 $ size APMrover2.elf{.old,}
text data bss dec hex filename
611406 4832 40920 657158 a0706 APMrover2.elf.old
609686 4824 38936 653446 9f886 APMrover2.elf
APMrover2 $ nm -C APMrover2.elf{.old,} |grep tasks
0000000000696f80 B Rover::scheduler_tasks
000000000047c440 R Rover::scheduler_tasks
As can be seen above, now the scheduler_tasks symbol is in a read-only data
section and in all of them we decreased the total size.
For APM2 we have a similar situation, but the table was already in text section
because it was using plain C pointers:
APMrover2 $ size APMrover2.elf{.old,}
text data bss dec hex filename
189518 1038 3494 194050 2f602 APMrover2.elf.old
189216 1038 3480 193734 2f4c6 APMrover2.elf
APMrover2 $ nm -C APMrover2.elf{.old,} |grep tasks
00001f92 T Rover::scheduler_tasks
00001f8a T Rover::scheduler_tasks
2015-05-26 13:46:55 +10:00
Lucas De Marchi
4b5cf24a81
Allow to change to functor implementation
...
Start to add code behind APM_BUILD_FUNCTOR to support changing the
functor implementation (without breaking the build while the change is
not complete).
2015-05-26 13:46:49 +10:00
Andrew Tridgell
98d2b9b3aa
AP_Vehicle: added APM_BUILD_DELEGATES macro
2015-05-21 07:48:50 +10:00
Michael du Breuil
a9fc2b8a32
AP_Vehicle: Moved takeoff_throttle_max into plane parameters
2015-04-16 08:56:36 +10:00
Andrew Tridgell
8fc58d1cbe
AP_Vehicle: expose LAND_FLARE_SEC in vehicle parameters for fixed wing
2015-03-15 13:52:34 +11:00
Andrew Tridgell
04b63a61bf
AP_Vehicle: added stall_prevention variable
2014-11-13 14:05:22 +11:00
Andrew Tridgell
c09c86868f
AP_Vehicle: make APM_BUILD_TYPE() valid under arduino IDE
2014-09-03 13:28:04 +10:00
Andrew Tridgell
fb4ef0b5c6
AP_Vehicle: added land_pitch_cd for fixed wing
2014-08-27 20:11:03 +10:00
Andrew Tridgell
86f167fc7f
AP_Vehicle: added autotune_level to fixed wing parms
2014-04-13 22:11:28 +10:00
Andrew Tridgell
fbec098e2f
AP_Vehicle: added APM_BUILD_TYPE() macro
...
this makes checking build type less fragile
2014-03-26 12:41:53 +11:00
Andrew Tridgell
6b2f0b9553
AP_Vehicle: added defines for main vehicle types
2014-03-26 12:15:45 +11:00