Michael Day
d4f42d41f7
Plane: removed some compile warnings from rally.pde
2013-12-31 09:48:24 +11:00
Michael Day
c87d72353f
Plane: Introducing FENCE_RETALT parameter.
2013-12-31 09:48:20 +11:00
Michael Day
87c60ee293
Plane: Doc. update for ALT_HOLD_RTL with Rally Points.
2013-12-31 09:48:16 +11:00
Andrew Tridgell
f35cf2beba
Plane: use file based logs in SITL
2013-12-29 07:14:31 +11:00
Andrew Tridgell
3486b933c0
Plane: use common send_meminfo()
2013-12-28 16:02:06 +11:00
Andrew Tridgell
72473e4317
Plane: use AP_HAL available_memory() call
2013-12-28 14:51:37 +11:00
Andrew Tridgell
6856cc6e4b
Plane: break up GPS and logging, allow GPS update at 50Hz
...
this prevents mismatches in GPS message arrival and accel message
arrival from causing small DCM errors
2013-12-28 14:25:54 +11:00
Randy Mackay
a1d5c0a02a
Plane: replace APM with board in cli
2013-12-28 10:42:30 +09:00
Andrew Tridgell
7ffbed24cc
Plane: initialise scheduler callback after logging
...
this could cause log corruption otherwise
2013-12-28 10:24:46 +11:00
Andrew Tridgell
43a56151d7
Plane: reset mission on disarm
...
this makes repeated missions easier
2013-12-20 12:04:23 +11:00
Andrew Tridgell
89366a1ee1
Plane: fixed ARMING_REQUIRED=2 on APM2 to disable rc output on throttle
2013-12-20 11:59:45 +11:00
Andrew Tridgell
ce773f085a
Plane: make the defaut for FS_GCS_ENABL clearer
2013-12-20 11:44:44 +11:00
Andrew Tridgell
263f3b116b
Plane: added FS_GCS_ENABL==2 option
...
this allows GCS failsafe when the GCS isn't getting updates from the
aircraft
2013-12-20 11:39:00 +11:00
Andrew Tridgell
a4af83d454
Plane: only allow right rudder for arming
...
copter users may try to use left rudder to ensure aircraft is
disarmed. Making left rudder arm could be dangerous
2013-12-20 09:43:04 +11:00
Andrew Tridgell
77c6e51887
Plane: allow throttle failsafe on no RC input
...
on PX4 we just stop getting input on loss of RC - we need to consider
this to be "throttle failsafe"
2013-12-20 09:43:04 +11:00
Andrew Tridgell
4f242aedec
Plane: fixed a bug where mode would not revert on geo-fence disable
...
the mode would not revert if the switch was in position 0
2013-12-17 14:14:13 +11:00
Michael Day
dcfed13c87
Plane: Fence breach now sends to correct return point in Guided Mode.
2013-12-17 14:14:13 +11:00
Andrew Tridgell
ca67c24eef
Plane: removed common functions
2013-12-17 12:00:46 +11:00
Andrew Tridgell
d93b95186d
Plane: prevent a build warning
2013-12-17 11:51:36 +11:00
Andrew Tridgell
8b7fe3cf50
Plane: changes for new DataFlash API
2013-12-17 11:51:36 +11:00
Andrew Tridgell
e0b511e367
Plane: enable new log download functions
2013-12-17 11:51:35 +11:00
Andrew Tridgell
508817d617
Plane: moved ap_message into GCS.h
2013-12-17 11:51:35 +11:00
Andrew Tridgell
4bad2cfb3a
Plane: use common GCS.h
2013-12-17 11:51:35 +11:00
Andrew Tridgell
622a2053ff
Plane: fixed parameters typo
2013-12-11 21:37:01 +11:00
Andrew Tridgell
3508a14542
Plane: small arming tidyups
2013-12-11 17:29:26 +11:00
Andrew Tridgell
b0236610b2
Plane: fixed arming bit in MAVLink heartbeat message
2013-12-11 17:29:26 +11:00
Andrew Tridgell
103da0c889
Plane: when no GPS lock always send GPS messages
2013-12-11 17:29:26 +11:00
Michael Day
b0a0316dd6
Plane: Now using AP_Arming library.
2013-12-11 17:29:23 +11:00
Andrew Tridgell
6ed21c12db
Plane: added logging of 2nd compass
2013-12-10 15:32:11 +11:00
Andrew Tridgell
49f49648ec
Plane: changes for compass healthy API
2013-12-09 17:47:38 +11:00
Andrew Tridgell
02af644010
Plane: report both sets of sensors in MAVLink
2013-12-09 17:34:07 +11:00
Andrew Tridgell
b637ab35e4
Plane: lower the priority of mount update
2013-12-09 17:34:07 +11:00
Andrew Tridgell
d642254f18
Plane: breakup one second loop into 3 pieces
...
this prevents it not running when gimbal is active
2013-12-09 17:34:07 +11:00
Andrew Tridgell
65c97a2f5f
Plane: updates for compass API change
2013-12-09 17:34:06 +11:00
Randy Mackay
b6462c23af
Plane: disable external leds
2013-11-30 22:53:55 +09:00
Andrew Tridgell
1124e84ae0
Plane: fixed APM1 build
2013-11-30 06:56:16 +11:00
Andrew Tridgell
6b4a3ef98b
Plane: added MAVLink sonar logging
2013-11-28 21:49:27 +11:00
Andrew Tridgell
5a0cb5dea4
Plane: added sonar logging to dataflash
2013-11-28 21:49:27 +11:00
Randy Mackay
45ab18f131
Plane: rename Log_Write_SERVO to Log_Write_RCOU
2013-11-27 20:18:16 +09:00
Andrew Tridgell
079d48f6cc
Plane: use log system ID if available
2013-11-26 13:00:03 +11:00
Andrew Tridgell
8383abc1fe
Plane: added SERIAL2_BAUD and rename SERIAL3_BAUD to SERIAL1_BAUD
2013-11-26 13:00:03 +11:00
Andrew Tridgell
a05a32dbda
Plane: added RCIN and SRVO logging
2013-11-26 09:04:43 +11:00
Andrew Tridgell
457183b6f5
Plane: cope with uartD being NULL
2013-11-23 21:44:45 +11:00
Andrew Tridgell
5f32f44366
Plane: fixed mavlink_queue[] size
2013-11-23 19:29:23 +11:00
Andrew Tridgell
2fa5e6310d
Plane: added 3rd telemetry stream on platforms that have it
...
this generalises the gcs object usage
2013-11-23 19:29:22 +11:00
Andrew Tridgell
490a061c6f
Plane: added HIL_ERR_LIMIT
...
this allows DCM to recover if HIL attitude drifts too far from true attitude
2013-11-23 18:50:57 +11:00
Andrew Tridgell
17c9cedac1
Plane: send out HIL servo updates as soon as we can
...
this improves the servo responsiveness of HIL a lot
2013-11-23 18:50:57 +11:00
Andrew Tridgell
1e36ebc31b
Plane: reset HIL attitude if off by more than 5 degrees
2013-11-23 18:50:56 +11:00
Andrew Tridgell
8bfe59cea5
Plane: send SIMSTATE messages in HIL
...
this allows better tracking of the simulator state, to see if issues
are caused by DCM failure
2013-11-23 18:50:56 +11:00
Andrew Tridgell
58b767b8e4
Plane: rename geofence structure
...
makes using gdb easier as it doesn't mix up the structure and the
pointer
2013-11-23 18:50:55 +11:00
Randy Mackay
c01a3debd6
Plane: log INS errors in PM message
2013-11-18 13:08:40 +09:00
Andrew Tridgell
56f574684d
Plane: fixed throttle failsafe with reversed throttle
2013-11-17 15:32:53 +11:00
Andrew Tridgell
2af69b7131
Plane: make batter failsafe docs clearer
2013-11-09 18:14:02 +11:00
Andrew Tridgell
7e10811673
Plane: send firmware and git version in tlog
2013-11-09 10:09:20 +11:00
Andrew Tridgell
eee1364f05
Plane: update comments on ALT_CTRL_ALG and NAV_CONTROLLER
2013-11-08 07:54:16 +11:00
Andrew Tridgell
c1bc093cf5
Plane: removed unused variable
2013-11-07 13:54:25 +11:00
Andrew Tridgell
1aa29df52d
Plane: report INS and airspeed health
2013-11-07 12:48:17 +11:00
Andrew Tridgell
53c3dff334
Plane: allow changing of loiter direction while loitering
...
useful for causing path capture failures in the sim
2013-11-07 11:54:28 +11:00
Andrew Tridgell
1328bbf040
Plane: log the AHRS error terms in dataflash
...
also log raw IMU at 10Hz with default config
2013-11-07 10:19:13 +11:00
Andrew Tridgell
691eaabe94
Plane: prepare for 2.76 release
2013-11-05 15:55:08 +11:00
Andrew Tridgell
78604bd84e
Plane: only send GPS_RAW_INT if new data
...
this reduces link load when asking for high rate telemetry
2013-11-05 14:40:51 +11:00
Andrew Tridgell
5e4b243c7b
Plane: make DataFlash objects static
2013-11-04 21:37:50 +11:00
Andrew Tridgell
ae8ef344bf
Plane: added time to most plane log messages
2013-11-04 21:37:30 +11:00
Andrew Tridgell
231b5ab793
Plane: prevent too large combined pitch/roll angles
...
this reduces the roll limit by cos(pitch) and pitch minimum by
cos(roll). This prevents unreasonable attitudes in all stabilised
modes
Pair-Programmed-With: Paul Riseborough <p_riseborough@live.com.au>
2013-11-04 21:21:42 +11:00
Andrew Tridgell
ff5f2ceae5
Plane: update for API changes
2013-11-04 21:21:42 +11:00
Andrew Tridgell
b1c9b57c73
Plane: mark 2.76beta1
2013-11-02 21:48:17 +11:00
Andrew Tridgell
26a3860af2
Plane: fixed PM message
2013-11-02 21:41:30 +11:00
Andrew Tridgell
5a92ce4af6
Plane: added altitude and ground speed to NTUN logs
2013-11-02 21:41:11 +11:00
Andrew Tridgell
fe3943e686
Plane: faster startup
...
make it less likely to send wrong INS_PRODUCT_ID, plus don't waste as
much time
2013-11-02 21:41:11 +11:00
Randy Mackay
328de5fc7b
Plane: add @Increment to battery failsafe descriptions
2013-10-29 11:23:54 +09:00
Andrew Tridgell
bcb0deb888
Plane: ready for 2.75 release
2013-10-28 18:22:25 +11:00
Andrew Tridgell
3ff407cb75
Plane: improved perf monitoring with SCHED_DEBUG
2013-10-28 17:10:00 +11:00
Andrew Tridgell
cfa38df528
Plane: allow parameters to download at full speed
2013-10-28 10:34:32 +11:00
Andrew Tridgell
a407609dbe
Plane: tag 2.75beta5
2013-10-26 07:57:35 +11:00
Andrew Tridgell
b897285737
Plane: set system time on GPS lock
2013-10-24 14:22:48 +11:00
Andrew Tridgell
3289041428
Plane: added MAVLink SYSTEM_TIME message
2013-10-24 14:22:47 +11:00
Andrew Tridgell
6f3458eb25
Plane: fixed setting of waypoint when not in AUTO
...
this fixes a bug where the next waypoint is set incorrectly if set via
MAVLink when not in AUTO
2013-10-23 09:40:41 +11:00
Andrew Tridgell
210ca08abd
Plane: changed to 2.75beta4
2013-10-18 11:53:51 +11:00
Andrew Tridgell
4239498b62
Plane: moved fast_loop() into main scheduler table
2013-10-15 09:52:23 +11:00
Andrew Tridgell
294b669948
Plane: fixed rally altitude to be in meters
...
this matches the docs
2013-10-14 16:38:40 +11:00
Andrew Tridgell
5adf4e1706
Plane: improve THROTTLE_NUDGE docs
2013-10-14 15:40:26 +11:00
Andrew Tridgell
5e1f5ffb7f
Plane: removed some old defines
2013-10-14 14:40:30 +11:00
Andrew Tridgell
7f6eecd9d5
Plane: cleanup cruft in Makefile
2013-10-13 21:41:01 +11:00
Andrew Tridgell
a3168bcbaa
Plane: fixes for AP_Mount API
2013-10-13 11:03:31 +09:00
Andrew Tridgell
035ac3800a
Plane: use G_Dt for acro angle integration
...
also cleanup some other uses of performance timing
2013-10-12 13:30:27 +11:00
Andrew Tridgell
05115684c1
Plane: pass FlightStage to TECS
...
this will allow for better throttle and pitch control on landing
2013-10-12 13:14:30 +11:00
Andrew Tridgell
0ec322ee47
Plane: support MAV_CMD_DO_SET_CAM_TRIGG_DIST
2013-10-11 21:37:27 +11:00
Andrew Tridgell
72505cf4e5
Plane: release 2.75beta3
2013-10-11 16:29:08 +11:00
Andrew Tridgell
8e5d1430da
Plane: use ins.wait_for_sample()
2013-10-08 17:31:15 +11:00
Andrew Tridgell
2bb497703c
Plane: avoid delay_microseconds() until fixed on PX4
2013-10-08 14:55:38 +11:00
Andrew Tridgell
48ed480d59
Plane: improved latency of main loop
...
use a 500usec delay
2013-10-08 11:50:54 +11:00
Andrew Tridgell
e6af7dad3d
Plane: switched to L3G4200D driver for Linux
2013-10-08 11:50:54 +11:00
Andrew Tridgell
a4604ab317
Plane: honor zero RALLY_LIMIT_KM
2013-10-06 14:54:50 +11:00
Andrew Tridgell
5bf1463e7a
Plane: added RALLY_LIMIT_KM
...
this will prevent an embarressing use of a rally point from the wrong
airfield
2013-10-06 14:51:13 +11:00
Andrew Tridgell
365e82aecb
Plane: use a rally point when out of mission items
2013-10-05 23:07:32 +10:00
Andrew Tridgell
61dd04ccb5
Plane: auto-update home and baro calibration when disarmed
...
this takes advantage of the PX4 arming state to ensure position and
baro calibration is updated
2013-10-05 18:45:45 +10:00
Andrew Tridgell
536fbb4a30
Plane: if pilot gives aileron input then disable ground steering
...
otherwise it would be very tricky to do a low pass!
2013-10-05 07:46:27 +10:00
Andrew Tridgell
d32e58db84
Plane: split out the channel stick mixing
...
makes code a bit clearer
2013-10-05 07:46:27 +10:00
Andrew Tridgell
3be939eb03
Plane: give manual steering when still
...
useful for servo testing
2013-10-05 07:46:27 +10:00
Andrew Tridgell
d275f50539
Plane: added GROUND_STEER_ALT and GROUND_STEER_DPS
...
this uses the new AP_SteerController steering controller developed for
the rover code to allow for ground steering of planes
2013-10-05 07:46:27 +10:00
Andrew Tridgell
081510d37a
Plane: added ACRO_LOCKING parameter
...
this enables/disables the attitude locking in acro mode, allowing acro
to be a pure rate controller
2013-10-05 07:45:12 +10:00
Randy Mackay
6e2b1093fc
Plane: mavlink ext status to use SYS_STATUS_SENSOR enum
2013-10-04 13:21:01 +09:00
Andrew Tridgell
011915eb1c
Plane: added error checking to rally load save
...
sanity check the rally points
2013-10-03 12:21:08 +10:00
Michael Day
497c95de8e
Plane: Add support for rally points.
...
Added parameter RALLY_TOTAL.
Added handlers for new MAVLink messages RALLY_POINT and
RALLY_FETCH_POINT.
defines.h modified to make room in EEPROM to store rally points.
rally.pde added and is responsible for ensuring rally points get
stored in the correct spot in EEPROM.
Multiple Rally/RTL point support now done. If rally points have
been defined, then when RTL mode is entered, the closest Rally
point is chosend and the plane loiters at that point.
Note only 10 rally points can be defined; this is to save space in
the APM's EEPROM.
2013-10-03 12:21:08 +10:00
Randy Mackay
21360aeebf
Plane: sent current as -1 to GCS when can't be monitored
2013-10-03 11:16:33 +09:00
Randy Mackay
9722276827
Plane: batt curr and remaining should be int16
2013-10-03 11:16:26 +09:00
Randy Mackay
cb91440c63
Plane: remove test_battery from CLI
2013-10-03 11:16:22 +09:00
Randy Mackay
9388ea3848
Plane: integrate BattMonitor exhausted method
...
BatteryMonitor object made static
Removed unused macros for battery voltage and current monitoring
2013-10-03 11:16:21 +09:00
Andrew Tridgell
74c8c8aafa
Plane: auto-upgrade battery variables in EEPROM
2013-10-03 11:16:12 +09:00
Randy Mackay
c64d444b5a
Plane: integrate BattMonitor
2013-10-03 11:16:08 +09:00
Andrew Tridgell
65976831e2
Plane: moved Linux logs to logs directory
2013-10-01 13:05:18 +10:00
Andrew Tridgell
eef693f243
Plane: removed some compat code
...
fixes warnings
2013-09-30 21:06:43 +10:00
Andrew Tridgell
24099a520d
Plane: updates for AP_HAL::MemberProc
2013-09-30 21:06:43 +10:00
Andrew Tridgell
444d053dc2
Plane: enable Oilpan and BMP085 on Linux
2013-09-29 01:02:05 +10:00
Andrew Tridgell
f68778d453
Plane: be friendly to multi-tasking OSes
2013-09-28 22:04:15 +10:00
Andrew Tridgell
287db19119
Plane: updates for Stub -> HIL
2013-09-28 22:04:15 +10:00
Andrew Tridgell
88959004d7
Plane: use new scheduler API
2013-09-28 21:24:03 +10:00
Andrew Tridgell
1fd0f73e3f
Plane: use DataFlash_File on Linux
2013-09-28 21:24:02 +10:00
Andrew Tridgell
c3d0b315cf
Plane: added HAL_LINUX includes
2013-09-28 21:24:02 +10:00
Andrew Tridgell
650ff258db
Plane: update for new INS API
2013-09-27 10:49:00 +10:00
Mike McCauley
6a8c1a0c36
Plane: Added flymaple to ArduPlane
2013-09-24 13:51:28 +10:00
Mike McCauley
aa800472be
Plane: defines.h added Flymaple INS
2013-09-24 13:51:28 +10:00
Mike McCauley
3ddcdba659
Plane: Parameters BATTERY_MONITORING for Flymaple
2013-09-24 13:51:28 +10:00
Mike McCauley
18c6b00b5b
Plane: Added definitions for Flymaple
2013-09-24 13:51:28 +10:00
Andrew Tridgell
4f310aaec8
Plane: fixed build with print() base change
2013-09-23 18:10:22 +10:00
Mike McCauley
767884b7f1
Plane: workaround conflicts between wirish and APM compatibility
2013-09-23 18:10:21 +10:00
Kevin Hester
996eda0080
Plane: Report MAV_STATE_ACTIVE if flying, MAV_STATE_STANDBY otherwise
...
(There are also various error states MAV_STATE_CRITICAL that are unchanged
by this check in).
The is_flying() check is similar to the code in suppress_throttle, but
I wanted to make it very optimistic on thinking we are flying - which is
not what you want for set_throttle...
(AC has similar MAV_STATE_ACTIVE vs MAV_STATE_STANDBY behavior now)
2013-09-21 21:57:07 +10:00
Andrew Tridgell
bcce2e4fc5
Plane: use new Baro API
2013-09-21 21:31:03 +10:00
Andrew Tridgell
36466e91ed
Plane: run SENSOR_OFFSETS message at 1/10 of the requested rate
...
this message wastes bandwidth, as the values change very slowly
2013-09-21 09:35:45 +10:00
Andrew Tridgell
c4dcdcf5a2
Plane: only send RC_CHANNELS_SCALED in HIL
...
saves a bit of telemetry bandwidth
2013-09-21 09:30:29 +10:00
Andrew Tridgell
b28a4f21f2
Plane: fixed uartA baud rates for APM1
2013-09-21 09:30:29 +10:00
Andrew Tridgell
e455ee0a94
Plane: fixed throttle suppression for AUTO_FBW_STEER=1
2013-09-20 17:20:06 +10:00
Andrew Tridgell
1869cd52e1
Plane: fixed AUTO_FBW_STEER stick mixing
2013-09-20 17:20:06 +10:00
Andrew Tridgell
328e900364
Plane: changed TKOFF_THR_DELAY default to 2
...
this makes it safer for hand launch with pusher props
2013-09-19 21:42:21 +10:00
Paul Riseborough
43cf0736a3
Plane: Auto Takeoff Check updates
...
Adds additional launch angle protection and protection against early
exit from auto causing unexpected motor start on re-entry
2013-09-19 21:37:31 +10:00
Randy Mackay
ab4274aa8d
Plane: disable battery failsafe when usb connected
2013-09-19 17:43:08 +09:00
Andrew Tridgell
21a4da0d29
Plane: removed flash_leds() calls
2013-09-19 18:38:28 +10:00
Andrew Tridgell
4bd6b2f428
Plane: use new usb_connected() function
2013-09-19 16:23:58 +10:00
Andrew Tridgell
8a76d82de4
Plane: set failsafe_radio AP_Notify bits
2013-09-18 11:58:54 +10:00
Andrew Tridgell
150e7a3f16
Plane: prevent arming tone on startup
2013-09-18 10:56:06 +10:00
Andrew Tridgell
95a696ea36
Plane: enable failsafe battery reporting
2013-09-18 10:50:34 +10:00
Andrew Tridgell
ec0c894306
Plane: use the projected position for geofencing and waypoints
2013-09-17 21:05:25 +10:00
Andrew Tridgell
43ffe91546
Plane: added FS_ACTION of 2 for glide
...
this allows people without specified settings in their receiver for
failsafe to choose FBWA zero throttle glide on throttle failsafe. That
can be a better choice when flying at a R/C club field
2013-09-15 15:05:39 +10:00
Andrew Tridgell
dd6a69f588
Plane: added WP_MAX_RADIUS parameter
...
useful when using AUTO_FBW_STEER for manual steering in competitions
2013-09-13 17:43:08 +10:00
Andrew Tridgell
cc6acac1dd
Plane: added AUTO_FBW_STEER option
...
this is an unusual option that gives FBWA flight control in AUTO
mode. It is being added to support use of APM in an aerial robotics
competition where students need to pilot the plane, but they still
need waypoint triggering of payloads
2013-09-13 14:38:09 +10:00
Andrew Tridgell
de7b42e323
Plane: changed to AP_Vehicle.h
2013-09-13 11:46:54 +10:00
Andrew Tridgell
8010d7fd78
Plane: update battery pin docs
2013-09-12 13:43:22 +10:00
Andrew Tridgell
fe5a4ab710
Plane: fixed Vcc
2013-09-12 13:26:27 +10:00
Andrew Tridgell
0c8d56632e
Plane: fixed SR0 and SR3 autodocs
2013-09-12 09:53:24 +10:00
Andrew Tridgell
f6688582a6
Plane: added FENCE_ACTION=3 behaviour
...
this makes it safer to enable the geofence as a receiver failsafe
mode. It retains manual throttle control, so if it triggers on the
ground due to the receiver losing signal from the transmitter then the
throttle can be kept low, preventing an unexpected takeoff.
2013-09-08 07:31:10 +10:00
Craig3DRobotics
630095adaa
Revert "Copter: Corrected SR0 & SR3 parameter descriptions"
...
This reverts commit 6568234018
.
2013-09-06 09:58:19 -07:00
Craig3DRobotics
2b726abe0e
Plane: Correction on SR0 & SR3 parameter description.
2013-09-05 22:29:10 -07:00
Andrew Tridgell
4a8c9a7765
Plane: support reboot to bootloader
2013-09-04 11:59:16 +10:00
Andrew Tridgell
a00e4a1e83
Plane: send GCS message on relay change
...
makes it easier to debug
2013-08-30 15:05:16 +10:00
Andrew Tridgell
45cf82ba15
Plane: removed CONFIG_RELAY check
...
relay is always available
2013-08-30 14:40:47 +10:00
Andrew Tridgell
4762b3e7c6
Plane: change to 2.75beta2
2013-08-30 14:02:21 +10:00
Andrew Tridgell
a93f7c39a9
Plane: updates for new notify API
2013-08-30 13:01:35 +10:00
Randy Mackay
ad8bd16725
Plane: integrate AP_Notify
2013-08-30 13:01:35 +10:00
Andrew Tridgell
2ba9ce60e3
Plane: fixed comment
2013-08-30 13:01:34 +10:00
Andrew Tridgell
8733391315
Plane: call airspeed MAVLink logging function
2013-08-30 13:01:34 +10:00
Andrew Tridgell
5cec9b65c9
Plane: constrain calibration to roll/pitch limits
2013-08-30 13:01:34 +10:00
Andrew Tridgell
364790414c
Plane: support new RADIO_STATUS msg
2013-08-24 17:59:13 +10:00
Andrew Tridgell
b16e3e4c85
Plane: changed FBW min to 9 m/s
...
6 m/s is too dangerous for widely used planes
2013-08-18 11:42:23 +10:00
Andrew Tridgell
8dd0aa12ed
Plane: prevent GPS speed spikes at startup from breaking airspeed cal
...
the filter can be affected by a huge GPS velocity spike
2013-08-18 11:42:22 +10:00
Andrew Tridgell
4425b6af7c
Plane: update for new TECS API
2013-08-14 14:59:01 +10:00
Andrew Tridgell
accfd46633
Plane: update for new APM_Control API
2013-08-14 14:57:41 +10:00
Andrew Tridgell
8378dc9779
Plane: use reference to AHRS
2013-08-13 13:49:34 +10:00
Andrew Tridgell
5cfdf52381
Plane: change default modes to FBWA not STABILIZE
2013-08-13 13:42:27 +10:00
Andrew Tridgell
d4ca3ebf65
Plane: check for parameter send at default of 10Hz
...
50Hz can cause overruns, especially on PX4 which can drain the tx
buffer very rapidly
2013-08-13 13:42:25 +10:00
Andrew Tridgell
a33573352e
Plane: fixes for updated AP_Math and AHRS APIs
...
Pair-Programmed-With: Brandon Jones <brnjones@gmail.com>
2013-08-05 10:30:04 +10:00
Andrew Tridgell
e22f58c9fc
Plane: fixed build with OBC failsafe
2013-08-03 09:18:01 +10:00
Andrew Tridgell
890b77447a
Plane: allow integrator in stabilize mode when no stick input
...
fixes issue #472
2013-08-02 21:55:34 +10:00
Andrew Tridgell
c083c15240
Plane: use a larger serial buffer
...
this makes higher rate MAVLink possible again
2013-08-02 18:46:54 +10:00
Andrew Tridgell
c3b5f20a45
Plane: run TECS 50Hz code when throttle suppressed
...
this fixes auto-launch detection using TECS
2013-08-02 18:46:48 +10:00
Andrew Tridgell
8428779558
Plane: make it easier to find task numbers
2013-08-02 18:46:42 +10:00
Andrew Tridgell
62cc84aba3
Plane: use new scheduler load_average() function
...
this also simplifies the main loop
2013-08-02 18:46:28 +10:00
Andrew Tridgell
233b033e8c
Plane: removed old speed/altitude control algorithms
...
Use TECS only. This makes the code a lot simpler and easier to
properly document
2013-07-22 13:28:11 +10:00
Andrew Tridgell
c0697d0a2d
Plane: mark 2.75beta1
2013-07-22 12:50:30 +10:00
Andrew Tridgell
965dc228c2
Plane: fixed GUIDED mode change of altitude down
2013-07-22 12:50:02 +10:00
Andrew Tridgell
b8fa83ff54
Plane: change default slewrate to 100%/second
2013-07-22 12:50:02 +10:00
Andrew Tridgell
29c854e676
Plane: remove unused function
2013-07-22 12:50:02 +10:00
Andrew Tridgell
6e288551ab
Plane: fixed reversion to pre-failsafe mode
...
if AUTO was entered using GCS, we need to switch back to the old mode,
not control channel
2013-07-22 12:50:02 +10:00
Andrew Tridgell
74dabad1f3
Plane: added SKIP_GYRO_CAL parameter
...
useful for starting the sim at high altitudes, and for starting planes
without having to hold them still
2013-07-22 12:50:01 +10:00
Andrew Tridgell
c8a83e17d0
Plane: remove old AIR_START code
...
this was never used or tested
2013-07-22 12:50:01 +10:00
Andrew Tridgell
7673ca0bac
Plane: updates for new EAS2TAS scaling
2013-07-22 12:50:01 +10:00
Andrew Tridgell
9bbe6c1967
Plane: update to new license boilerplate for GPLv3
...
we had LGPLv2 in some places, despite the fw being GPLv3
2013-07-22 12:50:01 +10:00
Andrew Tridgell
882aa68c16
Plane: use new airspeed calibration code
...
Pair-Programmed-With: Paul Riseborough <p_riseborough@live.com.au>
2013-07-22 12:50:01 +10:00
Andrew Tridgell
53b1b9b575
Plane: added note on type of airspeed in docs
2013-07-22 12:50:01 +10:00
Andrew Tridgell
2d5deddd30
Plane: set mode CIRCLE on short failsafe in AUTO
...
this makes the code match the docs
2013-07-22 12:50:00 +10:00
Andrew Tridgell
9b70675b12
Plane: check the control switch a bit more often
...
faster response to mode changes
2013-07-22 12:50:00 +10:00
Andrew Tridgell
6ed78c89ac
Plane: don't read control switch when ch3 is in failsafe
...
use ch3_counter not just the final flag
2013-07-22 12:50:00 +10:00
Andrew Tridgell
51b9cf3e76
Plane: move failsafe variables into a structure
...
this makes the logic a bit easier to follow
2013-07-22 12:50:00 +10:00
Andrew Tridgell
608345415b
Plane: pass aircraft parameters to attitude controllers
...
also cope with rename of airspeed min/max variables
Pair-Programmed-With: Paul Riseborough <p_riseborough@live.com.au>
2013-07-18 14:53:37 +10:00
Andrew Tridgell
a4f49a28fb
Plane: prepare for 2.74b release
2013-07-16 09:45:32 +10:00
Andrew Tridgell
e27dd14bcc
Plane: fixed FBWB aileron control
2013-07-16 09:44:23 +10:00
Andrew Tridgell
e8355905dd
Plane: prepare for 2.74 release
2013-07-15 11:19:38 +10:00
Andrew Tridgell
dbd47b2a30
Plane: make TECS the default speed/height controller
2013-07-15 11:12:24 +10:00
Andrew Tridgell
ec21922233
Plane: make wp_distance static
...
removed hack in AP_Camera library
2013-07-15 09:56:28 +10:00
Andrew Tridgell
3ba713352f
Plane: use update_aux() for setting up extra channels
2013-07-15 09:56:12 +10:00
Andrew Tridgell
ed20c4cbc8
Plane: fixed initial reporting of battery remaining
...
we were not showing battery remaining 100% until we used some battery
2013-07-14 21:59:15 +10:00
Andrew Tridgell
e80d73df93
Plane: expand docs for TRIM_AUTO
2013-07-14 21:23:15 +10:00
Andrew Tridgell
4087fde140
Plane: enable CTUN log message by default
2013-07-14 21:10:12 +10:00
Andrew Tridgell
e79023ceee
Plane: fixed problem with slow ground station connects
...
don't trigger the "scheduler out of time" code when in the delay
callback
Thanks to Marijm Slootweg for noticing this!
2013-07-14 17:28:34 +10:00
Andrew Tridgell
d4db2231d4
Plane: change to 2.73beta4
2013-07-13 21:47:22 +10:00
Andrew Tridgell
dc024d425a
Plane: re-do roll hanging in ACRO mode
...
this avoids the euler angle zeros of the previous method by using a
gyro integrator on the roll axis
Pair-Programmed-With: Paul Riseborough <p_riseborough@live.com.au>
2013-07-13 21:45:58 +10:00
Andrew Tridgell
b37f79d307
Plane: update for new APM_Control API
2013-07-13 21:45:58 +10:00
Andrew Tridgell
113bc20f8a
Plane: added a new CRUISE flight mode
...
See
http://diydrones.com/group/apmusergroup/forum/topics/feature-request-hold-heading-mode
this fixes issue #438
2013-07-13 21:45:58 +10:00
Andrew Tridgell
399970e76f
Plane: fixed default deadzone for the throttle channel
...
this is the 2nd half of the fix for issue #303
2013-07-13 13:19:25 +10:00
Andrew Tridgell
826ad6c086
Plane: unlock roll and pitch when we enter ACRO mode
2013-07-13 12:34:34 +10:00
Randy Mackay
1772a62415
Plane: fix to gps present check in mavlink extended status 1 msg
2013-07-13 10:27:39 +09:00
Andrew Tridgell
ea9ae31a7a
Plane: fixed a bug with altitude drift in FBWB mode
...
not taking account of deadzone correctly
2013-07-12 21:17:09 +10:00
Andrew Tridgell
cc57bfcf12
Plane: fixed handling of deadzone in ACRO mode
...
RC_Channel norm_input() does not take account of the dead zone
2013-07-12 17:54:51 +10:00
Randy Mackay
9df93881fb
Plane: set_dead_zone renamed to set_default_dead_zone
...
Change in use of parameter means value passed in should be 1/2 what it
was previously
2013-07-12 11:44:18 +09:00
Andrew Tridgell
f300df5fd1
Plane: added FS_LONG_TIMEOUT and FS_SHORT_TIMEOUT parameters
...
this is to address the issue raised here:
http://diydrones.com/forum/topics/ardupilot-circle-mode
2013-07-12 11:56:04 +10:00
Andrew Tridgell
73928b82a6
Plane: fixed FBWB airspeed control
...
thanks to Gabor for reporting this!
2013-07-11 11:58:54 +10:00
Andrew Tridgell
1d04290eab
Plane: change to 2.74beta3
2013-07-11 11:58:54 +10:00
Andrew Tridgell
11a4628409
Plane: added ACRO mode to mode choices
2013-07-11 09:10:41 +10:00
Andrew Tridgell
fc67f51901
Plane: added ACRO_ROLL_RATE and ACRO_PITCH_RATE parameters
...
default to 180 degrees/second, which seems reasonable
2013-07-11 09:10:41 +10:00
Andrew Tridgell
608007361b
Plane: added initial implementation of ACRO mode
...
rate based control with attitude locking
2013-07-11 09:10:41 +10:00
Andrew Tridgell
2005d5642a
Plane: fixed a documentation string
...
GND_ALT_OFFSET is now for barometric corrections
2013-07-10 14:46:22 +10:00
Andrew Tridgell
3c97fad2ec
Plane: changes for GPS field changes
2013-07-10 14:04:22 +10:00
Andrew Tridgell
7aa360b176
Plane: added relative_altitude helper functions
...
prevents some code duplication
2013-07-10 14:04:22 +10:00
Paul Riseborough
971d36f06b
Plane: added height to 10Hz TECS call
2013-07-10 14:04:22 +10:00
Andrew Tridgell
3c177867a4
Plane: allow enable/disable of camera log messages in CLI
2013-07-10 12:23:36 +10:00
Andrew Tridgell
f7c8d1e1ee
Plane: use current_loc.alt for altitude to TECS
2013-07-10 11:55:35 +10:00
Craig@3DR
7f4336430a
Plane: trigger picture + logging on camera update_location()
2013-07-10 08:40:01 +10:00
Paul Riseborough
a4f3180e2a
Plane: added support for throttle nudging with TECS
2013-07-09 20:51:03 +10:00
Paul Riseborough
c34803db13
Plane: pass in adjusted height above field to TECS
2013-07-09 09:25:55 +10:00
Andrew Tridgell
9f612f6f78
Plane: only call TECS when throttle is not suppressed
...
this helps prevent integrator buildup on the ground
2013-07-08 12:07:50 +10:00
Andrew Tridgell
1355b6d89d
Plane: break-up scheduling into smaller pieces
...
ensure mavlink sends don't push us over a scheduling boundary
2013-07-05 18:05:27 +10:00
Andrew Tridgell
1d6748cf3f
Plane: use a glide slope in RTL when descending
...
when above the target altitude in RTL come down slowly, when below
climb rapidly
This fixes issue #39
2013-07-05 14:56:58 +10:00
Andrew Tridgell
d30dd7c3f1
Plane: only run TECS when in an auto-throttle mode
...
this prevents integrator buildup in user controlled modes
2013-07-05 14:55:22 +10:00
Andrew Tridgell
dd330885b8
Plane: added compass and baro accumulate functions
2013-07-05 12:59:15 +10:00
Andrew Tridgell
84299c3747
Plane: document ALT_CTRL_ALG=2
2013-07-04 17:00:04 +10:00
Andrew Tridgell
6c7d160ee6
Plane: fixed TECS takeoff detection
2013-07-04 16:56:57 +10:00
Andrew Tridgell
a5bda3ffef
Plane: changed to using a "aircraft parameters" structure
...
this structure can be passed to libraries to give them easy access to
critical user parameters
2013-07-04 16:56:57 +10:00
Paul Riseborough
d62636d309
Plane: added new TECS altitude controller
...
Includes improvements to takeoff/launch detect logic to support hand
launching for X-8 flight
2013-07-04 16:56:57 +10:00
Andrew Tridgell
f3237b9e5d
Plane: update FS_LONG_ACTN and FS_SHORT_ACTN docs
...
thanks to Craig for noticing this
2013-07-02 14:50:04 +10:00
Andrew Tridgell
75ef7c26e1
Plane: update takeoff course when conditions met
...
This allows for change of heading before the final takeoff conditions
are met
thanks to Greg Fletcher for suggesting this
2013-07-01 17:05:13 +10:00
Andrew Tridgell
570ecea6c6
Plane: added secondary rudder support
2013-06-29 17:31:03 +10:00
Andrew Tridgell
0d3faeda90
Plane: update_mount assumes 50Hz, for camera trigger
2013-06-25 12:44:26 +10:00
Andrew Tridgell
bb47029564
Plane: enable CAM_TRIGG_DIST parameter
2013-06-25 12:44:26 +10:00
Andrew Tridgell
45f5d05bd2
Plane: enabled RELAY_* parameters
2013-06-25 12:44:26 +10:00
Andrew Tridgell
056e0ca40d
Plane: APM2 doesn't have channel 9 PWM output
2013-06-24 13:06:54 +10:00
Paul Riseborough
2204b30e66
Plane: Added APM_Control integrator limits to table used to covert old PID values
2013-06-22 21:59:47 +10:00
Randy Mackay
6ea568d72a
Plane: param description change for RC5 ~ RC11
...
Reversing the order may avoid duplication of param descriptions in the
auto generated parameter web page
2013-06-21 09:58:02 +09:00
Randy Mackay
75bcd7cdab
Plane: update THR_FS_VALUE parameter description
2013-06-18 15:57:29 +09:00
Andrew Tridgell
4a0c90246e
Plane: make GPS UART blocking again
2013-06-11 18:50:23 +10:00
Andrew Tridgell
641ad6bc63
Plane: increase time allowed for update_alt()
...
the altitude tracking code can be quite expensive with TECS
2013-06-07 08:41:09 +10:00
Andrew Tridgell
b0c87b8a61
Plane: fix VOLT_DIVIDER docs
2013-06-07 08:40:28 +10:00
Andrew Tridgell
b27ffdd087
Plane: new plane beta 2.74beta2
2013-06-04 15:10:11 +10:00
Andrew Tridgell
c008fa764c
Plane: update_commands() can take 7ms if it needs to write a waypoint
2013-06-04 13:42:25 +10:00
Andrew Tridgell
93cd0f9a31
Plane: switch to new AP_Scheduler
...
this gives us more accurate task scheduling in ArduPlane, plus better
monitoring of task timing (via SCHED_DEBUG)
2013-06-04 13:34:58 +10:00
Andrew Tridgell
6bac13f9e2
Plane: fixed RCMAP_* to fix channel ranges for no-reboot changes
2013-06-03 21:20:39 +10:00
Andrew Tridgell
02d72ffcba
Plane: make it possible to change board orientation at runtime
2013-06-03 16:52:44 +10:00
Andrew Tridgell
4c9bc30f58
Plane: make it possible to change control channel ordering without reboot
...
this makes configuration a bit easier
2013-06-03 16:42:38 +10:00
Andrew Tridgell
27bc0cdc2c
Plane: rename old channel_* globals
...
prevent the old "g." names from being used
2013-06-03 16:37:51 +10:00
Andrew Tridgell
a1f64d606a
Plane: fixed remaining places where primary channel ordering was assumed
...
should now use rcmap for all inputs
2013-06-03 16:23:48 +10:00
Andrew Tridgell
fb9bf21522
Plane: allow channel mapping of first 4 channels
...
this makes it easier to support DSM and SBUS radios
2013-06-03 16:23:48 +10:00
Andrew Tridgell
515d726ee0
Plane: use RC_Channel::rc_channel() instead of rc_ch[]
2013-06-03 16:23:48 +10:00
Andrew Tridgell
f7697574db
Plane: use the new airspeed driver interface
...
the choice of analog source is now in the airspeed driver
2013-06-03 11:51:09 +10:00
Andrew Tridgell
d9bcfd913a
Plane: reset attitude integrators on mode change
2013-06-01 22:29:38 +10:00
Andrew Tridgell
bb3171ab5f
Plane: zero attitude integrators on the ground
2013-06-01 22:29:38 +10:00
Andrew Tridgell
cd55ed45e2
Plane: removed the old roll/pitch/yaw PID controllers
...
use the new controllers, with auto parameter conversion
2013-05-31 14:06:56 +10:00
Andrew Tridgell
91a04ab654
Plane: fixed headers for mode logging
2013-05-31 14:04:03 +10:00
Andrew Tridgell
cae1079747
Plane: auto-convert the old RLL2SRV* parameters to the new CTL_RLL_* parameters
2013-05-31 07:58:29 +10:00
Andrew Tridgell
e48b8c7b4a
Plane: improve RTL altitude docs
2013-05-31 07:58:29 +10:00
Andrew Tridgell
6e0f1f56de
Plane: update docs on volt/current pin
2013-05-31 07:57:15 +10:00
Andrew Tridgell
fa9eb84542
Plane: added more parameter docs (flaps and GCS control)
2013-05-30 09:44:09 +10:00
Andrew Tridgell
de904468b2
Plane: added BATT_MONITOR and VOLT_DIVIDER docs
2013-05-30 09:06:36 +10:00
Andrew Tridgell
eba7d6da9a
Plane: removed the old crash_timer code
...
This code is less relevent with the new L1 navigation, and could cause
issues with the pilot not having control after a long dive.
Thanks to Soren for pointing out the issues
See issue #305
2013-05-28 11:19:28 +10:00
Andrew Tridgell
f9a1b4f0e3
Plane: improve ALT_MIX docs
2013-05-28 10:10:22 +10:00
Andrew Tridgell
767d9d0eb5
Plane: fixed stick mixing in AUTO modes
...
the mixing was asymmetric. Many thanks to Soren Kuula for noticing this!
2013-05-27 08:24:35 +10:00
Andrew Tridgell
c481ac8745
Plane: use a default mixing gain of 0.5
...
this ensures compatibility with existing configs
2013-05-25 19:15:47 +10:00
Andrew Tridgell
c81421e275
Plane: added MIXING_GAIN parameter
...
this allows for the full range of output on both channels, but can
saturate
2013-05-25 18:28:13 +10:00
Andrew Tridgell
a22f5e3bc4
Plane: enable wind estimation
2013-05-24 11:21:42 +10:00
Andrew Tridgell
dd633fcf3f
Plane: make voltage and battery capacity failsafe settable at runtime
...
this also fixes issue #292
2013-05-22 20:33:57 +10:00
Randy Mackay
4c08e32bf6
Plane: param update for AP_Baro
2013-05-21 14:22:23 +09:00
Randy Mackay
84909ee56a
Plane: add parameter description for LOG_BITMASK
2013-05-21 11:22:11 +09:00
Randy Mackay
c7961a72fc
Plane: send_text_P bug fix for short messages
2013-05-20 12:51:16 +09:00
Andrew Tridgell
bd4b7d136f
Plane: mark ArduPlane 2.74beta
2013-05-13 17:32:33 +10:00
Andrew Tridgell
001d18b51d
Plane: removed scaling of pitot source
2013-05-13 15:19:05 +10:00
Andrew Tridgell
97b6aaac77
Plane: use voltage_average() for RSSI
...
this fixes it on PX4
2013-05-13 15:19:05 +10:00
Andrew Tridgell
b940c4b28e
Plane: use library gcs_severity
2013-05-09 09:28:57 +10:00
Andrew Tridgell
635b3fabda
Plane: fixed APM1-1280 build
2013-05-08 21:44:45 +10:00
Andrew Tridgell
81c1fd5fc4
Plane: support 3D accel calibration over MAVLink
2013-05-08 16:25:35 +10:00
Andrew Tridgell
c5f1570f32
Plane: fixed flash logging of ATT
...
fixed types to be int16
2013-05-08 14:21:32 +10:00
priseborough
854c50501d
Plane: Added a constraint to demanded bank angle during FBW-A mode to prevent roll limits being exceeded
2013-05-07 11:01:05 +10:00
Andrew Tridgell
fdd509a7c1
Plane: move baro init earlier in startup
...
this ensures it is initialised when CLI takeover by MP happens
Thanks to Prof Avi Levi for reporting this bug
2013-05-06 10:57:57 +10:00
Andrew Tridgell
0cf49308af
Plane: mark a 2.73beta release
2013-05-05 22:36:22 +10:00
Andrew Tridgell
0e6a64fc14
Plane: reset roll/pitch integrators for APM_Control in takeoff
...
when airspeed is below airspeed minimum. This is consistent with the
previous controllers
Pair-Programmed-With: Paul Riseborough <p_riseborough@live.com.au>
2013-05-05 22:03:13 +10:00
Andrew Tridgell
9c6f80c42b
Plane: moved some default values to Parameters.pde
2013-05-05 21:51:09 +10:00
Andrew Tridgell
6251d0510a
Plane: obey pitch trim and throttle pitch feed forward in new controllers
...
Pair-Programmed-With: Paul Riseborough <p_riseborough@live.com.au>
2013-05-05 21:51:09 +10:00
Andrew Tridgell
e87a6d5564
Plane: added links to new APM controller docs
2013-05-05 21:51:09 +10:00
Andrew Tridgell
11ad9d5a2d
Plane: auto-invert pitch control when upside down
...
this helps to recover when flying inverted, for example when in manual
and hitting the lower altitude geofence
2013-05-05 21:51:09 +10:00
Andrew Tridgell
4e2b88f6e6
Plane: added ATT_CONTROLLER option to select attitude controller
...
set to 1 for the new APM_Control library
2013-05-05 21:51:09 +10:00
Andrew Tridgell
55f7d18979
Plane: avoid copying the DCM matrix
2013-05-05 21:51:09 +10:00
priseborough
3663426550
Plane: Fixed bug in groundspeed_undershoot that could cause a fly-away in windy conditions.
...
Use the component of velocity in the forward direction rather than the magnitude
2013-05-05 21:51:08 +10:00
Paul Riseborough
663951d9a7
Plane: rename APM_Control parameters
...
this groups the parameters more logically
2013-05-05 21:51:08 +10:00
Paul Riseborough
8c5b603848
Plane: use new APM_Control API
2013-05-05 21:51:08 +10:00
Andrew Tridgell
b43712e4d2
Plane: fixed APM1-1280 build
2013-05-03 12:40:43 +10:00
Andrew Tridgell
9f0a4dd553
Plane: log GCS text messages to flash log
...
useful for seeing more complex actions
2013-05-03 11:16:50 +10:00
Andrew Tridgell
bb8f9d5443
Plane: simplify setHIL for baro
2013-05-02 15:27:02 +10:00
Andrew Tridgell
3cd52a9689
Plane: fixes for AP_Baro_HIL
2013-05-02 15:09:27 +10:00
Andrew Tridgell
0d97f417ec
Plane: enable compass on all boards by default
...
if not present, then mag init will fail and it will disable
2013-05-02 15:01:33 +10:00
Andrew Tridgell
0aa38a5bd4
Plane: use new HIL compass API
2013-05-02 15:00:59 +10:00
Andrew Tridgell
5ba171af9a
Plane: fixed mavlink levelling
...
this was broken by a recent commit (after 2.72 was released)
2013-05-02 13:38:28 +10:00
Andrew Tridgell
a019e3740e
Plane: updates for new compass API
2013-05-02 12:48:14 +10:00
Andrew Tridgell
9584aa89d9
Plane: replaced constrain() with constrain_float()
2013-05-02 10:27:10 +10:00
Randy Mackay
b0f5b9a4cf
Plane: use renamed RCInput valid_channels
2013-04-29 15:06:38 +09:00
Andrew Tridgell
de3fcbc413
Plane: removed the MANUAL_LEVEL option
...
levelling on every startup is far too error prone. This was just
another parameter that everyone changed.
2013-04-29 14:19:53 +10:00
Andrew Tridgell
3d7a4d0e6e
Plane: added ELEVON_OUTPUT option
...
this is like the vtail mixer, but for elevons
2013-04-29 12:13:59 +10:00
Andrew Tridgell
855277fa85
Plane: get ready for 2.72 release
2013-04-28 15:56:30 +10:00
Andrew Tridgell
bdf0a2da69
Plane: log mode number as well as mode string
...
this makes graphing mode changes easier
2013-04-28 14:58:13 +10:00
Andrew Tridgell
b53e3bb1fc
Plane: log GPS messages as they come in
...
stops us logging duplicate messages
2013-04-28 14:56:31 +10:00
Andrew Tridgell
1956d9c2dc
Plane: show modes as strings in log
2013-04-28 14:47:59 +10:00
Randy Mackay
f47a2e951a
Plane: add I2C error count to PM message
2013-04-26 22:39:56 +09:00
Andrew Tridgell
0b8c2da4df
Plane: support 12 output channels on PX4
2013-04-25 20:10:53 +10:00
Andrew Tridgell
4f225eff57
Plane: if airspeed enabled, require 5m/s to unsuppress throttle
2013-04-25 20:10:53 +10:00
Andrew Tridgell
ac7561c5d5
Plane: mark 2.72beta version
2013-04-24 16:19:18 +10:00
Andrew Tridgell
8ec1eaa8b1
build: removed obsolete cmake rules
...
these have not been maintained for over a year
2013-04-23 11:07:53 +10:00
Andrew Tridgell
e446f375a7
Plane: set loiter.direction for GUIDED mode
2013-04-21 23:46:35 +10:00
Bill Bonney
3ec891265f
Plane: Enable CURRENT logging by default onto Dataflash
2013-04-21 07:24:02 +10:00
Andrew Tridgell
02ed37e750
Plane: fixed APM1-1280 build
2013-04-20 18:21:19 +10:00
Andrew Tridgell
2e5834cc7f
Plane: print flight mode as string in logs
2013-04-20 15:18:10 +10:00
Andrew Tridgell
3b90c6c386
Plane: log parameter changes
2013-04-20 13:52:36 +10:00
Andrew Tridgell
991d6598ef
Plane: log board voltage
2013-04-20 13:52:36 +10:00
Andrew Tridgell
5c553852ed
Plane: when logging is disabled don't include DataFlash at all
2013-04-20 13:52:36 +10:00
Andrew Tridgell
0c5b393919
Plane: added compass logging
2013-04-20 13:52:36 +10:00
Andrew Tridgell
c56f338fe0
Plane: convert to new logging system
2013-04-20 13:52:36 +10:00
Andrew Tridgell
c8af70a18d
Plane: make the plane code compatible with the new logging system
...
not actually converted yet
2013-04-20 13:52:36 +10:00
Andrew Tridgell
a329e32ccb
Plane: added gps status to flashlog
2013-04-19 10:24:20 +10:00
Andrew Tridgell
abe4dba871
Plane: added PX4 flash logging
2013-04-17 21:35:27 +10:00
Andrew Tridgell
a12323c9fd
Plane: fixed logging for new API
2013-04-17 21:34:56 +10:00
Andrew Tridgell
42344455c9
Plane: fixed structure init for arduino compiler
2013-04-15 21:59:07 +10:00
Andrew Tridgell
9f0f482dd7
Plane: fixed LOITER_TIME to start when loiter starts
...
thanks to Paul Riseborough for finding this bug!
2013-04-15 21:39:14 +10:00
Andrew Tridgell
75f4a43e2d
Plane: fixed LOITER_TURNS command
...
and cleanup more loiter variables
2013-04-15 21:31:11 +10:00
Andrew Tridgell
82cd391cf8
Plane: use RADIUS_OF_EARTH define
2013-04-15 14:55:58 +10:00
Andrew Tridgell
8f091e70c8
Plane: move elevon variables into a structure
2013-04-15 14:53:56 +10:00
Andrew Tridgell
79c6f32400
Plane: made variables static and remove initial rc overrides
...
minor code size savings
2013-04-15 14:46:01 +10:00
Andrew Tridgell
e918293e86
Plane: explain verify_*() commands
2013-04-15 14:41:15 +10:00
Andrew Tridgell
19b92b5bd8
Plane: removed "circle waypoint" completion test
...
this is redundent with the location_passed_point() test
2013-04-15 14:39:18 +10:00
Andrew Tridgell
994d8e354a
Plane: allow for negative WP_LOITER_RAD for conter-clockwise loiter
...
this follows the same convention as missions
2013-04-15 10:52:32 +10:00
Andrew Tridgell
78538d0543
Plane: removed old HDNG2RLL PID control
...
not used with L1
2013-04-15 10:52:32 +10:00
Andrew Tridgell
b2ad43f625
Plane: removed ahrs.set_barometer()
2013-04-15 10:52:32 +10:00
Andrew Tridgell
8d2cf6f3e5
Plane: update author list
2013-04-12 22:01:41 +10:00
priseborough
70a186464b
Plane: added LEVEL_ROLL_LIMIT parameter
...
this replaces both TKOFF_HEAD_HOLD and RUDDER_STEER, allowing users to
instead select a roll limit for takeoff and landing
2013-04-12 21:59:52 +10:00
Andrew Tridgell
575f346e85
Plane: removed HIL_MODE_ATTITUDE
...
we really need full sensors for HIL with the L1 controller. The flight
is also _much_ better with sensors HIL.
2013-04-12 17:44:40 +10:00
Andrew Tridgell
11eb0cfce1
Plane: update for new AP_Navigation controller class
...
this switches ArduPlane over to use the L1 navigation controller, via
a generic nav_controller object pointer.
Note that the nav_controller controls all types of navigation now,
including level flight and heading hold. This provides a cleaner
abstraction than the old method of special case navigation handling
Pair-Programmed-With: Paul Riseborough <p_riseborough@live.com.au>
2013-04-12 12:48:09 +10:00
Andrew Tridgell
c47bc09a3c
Plane: avoid doing radio trim if less than 20% of travel available
...
this prevents problems with awful trim on bootup due to RC TX being
off
2013-04-12 12:47:59 +10:00
tobias
217b8d7a59
cleanup: use const for struct Location pointers and references
...
this allows the compiler to generate more efficient code
2013-04-09 12:10:32 +10:00
Andrew Tridgell
71f6287388
Plane: fixed spelling
2013-04-06 17:42:20 +11:00
Andrew Tridgell
dcbe144c7e
Plane: prepare for release of 2.71
2013-04-06 17:27:21 +11:00
Andrew Tridgell
e58f49aeaf
Plane: copy rudder out in TRAINING mode
...
we were doing rudder mixing in training mode, which shouldn't be done
2013-04-05 19:38:43 +11:00
Andrew Tridgell
993154ea59
Plane: expand the VTAIL_OUTPUT docs for APM1
2013-04-05 16:38:46 +11:00
Andrew Tridgell
bd2b9fbe9d
Plane: simplify the VTail mixer to be more like a hardware mixer
...
this should make it easier to trim the vtail
2013-04-05 15:47:51 +11:00
Andrew Tridgell
17cbcd1bf6
Plane: fixed failsafe with VTAIL_OUTPUT
2013-04-05 15:35:26 +11:00
Andrew Tridgell
406921faf1
Plane: added VTAIL_OUTPUT option
...
this allows for software vtail mixing
2013-04-05 15:22:11 +11:00
Randy Mackay
21a51c8333
Plane: update GCS_Mavlink parameter documentation
2013-04-03 22:58:25 +09:00
Andrew Tridgell
a69c9ff674
Plane: added logging of DIGICAM events
2013-04-02 13:08:38 +11:00
Andrew Tridgell
ddfcafe80f
Plane: fixed DIGICAM camera trigger
2013-04-02 13:08:38 +11:00
Andrew Tridgell
683a2919d1
Plane: prevent stick mixing when throttle is below failsafe threshold
...
this fixes issue #40
2013-04-02 10:42:56 +11:00
Andrew Tridgell
c5e2cfcc3e
Plane: preparing for 2.71-beta
2013-04-02 09:25:24 +11:00
Andrew Tridgell
2506c216dd
Plane: added a second type of stick mixing
...
this changes STICK_MIXING from a boolean to a tri-state. With
STICK_MIXING=1 it now uses FBW style mixing. With STICK_MIXING=2 it
uses the old style of direct stick mixing.
2013-04-02 08:52:56 +11:00
Andrew Tridgell
5d54215221
Plane: use int16_t() not int() to ensure simulator matches AVR
2013-04-01 22:17:05 +11:00
Andrew Tridgell
e390726bdd
Plane: prevent overflow on large PID gains
...
this uses get_pid_4500() to prevent overflow of servo_out on large PID gains
2013-04-01 22:17:04 +11:00
Andrew Tridgell
624ebced38
Plane: document INVERTEDFLT_CH
2013-04-01 22:17:04 +11:00
Andrew Tridgell
dfb14d760b
Plane: added HIL_SERVOS option
...
this allows for real servo output in HIL
2013-03-30 14:38:43 +11:00
Andrew Tridgell
6cc4aadc06
Plane: report compass health in SYS_STATUS
2013-03-29 13:48:40 +11:00
Andrew Tridgell
a165f0d138
Plane: removed old angle wrap code
2013-03-29 13:13:50 +11:00
Andrew Tridgell
7db7d7db77
Plane: change FBWB altitude control algorithm
...
this makes FBWB much less sensitive to airframe tuning. When the
elevator stick first goes neutral it locks in the current altitude as
the target altitude. When the elevator stick is off neutral, it moves
the target altitude in proportion to the elevator, at a rate goverened
by the new FBWB_CLIMB_RATE parameter
This prevents the aircraft from slowly drifting in altitude in FBWB,
and gives a more intuitive control mechanism for altitude.
Thanks to Chris Miser from Falcon UAV for help in designing this
change
2013-03-28 10:27:25 +11:00
Andrew Tridgell
fcde3ceb24
Plane: also avoid rudder on takeoff with TOFF_HEAD_HOLD==0
2013-03-27 16:36:39 +11:00
Randy Mackay
a49fe272ad
Plane: replace gps fix with status
...
Required to ensure 3d fix is used for initialising home
2013-03-27 11:42:02 +09:00
Randy Mackay
c2055557f5
Plane: add support for GPS fix type 2D
2013-03-27 11:41:51 +09:00
Andrew Tridgell
f077f54e6a
Plane: added TKOFF_HEAD_HOLD option
...
this allows control over whether ArduPlane tries to hold heading
during auto takeoff. For hand launches it can be better to hold the
wings level and not attempt to hold heading during takeoff to prevent
the possibility of a stall during the climb out.
Thanks to Chris Miser from Falcon UAV for the feedback that led to
this option.
2013-03-27 10:27:14 +11:00
Andrew Tridgell
1d983b3f2e
Plane: fixed X accel triggering of auto
2013-03-22 11:53:45 +11:00
Andrew Tridgell
1a36c3684b
Plane: fixed GPS test (detection of uBlox needs 10Hz poll)
2013-03-21 22:45:17 +11:00
Andrew Tridgell
6948e0c473
Plane: only enter CLI is link is idle when 3 enters are hit
...
this will prevent binary contents of RADIO packets being interpreted
as CLI enter line-feeds
2013-03-21 21:57:54 +11:00
Andrew Tridgell
0e37ae4400
Plane: change CLI timeout to 20s
2013-03-21 17:34:34 +11:00
John Stäck
c9576e59f9
Add set command to setup menu (and changed show command), same as for ArduCopter. Not included when building for 1280.
2013-03-19 11:40:25 +09:00
Randy Mackay
36834e77b5
Copter: remove support for CLI Slider
2013-03-18 14:07:04 +09:00
Andrew Tridgell
36ff950b12
Plane: fixed MAVLink target IDs in fence point message
...
thanks to Kevin Hester for finding this
2013-03-12 15:04:48 +11:00
Andrew Tridgell
0a385cc0ff
Plane: added TKOFF_THR_MINACC option
...
this is used for triggering auto takeoff with a hand launched plane
2013-03-09 14:41:04 +11:00
Michael Warren
9697ff5d6d
Plane: Added extra parameter to specify at what speed in auto-takeoff throttle should engage
...
This adds TKOFF_THR_MINSPD in m/s
2013-03-09 14:19:48 +11:00
Andrew Tridgell
87c6545ac6
Plane: don't trigger GCS failsafe if GCS never connected
...
The we have never received a heartbeat message from the GCS then don't
use the lack of heartbeat to trigger a failsafe event
2013-03-09 13:48:39 +11:00
Andrew Tridgell
e93888dee9
Plane: make a throttle_cruise of 0 mean always zero throttle
...
this can be used for parachute landing missions
Thanks to Chris Miser for the suggestion
2013-03-09 13:48:39 +11:00
Andrew Tridgell
e0e22b63a7
Plane: removed INPUT_VOLTS parameter
...
no longer needed
2013-03-08 10:01:33 +11:00
Andrew Tridgell
2331c84423
Plane: use voltage_average() to not depend on INPUT_VOLTS
2013-03-03 16:16:01 +11:00
Andrew Tridgell
de55e19eec
Plane: updates for new dataflash API
2013-03-01 07:18:26 +11:00
Andrew Tridgell
b3213b7113
Plane: fixes for new DataFlash API
2013-03-01 07:18:25 +11:00
Andrew Tridgell
5f4c5f8201
Plane: update SERIAL0_BAUD parameter description
2013-02-22 08:39:02 +11:00
Andrew Tridgell
139acc0530
Plane: ignore control mode changes when in throttle failsafe
...
this prevents the receiver causing a temporary mode change
2013-02-21 11:21:39 +11:00
Andrew Tridgell
1ebaa14a99
Plane: prepare for 2.70 release
2013-02-21 09:49:15 +11:00
Andrew Tridgell
0a0b51cc63
Plane: reset AHRS trim after a level operation
2013-02-20 11:56:02 +11:00
Andrew Tridgell
24826c0c74
Plane: default the stream rates to 1Hz
2013-02-20 10:08:49 +11:00
Andrew Tridgell
1007f2ef07
Plane: fixed a bug with setting stream rates
...
this is what caused the "no sensors" problem in the 2.69 release
2013-02-20 09:32:01 +11:00
Randy Mackay
9c984b18db
Plane: integrate automatic roll and pitch trims
2013-02-19 13:30:51 +09:00
Andrew Tridgell
c989099665
Plane: enable PX4IO dual telemetry devices
2013-02-18 13:56:21 +11:00
Andrew Tridgell
e8806b14ec
Plane: enable MAV_CMD_DO_DIGICAM_CONTROL
2013-02-14 09:35:56 +11:00
Andrew Tridgell
8c0f065ee4
Plane: fixed an integer multiply error that caused poor altitude on landing
...
the control of altitude between waypoints was broken due to an integer
overflow
2013-02-13 19:32:44 +11:00
Andrew Tridgell
2f677acf3b
Plane: update firmware version to 2.69
2013-02-11 15:02:08 +11:00
Andrew Tridgell
9f70c6c70d
Plane: make CIRCLE mode hold altitude
...
this will prevent us losing a lot of altitude during the initial
failsafe phase
2013-02-11 13:52:25 +11:00
Andrew Tridgell
9d3224ef34
Plane: fixed target speed reload on landing
...
thanks to Doug for this fix!
2013-02-11 11:40:36 +11:00
Michael Oborne
88840eb759
Send FS state to gcs for AP
2013-02-09 10:11:26 +08:00
Andrew Tridgell
c41b927a15
Plane: added shell command for px4
...
used to launch nsh for PX4IO firmware upgrades
2013-02-07 15:04:33 +11:00
Andrew Tridgell
3913c42183
Plane: fixed bit combination
...
bitwise, not arithmetic
2013-02-05 10:33:10 +11:00
Jochen Tuchbreiter
c5f19f5df8
Plane: Implement issue 80: counterclockwise loiter
...
- libraries/AP_Common/AP_Common.h: Use bit 2 of Location.options to store
loiter direction
- ArduPlane/defines.h: New bitmask MASK_OPTIONS_LOITER_DIRECTION for struct
Location bit 2
- ArduPlane/ArduPlane.pde: New variable loiter_direction
- ArduPlane/GCS_Mavlink.pde: For mavlink loiter-commands use sign of param3 to
detemine direction. Set Location.option flag accordingly
- ArduPlane/commands.pde: Make sure loiter-directions get saved into EEPROM
correctly
- ArduPlane/commands_logic.pde: Set loiter_direction on all loiter-actions
as well as RTL/instant loiter
- ArduPlane/navigation.pde: Yield loiter_direction in update_loiter
2013-02-05 10:29:31 +11:00
Brandon Jones
fa7839941f
After Plane: cleanup driver declaration 4d9a74d
, HIL_MODE_ATTITUDE with MAG_ENABLE=1 set results in continuous reboot/APM crash. Added define for AP_COMPASS_HIL when HIL_MODE_ATTITUDE is enabled.
2013-02-05 09:04:34 +11:00
Michael
b9a5be6c8b
Plane: added secondary elevator support
2013-02-05 08:57:58 +11:00
Andrew Tridgell
e762c43312
Plane: switch to an array for stream rates
...
this saves a couple of hundred bytes of flash.
2013-02-05 08:20:41 +11:00
Pat Hickey
85d783d5a9
ArduPlane: fixed memory unsafe member access in GCS_MAVLINK
2013-02-02 22:43:59 -08:00
Andrew Tridgell
ebb7f27962
Plane: minor signed/type fixups
2013-01-27 13:16:26 +11:00
Andrew Tridgell
3caaa27526
Plane: fixed build errors in logging
2013-01-27 12:58:50 +11:00
Randy Mackay
7297a1ff83
Plane: renamed RAW dataflash message to IMU
2013-01-26 17:29:29 +09:00
Randy Mackay
e674626fd6
Plane: rename CUR and CURR to CURRENT for logging
...
Based on user complaint that log was enabled/disabled using CUR while
message that appeared in log was CURR.
2013-01-26 17:19:42 +09:00
Randy Mackay
6f46f4a7d0
Plane: logging changes to use new faster packet method
...
also RAW message renamed to IMU
2013-01-26 17:07:21 +09:00
Randy Mackay
d2767b911c
AP_Math: switch get_distance_cm to return uint32_t
...
Includes changes required on ArduCopter and ArduPlane side as well
2013-01-26 17:04:12 +09:00
Andrew Tridgell
9178022a73
Plane: don't change trims if radio_in is zero
2013-01-25 20:44:36 +11:00
Andrew Tridgell
7ab3d93ed4
Plane: fixed typo
2013-01-23 10:06:22 +11:00
Andrew Tridgell
49356b790b
Plane: limit number of bytes read per GCS check
2013-01-23 09:35:06 +11:00
Andrew Tridgell
9813468640
Plane: fixed mavlink fetch of 16 character parameter
2013-01-21 16:52:08 +11:00
Andrew Tridgell
4d9a74d742
Plane: cleanup driver declaration
...
remove a lot of the #if nesting
2013-01-21 16:08:55 +11:00
Andrew Tridgell
4deee014d6
Plane: setup PX4 airspeed analog port
2013-01-21 13:56:28 +11:00
Andrew Tridgell
96b87e3b44
Plane: fixed test baro printout
2013-01-20 22:13:21 +11:00
Andrew Tridgell
2e04d4827a
Plane: run PX4 console at 57600
2013-01-20 22:13:21 +11:00
Andrew Tridgell
f9cb9e08ae
Plane: fixed orientation of PX4 compass
2013-01-17 17:23:34 +11:00
Andrew Tridgell
9058949558
Plane: fixed some warnings
2013-01-16 14:19:25 +11:00
James Bielman
5631f865b2
Update floating point calculations to use floats instead of doubles.
...
- Allows use of hardware floating point on the Cortex-M4.
- Added "f" suffix to floating point literals.
- Call floating point versions of stdlib math functions.
2013-01-16 13:52:01 +11:00
Andrew Tridgell
fa3a4c68b6
Plane: use common log reading function
2013-01-15 14:03:51 +11:00
Andrew Tridgell
28352b3548
Plane: ensure ahrs.init() is called
2013-01-13 17:32:48 +11:00
Andrew Tridgell
92c9a4c1ce
Plane: start update logging for new API
2013-01-13 17:31:42 +11:00
Andrew Tridgell
bfaf91affe
Plane: use an enum for flash log message types
2013-01-13 17:31:42 +11:00
Andrew Tridgell
86f667f6cc
Plane: added new SERIAL0_BAUD parameter
...
this is useful on PX4
2013-01-13 07:39:40 +11:00
Andrew Tridgell
bea9a9d558
Plane: move memcheck_init() earlier in setup()
2013-01-11 10:25:09 +11:00
James Bielman
ab37f833db
MS5611: Fix CONFIG_MS5611_SERIAL definitions.
...
- Make sure the values are defined as integers. We were always using
SPI rather than using I2C when desired.
2013-01-09 11:19:51 -08:00
Andrew Tridgell
e0f052dd9a
Plane: update for new AP_Param API
2013-01-09 13:30:55 +11:00
Andrew Tridgell
38f56be2c4
Plane: enable hardware sensors on PX4
2013-01-04 21:07:56 +11:00
Andrew Tridgell
2e2f96d721
Plane: cope with a HIL_STATE packet before GPS init
2013-01-04 12:47:08 +11:00
Andrew Tridgell
9e0096ddb5
Plane: fix handling of sensors HIL startup
2013-01-04 12:34:35 +11:00
James Bielman
264db3670e
AP_Baro: Add CONFIG_MS5611_SERIAL option to choose between SPI and I2C.
...
- Update ArduCopter and ArduPlane modules to pass the correct serial
driver to the MS5611 driver.
- Update barometer examples, assuming SPI.
2013-01-03 13:48:06 -08:00
Andrew Tridgell
868269e037
Plane: switch PX4 to attitude HIL for now
...
a bit easier to debug
2013-01-03 13:38:54 +11:00
Andrew Tridgell
e8075b1657
Plane: for HIL_SENSORS for PX4 for now
...
until we have sensor drivers
2013-01-03 11:03:24 +11:00
Andrew Tridgell
07eed60ae4
Plane: use new apm.mk
2013-01-02 17:28:21 +11:00
Andrew Tridgell
2fe77fa6fa
Plane: check for APPDIR to pull in px4 build logic
2013-01-02 17:06:44 +11:00
Andrew Tridgell
4cdb3cd390
Plane: use GRAVITY_MSS
2013-01-02 14:45:08 +11:00
Andrew Tridgell
1a49549e3e
Plane: start port of main ArduPlane code to AP_HAL_PX4
2013-01-02 14:45:08 +11:00
Andrew Tridgell
b6295c12e1
Plane: fixes for new AP_Relay interface
2013-01-02 10:18:45 +11:00
Craig@3DR
0ed25cf719
Global change all references from
...
GPS_PROTOCOL_MTK16
to
GPS_PROTOCOL_MTK19
2013-01-02 09:24:31 +11:00
Andrew Tridgell
edad43611d
Plane: reset last heartbeat time on startup completion
...
this gives more time for the GCS to send its first heartbeat
2012-12-26 08:46:36 +11:00
Andrew Tridgell
85e4f67e68
Plane: added a note about the dangers of the FS_GCS_ENABL option
2012-12-25 21:18:39 +11:00
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
Amilcar Lucas
d34549f386
Add an optional second mount to ArduPlane and ArduCopter
2012-08-08 23:22:24 +02:00
Andrew Tridgell
dc99586981
APM: removed pointless load() call
2012-08-08 16:51:23 +10:00
Andrew Tridgell
dcc50b5705
AP_Airspeed: removed values passed to constructor
2012-08-08 16:38:39 +10:00
Andrew Tridgell
2114acddf1
APM: fixed default flap speed
...
the default of 255 translates to -1 as a AP_Int8, so use zero to mean
no flaps
2012-08-08 13:04:21 +10:00
Andrew Tridgell
5bfd1200d6
APM: change variables to use _cm, _cd and _ms suffix for units
...
this makes it less likely that we mix up units
2012-08-08 12:12:30 +10:00
Andrew Tridgell
a823c9ceae
APM: removed cli slider and dipswitch options
...
use mavlink/eeprom for all config
2012-08-08 12:12:29 +10:00
Andrew Tridgell
12cd6b68ff
AP_Param: update ArduPlane core for new AP_Param interface
2012-08-08 12:11:57 +10:00
Jonathan Challinger
7815e3d810
APM: fixed rounding of altitude
...
the cast was rounding to the nearest meter
2012-08-08 12:07:35 +10:00
Amilcar Lucas
f14237126a
Add me :)
2012-08-06 00:40:12 +02:00
Amilcar Lucas
b8c7b8a786
RC_Channel: Allow each channel to know who they are, this simplifies the enabling and output function calls.
2012-08-05 23:08:31 +02:00
Amilcar Lucas
9c1ac2d9e6
More work on ch9, 10 and 11
2012-08-04 19:44:41 +02:00
Amilcar Lucas
95f2af6d2d
Implement set ROI
2012-08-04 18:44:29 +02:00
Amilcar Lucas
4ba847c449
The mount type must be updated periodically
2012-08-04 18:44:08 +02:00
Amilcar Lucas
bbc4bdb729
More flexible RC support
2012-08-04 18:39:20 +02:00
Amilcar Lucas
50b5d33745
Enable camera triggering by default
2012-08-04 16:32:47 +02:00
Amilcar Lucas
82b82283be
ATmega1280 does not have enough memory for mount support so disable AUTO GPS support, to allow mount support to fit.
...
This should almost have no side effects, because the most users use MTK anyways.
If the user defined a GPS protocol, than we will NOT overwrite it
2012-08-04 16:32:20 +02:00
Andrew Tridgell
301ab00c5b
APM: added control switch debouncer
...
this adds a switch debouncer, similar to the one used in
ArduCopter. I'm adding this after a flight on the weekend where noise
on the control mode channel caused a mode change away from auto.
To prevent this change adding excessive mode switch latency, it also
moves the reading of the control switch to the 10Hz loop, away from
the 3.3Hz loop. That gives us 0.2s delay in mode switch changes and
allows for spikes in the control mode for 0.1 seconds without changing
mode.
2012-08-01 13:59:37 +10:00
rmackay9
176e6fdd68
ArduPlane: bug fix to global var_info parameter list for ahrs object.
2012-08-01 10:52:34 +09:00
Andrew Tridgell
0b49ac0ed0
APM: fixed overflow in geofence code for altitudes above 327 meters
2012-07-31 15:46:47 +10:00
Andrew Tridgell
cb61c3be96
APM: fixed case of 'LAND_PITCH_CD'
...
mavlink parameters are uppercase by convention
2012-07-29 17:07:38 +10:00
rmackay9
06e35820e5
ArduPlane: allow MPU6000's DMP to be used for attitude estimation.
...
Enable by adding this line to APM_Config.h:
#define DMP_ENABLED ENABLED
2012-07-28 19:50:40 +09:00
rmackay9
842ce47219
ArduPlane: change to Parameters.pde to support moving var_info from AP_AHRS to AP_AHRS_DCM
2012-07-28 14:31:01 +09:00
Michael Oborne
cb0eacca37
AP Fix Hil Airspeed calc in m/s
2012-07-26 20:21:17 +08:00
Andrew Tridgell
9eb05a2e1a
APM: update version for 2.50 release
2012-07-26 11:36:17 +10:00
Andrew Tridgell
6bcfe913f7
APM: added a SCALING_SPEED parameter
...
this allows users to adjust the base speed used for scaling roll/pitch
PIDs. This can be used to make PIDs work for both airspeed and
non-airspeed control
2012-07-26 11:30:23 +10:00
Andrew Tridgell
3c2fc72654
APM: fixed HIL build
2012-07-26 10:09:07 +10:00
Andrew Tridgell
07992bc943
APM: fixed build
...
the SET_ROI commands are not supported yet
2012-07-26 10:03:36 +10:00
Andrew Tridgell
7e697e4abd
APM: switch back to old nav_roll calculation
...
the old nav_roll will be used for the 2.50 release to prevent the need
for re-tuning. For the release after that we will use the new
calculation
2012-07-26 10:03:36 +10:00
Michael Oborne
39ad8b5eec
AP fix sitl hil attitude mode.
2012-07-24 07:18:25 +08:00
Andrew Tridgell
9e72d4c3f4
APM: fixed a problem with wayoints completing early
...
when a user forces a waypoint jump, we may need to reset prev_WP to
prevent us thinking the waypoint is complete before we have started
2012-07-21 20:32:07 +10:00
Andrew Tridgell
85465c9126
MAVLink: fixed another two places where micros() was used for a millisecond time
2012-07-20 11:57:15 +10:00
Jason Short
98237a0e00
Added Oilpan INS group object param
2012-07-18 23:07:50 -07:00
Jason Short
e574f3c8cf
Arduplane: Fixed unsigned int comparison warning
2012-07-18 23:07:34 -07:00
Jeff Taylor
d02655ac56
APM: Fixed bug where landing_pitch wasnt initialized properly
...
this adds a new LAND_PITCH_CD parameter to control the landing pitch
when an airspeed sensor is not being used
2012-07-19 13:59:30 +10:00
Andrew Tridgell
d6e370886f
APM: rename airspeed_cruise to airspeed_cruise_cm to make the units clearer
...
it is in cm/s, not m/s
2012-07-19 11:50:41 +10:00
Andrew Tridgell
1cf5057c61
APM: Use g.airspeed_cruise for turn rate calculation if the airspeed sensor is disabled.
...
This gives our best approximation for auto flight
2012-07-19 11:50:41 +10:00
Jonathan Challinger
c7da63509b
APM: Removed unused YAW_DAMPENER code.
...
YAW_DAMPENER was defined as zero
2012-07-19 11:50:21 +10:00
Jonathan Challinger
d9d055ef78
APM: Removed incorrect nav_gain_scaler from nav_roll calculation.
...
nav_gain_scaler was originally added due to a perceived improvement in
loiter performance, but is incorrect for navigation. Turn rate is a
function of airspeed and bank angle, ground speed has no effect on
that.
2012-07-19 11:50:06 +10:00
Amilcar Lucas
3d385c0fb4
ArduPlane parameters: re-order the files, looks like the second file gets ignored :(
2012-07-18 22:52:17 +02:00
Amilcar Lucas
8a8e11fa7f
ArduPlane parameters: Add base class info as well
2012-07-18 22:39:49 +02:00
Amilcar Lucas
610fdeacc1
Support up to 11 servos in APM2
...
Conflicts:
ArduPlane/ArduPlane.pde
2012-07-18 22:01:19 +02:00
Michael Oborne
636fcadde4
fix rc libray param gen
2012-07-18 07:03:39 +08:00
Jonathan Challinger
fc4f111d15
Changed mavlink GLOBAL_POSITION_INT.relative_alt message to correctly return altitude above ground.
2012-07-17 16:15:11 +10:00
Andrew Tridgell
de3c9ce56d
Airspeed: change APM to use new AP_Airspeed library
...
the next step is AHRS dead reckoning
2012-07-16 11:21:50 +10:00
Michael Oborne
67ecaa9252
AP fix duplicate keys in param config
2012-07-13 07:06:01 +08:00
Amilcar Lucas
dfe0983e1e
Merge the changes from APM_Camera branch into ArduCopter
...
Conflicts:
ArduCopter/Camera.pde
ArduCopter/Parameters.pde
2012-07-11 00:39:13 +02:00
Andrew Tridgell
c80a88766f
APM: added credit for FBW altitude limit code
...
thanks Yuri!
2012-07-10 08:36:50 +10:00
Andreas M. Antonopoulos
de64c05f8e
param_parser: cosmetic
...
Arduplane: doc fixes
2012-07-08 21:45:26 -07:00
Andrew Tridgell
78c51b945f
APM: fixed DisplayName/Description mixups in parameter docs
2012-07-07 17:40:43 +10:00
Andrew Tridgell
f6d7d1bc59
APM: changed PID library to do automatic deltat calculation
...
this fixes a problem with the HDNG2RLL PID, which was using the wrong
time base and prevents similar bugs from happening in the future
2012-07-06 19:59:18 +10:00
Andrew Tridgell
58fd91165f
APM: fixed some build warnings and type errors
2012-07-06 19:59:18 +10:00
Andrew Tridgell
5abd26a142
APM: more parameter documentation
2012-07-05 15:06:45 +10:00
Andrew Tridgell
21f06f8a39
GeoFence: fixed default return altitude units
...
off by 100x!
2012-07-05 15:06:44 +10:00
Andrew Tridgell
0385932afb
MAVLink: added climb rate reporting
2012-07-05 13:00:46 +10:00
Andrew Tridgell
95d9569b35
Docs: fixed some units in APM parameter docs
2012-07-05 13:00:46 +10:00
Andrew Tridgell
60caaa4b04
MAVLink: remove MAVLink 0.9 protocol support
...
this simplifies the code a lot. We're not going back to 1.0
2012-07-05 13:00:46 +10:00
Andrew Tridgell
fb66899414
APM: changed test for having completed a waypoint
...
the new test is that we have passed a "finish line" perpendicular to
the track between the last waypoint and the current waypoint.
The previous tests are also still used, so if we circle a waypoint or
get within the waypoint radius we also consider it completed
2012-07-04 12:42:46 +10:00
Andrew Tridgell
6ee9f1ae97
APM: use new location functions
2012-07-04 12:42:46 +10:00
Andrew Tridgell
99b11e4f19
Mount: enable mount control via eeprom parameters
...
this enables MNT_* parameter control of the camera mount code. It also
fixes the conversion of calculated angles between degrees and
integers, and fixes stabilised mount control when yaw control is not
available.
2012-07-03 10:21:01 +10:00
Michael Oborne
b2d73d8f68
fixup sitl attribute group for planner. - causing invalid advanced/standard views
2012-07-01 21:43:32 +08:00
Andrew Tridgell
82ede937e7
AnalogSource: convert analogRead() calls to the new API
...
this should give us much better analog values, plus save a bunch of
CPU time
2012-07-01 15:01:05 +10:00
Andrew Tridgell
55092c25a6
SITL: enable the SIM_* parameters in ArduCopter and ArduPlane
2012-06-29 15:10:52 +10:00
Andrew Tridgell
5bccfbd94c
Barometer: fixed airstart for APM
...
we need to re-load the ground pressure and temperature from eeprom on
and airstart
2012-06-27 16:01:50 +10:00
Andrew Tridgell
3a2594fa1a
APM: ArduPlane updates for new compass interface
2012-06-27 16:01:50 +10:00
Andrew Tridgell
6639294c72
APM: update for new barometer interface
...
the barometer can now calibrate and return altitude values.
A 0.3 low pass filter is used on altitude to match the previous code
2012-06-27 16:01:50 +10:00
Andrew Tridgell
2934b4173b
APM: set_centripetal() is now set_fly_forward()
...
this controls more than just centripetal correction
2012-06-27 16:01:49 +10:00
rmackay9
621e020dac
ArduPlane HIL: fixed bug so g_gps->setHil calls send time as a uint32_t (was sending a float but was cast back to an uint32_t resulting in a meaningless time that never changed).
2012-06-26 22:59:24 +09:00
Amilcar Lucas
b072a59843
Improve parameters descriptive text
2012-06-21 00:20:37 +02:00
Andrew Tridgell
4a50686c3e
APM: prepare for 2.40 release
2012-06-16 10:11:26 +10:00
Andrew Tridgell
58379b928f
MAVLink: make usage of MAVLink defines more consistent
2012-06-15 16:27:11 +10:00
Andrew Tridgell
619bcc00d9
APM: parameter enums should not be conditionally compiled
2012-06-15 11:57:00 +10:00
Andrew Tridgell
0900751bcd
APM: added longer comment on k_format_version
2012-06-15 11:55:09 +10:00
Amilcar Lucas
6d2ac62006
Let's keep the same format version until CAMERA is activated by default
2012-06-13 21:28:13 +02:00
Amilcar Lucas
07a18904fc
With CLI and MOUNT active, the linker says: region `text' overflowed by 3858 bytes
...
So disable CLI when MOUNT is active. Sorry I did not detect it before, but the APM_Camera branch worked in a different way.
2012-06-13 21:08:09 +02:00
Amilcar Lucas
1906e06b69
Added camera trigger functionality
2012-06-13 21:00:20 +02:00
Amilcar Lucas
a32b7c200b
Add "3 axis camera stabilization" and "point camera to 3D point" functionality
...
Patch by Gregory Fletcher and reviewed by me
2012-06-13 20:55:19 +02:00
Amilcar Lucas
5ffd489d87
Spellcheck
2012-06-13 20:44:35 +02:00
Jason Short
448e4d8728
Added CLI level command
2012-06-11 23:01:25 -07:00
Jason Short
c804860243
Cosmetic changes only.
2012-06-10 13:10:07 -07:00
Jason Short
4e50db2f6e
Added missing Manual_level config
2012-06-10 13:08:48 -07:00
Jason Short
37d8f86d33
Added missing Manual Level initializer
2012-06-10 13:08:22 -07:00
Andrew Tridgell
940d994efb
GPS: Use appropiate GPS_ENGINE settings in APM, ACM and rover
2012-06-10 16:36:18 +10:00
Andrew Tridgell
99b39aef93
APM: ready for 2.40-beta
2012-06-08 18:03:21 +10:00
Andrew Tridgell
a684bddbda
GPS: open the GPS serial port with a 256 byte buffer
...
the UBLOX needs more than 128 bytes for reliable parsing
2012-06-08 16:42:03 +10:00
Andrew Tridgell
25c17a5425
re-enable the AP_Mount build
2012-06-04 19:32:11 +10:00
Andrew Tridgell
e7cf643386
added mavlink09 targets
...
allows easier building with mavlink0.9
2012-06-04 13:14:52 +10:00
Andrew Tridgell
3af29bd84e
AP_Mount: disable AP_Mount until it works with MAVLINK10
2012-06-04 13:14:51 +10:00
Michael Oborne
a71ed6c5ce
enable mavlink10 by default
2012-06-04 08:02:08 +08:00
Michael Oborne
b4a1b03fd3
AP: add fake satellite count for hil.
2012-06-02 16:38:20 +08:00
Pat Hickey
5766afa6c8
ArduPlane: Increment format number in Parameters.h
...
* Force all users to reconfigure to take advantage of elevon patch
( 669e6867 )
2012-05-28 20:51:12 -07:00
Pat Hickey
1c00d1ffe3
ArduPlane: Fix effect of ELEVON_REVERSE
...
* Previously, the ELEVON_REVERSE parameter was equivelant in function to the
ELEVON_CH1_REVERSE parameter. These parameter values are found in
g.reverse_elevons and g.reverse_ch1_elevon, and used to map to the radio_out
channels in ArduPlane/Attitude.pde
* It seems the author's intent was for ELEVON_REVERSE to change the sign for
the combination of pitch & roll into ch1 & ch2, as there are already
parameters which change just the sign of ch1 and just the sign of ch2.
* Discovered this bug because I happened to build an elevon airframe which was
not possible to setup with the existing ELEVON_ and RCn_REV parameters.
* This will break existing elevon setups if the user used ELEVON_REVERSE
instead of ELEVON_CH1_REVERSE, since they were previously interchangable.
2012-05-27 22:15:08 -07:00
Michael Oborne
c307b69515
increase resolution on params 0.1 > 0.01
2012-05-24 06:22:57 +08:00
Andrew Tridgell
d9457ecc38
MAVLink: send time of GPS fix accurately
...
when we send a GPS_RAW message, set the usec field to the time we got
the fix from the GPS, not the current time. This makes it possible for
aerial photo processing to be more accurate, as the usec field with
more accurately reflect the planes position/time pair
2012-05-23 17:33:33 +10:00
Andrew Tridgell
66544a5db2
Log: don't print '+' while erasing logs
...
we no longer do page based erase, so printing a + every 128 pages
makes no sense
2012-05-22 20:10:29 -07:00
Andrew Tridgell
b3aa704c49
AirSpeed: added parameter ARSPD_USE
...
setting ARSPD_ENABLE to 1 and ARSPD_USE to 0 allows the airspeed
sensor to be initialised and logged without it being used for flight
control. This is very useful when initially testing an airspeed sensor
in a new plane. It also makes it possible to enable/disable the use of
the airspeed sensor during a flight at any time.
2012-05-22 20:02:23 +10:00
Andrew Tridgell
8e01bc3593
MAVlink: update ArduPlane for param fetch during DataFlash erase
...
same changes as for ArduCopter
2012-05-22 16:13:35 +10:00
Andrew Tridgell
251fe26875
GPS: added ublox build target
...
useful for 1280 APM1s
2012-05-18 22:31:50 +10:00
Andrew Tridgell
3ae1c6f9e0
APM: prepare for 2.34
2012-05-14 14:29:59 +10:00
Michael Oborne
218e70cd8b
AP - fix attitude level hil mavlink 1.0 issue
2012-05-06 11:05:35 +08:00
Andrew Tridgell
f43f5900bc
Telemetry: make it possible to use UART2 on APM2
...
building with TELEMETRY_UART2=ENABLED allows you to use the solder
bridge on the APM2 to enable telemetry on UART2. This allows both USB
telemetry and a radio at the same time.
2012-05-04 10:39:44 +10:00
Michael Oborne
75f091cd9c
more arduplane param info
2012-04-30 20:39:41 +08:00
Michael Oborne
c1115d83c7
update some arduplane config items
2012-04-30 18:44:20 +08:00
Andrew Tridgell
8fab91e063
APM-nav: set NAV I value defaults to 0.1
...
a small I value is good on most planes, so I think this is a better
default than 0. Thanks to Chris for asking about this.
2012-04-30 12:27:30 +10:00
Andrew Tridgell
67afdc7485
autotest: fixes for MAVLink 1.0 in autotest
2012-04-27 15:15:53 +10:00
Andrew Tridgell
b6a475f6a5
MAVLink: make APM build with MAVLink 1.0 possible with arduino GUI
2012-04-24 22:24:58 +10:00
Andrew Tridgell
95be2c5922
APM: updates for MAVLink 1.0
2012-04-24 19:54:20 +10:00
Andrew Tridgell
615defdc37
use build_all.sh to ensure we don't break the mount code
2012-04-24 10:57:43 +10:00
Andrew Tridgell
8e6fdb8981
APM: use OutputCh_current() in MAVLink servo logging
...
this gives a more accurate picture of what is actually happening with
the servos
2012-04-24 10:57:43 +10:00
Michael Oborne
8d797fec3c
fix potential null pointer
2012-04-20 17:57:06 +08:00
Andrew Tridgell
1cc7adbac0
sitl: allow sitl build with MAVLink 1.0
2012-04-20 10:09:21 +10:00
James Goppert
5390467f3d
Worked on ArduCopter cmake options.
2012-04-19 16:05:08 -04:00
James Goppert
6fae800dc2
Working on ArduPlane options.
2012-04-19 02:23:54 -04:00
James Goppert
53c143a575
Improved cmake options.
2012-04-18 23:15:29 -04:00
James Goppert
0f90164f03
Changed default cmake port for ArduPlane.
2012-04-18 21:31:46 -04:00
James Goppert
0e7e77760a
Updated ArduPlane/ArduCopter cmake options.
2012-04-18 15:16:02 -04:00
James Goppert
a9f0bd24d7
Switched to project specific cmake lists.
...
This is better since each project has very different options.
2012-04-17 23:07:20 -04:00
James Goppert
fb07cddd6f
Making cmake local to projects.
2012-04-17 21:31:10 -04:00
Andrew Tridgell
d07b77237e
AHRS: enable AHRS_ group in ArduPlane
2012-04-16 20:55:13 +10:00
Andrew Tridgell
85ba978a65
ready for 2.33 release
2012-04-09 18:16:49 +10:00
Andrew Tridgell
e1270401bf
MAVLink: make parameter send use adaptive stream rate
...
this makes it possible to fetch parameters with very low air data
rates
2012-04-02 11:18:53 +10:00
Andrew Tridgell
7b50724f60
MAVLink: allow for find grained stream rate control
...
streams can now be requested at any multiple of 20ms. So if you ask
for a stream at 7Hz then you will get it at close to 7Hz.
2012-04-02 11:18:53 +10:00
Andrew Tridgell
e0bb7e2777
MAVLink: don't waste 100 bytes of bandwidth sending 1 byte of information
...
the GPS_STATUS message is a massive waste of bandwidth, but it is the
only message that tells us the number of visible satellites. So only
send it if that information changes.
This makes MAVLink work better at low baud rates
2012-03-30 17:46:20 +11:00
Andrew Tridgell
87ed39ea46
APM: use set_blocking_writes(false) when we have done ground start
2012-03-30 17:46:20 +11:00
Andrew Tridgell
b4107d35e8
MAVLink: raise the serial transmit buffer size to 256 bytes
...
the 128 byte serial transmit buffer was causing significant problems
with queueing of mavlink messages. With 256 bytes we can fit a lot
more messages out in each pass of the code, which makes telemetry more
efficient
As we discussed on the dev call, we now have enough free ram for this
to be worthwhile
2012-03-30 17:46:20 +11:00
Andrew Tridgell
86cc7a5e1d
APM: enable AP_Declination by default
2012-03-30 14:25:27 +11:00
Andrew Tridgell
168c45ab12
AP_Declination: enabled auto declination by default in APM
2012-03-30 14:25:27 +11:00
Andrew Tridgell
9d193f06c9
APM: Change version to 2.32
2012-03-29 12:50:12 +11:00
Andrew Tridgell
4c4c38f69a
APM: Added MANUAL_LEVEL option
...
when MANUAL_LEVEL is set to 1, we don't do accelerometer levelling at
startup, and instead used the values saved in the EEPROM. This makes
it easier to do levelling on the bench, or once for a series of
flights for the day
2012-03-29 12:39:53 +11:00
Andrew Tridgell
1c934dc7ef
APM: increase ArduPlane version to 2.31
2012-03-27 16:13:29 +11:00
Andrew Tridgell
34506b170f
Mavlink: fixed warnings about limits on int32 values
2012-03-27 15:37:25 +11:00
Andrew Tridgell
989304fb47
APM: enable the new offset nulling in APM
2012-03-27 15:37:24 +11:00
Andrew Tridgell
458d55e5bc
MAVLink: constrain variable changes to the datatype range
...
if someone tries to set a AP_Int16 to a value of 300000, they now get
32767 instead of -27678
2012-03-19 17:29:02 +11:00
Andrew Tridgell
8afd196907
APM: adapt ArduPlane for AHRS framework
2012-03-19 17:29:02 +11:00
Andrew Tridgell
e81060a1a6
APM: removed some config file cruft
...
these options are now settable via MAVLink
2012-03-18 13:34:40 +11:00
Michael Oborne
3944c1e665
update AP version to 2.30
2012-03-18 10:27:49 +08:00
Amilcar Lucas
6e9ffb4249
correct small typos in comments
2012-03-11 21:30:09 +01:00
Andrew Tridgell
2a03a0584f
AP_Declination: disable library when AUTOMATIC_DECLINATION is not ENABLED
...
unfortunately this library was causing avrdude to fail to load the hex
to my APM2. Until we work out why, it's disabled.
2012-03-11 21:46:41 +11:00
Adam M Rivera
d3667faef4
AP_Declination: Added call to compass.set_initial_location if the compass is enabled when the 3D fix is obtained.
...
Signed-off-by: Andrew Tridgell <tridge@samba.org>
2012-03-11 20:59:47 +11:00
Adam M Rivera
2524f9c8df
AP_Declination: Added new config value to allow the user to have the declination overwritten on every 3D fix.
...
Signed-off-by: Andrew Tridgell <tridge@samba.org>
2012-03-11 20:59:47 +11:00
Andrew Tridgell
d75e883fe8
GCS: get_integrator() is now get_gyro_drift() in DCM
2012-03-10 10:34:33 +11:00
Andrew Tridgell
9a06d35772
make 'ENABLE' and 'ENABLED' mean the same things
...
users get this wrong far too often!
2012-03-10 10:34:33 +11:00
Andrew Tridgell
13d5839778
APM: removed quaternion special cases
2012-03-10 10:34:32 +11:00
Andrew Tridgell
371677610d
APM: avoid fetching the DCM matrix twice
...
also no special case for quaternions
2012-03-10 10:34:32 +11:00
Andrew Tridgell
7a9b3d3388
Quaternion: show "Quaternion test" on startup if enabled
2012-03-10 10:34:29 +11:00
Andrew Tridgell
e39c3cb9d2
APM: make it possible to build ArduPlane with quaternion support
2012-03-10 10:34:29 +11:00
Andrew Tridgell
367947fd33
HWSTATUS: if we don't know the voltage, report it as zero
...
this will tell us if board_voltage() is really working
2012-03-10 10:34:28 +11:00
Andrew Tridgell
511f65e2ef
APM: fixed reset of control switch when short_fs_action is disabled
...
When FS_SHORT_ACTN is 0, we should not re-read the control switch
unless we changed mode on the initial short fs action
2012-03-10 10:34:28 +11:00
Andrew Tridgell
b455443e2c
APM: added logging of DCM, HWSTATUS and SIMSTATE
2012-03-10 10:34:27 +11:00
Andrew Tridgell
b20084af7d
APM: added board_voltage() function
2012-03-02 15:48:27 +11:00
Pat Hickey
ff0fc26484
Cleanup: rename files with spaces in their names, replace with underscores
...
* Skipped /Tools/ArdupilotMegaPlanner/Resources/new...
and /archive/Configurator/Source/Utilities/TDMS/G...
because I don't want to mess with that.
2012-02-28 16:14:31 -08:00
rmackay9
02cf07bb6b
ArduPlane - updated to use new filter library
2012-02-28 21:03:04 +09:00
rmackay9
e1114bf7f7
ArduPlane - added Filter.h to unbreak the build!
2012-02-26 17:05:56 +09:00
rmackay9
21d7a77009
ArduPlane - switch sonar to use new mode filter from filter library
2012-02-26 15:35:42 +09:00
Andrew Tridgell
0248b48d30
allow MAG_ENABLE to be changed in flight
...
this disables the compass in DCM if MAG_ENABLE is changed in
flight. Without this we would use a fixed yaw once the compass is
disabled
This also makes sure we don't pass the compass to DCM till we have
done a read. This ensures we have a good compass fix for the initial
DCM heading
2012-02-25 14:51:09 +11:00
Andrew Tridgell
690dc9052a
GCS: force scalar type in copy_name()
...
this enables access to compass offsets over MAVLink
2012-02-25 11:37:20 +11:00
Andrew Tridgell
95ef9206dc
DCM: renorm_sqrt_count is now called renorm_range_count
2012-02-23 08:16:08 +11:00
Andrew Tridgell
df8a557630
AP_Param: update users of AP_Param for ParamToken
2012-02-19 17:05:28 +11:00
Andrew Tridgell
16009777d9
APM: expanded parameter area to match ACM
...
this ensures waypoints and basic eeprom layout remain in sync
2012-02-18 10:51:57 +11:00
Andrew Tridgell
718a5b70e3
AP_Param: fixed saving of sensor calibration
...
this fixes the saving of the accel and gyro calibration to EEPROM,
which was initially broken by the AP_Param conversion
2012-02-18 10:51:57 +11:00
Andrew Tridgell
78babd37fa
APM: use set_and_save_ifchanged() for GCS stream rates
...
this avoids a lot of EEPROM scan operations when the groundstation
updates the stream rates
2012-02-18 10:51:57 +11:00
Phil
9242c157ee
APM: Fix rudder in elevon mode.
...
elevon planes can have rudders too
2012-02-16 14:43:24 +11:00
Andrew Tridgell
c14097ffa1
APM: changed hold_course for landing to be based on yaw_sensor
...
when we are in the final stages of a landing (less than 2 seconds from
landing waypoint, or less than 3m above landing altitude) we switch
the navigation to use a fixed course. The code previously used the
crosstrack_bearing for this, but this can lead to a large nav_roll in
this final stage of the approach, which can put a wing into the
runway. In autotest we were seeing a nav_roll value of -45 degrees as
we crossed the transition point for the landing, which often led to a
crash.
This changes the code to use the current yaw_sensor value instead,
which is much less likely to lead to large rolls in the final landing
stages.
2012-02-15 08:50:45 +11:00
Andrew Tridgell
c662140a2b
APM: report the nav_bearing as hold_course when enabled
...
this gives a more accurate view of the navigation code, as when
hold_course is not -1 it overrides nav_bearing
2012-02-15 08:50:45 +11:00
Andrew Tridgell
330ff5dc8b
APM: added some comments related to hold_course
...
hold_course is either -1 (for disabled) or a course to hold for
takeoff/landing. This makes the code a bit clearer.
It also resets hold_course in all non-auto modes, to ensure it isn't
used
2012-02-15 08:50:45 +11:00
Andrew Tridgell
11835508a7
when setting airspeed and groundspeed in a mission, don't save to EEPROM
...
If you include airspeed, throttle or groundspeed changes in a mission
then those should not be saved to EEPROM, as otherwise if you restart
and re-fly the mission you will be starting with different parameters
to the ones you used for the first flight.
This is particularly important for setting the target airspeed when
coming in for a landing. You typically set a low target, but if you
fly again the next day I think it would be a real surprise to find
that your loiter airspeed has then changed to the value from the
landing part of your last mission.
This one can be argued either way, but I think that not saving these
changes is the more conservative choice, and better fits the
'principal of least surprise'
2012-02-14 15:20:44 +11:00
Andrew Tridgell
c042ef1298
APM: fixed some build warnings
2012-02-14 08:58:56 +11:00
Andrew Tridgell
8d1729b3ba
Mavlink: report the corrected pitch via MAVLink
...
this subtracts the TRIM_PITCH_CD from the pitch reported via
MAVLink. That gives a better indication of the true pitch in the tlog
2012-02-14 08:58:56 +11:00
Andrew Tridgell
cdf296d8f6
fixed some printf casts
2012-02-14 08:34:10 +11:00
Andrew Tridgell
35badbb97d
APM: the CLI fits nicely on the 1280 again now
...
I find the CLI very useful for testing, so enable it by default on the
1280. Logging is still off by default.
2012-02-14 08:33:49 +11:00
Andrew Tridgell
ecdbfd257a
token is 16 bits now
2012-02-13 16:22:53 +11:00
Andrew Tridgell
d55a0c3a71
added AP_Param::show_all()
...
this moves the logic into common code
2012-02-13 16:22:52 +11:00
Andrew Tridgell
0f9adbdae0
token size for first()/next() is now 16 bits
2012-02-13 16:22:52 +11:00
Andrew Tridgell
617082769a
go back to 1024 bytes for variables in EEPROM
2012-02-13 16:22:52 +11:00
Andrew Tridgell
0b3e3ec5c8
added group indexes to GCS_MAVLINK class
2012-02-13 16:22:52 +11:00
Andrew Tridgell
e85da68fe6
expand parameter area for ArduPlane
...
this ensures all parameters can be saved without overflow
2012-02-13 16:22:52 +11:00
Andrew Tridgell
983192c5d5
tidy up a comment
2012-02-13 16:22:52 +11:00
Andrew Tridgell
2c3ec5de99
fixed two parameter names
2012-02-13 16:22:51 +11:00
Andrew Tridgell
676ca03977
expose mavlink stream rates as parameters
2012-02-13 16:22:51 +11:00
Andrew Tridgell
f22988163e
imported new Parameters code to APM
2012-02-13 16:22:51 +11:00
Andrew Tridgell
e7174bc649
import new Parameters.h for AP_Param to APM
2012-02-13 16:22:51 +11:00
Andrew Tridgell
3d598c8caa
implement dump of all vars in CLI using AP_Param
2012-02-13 16:22:51 +11:00
Andrew Tridgell
bc0ed62aa9
adapt mainline APM code to AP_Param
2012-02-13 16:22:51 +11:00
Sandro Benigno
3200781f56
Battery monitor type 3 cannot calculate battery remaining properly, due it uses only voltage reading. This path set battery_remaining to a value out-of-band for that type of monitoring. It informs to external devices to not show that info.
2012-02-11 21:01:13 -02:00
Andrew Tridgell
1a861b3de5
allow for lower serial baud rates
...
not many people will use less than 9600 baud, except for those wanting
to test extreme range radios, which is what I'm trying to do :-)
2012-02-04 19:07:18 +11:00
Pat Hickey
dfece8e3ff
ArduPlane: Call APM_RC.enable_out for all channels in init_rc_out.
2012-01-22 12:03:11 -08:00
Michael Oborne
6b949511ca
change rc norm_output to scale evenly across the entire range
2012-01-20 16:24:55 +08:00
Michael Oborne
9ca6668c1b
fix SITL attitude hil
2012-01-20 16:04:49 +08:00
analoguedevices
418f5ea31e
Increment version number in anticipation of a firmware hex push.
2012-01-16 22:48:46 +00:00
Doug Weibel
797e0e27a9
Additional commenting on global variables
...
First pass done.
2012-01-16 10:28:03 -07:00
Doug Weibel
b4e58b50ee
Additional commenting on global variables
2012-01-16 09:45:42 -07:00
Doug Weibel
ed9f7cb1b6
Update battery monitoring code for ArduCopter
...
Fixes compatibility for APM2. Also a significant update to the battery monitoring code: We previously had monitoring modes for individual cell voltages for 3 and 4 cell lipos. These have been removed as they were never really supported (the cell voltages were computed but were not reported or recorded anywhere). Also, some clean-up/prep work was done for supporting monitoring 2 separate battery packs. The CLI battery and current monitoring tests were consolidated into 1 test.
changed
2012-01-15 17:10:02 -07:00
Doug Weibel
762a5550de
Remove a debugging print
2012-01-15 16:37:07 -07:00
Doug Weibel
4b24d865bf
Stashing some battery monitoring ratio values in the comments for future use.
2012-01-15 16:35:46 -07:00
Doug Weibel
e22a83eec0
Add a CLI setup action to reset the magnetometer offsets
...
Since the magnetometer offsets are not available through the MAVLink parameter interface (since they are an AP_Var vector) this little feature allows them to be reset from the CLI. Useful if you somehow get bad offsets or if you change magnetometer. If you have a bad set of large offset values I have seen issues with the nulling algorithm have trouble converging to the proper values. I have never seen it have trouble converging from 0/0/0, so this could be a useful feature from time to time.
2012-01-15 16:15:08 -07:00
Doug Weibel
6e8ac99ed6
Fix airspeed sensor support for APM2.
...
Airspeed sensor should be attached to Analog input 0
2012-01-15 16:12:08 -07:00
Doug Weibel
0306bf97a0
Just a little more commenting work on global variables
2012-01-15 16:11:02 -07:00
Doug Weibel
69c7598db2
Update battery monitoring code for ArduPlane
...
Fixes compatibility for APM2. Also a significant update to the battery monitoring code: We previously had monitoring modes for individual cell voltages for 3 and 4 cell lipos. These have been removed as they were never really supported (the cell voltages were computed but were not reported or recorded anywhere). Also, some clean-up/prep work was done for supporting monitoring 2 separate battery packs. The CLI battery and current monitoring tests were consolidated into 1 test.
2012-01-15 16:10:28 -07:00
Doug Weibel
9846822748
Bug fix for compass.
...
This is a fix for an interesting bug when a DCM matrix reset was added to the ground start. This bug only showed up if (A) a ground start were performed after an air start or due to use of the "Calibrate Gryo" action, (B) if the current orientation were sufficiently different from 0/0/0, and (C.) if the particular magnetometer had sufficiently large offsets. Why did resetting the DCM matrix to 0/0/0 pitch/roll/yaw at ground start cause a bug? The magnetometer offset nulling determines the proper offsets for the magnetometer by comparing the observed change in the magnetic field vector with the expected change due to rotation as calculated from the rotation in the DCM matrix. This comparison is made at 10Hz, and then filtered with a weight based on the amount of rotation to estimate the offsets. Normally it would take considerable time at normal in-flight rotation rates for the offset estimate to converge.
If a DCM matrix reset occurs when the offset nulling algorithm is up and running, the algorithm sees the DCM reset as a instantaneous rotation, however the magnetic field vector did not change at all. Under certain conditions the algorithm would interpret this as indicating that the offset(s) should be very large. Since the "rotation" could also have been large the filter weighting would be large and it was possible for a large erroneous estimate of the offset(s) to be made based on this single (bad) data point.
To fix this bug methods were added to the compass object to start and stop the offset nulling algorithm. Further, when the algorithm is started, it is set up to get fresh samples. The DCM matrix reset method now calls these new methods to stop the offset nulling before resetting the matrix, and resume after the matrix has been reset.
2012-01-12 14:44:24 -07:00
Doug Weibel
892f24ac5c
Adding comments for global variables
2012-01-11 12:37:43 -07:00
analoguedevices
ee18748565
Put in commented-out APM2 # defines, to save people the trouble of having to type them in themselves.
2012-01-09 02:00:46 +00:00
Doug Weibel
44c66c2e8e
Bug fix for issue 438.
...
The rate in a change alt command does not need to be signed. The code will determine if the rate needs to be positive or negative
2012-01-08 18:24:55 -07:00
Michael Oborne
e1a544cc78
fix relay on apm 1 AP
2012-01-05 07:51:01 +08:00
Andrew Tridgell
cdd5589498
I2c: default to 5ms timeout, and faster bus speed
...
we will slow down the speed when we get a failure
2012-01-04 16:36:47 +11:00
Doug Weibel
4de2155845
Tweak to FBW min altitude
...
Patch from Yury
2011-12-31 15:44:40 -07:00
Jason Short
a6c09b3ea5
Small issue with newline formatting
2011-12-29 23:02:02 -08:00
Michael Oborne
cd145fd7a9
add circle to output modes
2011-12-29 18:21:32 +08:00
Andrew Tridgell
cd3729d993
APM: added error checking on barometer read
...
if the barometer is dead and the GPS has a fix, use the GPS for
altitude
2011-12-28 20:41:53 +11:00
Andrew Tridgell
98353b7ba8
APM: added error checking on compass read
2011-12-28 20:41:53 +11:00
Andrew Tridgell
3cb96fb8af
APM: convert to new I2C library
2011-12-28 20:41:53 +11:00
Andrew Tridgell
a6920d603d
geofence: re-breach if user changes mode outside the fence
...
if the user changes mode while outside the fence, and fencing is still
enabled, then declare a new breach
2011-12-28 17:28:35 +11:00
Andrew Tridgell
8d87aa41b9
APM: Update for DataFlash changes
2011-12-28 16:00:49 +11:00
analoguedevices
b8917b58bd
Added contributor names, removed "alpha" from firmware name
2011-12-26 17:13:37 +00:00
Andrew Tridgell
f5a3eed1a7
APM: fixed some unsigned/signed warnings
2011-12-26 19:17:11 +11:00
Andrew Tridgell
d81dc21dfe
APM-log: fixed reading of GPS logs
2011-12-26 19:17:11 +11:00
Andrew Tridgell
3f9f3f3416
APM-log: changed to use df_NumPages
...
this copes with different data flash sizes on APM1 and APM2
2011-12-26 19:17:11 +11:00
Doug Weibel
8e17b8d6d4
Correct a bug in throttle failsafe feature
2011-12-24 15:34:31 -07:00
Doug Weibel
a5df59eba3
Remove old debug print
2011-12-24 14:26:35 -07:00
Doug Weibel
7879efb8ae
Fix scaling on "turn coordination" yaw PID so that P gain values fall in "usual" range 0.1 to 10.
2011-12-24 14:26:35 -07:00
Andrew Tridgell
5e347854c3
setup the main loop failsafe after RC library is setup
2011-12-23 11:13:01 +11:00
Andrew Tridgell
5bda871d60
added comment on using GPS ground course
2011-12-23 11:13:01 +11:00
Andrew Tridgell
d0245b206a
APM2: default magnetometer to enabled
...
all APM2s have a MAG at the moment
thanks to Chris for the suggestion
2011-12-22 17:51:14 +11:00
Andrew Tridgell
c805f2a0c3
failsafe: make sure we clear any RC override in manual failsafe
2011-12-22 10:55:43 +11:00
Andrew Tridgell
26d5d3c385
fixed HIL build
2011-12-21 23:31:39 +11:00
Andrew Tridgell
29fa78214b
APM: added failsafe support
...
we now pass all channels through at 50Hz if the main loop stops
running, regardless of why. This gives us a reasonable failsafe, as
long as the low level RC library is still working, and interrupts
don't get completely disabled.
2011-12-21 23:31:39 +11:00
Andrew Tridgell
e687ce9b3d
mainloop_count should be uint16_t
2011-12-21 23:31:38 +11:00
Andrew Tridgell
89561d49d0
always declare a timer_scheduler
...
we should always run this code
2011-12-21 23:31:38 +11:00
Andrew Tridgell
4bdc872595
APM: show temperature in airpressure test
...
useful for tracking down baro bugs
2011-12-19 18:52:56 +11:00
Andrew Tridgell
c14d702912
geofence: send fence status messages on fence events
...
this ensures the fence status goes out as soon as possible, which
means the messages arrive in a sane order on the GCS
2011-12-19 11:25:59 +11:00
Andrew Tridgell
e99db6526f
APM: added RST_SWITCH_CH parameter
...
This is useful for switching back to the mode indicated by the control
switch after a failsafe or fence breach. I was just changing modes
each time, but it is far more elegant to have a spring loaded switch
for "I am ready to take control again", rather than continually
changing modes.
2011-12-19 11:25:59 +11:00
Andrew Tridgell
71c911f65d
Log: fixed logging dependence on compiler arg eval order
2011-12-18 17:31:45 +11:00
Andrew Tridgell
f25ee899f3
APM: run mavlink loop while erasing logs
2011-12-18 10:19:52 +11:00
Andrew Tridgell
fc20aa9602
geofence: enable return to old control mode via FENCE_CHANNEL
...
if you disable fencing with the fence channel switch while still in
GUIDED mode to the return point, then reset the control mode back to
the transmitter control mode
2011-12-18 10:00:44 +11:00
Andrew Tridgell
df094ce463
fixed airspeed sensor for ArduPlane on APM2
...
we were trying to use a non-existant ADC chip!
2011-12-17 07:29:09 +11:00
Andrew Tridgell
f6f808357c
removed AperiodicProcess code
...
this code was never being used, and was more complex than it was
worth.
2011-12-17 07:29:09 +11:00
Andrew Tridgell
b9a88aac32
geofence: added FENCE_TRIGGERED_PIN
...
this allows for a digital pin to be set high when the geofence
triggers. This pin can be connected to an external failsafe device
2011-12-17 07:29:08 +11:00
Michael Oborne
28d280562a
apm 1280 disables
2011-12-16 22:26:39 +08:00
Andrew Tridgell
42522baf9f
geofence: store fence points as int32_t
...
this keeps maximum precision in fence boundaries
2011-12-16 20:11:51 +11:00
Andrew Tridgell
fc495ce6a7
geofence: added fence status reporting and faster altitude check
2011-12-16 20:11:51 +11:00
Andrew Tridgell
64ae2ebec5
geofence: don't trim control surfaces on geo-fence breach
...
the user input is likely to be bad
2011-12-16 20:11:51 +11:00
Andrew Tridgell
3b148c87d5
geofence: main geo-fence code
...
this implements the primary logic of geo-fencing
2011-12-16 20:11:51 +11:00
Andrew Tridgell
82b615df50
geofence: added geo-fencing control parameters
2011-12-16 20:11:51 +11:00
Andrew Tridgell
960d6ee38a
removed an unused variable
2011-12-16 20:09:49 +11:00
Andrew Tridgell
84a694efb9
only check for "enter 3 times" in first 20s after boot
...
we don't want stray bytes on serial3 to make us enter the CLI during
flight!
2011-12-16 20:09:32 +11:00
Doug Weibel
ca89857854
Changes to logging file system to avoid problems with 0 and 1 page logs
2011-12-13 20:09:07 -07:00
Andrew Tridgell
1998908a05
DCM: reset the DCM matrix after a ground start
2011-12-13 21:33:07 +11:00
Andrew Tridgell
8cd13749bd
MAVLink: fixed link flood on waypoint upload
2011-12-13 20:39:04 +11:00
Andrew Tridgell
dd9f3a3fa6
fixed a hang on 2nd run of IMU test
...
we should not try to initialise the ISR handlers twice
2011-12-13 18:28:50 +11:00
Andrew Tridgell
483bef35e5
IMU: update ACM and APM for flash_leds change in IMU init
2011-12-13 18:19:41 +11:00
Andrew Tridgell
888d6226b2
fixed two more CONFIG_HARDWARE #ifdef bugs
2011-12-13 17:05:48 +11:00
Andrew Tridgell
07dba4eff7
desktop: fixed Wire.begin() build problem
2011-12-12 15:14:55 +11:00
Andrew Tridgell
78e8fbff9c
fixed hardware config check for barometer
2011-12-12 15:14:55 +11:00
Andrew Tridgell
1b1c629167
added sitl build target
2011-12-12 15:14:55 +11:00
Andrew Tridgell
2bd18e937c
throttle: only use throttle slew in auto throttle modes
...
we don't want STABILISE and FBWA to have throttle change limits
2011-12-12 15:14:55 +11:00
Andrew Tridgell
0a7332b6e3
airspeed: smooth the airspeed value a bit more
...
the value is very noisy in my tests. A bit more smoothing may help
2011-12-12 15:14:55 +11:00
Andrew Tridgell
011110e1dd
airspeed: use floating point values and better averaging in zero_airspeed()
...
this makes the calibration of airspeed a bit more accurate, and
prevents truncation of airspeed values
2011-12-12 15:14:55 +11:00
Andrew Tridgell
d5c23c83cf
apm2: fixed for new barometer code
2011-12-11 15:21:10 -08:00
Pat Hickey
a99a1dbc9a
ArduPlane: update AP_Baro construtors and initializers
2011-12-11 15:21:10 -08:00
Pat Hickey
f3ad7f3af8
Wire and SPI Init: move to sketch system.pde from libraries
...
* Wire.begin removed from AP_Baro_BMP085::init()
* SPI.begin removed from AP_Baro_MS5611::init()
* SPI.begin removed from AP_InertialSensor_MPU6000::hardware_init()
* Both Wire.begin and SPI.begin added very early in init_ardupilot in
ArduCopter/system.pde and ArduPlane/system.pde
2011-12-11 15:21:10 -08:00
Pat Hickey
d7f77aec93
ArduCopter & ArduPlane: Added support for apm2beta build via APM2_BETA_HARDWARE define
...
* This enables the BMA085 driver for compatibility with beta boards.
* The CLI_SLIDER_ENABLED=DISABLED line does not need to be in the makefile.
config.h takes care of this default.
2011-12-11 15:21:09 -08:00
Pat Hickey
1b2ebdff44
ArduPlane: added config.h and defines.h to support CONFIG_BARO
2011-12-11 15:21:09 -08:00
Pat Hickey
04ea979331
ArduPlane: Rename APM_BMP085 classes to AP_Baro_BMP085 classes
2011-12-11 15:21:09 -08:00
Pat Hickey
f2652d23bf
ArduPlane: calibrate accel with imu.init_accel after imu.init
...
* complements commit 73418559, where init_accel was eliminated
from AP_IMU_INS::init cold start.
2011-12-10 13:32:47 -08:00
Doug Weibel
2ef4c79a7c
Minimum ground speed patch from Claudio Natoli. Thanks Claudio!
...
This patch will boost the target airspeed as necessary to keep the ground speed above a parameter value - param_min_groundspeed. Airspeed is still limited to FBW-max. Setting min_groundspeed to zero (default) disables the feature.
2011-12-09 16:43:25 -07:00
Doug Weibel
2f962fe6da
Augment failsafe gcs_send_text message
2011-12-09 09:11:45 -07:00
Doug Weibel
502a98dda1
Add hook to dump log filesystem index for debugging
2011-12-07 08:13:30 -07:00
Andrew Tridgell
39a36fe946
fixed the "reboot on GPS lock" bug
...
the problem was that with APM2 we may not have a 2nd GCS instance. The
"gps alt: xxx" message was being unconditionally sent to both GCS
instances, which caused a crash
2011-12-04 09:06:58 +11:00
Andrew Tridgell
4a057aefa0
test: removed the broken gyro test and merge it into the imu test
...
the gyro test assumed APM1 hardware, and would hang on APM2. The imu
test can just as easily display gyro and accelerometer data as well as
roll/pitch/yaw, so combine it in one test
2011-12-03 14:08:20 +11:00
Doug Weibel
88ab4f7d70
Fix for intermittent bug of log #1 starting on page 2 and confusing file system
2011-11-28 19:43:10 -07:00
Doug Weibel
b03de3095e
Add DataFlash.Init before doing a forced log erase on eeprom reset.
...
Add progress indication during log erase
2011-11-28 19:42:27 -07:00
Andrew Tridgell
2cabb11307
mavlink: don't force CLI and HIL with mavlink10 build
2011-11-28 16:22:33 +11:00
Andrew Tridgell
838c57cd1a
mavlink: paranoia setting of failsafe when forcing AUTO mode
...
this shouldn't be needed, but will do no harm, and I thought I saw
this fail in a test
2011-11-28 16:22:33 +11:00
Andrew Tridgell
4036604fb7
mavlink: move Mavlink_compat.h to common code
...
this will allow it to be used by ArduCopter
2011-11-28 13:53:57 +11:00
Andrew Tridgell
5ae929ace9
build: CLI_SLIDER_ENABLED doesn't need to be forced off in apm2 build
...
this is handled by config.h now
2011-11-28 13:53:57 +11:00
Doug Weibel
7960e7963c
Add Guided mode to failsafe handling
2011-11-26 21:10:53 -07:00
Andrew Tridgell
a048709828
Logs: don't print hundreds of bogus log boundaries
...
this can take quite a long time
2011-11-26 17:02:55 +11:00
Pat Hickey
ab56a764d3
ArduPlane: rev version number from 2.26 to 2.27 Alpha
2011-11-25 20:00:19 -08:00
Pat Hickey
f7a9b8a563
ArduPlane: LED digital writes use LED_OFF and LED_ON
2011-11-25 20:00:19 -08:00
Andrew Tridgell
86927ac0a5
ArduPlane: rename purple to APM2
2011-11-25 20:00:19 -08:00
Andrew Tridgell
7def0e98e8
USB-MUX: auto-switch telemetry port based on UXB mux for ArduPlane
...
when USB is unplugged, switch baud rate to the SERIAL3_BAUD rate from
EEPROM
2011-11-25 20:00:19 -08:00
Andrew Tridgell
ffba37d599
desktop: first version of register level SITL support
...
this adds register level emulation of the ADS7844 and the RC
input/output hardware on the APM1, allowing for SITL testing without
enabling HIL in the code
2011-11-25 20:00:18 -08:00
Andrew Tridgell
3a0b1d1903
purple: there are no dipswitches on the purple board
2011-11-25 20:00:18 -08:00
Andrew Tridgell
6093db948b
compass: added AP_COMPASS_APM2_SHIELD
...
this makes the orientation clearer
2011-11-25 20:00:18 -08:00
Andrew Tridgell
649da8e05d
purple: adc test not useful if no ADC
2011-11-25 20:00:18 -08:00
Andrew Tridgell
40459653b5
purple: fixed LED and IO pin defintitions
2011-11-25 20:00:18 -08:00
Andrew Tridgell
ca76f6d0ec
purple: add the remaining hw defines for purple hardware
2011-11-25 20:00:18 -08:00
Andrew Tridgell
1e41b4b2b0
timer_scheduler doesn't exist in HIL_MODE_ATTITUDE
2011-11-25 20:00:18 -08:00
Andrew Tridgell
a3701e521a
build: added hlsensors target
2011-11-25 20:00:18 -08:00
Andrew Tridgell
1c20efe4b8
re-organiser sensor declarations
...
this tries to make the #ifdef nesting easier to understand
2011-11-25 20:00:17 -08:00
Andrew Tridgell
3d175c449e
adc.Init() takes timer_scheduler
2011-11-25 20:00:17 -08:00
Andrew Tridgell
03c7d7bfb6
purple: always declare timer_scheduler
2011-11-25 20:00:17 -08:00
Pat Hickey
1895458dbf
purple: added new parameters to Init() functions
...
this adapts the test code for the purple API changes
2011-11-25 20:00:17 -08:00
Pat Hickey
f9d6facdda
test: added new passthru test
...
this passes radio inputs direct to servo outputs, which is useful for
hardware testing
2011-11-25 20:00:17 -08:00
Pat Hickey
bad177bfdc
removed old commented out code
2011-11-25 20:00:17 -08:00
Pat Hickey
ad0cac670c
purple: added new parameters needed for new library APIs
...
new APIs pass in timer_scheduler. We also to init the isr_registry
2011-11-25 20:00:17 -08:00
Pat Hickey
4015cb0a40
purple: fixed APM_RC.Init() to add isr_registry parameter
2011-11-25 20:00:17 -08:00
Pat Hickey
9e47536924
purple: declare sensors for purple library rework
...
we need some different declarations to match the new APIs
2011-11-25 20:00:17 -08:00
Pat Hickey
08675a91d8
purple: added config options for purple/APM1 hardware
2011-11-25 20:00:17 -08:00
Pat Hickey
3300032a89
purple: added hardware defines for ArduPlane
2011-11-25 20:00:17 -08:00
Pat Hickey
cc67062442
build: added new command line build targets
...
this makes it more convenient to build common options
2011-11-25 20:00:16 -08:00
Andrew Tridgell
89d2f0f849
mod barometer.Init() based on hardware
2011-11-25 20:00:15 -08:00