Andrew Tridgell
cf8e648558
CLI: fixed accel setup
...
disable mavlink callback in CLI
2012-12-24 08:51:33 +11:00
Andrew Tridgell
d54c6989ab
Plane: fixed the last build warnings
...
we now build with no warnings for APM1, APM2 and SITL. Yay!
2012-12-20 22:46:48 +11:00
Andrew Tridgell
dc2b11704f
Plane: fixed a build warning
2012-12-20 22:42:44 +11:00
Andrew Tridgell
feca411943
Plane: added new TRAINING mode
...
this mode gives manual control when the roll or pitch is within the
set limits (the same limits as FBW mode), and prevents the pilot from
flying beyond those limits, essentially a "attitude limited manual"
mode
2012-12-20 22:41:58 +11:00
Andrew Tridgell
1cb4724b7f
Plane: fixes for 1280 build
2012-12-20 14:53:24 +11:00
Andrew Tridgell
9a2e77b797
Plane: fully disable relay and mount code on APM1-1280
...
this saves some more flash space
2012-12-20 14:53:23 +11:00
Andrew Tridgell
772f93ea10
Plane: fixed config for 1280
2012-12-20 14:53:23 +11:00
Pat Hickey
5231e5a959
ArduPlane: fixes for AP_InertialSensor_UserInteract
2012-12-20 14:53:23 +11:00
Andrew Tridgell
3c0440b0b4
Math: use common degrees() and radians() functions
2012-12-20 14:53:22 +11:00
Andrew Tridgell
c63c4f22e2
Plane: fixed formatting
2012-12-20 14:53:22 +11:00
Andrew Tridgell
cf18534163
Plane: use new functions
2012-12-20 14:53:22 +11:00
Pat Hickey
2ad4fed8cd
Rover/Copter/Plane: change from vsnprintf to vsnprintf_P
2012-12-20 14:52:38 +11:00
Pat Hickey
edb076a6c5
ArduPlane: use hal's vsnprintf
2012-12-20 14:52:38 +11:00
Andrew Tridgell
62d7fd1a26
Plane: fixed HIL builds
2012-12-20 14:52:37 +11:00
Andrew Tridgell
940cbc900f
Plane: use targets.mk
2012-12-20 14:52:35 +11:00
Andrew Tridgell
4913aff8cd
Plane: remove unused send_text() function
2012-12-20 14:52:35 +11:00
Pat Hickey
eb530b86e8
move Arduino.mk to /mk/Arduino.mk
2012-12-20 14:52:35 +11:00
Andrew Tridgell
c20481dc94
Plane: SITL has a I2C driver now
2012-12-20 14:52:34 +11:00
Andrew Tridgell
761ab5c3e8
Plane: use AP_HAL_BOARD_DRIVER
2012-12-20 14:52:33 +11:00
Andrew Tridgell
a3e20324ac
Plane: added CONFIG_INS_STUB
2012-12-20 14:52:32 +11:00
Andrew Tridgell
41272614ce
Plane: simplify board config defines
2012-12-20 14:52:32 +11:00
Andrew Tridgell
73f70cc596
Plane: moved to new GPS init syntax
2012-12-20 14:52:32 +11:00
Andrew Tridgell
18db7b2efd
GPS: move _port setting to init()
...
this is needed to avoid constructor ordering dependencies
2012-12-20 14:52:32 +11:00
Pat Hickey
a70a299c49
ArduPlane: refactor Makefile targets in terms of Arduino.mk targets
2012-12-20 14:52:31 +11:00
Andrew Tridgell
7d27e420ae
AP_HAL: remove unnecessary Arduino.h includes
2012-12-20 14:52:30 +11:00
Andrew Tridgell
d473203737
Build: added global board targets
2012-12-20 14:52:30 +11:00
Andrew Tridgell
678947c65d
Plane: more fixes for SITL and new AP_Param startup
2012-12-20 14:52:29 +11:00
Pat Hickey
1e48d0fc69
Makefile Targets rewritten to use per-target extension style
2012-12-20 14:52:29 +11:00
Andrew Tridgell
e82deca305
Plane: updates to support AP_HAL SITL
2012-12-20 14:51:40 +11:00
Andrew Tridgell
a78699113d
Plane: fixed Makefile for new AP_HAL build approach
2012-12-20 14:51:39 +11:00
Andrew Tridgell
7046fc05e2
Plane: change to send_text_P() for progmem strings
2012-12-20 14:51:39 +11:00
Andrew Tridgell
7c6dd0736e
Plane: use hal.storage for eeprom access
2012-12-20 14:51:39 +11:00
Andrew Tridgell
81d77d2bf4
Plane: fixed Makefile targets for AP_HAL
2012-12-20 14:51:38 +11:00
Pat Hickey
f8dec9ae4a
ArduPlane: fixes to use CONFIG_HAL_BOARD instead of CONFIG_APM_HARDWARE
2012-12-20 14:51:37 +11:00
Pat Hickey
c441f02426
ArduPlane: init DataFlash obj
2012-12-20 14:51:37 +11:00
Pat Hickey
a14621534c
ArduPlane: port from hal.dataflash to old DataFlash api
2012-12-20 14:51:36 +11:00
Pat Hickey
92b0c302f2
ArduPlane: Ported to AP_HAL
2012-12-20 14:51:36 +11:00
Pat Hickey
a4f1f6a5db
AP_Progmem: fix dependencies for all sketches touched by AP_HAL_AVR
2012-12-20 14:51:28 +11:00
Pat Hickey
3f1d9d7f69
AP_Param: #include <AP_Param.h> fixups for libraries & sketches
...
* I mostly went through with grep and added an #include <AP_Param.h> below
every #include <AP_Common.h>. Not all of these example sketches might
strictly need AP_Param.
2012-12-20 14:51:19 +11:00
Andrew Tridgell
898aa0b260
Plane: fixed spelling error
2012-12-04 11:38:29 +11:00
Andrew Tridgell
e4949291e5
Plane: preparing for 2.68 release
2012-12-04 11:24:24 +11:00
Andrew Tridgell
805a340350
Plane: enable attitude and raw logging in HIL modes
2012-12-04 11:13:33 +11:00
Andrew Tridgell
cbb97f7294
Plane: added apm2 hilsensors target
2012-12-04 09:05:02 +11:00
Andrew Tridgell
24e1af1c82
Plane: fixed sensors and attitude HIL
...
we now use the Stub version of the InertialSensor driver. In sensors
HIL we can now correctly drive the AHRS code.
2012-12-03 23:26:39 +11:00
Andrew Tridgell
53951f995a
Plane: fixed GPS course in HIL
2012-12-03 17:38:55 +11:00
Andrew Tridgell
567cb47d35
Plane: fixed SERVO_OUTPUT_RAW for HIL
2012-12-03 17:38:31 +11:00
Andrew Tridgell
1104287aa2
Plane: use enum FlightMode in more places
2012-12-01 08:15:48 +11:00
Andrew Tridgell
f5abc2c25e
Plane: switch to an enum for flight modes
2012-12-01 08:08:54 +11:00
Andrew Tridgell
a6d8dbeac2
Plane: update ArduPlane for new ins interface
2012-11-30 07:15:18 +11:00
Andrew Tridgell
0260559147
Plane: fixed throttle slew limit code
...
starting at 1000 is a very bad idea - a petrol engine could cut out
2012-11-28 12:13:09 +11:00
Andrew Tridgell
697c386075
Plane: use correct throttle range in slewrate
2012-11-28 11:42:05 +11:00
Andrew Tridgell
845dd88091
Plane: make THR_SLEWRATE docs clearer
2012-11-28 11:41:39 +11:00
Andrew Tridgell
92cd631ce5
Plane: added THR_PASS_STAB parameter
...
this allows direct passthru of throttle in STABILIZE and FBWA, which
is useful for nitro planes wher you have a throttle cut switch that
drops the throttle below normal minimum.
2012-11-26 23:33:05 +11:00
Andrew Tridgell
1059ef2a54
Plane: fixed secondary aileron and manual aux servos in failsafe
...
the servo value wasn't being written to APM_RC while in failsafe for
these aux channels
2012-11-26 23:32:57 +11:00
Andrew Tridgell
a87394fff2
Plane: don't do accel calibration in HIL mode
...
this should fix the hang on startup
2012-11-25 21:53:37 +11:00
Andrew Tridgell
56e4cbfb1d
Plane: allow reboot on APM1, and add reboot to main CLI menu
2012-11-24 18:20:37 +11:00
Andrew Tridgell
f8a95e4084
APM: preparing for 2.67 release
2012-11-21 22:28:30 +11:00
Andrew Tridgell
84300c85d6
APM: make it possible to run the CLI on any serial port
2012-11-21 21:41:34 +11:00
Andrew Tridgell
704da2a5d9
MAVLink: make it possible to enter the CLI over the radio
...
this only works on the APM2, where UART0 is also the radio port
2012-11-21 14:11:05 +11:00
Andrew Tridgell
8f108e2eb3
APM: added AMP_OFFSET option
...
thanks to Alexey Kozin!
2012-11-21 13:34:27 +11:00
Andrew Tridgell
61f2e18e2e
APM: allow ailerons to move fully during servo demo
2012-11-21 13:34:27 +11:00
Andrew Tridgell
fcbd3a823b
APM: added a new type of auxilary aileron, with rc input
...
a AileronWithInput assumes you have setup your RC transmitter to give
the right trim and input on the secondary aileron
2012-11-21 13:34:26 +11:00
Michael Oborne
a5e3ce4655
remove cli planner mode - no longer used
2012-11-21 07:45:45 +08:00
Andrew Tridgell
a600ccece5
APM: support 16 character parameter names
2012-11-20 21:36:13 +11:00
Andrew Tridgell
a5ed0de2cf
APM: set MANUAL_LEVEL to 1 on successful accel calibration
2012-11-20 19:27:52 +11:00
Andrew Tridgell
fd3993287d
INS: disable accel calibration on the 1280
...
this would put us well over 128k in sketch size
2012-11-20 18:41:04 +11:00
Andrew Tridgell
2f287846b5
APM: don't use mavlink msgs for accel cal in cli
2012-11-20 18:32:27 +11:00
Andrew Tridgell
3aeaf2ece6
APM: k_param_imu is now unused
2012-11-20 18:32:27 +11:00
Andrew Tridgell
69fbcc8683
MAVLink: fixed accel and gyro sensor offsets in MAVLink
2012-11-20 18:32:26 +11:00
Andrew Tridgell
f80783665f
APM: fixed throttle display to always be between 0 and 100
...
when rc3 is below RC3_MIN, don't give an invalid value
2012-11-20 13:50:19 +11:00
Andrew Tridgell
7b733cd12b
APM: fixed altitude_filter for new LowPassFilter syntax
2012-11-19 08:09:44 +11:00
Andrew Tridgell
8d1905a40b
APM: change WIND direction to match convention
...
Thanks to Leo Hogg for pointing this out
2012-11-19 07:16:47 +11:00
Andrew Tridgell
531e62d3b5
MAVLink: improve usefulness of logged GPS velocities
...
we need them to align with time to use them for accelerations
2012-11-17 17:45:30 +11:00
rmackay9
cdfd3f9ccc
ArduCopter, ArduPlane: rename ap variable in GCS_Mavlink.pde to resolve compiler warning re shadowing of variable 'ap'
...
Changed ArduPlane to keep function consistent with ArduCopter
2012-11-12 13:30:04 +09:00
Andrew Tridgell
fddfb0b1a3
MAVLink: update compass health in SYS_STATUS
...
this will make it easier to tell if a I2C error occurred in flight
2012-11-12 11:26:54 +11:00
rmackay9
2df7a407da
ArduPlane: fix HIL build
2012-11-07 21:23:07 +09:00
rmackay9
d9b4407e64
AP_InertialSensor: changes after review with Tridge.
...
sanity checking added to accelerometer calibration routine.
user feedback is sent using gcs_send_text_fmt instead of Serial.printf.
moved ins parameters to new eeprom number to avoid conflicts with older parameters.
other small changes including renaming of functions and parameters.
2012-11-07 19:21:15 +09:00
rmackay9
ef727bbb3c
ArduPlane: move to use new INS library instead of IMU library
2012-11-07 19:21:03 +09:00
Andrew Tridgell
8652bfee8d
APM: added RSSI_PIN option for receiver RSSI
...
this allows you to configure the pin for receiver RSSI without
recompiling
2012-11-06 22:04:41 +11:00
Andrew Tridgell
c7b47a0e47
APM: allow for arbitrary ranges and reversal on 2nd aileron
...
this ensures you can setup a 2nd aileron with different reversal from
main aileron
2012-11-05 23:37:58 +11:00
Andrew Tridgell
9c140356f5
APM: remove unused variable
2012-11-05 15:22:56 +11:00
Andrew Tridgell
2793e432ff
APM: use raw GPS velocity in GLOBAL_POSITION_INT
...
a much more useful value to log
2012-11-05 14:58:40 +11:00
Andrew Tridgell
aa236c43f8
APM: prepare for 2.66
2012-10-31 13:25:19 +11:00
Andrew Tridgell
81d507d39e
APM: fixed differential spoilers in manual mode
...
make them follow the elevons
2012-10-31 12:43:53 +11:00
Andrew Tridgell
8c0296b27a
APM: fixed additional aileron channels in manual mode
2012-10-31 12:43:53 +11:00
Xichen Shi
8c46fced16
APM: Added functionality to use differential spoilers in elevon mode
...
spoiler 1 and 2 are connected to 2 auxiliary channels, functions are
set to 16 on left wing and 17 om right wing respectively. Worked in
FBW + mode (auto etc.). No manual mode supported yet (need more
channels in my case).
2012-10-31 12:43:42 +11:00
Andrew Tridgell
e479af67ff
APM: fixed loiter radius docs to reflect new limit
2012-10-30 16:19:24 +11:00
Pat Hickey
d4bb8a10d7
Update ArduCopter and ArduPlane dependencies on AP_Menu
2012-10-18 20:53:39 -07:00
Andrew Tridgell
07c291bb73
APM: fixed a comment typo
2012-10-16 17:21:04 +11:00
Andrew Tridgell
f828956cb8
battery: use set_pin() to allow pins to be changed at runtime
2012-10-16 17:20:49 +11:00
rmackay9
775489d658
ArduPlane: added BATT_VOLT_PIN and BATT_CURR_PIN parameters to allow support for new 3DR IV battery monitor
2012-10-13 20:51:41 +09:00
Andrew Tridgell
0bc1f89f27
APM: fixed typo
2012-10-11 15:03:52 +11:00
Andrew Tridgell
c9f10f0e00
APM: fixed auto-takeoff with zero lat/lng
...
consider a non-zero altitude to mean that we should use the relative
altitude specified
2012-10-11 15:03:00 +11:00
Andrew Tridgell
0495a0debc
APM: make error msg clearer
2012-10-11 11:51:24 +11:00
rmackay9
f695db61ea
ArduPlane: added AP_Semaphore.h to list of includes
2012-10-06 13:14:28 +09:00
Michael Oborne
a38fef65c7
AP,AC Add ability to override an altitude in any auto mode, on the current active target
2012-09-30 07:29:33 +08:00
rmackay9
8c6fd340d7
AP_AHRS: added scheduler parameter to init
...
Required by the AP_AHRS_MPU6000 class which needs to disable timed processes that could interfere with it's communication with the mpu6000
2012-09-29 13:51:21 +09:00
rmackay9
41fbb19cf5
AP_InertialSensor_MPU6000: replaced _cs_pin parameter with #define and saved 1 byte of memory
...
Updated ArduCopter, ArduPlane and example sketches in AP_InertialSensor, AP_IMU and AP_AHRS libraries because they no longer need to pass in cs_pin to the constructor
2012-09-28 19:21:59 +09:00
Andrew Tridgell
bbec662483
APM: fixed build warning
2012-09-25 07:21:03 +10:00
Andrew Tridgell
fbc053e6e4
APM: change to one low priority status buffer per GCS instance
...
this allows us to operate the low priority messages on each link
independently.
Thanks to David Buzz for the suggestion!
2012-09-24 17:39:19 +10:00
Andrew Tridgell
51aeb2dd4c
APM: prepare for 2.65
2012-09-24 07:14:30 +10:00
Andrew Tridgell
d5c35fcc8b
APM: fixed stick mixing for STABILISE mode
...
this is embarrassing
2012-09-24 07:14:30 +10:00
Andrew Tridgell
a4c3c5973d
APM: prepare for 2.64 release
2012-09-23 19:32:56 +10:00
Andrew Tridgell
56c354eb4f
APM: fixed stick mixing in CIRCLE mode on throttle failsafe
...
Many thanks to Andke for finding this bug!
2012-09-23 19:27:42 +10:00
Andrew Tridgell
41017442f8
APM: removed unnecessary waypoint_sending flag
2012-09-22 20:17:19 +10:00
Andrew Tridgell
f0f47f929a
APM: send right parameter index when possible
2012-09-22 20:17:17 +10:00
Andrew Tridgell
764d86216e
APM: fixed mission reset by setting waypoint to zero
...
this does a full mission reset (equivalent to rebooting)
2012-09-22 20:17:13 +10:00
Andrew Tridgell
6bae5ecd51
APM: added THR_SUPP_MAN option
...
this allows for manual throttle control during auto throttle
suppression. This is useful for keeping a petrol engine idling before
takeoff
2012-09-22 20:17:06 +10:00
Andrew Tridgell
5c402fa398
APM: allow RawSensors stream rate to be saved if <= 5
...
this makes it possible to configure all stream rates via a parameter
file
2012-09-22 20:17:02 +10:00
Andrew Tridgell
63940d3ab6
APM: don't send GPS_STATUS MAVLink message
...
it now provides no useful information as satellites_visible is in
GPS_RAW_INT in MAVLink 1.0
2012-09-22 20:12:43 +10:00
Andrew Tridgell
cbc4a57abb
APM: send airspeed sensor value, not estimate, when enabled
...
this solves the problem of people reporting that airspeed is not shown
when ARSPD_USE is zero.
2012-09-20 08:00:54 +10:00
Andrew Tridgell
832c5e996e
APM: make it possible to fetch parameters by index
2012-09-20 07:42:46 +10:00
Andrew Tridgell
3077de0d33
APM: much faster parameter fetching
...
allow up to 30% of bandwidth to be used for parameter send
2012-09-20 07:29:23 +10:00
Andrew Tridgell
68f1b6336f
APM: tweak the default options for an APM1 1280 board
...
this allows a few more things to fit in
2012-09-19 19:36:19 +10:00
Andrew Tridgell
cebb67e1df
APM: removed the unused sonar code
...
when we start supporting a sonar we'll add a AP_Sonar library, like
AP_Airspeed
2012-09-19 19:35:22 +10:00
Andrew Tridgell
2324997e16
APM: added ALT_OFFSET parameter
...
useful to adjust for barometric pressure changes during a long flight
2012-09-19 16:23:25 +10:00
Andrew Tridgell
37cb56f3e1
APM: save another few bytes
2012-09-18 13:58:50 +10:00
Andrew Tridgell
df962d25a8
APM: fixed a comment
2012-09-18 13:58:49 +10:00
Andrew Tridgell
12dc2e79cf
APM: save 100 bytes of memory
...
remove flight_mode_strings array
2012-09-18 13:58:49 +10:00
Andrew Tridgell
86face0a03
APM: preparing for 2.63 release
2012-09-17 17:32:13 +10:00
Andrew Tridgell
4d4a95501f
APM: updates for new GPS detection
2012-09-17 14:45:47 +10:00
Andrew Tridgell
7e8ef0ae95
APM: fixed handling of DO_REPEAT_SERVO and DO_REPEAT_RELAY
2012-09-17 14:45:47 +10:00
Andrew Tridgell
c8e84d18a4
APM: tidy up a comment
2012-09-16 15:51:13 +10:00
Andrew Tridgell
c0798730a8
APM: only copy manual channels in failsafe
...
this prevents non-manual channels changing value away from the trim
value on startup
2012-09-16 15:51:01 +10:00
Andrew Tridgell
127117b640
APM: ensure DO_SET_SERVO channels are enabled
2012-09-16 15:08:14 +10:00
Andrew Tridgell
208b878988
APM: allow update of last waypoint
...
fixed off by one error
2012-09-16 15:06:26 +10:00
Michael Oborne
94f956a0ca
fix AP attitude hil - with randys help
2012-09-15 16:47:18 +08:00
Andrew Tridgell
b55e7903aa
APM: prepare for 2.62 release
2012-09-13 12:02:18 +10:00
Andrew Tridgell
bad73b0686
APM: fixed elevon mixing
...
this was broken in 2.61
2012-09-13 12:01:40 +10:00
Andrew Tridgell
6e9abb616a
APM: show real raw RC input, not mixed input
...
this makes it easier to diagnose elevon mixing issues
2012-09-13 12:00:49 +10:00
Andrew Tridgell
589c8fcc12
APM: report throttle and ground speed mission changes
2012-09-12 13:09:32 +10:00
Andrew Tridgell
b1408008c9
APM: allow for landing pitch control until final stage
2012-09-12 13:09:16 +10:00
Andrew Tridgell
05e72c6e68
APM: fixed roll in landing approach
2012-09-12 11:53:17 +10:00
Andrew Tridgell
5f3ffe4839
APM: switch to Randys new IMU rate control method
...
this drives the speed of the 50Hz loop by the number of samples
accumulated in the IMU. This should give much more consistent timing
in DCM.
Thanks to Randy for introducing this scheme in ArduCopter!
2012-09-11 16:39:36 +10:00
Andrew Tridgell
7e672628ea
APM: removed the GPS_enabled flag
...
this fixes using GPS_PROTOCOL to specify a specific GPS with a GPS
that takes a few updates before it works (eg. needing baud rate
changes).
This makes it easier to use an APM1-1280 with more features enabled
2012-09-11 13:37:34 +10:00
Andrew Tridgell
c9a299665c
APM: added speed scaling to wheeled steering
...
this allows for a larger amount of steering control at low speeds
without causing osciallation after takeoff
2012-09-11 13:37:34 +10:00
Andrew Tridgell
0812fc4890
APM: reboot only works on the APM2
2012-09-10 11:50:48 +10:00
Andrew Tridgell
cb88681914
APM: added support for MAV_CMD_PREFLIGHT_REBOOT_SHUTDOWN
...
this allows for remote reboot of APM
2012-09-10 11:42:30 +10:00
Andrew Tridgell
e2779523ea
APM: fixed fetch of relative altitude waypoints
...
when we fetch relative altitude waypoints from APM to a file, we need
to preserve the altitude
2012-09-10 09:40:29 +10:00
Andrew Tridgell
feb3fe77ce
APM: simplify radio_trim code
...
this removes the duplicate code. Throttle trim is not changed.
2012-09-09 19:39:09 +10:00
Andrew Tridgell
5c3595e0dc
APM: fixed throttle nudging
...
The nudge value depended on RC3_TRIM, which is not a reliable
value. It tried to only take effect when the throttle stick was above
50%, but if RC3_TRIM was high for some reason (say 1500) then it would
actually depress the throttle by a large amount, which could cause the
plane to stall.
This also adds a boolean option THROTTLE_NUDGE to allow disabling of
throttle nudging
2012-09-09 19:39:04 +10:00
Andrew Tridgell
657dd5969f
APM: preparing for 2.61 release
2012-09-08 18:36:17 +10:00
Andrew Tridgell
49468953a3
APM: updated for new RC_Channel_aux API
2012-09-08 15:14:41 +10:00
Andrew Tridgell
a6422be8fb
APM: added mtk and mtk16 build targets
...
useful for testing non-auto gps detection
2012-09-08 12:43:36 +10:00
Andrew Tridgell
f26b9ab286
APM: prevent crosstrack from takeoff point after takeoff completion
2012-09-08 11:37:14 +10:00
Andrew Tridgell
dec12c7370
APM: use ahrs.airspeed_estimate() in two more places
...
this applies the wind constraint
2012-09-08 11:37:11 +10:00
Andrew Tridgell
cde7d8c5e7
APM: fixed some compiler warnings
2012-09-08 10:14:32 +10:00
Andrew Tridgell
d07d42403e
APM: tidy up an if() statement
2012-09-08 10:14:20 +10:00
Andrew Tridgell
164c60d25f
APM: added RUDDER_STEER option
...
when enabled, this uses only the rudder to steer during takeoff and
landing, using aileron only for levelling
2012-09-08 10:07:03 +10:00
Andrew Tridgell
130b26e1f9
APM: support DO_SET_SERVO command
2012-09-08 10:06:53 +10:00
Andrew Tridgell
96ea350143
APM: added XTRK_MIN_DIST option
...
this allows you to disable crosstrack correction on short legs
2012-09-08 10:06:44 +10:00
Andrew Tridgell
a446a7a9ed
APM: allow serial buffer size to be configured
...
very useful for packet forwarding setups
2012-09-08 10:06:35 +10:00
Andrew Tridgell
9b2ad55773
APM: added forwarding of unknown MAVLink types
2012-09-08 10:06:15 +10:00
Andrew Tridgell
68705fe7e6
APM: accumulate mag readings during spare cycles in ArduPlane
...
With this change we average over 100 mag readings per compass.read()
call, which means we are reading the compass at over 1kHz instead of
10Hz. The noise reduction is huge.
2012-09-08 10:05:58 +10:00
Michael Oborne
cd08420c3e
AP fix takeoff alt issue
...
issue 733
2012-09-06 20:19:12 +08:00
Pat Hickey
b02340fe10
APM_Config.h for ArduCopter/ArduPlane: better descr of APM2_BETA_HARDWARE
2012-09-05 15:36:57 -07:00
Andrew Tridgell
83153eebd4
APM: obey pitch limits in FBWA as well
...
this means pitch limits are constrained by LIM_PITCH_MIN and
LIM_PITCH_MAX
2012-08-30 20:15:42 +10:00
Andrew Tridgell
9a987ce116
APM: fixed docs for LIM_PITCH_MIN
2012-08-30 14:55:08 +10:00
Michael Oborne
1e7adac365
AP fix attitude hil.
...
we where waiting on new_data that had no way of getting there.
2012-08-30 07:54:20 +08:00
Andrew Tridgell
f6c3197cd2
APM: added new TELEM_DELAY parameter
...
number of seconds to delay telemetry
2012-08-30 08:59:39 +10:00
Craig Elder
4ad516c445
Arducopter: increased MAVLINK delay to 6s to reduce the chance of xBee bricking
...
Arduplane: increased MAVLINK delay to 6s to reduce the chance of xBee bricking
Ardurover: increased MAVLINK delay to 6s to reduce the chance of xBee bricking
2012-08-28 20:09:10 -07:00
Andrew Tridgell
e2b8817a89
APM: added the ability to forcibly crash the plane on OBC failsafe breach
...
this allows a user to setup the OBC failsafe system to forcibly crash
the plane (surfaces at limits, zero throttle) when the failsafe system
triggers. This is to allow APM to be used in the Outback Challenge. In
the OBC an external failsafe board also does this using the heartbeat
control pin, so this is an extra safety mechanism.
To prevent users accidentially triggering a crash, this code only
activates if FS_TERM_ACTION is set to to the magic value 42.
2012-08-28 20:18:24 +10:00
Andrew Tridgell
fce01464b1
APM: added ALT_CTRL_ALG parameter
...
this allows you to select different altitude control algorithms. The
current choices are for the default (automatic based on if airspeed is
available), or to force a non-airspeed algorithm
The idea is to make it possible to use airspeed for some things (like
wind speed, speed scaling) but not for alt control
2012-08-28 20:18:24 +10:00
Andrew Tridgell
85e9fa8c3b
APM: fixed another problem with DO_JUMP
...
off by one error!
2012-08-28 20:18:24 +10:00
Andrew Tridgell
ded64fd9ea
APM: check for geofence fence total of 0
2012-08-28 20:18:24 +10:00
Andrew Tridgell
d13d117e61
APM: removed reset_I() and instead auto-reset integrator in PID library
...
this prevents us resetting key integrators on waypoint change, while
still preventing old integrators being used when a PID starts to be
used again
2012-08-28 20:18:23 +10:00
Andrew Tridgell
dcbd0fbd44
APM: cleanup throttle suppression code and don't use airspeed to unsupress
...
this removes the throttle suppression when any of the conditions are
met once, as otherwise flying slow below 10m could zero the throttle.
It also removes the use of airspeed for disabling throttle
supression. Otherwise a strong gust of wind can cause ArduPlane to
try to takeoff!
2012-08-28 20:18:23 +10:00
Amilcar Lucas
b48a1f1fc4
ArduPlane: Fix 1280 builds
...
Added fine-granular features in the AP_Mount class to reduce code size on 1280 chips
Remove camera trigger support on 1280 chips
2012-08-27 01:33:45 +02:00
Amilcar Lucas
769f04b7d6
Improve comments, no functional changes
2012-08-27 01:32:27 +02:00
Andrew Tridgell
ecc6a52904
APM: report estimated airspeed if airspeed not available
2012-08-25 17:49:26 +10:00
Andrew Tridgell
3c7d7ba228
APM: use airspeed estimate for speed scaling if available
2012-08-25 17:49:26 +10:00
Andrew Tridgell
c9cf483822
APM: added XTRK_USE_WIND parameter
...
when enabled this will use the wind estimation code to adjust the
navigation bearing, allowing the navigation code to cope with much
higher levels of wind while using a compass
2012-08-25 17:49:26 +10:00
Andrew Tridgell
abe5bbfa4d
APM: support forcing MANUAL of FBWA mode over MAVLink
2012-08-24 15:18:22 +10:00
Andrew Tridgell
b4134de550
APM: ensure fence_total is positive
...
thanks to David Buzz for the suggestion
2012-08-24 14:56:46 +10:00
Andrew Tridgell
c35530c362
APM: fixed wheeled takeoff with Jons new controllers
2012-08-22 17:34:01 +10:00
Andrew Tridgell
c730d9072e
APM: prepare for ArduPlane 2.60
2012-08-22 16:28:38 +10:00
Andrew Tridgell
2d8f99433c
APM: removed factor of 0.5 in non-airspeed takeoff pitch
...
this limited the pitch far below the specified target pitch
2012-08-22 16:28:38 +10:00
Andrew Tridgell
4668f8b7db
APM: ensure takeoff_complete is reset
2012-08-22 16:17:55 +10:00
Andrew Tridgell
95c941664f
APM: fixed bug in do_jump() navigation
...
this avoids a problem where the jump can cause the next command to be
reset to 0
2012-08-22 15:29:46 +10:00
Andrew Tridgell
6ab2a861f7
APM: added RSSI to RC_CHANNELS_RAW as well
...
and prevent double read
2012-08-22 13:58:25 +10:00
Andrew Tridgell
2d5bb7c51b
APM: added RSSI in raw message too
2012-08-22 13:48:09 +10:00
Andrew Tridgell
c0c0b8c976
APM: added RECEIVER_RSSI_PIN option
...
this allows for the receiver RSSI to be sent over MAVLink
Thanks to Burt Green for the suggestion
2012-08-22 13:33:12 +10:00
Andrew Tridgell
d445482ace
APM: added optional use of new APM_Control library
...
thanks to Jon Challinger for the new controllers!
2012-08-22 12:45:14 +10:00
Andrew Tridgell
9e926eae51
APM: optional build with new controller libs
2012-08-22 12:39:07 +10:00
uncrustify
70048f3d6f
uncrustify ArduPlane/Parameters.h
2012-08-21 19:19:51 -07:00
uncrustify
3bee769405
uncrustify ArduPlane/config.h
2012-08-21 19:19:51 -07:00
uncrustify
d0ed723c1e
uncrustify ArduPlane/planner.pde
2012-08-21 19:19:51 -07:00
uncrustify
a8e5900624
uncrustify ArduPlane/system.pde
2012-08-21 19:19:51 -07:00
uncrustify
8c2d604971
uncrustify ArduPlane/test.pde
2012-08-21 19:19:51 -07:00
uncrustify
d504ae680a
uncrustify ArduPlane/setup.pde
2012-08-21 19:19:51 -07:00
uncrustify
f7b8fecad9
uncrustify ArduPlane/GCS_Mavlink.pde
2012-08-21 19:19:51 -07:00
uncrustify
0e8a76ccdd
uncrustify ArduPlane/ArduPlane.pde
2012-08-21 19:19:51 -07:00
uncrustify
ff4afa767b
uncrustify ArduPlane/commands.pde
2012-08-21 19:19:51 -07:00
uncrustify
43991712be
uncrustify ArduPlane/radio.pde
2012-08-21 19:19:50 -07:00
uncrustify
d5767ef817
uncrustify ArduPlane/Attitude.pde
2012-08-21 19:19:50 -07:00
uncrustify
0f415bbc6a
uncrustify ArduPlane/Parameters.pde
2012-08-21 19:19:50 -07:00
uncrustify
39ab309b87
uncrustify ArduPlane/Log.pde
2012-08-21 19:19:50 -07:00
uncrustify
b960619195
uncrustify ArduPlane/defines.h
2012-08-21 18:59:05 -07:00
uncrustify
2c56e5c690
uncrustify ArduPlane/APM_Config.h
2012-08-21 18:59:05 -07:00
uncrustify
bd0146f776
uncrustify ArduPlane/GCS.h
2012-08-21 18:58:53 -07:00
uncrustify
5267ea6aad
uncrustify ArduPlane/sensors.pde
2012-08-21 18:58:40 -07:00
uncrustify
e212c152f7
uncrustify ArduPlane/geofence.pde
2012-08-21 18:58:31 -07:00
uncrustify
326ca1b7cd
uncrustify ArduPlane/failsafe.pde
2012-08-21 18:58:24 -07:00
uncrustify
4e795d4f1e
uncrustify ArduPlane/commands_process.pde
2012-08-21 18:58:17 -07:00
uncrustify
909e39d667
uncrustify ArduPlane/navigation.pde
2012-08-21 18:58:17 -07:00
uncrustify
4793162a9d
uncrustify ArduPlane/commands_logic.pde
2012-08-21 18:58:11 -07:00
uncrustify
9b133019b3
uncrustify ArduPlane/events.pde
2012-08-21 18:57:59 -07:00
uncrustify
0683be294b
uncrustify ArduPlane/climb_rate.pde
2012-08-21 18:57:21 -07:00
uncrustify
c69772388b
uncrustify ArduPlane/control_modes.pde
2012-08-21 18:57:21 -07:00
Andrew Tridgell
343f7d2de0
APM: removed DMP support from ArduPlane
...
Without centripetal correction the DMP code will almost certainly
crash a plane
2012-08-22 11:46:35 +10:00
Andrew Tridgell
6d11940ada
AHRS: removed Quaternion build support from APM/ACM/rover
2012-08-22 10:42:21 +10:00
Andrew Tridgell
bf2319a0fc
AHRS: fixed reference to AHRS var_info for APM and ACM
2012-08-21 15:58:32 +10:00
Andrew Tridgell
c5b77f3909
APM: reset steering PID integrator in reset_I()
2012-08-21 15:01:01 +10:00
rmackay9
11e946eb54
ArduCopter, ArduPilot: revert mavlink delay callback to be "unsigned long"
2012-08-18 20:34:41 +09:00
rmackay9
360c1198a6
ArduPlane: more "int" to "int16_t" and added cast to (int) in printf statements.
...
Also modified dump_log function's last_log_num to be int16_t which matches return type from DataFlash's find_last_log method.
2012-08-18 18:55:14 +09:00
rmackay9
6d489947cf
ArduPlane: replaced many "int" with "int16_t", "long" with "int32_t"
2012-08-18 18:26:13 +09:00
rmackay9
9773c8ce93
ArduPlane: commented out two unused variables to remove compiler warning
2012-08-18 13:20:34 +09:00
Andrew Tridgell
0868bb76e5
APM: fixed SITL build
2012-08-17 16:28:45 +10:00
Andrew Tridgell
5e690d5680
APM: added parameter FBWB_ELEV_REV
...
this fixes issue 343
2012-08-17 15:04:53 +10:00
Andrew Tridgell
6300fa7399
math: more abs() fixes
...
abs() is 16 bit
2012-08-16 15:17:42 +10:00
Andrew Tridgell
034fb5b194
APM: fixed hil build
2012-08-16 12:53:37 +10:00
Andrew Tridgell
d27e51f20a
APM: allow telemetry send during parameter and waypoint fetch
...
this slows down telemetry by a factor of 4 during parameter or
waypoint transmit. That ensures that mode changes and gps position are
still updated during a long parameter fetch
2012-08-16 10:50:12 +10:00
Andrew Tridgell
ed064b2506
MAVLink: enable fetching of single parameters
...
this makes it possible for the GCS to fetch a single parameter by
name, which is useful for parameters that change in flight
2012-08-16 10:14:46 +10:00
Andrew Tridgell
c960db7af5
APM: allow for separate calibration of airspeed/barometer
...
this is useful just before takeoff, to account for temperature changes
2012-08-15 19:49:09 +10:00
Andrew Tridgell
ad73c229ab
APM: added LAND_FLARE_ALT and LAND_FLARE_SEC
...
these allow you to configure the altitude and time before touchdown to
flare the plane and lock the heading. Useful on larger planes.
2012-08-15 18:11:16 +10:00
Andrew Tridgell
1252ddfe0c
APM: rename RDRSTEER to WHEELSTEER
...
thanks to Jon for the suggestion
2012-08-15 16:28:59 +10:00
Andrew Tridgell
ffbd229841
APM: use AHRS position for geo-fence
...
this allows it to take account of dead-reckoning
2012-08-15 14:31:10 +10:00
Andrew Tridgell
df3c8a5bc0
APM: when land_complete is true, use land_pitch
...
this gives a flare on final landing
2012-08-15 12:39:35 +10:00
Andrew Tridgell
2d7fcbd14b
APM: reload airspeed and throttle after landing
...
this allows for restarting a mission after landing with reasonable
airspeed values
2012-08-15 12:39:35 +10:00
Andrew Tridgell
47be6d8ad1
AP_Airspeed: remove airspeed filter and run at 10Hz
...
this saves on the filter memory, and gives just as good a result
2012-08-15 12:39:35 +10:00
Andrew Tridgell
e26e8b3b67
APM: added RDRSTEER_ PID for steering on ground
...
this allows for rolling takeoff with steering, and use of rudder in
landing
2012-08-15 12:39:35 +10:00
Andrew Tridgell
52064772ee
APM: report speed changes via MAVLink
2012-08-15 12:39:35 +10:00
Andrew Tridgell
817017658d
APM: implement FENCE_ACTION_REPORT
...
when FENCE_ACTION is set to FENCE_ACTION_REPORT a fence breach is
reported, but the flight mode is not changed
2012-08-15 12:39:35 +10:00
Andrew Tridgell
8cb55eb75a
APM: keep the time of the last heartbeat message
...
this will be used for failsafe processing
2012-08-15 12:39:34 +10:00
Andrew Tridgell
0584017aff
APM: expose change_command() and geofence_breached() to libraries
...
this makes a failsafe library easier
2012-08-15 12:39:34 +10:00
Andrew Tridgell
ff6301fb46
APM: show waypoint number in jump message
2012-08-15 12:39:34 +10:00
Andrew Tridgell
92bdc23ab6
APM: minor formatting fix
2012-08-15 12:39:34 +10:00
Andrew Tridgell
2865434d02
APM: added 'OBC' failsafe module for ArduPlane
...
this adds FS_* parameters for setting up APM to follow the outback
challenge failsafe rules.
This includes:
- manual pin
- heartbeat pin
- waypoint for heartbeat failure
- waypoint for GPS failure
2012-08-15 12:39:34 +10:00
Andrew Tridgell
5631b90222
APM: interpret zero lat/lng as being current location
...
this makes it easy to have a "loiter in current position" mission
element
2012-08-15 12:39:34 +10:00
Andrew Tridgell
93f1d5645b
APM: fixed LOITER_TIME and LOITER_TURNS
...
These now follow the mavlink spec. Loiter time is in seconds, and
loiter turns is now 32 bit angle, so can handle larger numbers of
turns.
2012-08-15 12:39:34 +10:00
Andrew Tridgell
3bdc7d41be
INS: disable INS AP_Param table when not on APM1 hardware
...
this could cause overwriting of memory with default values
2012-08-11 22:06:03 +10:00
Andrew Tridgell
c31eef59ae
Mavlink: log wind estimation result
2012-08-11 22:06:03 +10:00
Andrew Tridgell
d9b09d2c93
APM: allow for navigation by dead-reckoning
...
we now ask AHRS if we have a position estimate, and use that if
available
2012-08-11 12:01:08 +10:00
Andrew Tridgell
9fea3e3ac1
APM: pass airspeed sensor to AHRS
2012-08-11 08:57:44 +10:00
Andrew Tridgell
0ffc89d512
APM: support the MISSION_WRITE_PARTIAL_LIST command
...
this allows missions to be partially updated in flight
2012-08-09 17:13:36 +10:00
Andrew Tridgell
dc47074dbd
MAVLink: removed the need for Mavlink_compat.h
...
we have now fully transitioned to MAVLink 1.0, so we no longer need
the compatibility layer and the old names in the code
2012-08-09 12:22:46 +10:00
Andrew Tridgell
2a7b298bbc
MAVLink: moved mavlink variables back to library
...
these were moved to the main sketches to allow for compile time
selection of MAVLink 0.9 vs 1.0. We no longer support 0.9, so we can
move it back, which simplifies some test sketches
2012-08-09 12:06:21 +10:00
Andrew Tridgell
5498d347f3
APM: Added RST_MISSION_CH option
...
this allows a pilot to reset the mission using a transmitter
switch. Very useful for repeating a mission during testing
2012-08-09 10:33:16 +10:00
Andrew Tridgell
e2c8ec2c9e
APM: removed THROTTLE_REVERSE option
...
Better to use RC3_REV
2012-08-09 10:04:44 +10:00
Andrew Tridgell
e133900c68
APM: Added STICK_MIXING option
...
this replaces the compile time option. Disabling during long distance
flights when the transmitter may be out of range is useful.
2012-08-09 08:53:29 +10:00