Commit Graph

282 Commits

Author SHA1 Message Date
Amilcar Lucas ea27d1604a More optimizations
I forgot these ones.
2011-10-09 15:34:47 +02:00
Amilcar Lucas 282722eae6 Optimize the code a bit more, only perform calculations if they are necessary 2011-10-09 15:27:17 +02:00
Amilcar Lucas 02f023a9ec Use a single if instead of four 2011-10-09 15:27:17 +02:00
Amilcar Lucas 758ae5a78e Use the shorter macro call instead 2011-10-09 13:57:35 +02:00
Andrew Tridgell 2cb93f5a16 fixed a crash in HIL
The g_rc_function[RC_Channel_aux::k_flap_auto] ptr came out as NULL
during one HIL run on a desktop CPU, which led to ArduPlane
crashing. I am not yet sure if this can happen in real flight, but I
think the NULL check is worthwhile to be sure.
2011-10-09 22:09:00 +11:00
Andrew Tridgell 1195c4750e fixed some ambiguous if/else combinations
gcc was complaining about the logic
2011-10-09 22:09:00 +11:00
Andrew Tridgell dcc6f30af1 don't initialise DataFlash if logging is disabled
this fixes HIL without an IMU
2011-10-09 22:08:59 +11:00
Andrew Tridgell e927cf94d7 use memcheck_available_memory() instead of freeRAM()
this gives a more accurate view of free memory
2011-10-09 22:08:59 +11:00
Andrew Tridgell 657367426b avoid the need for compiler optimisation for HIL build
read_airspeed() is only available when in a non-HIL build. The
optimiser normally removes this call, but when debugging in a desktop
build, it is nice to avoid using the optimiser
2011-10-09 22:08:58 +11:00
Amilcar Lucas 6a5d6889b7 Only use radio_in values if the channel is not used as flight_mode_channel 2011-10-08 22:15:54 +02:00
Amilcar Lucas 101dc83239 Fix compilation 2011-10-02 14:52:02 +02:00
Amilcar Lucas 4b35757a1e Moved relay control functions to it's own library 2011-10-02 01:00:27 +02:00
Amilcar Lucas 213e731061 Correct/update channel assigment comment 2011-10-02 00:06:44 +02:00
Doug Weibel dd8367eae4 Add auto flap functionality to FBW-B 2011-09-30 07:25:36 -06:00
Doug Weibel 8f2ae139a4 Fix missing capitalization 2011-09-30 07:25:35 -06:00
Doug Weibel b6cd0ad9b8 Rework prev commit a bit cleaner as suggested by Janne Mäntyharju 2011-09-30 07:25:35 -06:00
Doug Weibel aac8eac0cb Add code to disable throttle if we are on the ground and in FBW_B or higher
Add code to disable throttle if we are on the ground and in FBW_B or higher.  We believe we are on the ground if speed < 5 and alt < 5.  Also check that we are not trying to perform a takeoff.
2011-09-30 07:25:35 -06:00
James Goppert 204c6bb6e7 Added makefiles for ArduCopter/ArduPlane.
These files are not generated by cmake. They are necessary for
the make based build to work. To build using this method
type make in the directoy such as ArudPlane/ArduCopter. Make
sure that you do not call cmake in the ArduPlane etc directory
as this will overwrite this Makefile with the autogenerated cmake
version. Cmake should be called from withing a build directory.
2011-09-30 07:16:48 -04:00
Janne M cd02e78af7 Fixed board setting in cmake-file. Removed now autogenerated Makefile 2011-09-30 11:17:08 +03:00
James Goppert 112d5e9531 Improvements to cmake. 2011-09-29 21:23:26 -04:00
James Goppert bfe0331803 Corrected makefile. 2011-09-29 18:57:19 -04:00
James Goppert a0db0fc25f Added missing files. 2011-09-29 14:18:05 -04:00
James Goppert 3a00ceb593 Added ArduBoat/ ArduRover/ and APO library. 2011-09-29 14:12:15 -04:00
Jason Short 1243e76f29 Dead Zone fix - Now the range is full instead of clipped. Should make the Yaw much more smooth. 2011-09-26 22:12:39 -07:00
Amilcar Lucas cd0bbd718b Fix issue #285 2011-09-25 11:36:31 +02:00
Amilcar Lucas a3152b2410 Moved mavlink_check_target() to the libraries/.
This allows it to be reused by the other libraries and by other projects ArduPlane, ArduCopter, ArduRover ... etc.
It also reduces code duplication
2011-09-24 14:40:07 +02:00
Doug Weibel 5767575a73 Correct bug in auto flap handling 2011-09-22 20:50:15 -06:00
Andrew Tridgell c5bf8312b8 removed some more unused defines
mavlink is now the only choice for HIL and GCS
2011-09-19 11:04:02 +10:00
Andrew Tridgell 3a81e12866 get rid of the last active uses of the SendDebug macros
please use gcs_send_text*() from now on, to ensure serial queueing
2011-09-19 11:04:02 +10:00
Andrew Tridgell e7bc74a38e remove unused climb_rate code 2011-09-19 11:04:02 +10:00
Andrew Tridgell c2126e127d use gcs_send_text_fmt() and cleanup a few old debug lines 2011-09-19 11:04:02 +10:00
Andrew Tridgell 943c234c62 GCS: added new gcs_send_text_fmt() method
this allows low priorty formatted messages to be sent to the ground
station, without causing a CPU stall on the serial send buffer
2011-09-19 11:04:02 +10:00
Andrew Tridgell f71674ffa4 GCS: don't send low priority messages unless they fit
check the serial transmit buffer, and don't send low priority messages
unless they can go straight out without blocking the CPU
2011-09-19 11:04:02 +10:00
Andrew Tridgell 8f604a1035 added gcs_severity enum
this makes it harder to mixup defines
2011-09-19 11:04:02 +10:00
Andrew Tridgell 4e346a0cc5 remove some more old cruft 2011-09-19 11:04:02 +10:00
Andrew Tridgell 225e6d760f remove Mavlink_Common.h and used deferred logic for params/waypoints
this moves the mavlink send logic into GCS_Mavlink.pde, and also
ensures we only ever send parameters and waypoints when there is
sufficient space in the serial send buffer
2011-09-19 11:04:02 +10:00
Andrew Tridgell ef6e2c2adf remove some more unused code in the GCS interface 2011-09-19 11:04:02 +10:00
Andrew Tridgell de18df06b5 GCS: make the two GCS links gcs0 and gcs3
the artifical separation between 'gcs' and 'hil' just leads to
confusion. This also simplifies the code a bit more, and saves us a
bit more text
2011-09-19 11:04:02 +10:00
Andrew Tridgell 35fcd6dae7 GCS: simplify the API for sending messages
this makes the code clearer, and saves us another 100 bytes of text
2011-09-19 11:04:02 +10:00
Andrew Tridgell 83492f92f2 MAVLink: use enum ap_message and remove unused param argument
saves us another 200 bytes of text
2011-09-19 11:04:02 +10:00
Andrew Tridgell 9fed709be2 removed some more dead messages, and convert MSG_* to an enum
this make it safer to add a new message while keeping deferred queue
the right size
2011-09-19 11:04:02 +10:00
Andrew Tridgell 7d6301976e remove unused MESSAGE_COMMAND_LIST 2011-09-19 11:04:02 +10:00
Andrew Tridgell bc1bfed22d HIL: first step in simplifying the HIL/GCS code
this gets rid of the messy #ifdefs around HIL_PORT, and removes
non-MAVLink GCS and HIL support
2011-09-19 11:04:01 +10:00
Andrew Tridgell 46d6974da2 remove unsued MSG_LOCAL_LOCATION
this saves us a bit of code
2011-09-18 11:07:24 +10:00
Andrew Tridgell ee1541cda7 rework the MAVLink send code to avoid excessive stack usage
this avoids a varient of the gcc excessive stack usage bug, by
wrapping the send calls in NOINLINE functions. This saves us a lot of
stack space, and strangely enough produces slightly smaller code!
2011-09-18 11:05:21 +10:00
Janne M 326f913e64 Merge branch 'divider' 2011-09-17 23:56:41 +03:00
Janne M 95dd8cc35b Added voltage divider, input voltage and amps per volt to parameters. 2011-09-17 22:32:19 +03:00
Amilcar Lucas c9d9ee0d3b Merge some small misc improvements from APM_Camera branch 2011-09-17 20:25:31 +02:00
Andrew Tridgell 4fed88ffbf ArduPilot updates for new DCM code
G_Dt is no longer needed, and scale ADC values by 8 to match old
constants
2011-09-17 14:58:02 +10:00
Andrew Tridgell d34f8ceca6 MAVLink: only send HEARTBEAT and SYS_STATUS during initialisation
I am concerned that some of the mavlink send routines may impact on
sensor calibration, so its safer to just send the minimum information
to keep the GCS happy
2011-09-17 14:58:02 +10:00
Michael Oborne c6eae87f8a fix remote error value 2011-09-15 18:26:59 +08:00
unknown 7bb800aafc Merge branch 'master' of https://code.google.com/p/ardupilot-mega/ 2011-09-14 16:02:21 +02:00
unknown 9f028bb5a0 Adding CMake support 2011-09-14 15:44:55 +02:00
Amilcar Lucas c58b563584 Revert more of 6dcbc7f44bc0.
Fix an issue with initialization of channels that on-line changed their function.
For the curious people that the code size overhead of having any aux channel do any function (with this code) is 44 bytes.
 To see wich code I'm talking about, do a git diff 05057ac2d455..this_commit (replace this commit with the commit hash of this commit)
2011-09-13 14:01:35 +02:00
Amilcar Lucas ef955eace4 These changes were meant to be inside commit a14c06adc06b. I'm sorry but reverting stuff is not that easy 2011-09-13 01:54:47 +02:00
Amilcar Lucas dd843d18ec Added support for routing any function to any of the aux. servos.
This is a manual merge from the APM_Camera branch.
It reverts the stuff that Oliver did not menat to do with his commit 6dcbc7f44bc0
2011-09-13 01:24:06 +02:00
Amilcar Lucas f7f745055d Use the G_RC_AUX macro when possible. Added more comments. Remove unused code 2011-09-12 20:21:12 +02:00
Doug Weibel 5a14d546bb Correct bug in initialization of auxiliary channels
The value of aux_servo_function[CH_x] was not being set before the radio init_rc_in() function was setting channel angle/range.
2011-09-12 20:21:12 +02:00
Doug Weibel 2a0912b867 Change default setting for auto_trim to disabled per user (JB) request. 2011-09-12 07:24:52 -06:00
Doug Weibel d6370fd389 Correct state machine processing for long failsafe event following short failsafe from lower modes 2011-09-11 21:59:46 -06:00
Doug Weibel 1a8b74063a Disable stick mixing if in failsafe
If trim values differ from failsafe channel values then stick mixing will adversely affect performance while in failsafe
2011-09-11 21:50:32 -06:00
Amilcar Lucas b8832fe9ab Use G_RC_AUX macro to simplify accessing the auxiliary servos 2011-09-12 00:02:47 +02:00
Amilcar Lucas 69a9f44fee This is ugly, but it fixes compilation on arduino 2011-09-11 23:25:06 +02:00
Amilcar Lucas 5a27954e26 Moved update_aux_servo_function() to the RC_Channel_aux.* files.
This simplifies code sharing between ArduCopter and Arduplane at the expense of 48bytes.
Moved CH_x defines out of the defines.h file and into the library where they belong
2011-09-11 23:07:30 +02:00
Amilcar Lucas 966f9f962a Moved the RC_Channel_aux class to its own file. The includes could be improved, has anyone got any ideas how ? 2011-09-11 19:13:01 +02:00
Amilcar Lucas ed112b2243 Only run camera code if camera support is enabled 2011-09-11 17:41:18 +02:00
Amilcar Lucas 55e6ac5fe6 Fix RC range reversal 2011-09-11 04:12:04 +02:00
Amilcar Lucas 42de4efc40 Revert "Fix RC range reversal"
This reverts commit d5046b1097b0b5455aa1a59e9dd80533e589432e.
2011-09-11 04:07:36 +02:00
Amilcar Lucas f53364bf41 Fix RC range reversal 2011-09-11 04:04:02 +02:00
Amilcar Lucas 5454cd503b For now point the camera manually via the RC inputs 2011-09-11 02:40:13 +02:00
Amilcar Lucas 5fc771f9d8 Added a comment about lower half of the array 2011-09-10 23:58:25 +02:00
Amilcar Lucas f60969a5d5 Added comments explaining when should the function be used 2011-09-10 23:36:47 +02:00
Amilcar Lucas 329df04157 Egg_drop has a 0..100 range 2011-09-10 23:35:23 +02:00
Andrew Tridgell 6d059b8eba Revert "added support for AP_ADC MAVLink packet"
This reverts commit a65a2dda2c1bfa95437880227a3abddc95b329f5.

I am reverting this not for any sane reason, but because my 3 APM
boards now lock up on any I2C operation, and I don't know why. I can't
see how this change could have caused it, but I don't want to take the
chance.
2011-09-10 22:00:29 +02:00
Andrew Tridgell a2d602b090 added support for AP_ADC MAVLink packet
this adds AP_ADC, which sends raw ADC 16 bit values for all 6 ADC
channels at the Extra3 MAVLink stream rate. Extra3 was previously
unused
2011-09-10 14:18:15 +02:00
Amilcar Lucas ada409855a Moved a camera mount function call, out of the servos update function 2011-09-10 13:47:09 +02:00
Amilcar Lucas b977007bdf Moved a function from radio.pde to the RC_Channel_aux library. Now its more readable and reusable 2011-09-10 13:26:29 +02:00
Amilcar Lucas 9e80f2e920 This is the real HEAD of the APM_Camera branch. Seams that lots of changes got lost in the SVN to GIT port 2011-09-09 16:18:38 +02:00
Amilcar Lucas 581603c3b7 This is the real HEAD of the APM_Camera branch. Seams that lots of changes got lost in the SVN to GIT port 2011-09-09 16:02:22 +02:00
Andrew Tridgell 6e2f231688 rename main pde file for arduino requirements 2011-09-09 11:52:25 +10:00
Andrew Tridgell a1b2cc7229 import APM_Camera branch from SVN 2011-09-09 11:45:13 +10:00
Andrew Tridgell 89fa70520f imported ArduPlane from ArduPilotMega svn 2011-09-09 11:29:39 +10:00