Andrew Tridgell
580647b1de
use C++ tricks to minimise differences for MAVLink 1.0
...
this should make maintainence/testing a bit easier
2011-10-30 11:48:56 +11:00
Michael Oborne
9465617b02
Merge branch 'master' of https://code.google.com/p/ardupilot-mega
2011-10-30 07:35:10 +08:00
James Goppert
8102b31d8d
Merge branch 'master' of https://code.google.com/p/ardupilot-mega
2011-10-29 15:09:35 -04:00
James Goppert
1a8c4a2597
Working on cmake support.
2011-10-29 15:01:05 -04:00
Andrew Tridgell
0211fc2f09
move g_rc_function[] to RC_Channel library
...
libraries should not rely on data declared in the main program. This
caused a build error for the Desktop build for ArduCopter under cygwin
2011-10-29 18:42:18 +11:00
Michael Oborne
374f8cbcd0
better crosstrack
2011-10-29 12:54:13 +08:00
Michael Oborne
f70868348c
Merge branch 'master' of https://code.google.com/r/meee146-hil
2011-10-29 11:37:54 +08:00
Andrew Tridgell
1118d26f03
fixed "Free RAM" display on bootup
2011-10-28 21:34:10 +11:00
Michael Oborne
835b585e03
APM track following change
2011-10-28 12:05:22 +08:00
Doug Weibel
cbf59e96bd
Bug fixes for command logic re-write
2011-10-27 13:45:57 -06:00
Doug Weibel
645b9c1d48
Initial rewrite of command logic.
...
Changes mission structure so that conditional and immediate commands are located between associated waypoints instead of after the second waypoint.
2011-10-27 13:45:52 -06:00
Andrew Tridgell
5a44298d57
CLI: enable "hit enter 3 times" support for CLI
...
if you hit enter 3 times before you send any mavlink packets, we will
enter CLI mode
2011-10-27 21:54:07 +11:00
Andrew Tridgell
2b9daf65ff
mavlink: fixed WP upload
...
The previous code accepted arbitrary command codes here, and ACKed
them. Later we should specifically list which ones are OK
2011-10-26 12:18:24 +11:00
Andrew Tridgell
5a089f98d2
MAVLink: MAVLink 1.0 support now builds
...
not testing at all - so be careful!
2011-10-24 12:21:26 +11:00
Andrew Tridgell
f815a1b27b
mavlink: started adding support for MAVLink 1.0
...
this is nowhere near complete, and does not compile yet
2011-10-24 10:20:36 +11:00
Doug Weibel
9cbc38b516
Add a feature for a minimum altitude parameter while flying in FBW-B
...
This patch written by YureZzZ - Thank you!
2011-10-16 23:11:40 -06:00
Michael Oborne
d38b289766
hil sensor cleanup
2011-10-14 18:14:32 +08:00
Michael Oborne
7ef51f723d
Sensor hil fix's
2011-10-13 22:22:03 +08:00
Andrew Tridgell
ea82b27fe5
support building with common Makefile.desktop
2011-10-11 17:49:40 +11:00
Michael Oborne
14dbc9523c
Merge branch 'master' of https://code.google.com/p/ardupilot-mega
2011-10-11 08:05:14 +08:00
Michael Oborne
3bc793bb9b
Merge branch 'desktop-wip' of https://code.google.com/r/tridge60-apm-wip
2011-10-10 07:22:57 +08:00
Andrew Tridgell
0939b51a4c
added build makefiles
2011-10-10 07:18:38 +11:00
Amilcar Lucas
6484b83291
More optimizations
...
I forgot these ones.
2011-10-09 15:34:47 +02:00
Amilcar Lucas
865bb34657
Optimize the code a bit more, only perform calculations if they are necessary
2011-10-09 15:27:17 +02:00
Amilcar Lucas
c624582c91
Use a single if instead of four
2011-10-09 15:27:17 +02:00
Amilcar Lucas
e232a0936f
Use the shorter macro call instead
2011-10-09 13:57:35 +02:00
Andrew Tridgell
5d0d1b6a6d
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
6656847faa
fixed some ambiguous if/else combinations
...
gcc was complaining about the logic
2011-10-09 22:09:00 +11:00
Andrew Tridgell
e7e8165bc7
don't initialise DataFlash if logging is disabled
...
this fixes HIL without an IMU
2011-10-09 22:08:59 +11:00
Andrew Tridgell
63ac6bcd94
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
546b4df76d
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
f1d47982e2
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
ee4251baef
Fix compilation
2011-10-02 14:52:02 +02:00
Amilcar Lucas
7b4ccffa53
Moved relay control functions to it's own library
2011-10-02 01:00:27 +02:00
Amilcar Lucas
dcef0f34e9
Correct/update channel assigment comment
2011-10-02 00:06:44 +02:00
Doug Weibel
5073acce3e
Add auto flap functionality to FBW-B
2011-09-30 07:25:36 -06:00
Doug Weibel
9396e3ab58
Fix missing capitalization
2011-09-30 07:25:35 -06:00
Doug Weibel
adbe965f35
Rework prev commit a bit cleaner as suggested by Janne Mäntyharju
2011-09-30 07:25:35 -06:00
Doug Weibel
3fff788f95
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
e20c279ca5
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
8aac89e549
Fixed board setting in cmake-file. Removed now autogenerated Makefile
2011-09-30 11:17:08 +03:00
James Goppert
5489b84f8e
Improvements to cmake.
2011-09-29 21:23:26 -04:00
James Goppert
5e92e1f982
Corrected makefile.
2011-09-29 18:57:19 -04:00
James Goppert
ed850d4e0c
Added missing files.
2011-09-29 14:18:05 -04:00
James Goppert
d887a28b91
Added ArduBoat/ ArduRover/ and APO library.
2011-09-29 14:12:15 -04:00
Jason Short
326cfef808
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
dca013965a
Fix issue #285
2011-09-25 11:36:31 +02:00
Amilcar Lucas
e5c248e2bf
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
932e0fe45c
Correct bug in auto flap handling
2011-09-22 20:50:15 -06:00
Andrew Tridgell
e2ed1f1c56
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
4437ff1046
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
6a9a85f184
remove unused climb_rate code
2011-09-19 11:04:02 +10:00
Andrew Tridgell
20bfe6b01d
use gcs_send_text_fmt() and cleanup a few old debug lines
2011-09-19 11:04:02 +10:00
Andrew Tridgell
0f09bf6654
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
9351ef17a9
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
55cd7bcf1d
added gcs_severity enum
...
this makes it harder to mixup defines
2011-09-19 11:04:02 +10:00
Andrew Tridgell
66e4ae50bb
remove some more old cruft
2011-09-19 11:04:02 +10:00
Andrew Tridgell
73223ee458
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
de12ea429e
remove some more unused code in the GCS interface
2011-09-19 11:04:02 +10:00
Andrew Tridgell
e61d742345
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
2ca8e58bc2
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
17ebb311a7
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
220b941e31
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
3f37cce6c7
remove unused MESSAGE_COMMAND_LIST
2011-09-19 11:04:02 +10:00
Andrew Tridgell
9baab490f1
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
87ddd50c2a
remove unsued MSG_LOCAL_LOCATION
...
this saves us a bit of code
2011-09-18 11:07:24 +10:00
Andrew Tridgell
5042ca8e9e
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
eb7bd2586c
Merge branch 'divider'
2011-09-17 23:56:41 +03:00
Janne M
b5cfbd10ae
Added voltage divider, input voltage and amps per volt to parameters.
2011-09-17 22:32:19 +03:00
Amilcar Lucas
227ce0a92d
Merge some small misc improvements from APM_Camera branch
2011-09-17 20:25:31 +02:00
Andrew Tridgell
58fa51b680
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
49d96726d5
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
e43b711e96
fix remote error value
2011-09-15 18:26:59 +08:00
unknown
7a70cb6169
Merge branch 'master' of https://code.google.com/p/ardupilot-mega/
2011-09-14 16:02:21 +02:00
unknown
a4e001bbcf
Adding CMake support
2011-09-14 15:44:55 +02:00
Amilcar Lucas
1f29197771
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
f08cea8044
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
5406991831
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
c7b3bfd295
Use the G_RC_AUX macro when possible. Added more comments. Remove unused code
2011-09-12 20:21:12 +02:00
Doug Weibel
f05f56f83f
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
119d006e03
Change default setting for auto_trim to disabled per user (JB) request.
2011-09-12 07:24:52 -06:00
Doug Weibel
8c9757a8d1
Correct state machine processing for long failsafe event following short failsafe from lower modes
2011-09-11 21:59:46 -06:00
Doug Weibel
251c5875fb
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
77c798abd5
Use G_RC_AUX macro to simplify accessing the auxiliary servos
2011-09-12 00:02:47 +02:00
Amilcar Lucas
46f9d4cec8
This is ugly, but it fixes compilation on arduino
2011-09-11 23:25:06 +02:00
Amilcar Lucas
ce010b4e38
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
213969202a
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
93cbe664d6
Only run camera code if camera support is enabled
2011-09-11 17:41:18 +02:00
Amilcar Lucas
2fa92aea4c
Fix RC range reversal
2011-09-11 04:12:04 +02:00
Amilcar Lucas
46185ee5d8
Revert "Fix RC range reversal"
...
This reverts commit d5046b1097b0b5455aa1a59e9dd80533e589432e.
2011-09-11 04:07:36 +02:00
Amilcar Lucas
51a8ec0ba8
Fix RC range reversal
2011-09-11 04:04:02 +02:00
Amilcar Lucas
8aeee578b4
For now point the camera manually via the RC inputs
2011-09-11 02:40:13 +02:00
Amilcar Lucas
b36d0352f3
Added a comment about lower half of the array
2011-09-10 23:58:25 +02:00
Amilcar Lucas
d3280bdd16
Added comments explaining when should the function be used
2011-09-10 23:36:47 +02:00
Amilcar Lucas
7e0bff9cbe
Egg_drop has a 0..100 range
2011-09-10 23:35:23 +02:00
Andrew Tridgell
0a793a1327
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
c65d038ccf
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
59cbb8ec6f
Moved a camera mount function call, out of the servos update function
2011-09-10 13:47:09 +02:00
Amilcar Lucas
f4998c3673
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
b7a0d8836a
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
f40c85a601
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
ec398505a6
rename main pde file for arduino requirements
2011-09-09 11:52:25 +10:00
Andrew Tridgell
609ae8359d
import APM_Camera branch from SVN
2011-09-09 11:45:13 +10:00
Andrew Tridgell
e0dc1271d6
imported ArduPlane from ArduPilotMega svn
2011-09-09 11:29:39 +10:00