This commit is contained in:
Jason Short 2011-11-01 09:30:54 -07:00
commit 4f8ef25643
64 changed files with 2276 additions and 3119 deletions

11
.project Normal file
View File

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>ArduPilotMega-Source@ardupilotone</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
</buildSpec>
<natures>
</natures>
</projectDescription>

View File

@ -1,46 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?fileVersion 4.0.0?>
<cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage">
<storageModule moduleId="org.eclipse.cdt.core.settings">
<cconfiguration id="de.innot.avreclipse.toolchain.winavr.base.1533666305">
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="de.innot.avreclipse.toolchain.winavr.base.1533666305" moduleId="org.eclipse.cdt.core.settings" name="Default">
<externalSettings/>
<extensions>
<extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
<extension id="org.eclipse.cdt.core.MakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
</extensions>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<configuration buildProperties="" id="de.innot.avreclipse.toolchain.winavr.base.1533666305" name="Default" parent="org.eclipse.cdt.build.core.emptycfg">
<folderInfo id="de.innot.avreclipse.toolchain.winavr.base.1533666305.1285523098" name="/" resourcePath="">
<toolChain id="de.innot.avreclipse.toolchain.winavr.base.709070025" name="de.innot.avreclipse.toolchain.winavr.base" superClass="de.innot.avreclipse.toolchain.winavr.base">
<option id="de.innot.avreclipse.toolchain.options.toolchain.objcopy.flash.719217910" name="Generate HEX file for Flash memory" superClass="de.innot.avreclipse.toolchain.options.toolchain.objcopy.flash"/>
<option id="de.innot.avreclipse.toolchain.options.toolchain.objcopy.eeprom.1341673369" name="Generate HEX file for EEPROM" superClass="de.innot.avreclipse.toolchain.options.toolchain.objcopy.eeprom"/>
<option id="de.innot.avreclipse.toolchain.options.toolchain.objdump.2067341223" name="Generate Extended Listing (Source + generated Assembler)" superClass="de.innot.avreclipse.toolchain.options.toolchain.objdump"/>
<option id="de.innot.avreclipse.toolchain.options.toolchain.size.633135206" name="Print Size" superClass="de.innot.avreclipse.toolchain.options.toolchain.size"/>
<option id="de.innot.avreclipse.toolchain.options.toolchain.avrdude.1739936429" name="AVRDude" superClass="de.innot.avreclipse.toolchain.options.toolchain.avrdude"/>
<targetPlatform archList="all" binaryParser="org.eclipse.cdt.core.ELF" id="de.innot.avreclipse.targetplatform.avr.901466393" name="AVR Cross-Target" osList="all" superClass="de.innot.avreclipse.targetplatform.avr"/>
<builder id="de.innot.avreclipse.target.builder.winavr.base.223268681" managedBuildOn="false" name="AVR GNU Make Builder.Default" superClass="de.innot.avreclipse.target.builder.winavr.base"/>
<tool id="de.innot.avreclipse.tool.assembler.winavr.base.314488324" name="AVR Assembler" superClass="de.innot.avreclipse.tool.assembler.winavr.base"/>
<tool id="de.innot.avreclipse.tool.compiler.winavr.base.1115835243" name="AVR Compiler" superClass="de.innot.avreclipse.tool.compiler.winavr.base"/>
<tool id="de.innot.avreclipse.tool.cppcompiler.base.32469750" name="AVR C++ Compiler" superClass="de.innot.avreclipse.tool.cppcompiler.base"/>
<tool id="de.innot.avreclipse.tool.linker.winavr.base.433788290" name="AVR C Linker" superClass="de.innot.avreclipse.tool.linker.winavr.base"/>
<tool id="de.innot.avreclipse.tool.cpplinker.base.1828818850" name="AVR C++ Linker" superClass="de.innot.avreclipse.tool.cpplinker.base"/>
<tool id="de.innot.avreclipse.tool.archiver.winavr.base.1244907926" name="AVR Archiver" superClass="de.innot.avreclipse.tool.archiver.winavr.base"/>
</toolChain>
</folderInfo>
</configuration>
</storageModule>
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
</cconfiguration>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<project id="ArduBoat.null.1472107738" name="ArduBoat"/>
</storageModule>
<storageModule moduleId="scannerConfiguration">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
</storageModule>
</cproject>

View File

@ -1,79 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>ArduBoat</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name>
<triggers>clean,full,incremental,</triggers>
<arguments>
<dictionary>
<key>?name?</key>
<value></value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.append_environment</key>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.autoBuildTarget</key>
<value>all</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.buildArguments</key>
<value></value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.buildCommand</key>
<value>make</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.cleanBuildTarget</key>
<value>clean</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.contents</key>
<value>org.eclipse.cdt.make.core.activeConfigSettings</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.enableAutoBuild</key>
<value>false</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.enableCleanBuild</key>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.enableFullBuild</key>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.fullBuildTarget</key>
<value>all</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.stopOnError</key>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.useDefaultBuildCmd</key>
<value>true</value>
</dictionary>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name>
<triggers>full,incremental,</triggers>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.cdt.core.cnature</nature>
<nature>org.eclipse.cdt.core.ccnature</nature>
<nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
<nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
</natures>
</projectDescription>

View File

@ -1,25 +0,0 @@
// Libraries
#include <FastSerial.h>
#include <AP_Common.h>
#include <APM_RC.h>
#include <AP_RangeFinder.h>
#include <GCS_MAVLink.h>
#include <AP_ADC.h>
#include <AP_DCM.h>
#include <AP_Compass.h>
#include <Wire.h>
#include <AP_GPS.h>
#include <AP_IMU.h>
#include <APM_BMP085.h>
#include <ModeFilter.h>
#include <APO.h>
#include <WProgram.h>
// Vehicle Configuration
#include "BoatGeneric.h"
// ArduPilotOne Default Setup
#include "APO_DefaultSetup.h"
#include <WProgram.h>; int main(void) {init();setup();for(;;) loop(); return 0; }
// vim:ts=4:sw=4:expandtab

View File

@ -13,7 +13,6 @@
#include <APM_BMP085.h> #include <APM_BMP085.h>
#include <ModeFilter.h> #include <ModeFilter.h>
#include <APO.h> #include <APO.h>
#include <WProgram.h>
// Vehicle Configuration // Vehicle Configuration
#include "BoatGeneric.h" #include "BoatGeneric.h"

View File

@ -1,970 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?fileVersion 4.0.0?>
<cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage">
<storageModule moduleId="org.eclipse.cdt.core.settings">
<cconfiguration id="de.innot.avreclipse.configuration.app.debug.209204982">
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="de.innot.avreclipse.configuration.app.debug.209204982" moduleId="org.eclipse.cdt.core.settings" name="Debug">
<externalSettings/>
<extensions>
<extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
<extension id="org.eclipse.cdt.core.MakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
</extensions>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<configuration artifactName="${ProjName}" buildArtefactType="de.innot.avreclipse.buildArtefactType.app" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.debug,org.eclipse.cdt.build.core.buildArtefactType=de.innot.avreclipse.buildArtefactType.app" description="" id="de.innot.avreclipse.configuration.app.debug.209204982" name="Debug" parent="de.innot.avreclipse.configuration.app.debug">
<folderInfo id="de.innot.avreclipse.configuration.app.debug.209204982." name="/" resourcePath="">
<toolChain id="de.innot.avreclipse.toolchain.winavr.app.debug.127049746" name="AVR-GCC Toolchain" superClass="de.innot.avreclipse.toolchain.winavr.app.debug">
<option id="de.innot.avreclipse.toolchain.options.toolchain.objcopy.flash.app.debug.1729256683" name="Generate HEX file for Flash memory" superClass="de.innot.avreclipse.toolchain.options.toolchain.objcopy.flash.app.debug"/>
<option id="de.innot.avreclipse.toolchain.options.toolchain.objcopy.eeprom.app.debug.1556783230" name="Generate HEX file for EEPROM" superClass="de.innot.avreclipse.toolchain.options.toolchain.objcopy.eeprom.app.debug"/>
<option id="de.innot.avreclipse.toolchain.options.toolchain.objdump.app.debug.1264327501" name="Generate Extended Listing (Source + generated Assembler)" superClass="de.innot.avreclipse.toolchain.options.toolchain.objdump.app.debug"/>
<option id="de.innot.avreclipse.toolchain.options.toolchain.size.app.debug.652325549" name="Print Size" superClass="de.innot.avreclipse.toolchain.options.toolchain.size.app.debug"/>
<option id="de.innot.avreclipse.toolchain.options.toolchain.avrdude.app.debug.2132646233" name="AVRDude" superClass="de.innot.avreclipse.toolchain.options.toolchain.avrdude.app.debug"/>
<targetPlatform id="de.innot.avreclipse.targetplatform.winavr.app.debug.829529077" name="AVR Cross-Target" superClass="de.innot.avreclipse.targetplatform.winavr.app.debug"/>
<builder buildPath="${workspace_loc:/ArduCopterMega/Debug}" id="de.innot.avreclipse.target.builder.winavr.app.debug.415033847" managedBuildOn="true" name="AVR GNU Make Builder.Debug" superClass="de.innot.avreclipse.target.builder.winavr.app.debug"/>
<tool id="de.innot.avreclipse.tool.assembler.winavr.app.debug.1159550357" name="AVR Assembler" superClass="de.innot.avreclipse.tool.assembler.winavr.app.debug">
<option id="de.innot.avreclipse.assembler.option.debug.level.1930900785" superClass="de.innot.avreclipse.assembler.option.debug.level"/>
<inputType id="de.innot.avreclipse.tool.assembler.input.73954639" superClass="de.innot.avreclipse.tool.assembler.input"/>
</tool>
<tool id="de.innot.avreclipse.tool.compiler.winavr.app.debug.975106596" name="AVR Compiler" superClass="de.innot.avreclipse.tool.compiler.winavr.app.debug">
<option id="de.innot.avreclipse.compiler.option.debug.level.2144345028" superClass="de.innot.avreclipse.compiler.option.debug.level"/>
<option id="de.innot.avreclipse.compiler.option.optimize.1149123917" superClass="de.innot.avreclipse.compiler.option.optimize"/>
<inputType id="de.innot.avreclipse.compiler.winavr.input.530067244" name="C Source Files" superClass="de.innot.avreclipse.compiler.winavr.input"/>
</tool>
<tool id="de.innot.avreclipse.tool.cppcompiler.app.debug.945672097" name="AVR C++ Compiler" superClass="de.innot.avreclipse.tool.cppcompiler.app.debug">
<option id="de.innot.avreclipse.cppcompiler.option.debug.level.130848868" superClass="de.innot.avreclipse.cppcompiler.option.debug.level"/>
<option id="de.innot.avreclipse.cppcompiler.option.optimize.1993764367" superClass="de.innot.avreclipse.cppcompiler.option.optimize"/>
<inputType id="de.innot.avreclipse.cppcompiler.input.1628857766" superClass="de.innot.avreclipse.cppcompiler.input"/>
</tool>
<tool id="de.innot.avreclipse.tool.linker.winavr.app.debug.912457473" name="AVR C Linker" superClass="de.innot.avreclipse.tool.linker.winavr.app.debug"/>
<tool id="de.innot.avreclipse.tool.cpplinker.app.debug.1764002217" name="AVR C++ Linker" superClass="de.innot.avreclipse.tool.cpplinker.app.debug">
<inputType id="de.innot.avreclipse.tool.cpplinker.input.1966465789" name="OBJ Files" superClass="de.innot.avreclipse.tool.cpplinker.input">
<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
<additionalInput kind="additionalinput" paths="$(LIBS)"/>
</inputType>
</tool>
<tool id="de.innot.avreclipse.tool.archiver.winavr.base.795322887" name="AVR Archiver" superClass="de.innot.avreclipse.tool.archiver.winavr.base"/>
<tool id="de.innot.avreclipse.tool.objdump.winavr.app.debug.1999150249" name="AVR Create Extended Listing" superClass="de.innot.avreclipse.tool.objdump.winavr.app.debug"/>
<tool id="de.innot.avreclipse.tool.objcopy.flash.winavr.app.debug.374736298" name="AVR Create Flash image" superClass="de.innot.avreclipse.tool.objcopy.flash.winavr.app.debug"/>
<tool id="de.innot.avreclipse.tool.objcopy.eeprom.winavr.app.debug.1933625724" name="AVR Create EEPROM image" superClass="de.innot.avreclipse.tool.objcopy.eeprom.winavr.app.debug"/>
<tool id="de.innot.avreclipse.tool.size.winavr.app.debug.1402280744" name="Print Size" superClass="de.innot.avreclipse.tool.size.winavr.app.debug"/>
<tool id="de.innot.avreclipse.tool.avrdude.app.debug.1380833995" name="AVRDude" superClass="de.innot.avreclipse.tool.avrdude.app.debug"/>
</toolChain>
</folderInfo>
</configuration>
</storageModule>
<storageModule moduleId="scannerConfiguration">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="makefileGenerator">
<runAction arguments="-E -P -v -dD" command="" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/${specs_file}&quot;'" command="sh" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-c 'g++ -E -P -v -dD &quot;${plugin_state_location}/specs.cpp&quot;'" command="sh" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/specs.c&quot;'" command="sh" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="de.innot.avreclipse.core.AVRGCCManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="avr-gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="de.innot.avreclipse.core.AVRGCCManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="avr-g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<scannerConfigBuildInfo instanceId="de.innot.avreclipse.configuration.app.release.1087441780;de.innot.avreclipse.configuration.app.release.1087441780.;de.innot.avreclipse.tool.cppcompiler.app.release.1058643775;de.innot.avreclipse.cppcompiler.input.215275685">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="de.innot.avreclipse.core.AVRGCCManagedMakePerProjectProfileCPP"/>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="makefileGenerator">
<runAction arguments="-E -P -v -dD" command="" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/${specs_file}&quot;'" command="sh" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-c 'g++ -E -P -v -dD &quot;${plugin_state_location}/specs.cpp&quot;'" command="sh" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/specs.c&quot;'" command="sh" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="de.innot.avreclipse.core.AVRGCCManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="avr-gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="de.innot.avreclipse.core.AVRGCCManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="avr-g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="de.innot.avreclipse.configuration.app.release.1087441780;de.innot.avreclipse.configuration.app.release.1087441780.;de.innot.avreclipse.tool.compiler.winavr.app.release.1540978713;de.innot.avreclipse.compiler.winavr.input.1826705086">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="de.innot.avreclipse.core.AVRGCCManagedMakePerProjectProfileC"/>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="makefileGenerator">
<runAction arguments="-E -P -v -dD" command="" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/${specs_file}&quot;'" command="sh" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-c 'g++ -E -P -v -dD &quot;${plugin_state_location}/specs.cpp&quot;'" command="sh" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/specs.c&quot;'" command="sh" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="de.innot.avreclipse.core.AVRGCCManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="avr-gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="de.innot.avreclipse.core.AVRGCCManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="avr-g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="de.innot.avreclipse.configuration.app.release.1087441780;de.innot.avreclipse.configuration.app.release.1087441780.">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="de.innot.avreclipse.core.AVRGCCManagedMakePerProjectProfileC"/>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="makefileGenerator">
<runAction arguments="-E -P -v -dD" command="" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/${specs_file}&quot;'" command="sh" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-c 'g++ -E -P -v -dD &quot;${plugin_state_location}/specs.cpp&quot;'" command="sh" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/specs.c&quot;'" command="sh" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="de.innot.avreclipse.core.AVRGCCManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="avr-gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="de.innot.avreclipse.core.AVRGCCManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="avr-g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
</scannerConfigBuildInfo>
</storageModule>
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
<storageModule moduleId="org.eclipse.cdt.core.language.mapping"/>
<storageModule moduleId="org.eclipse.cdt.make.core.buildtargets">
<buildTargets>
<target name="ArduCopterMega" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
<buildCommand>make</buildCommand>
<buildArguments/>
<buildTarget/>
<stopOnError>true</stopOnError>
<useDefaultCommand>true</useDefaultCommand>
<runAllBuilders>true</runAllBuilders>
</target>
</buildTargets>
</storageModule>
</cconfiguration>
<cconfiguration id="de.innot.avreclipse.configuration.app.release.1087441780">
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="de.innot.avreclipse.configuration.app.release.1087441780" moduleId="org.eclipse.cdt.core.settings" name="Release">
<externalSettings/>
<extensions>
<extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
<extension id="org.eclipse.cdt.core.MakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
</extensions>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<configuration artifactName="${ProjName}" buildArtefactType="de.innot.avreclipse.buildArtefactType.app" buildProperties="org.eclipse.cdt.build.core.buildType=org.eclipse.cdt.build.core.buildType.release,org.eclipse.cdt.build.core.buildArtefactType=de.innot.avreclipse.buildArtefactType.app" description="" id="de.innot.avreclipse.configuration.app.release.1087441780" name="Release" parent="de.innot.avreclipse.configuration.app.release">
<folderInfo id="de.innot.avreclipse.configuration.app.release.1087441780." name="/" resourcePath="">
<toolChain id="de.innot.avreclipse.toolchain.winavr.app.release.959376757" name="AVR-GCC Toolchain" superClass="de.innot.avreclipse.toolchain.winavr.app.release">
<option id="de.innot.avreclipse.toolchain.options.toolchain.objcopy.flash.app.release.1186339972" name="Generate HEX file for Flash memory" superClass="de.innot.avreclipse.toolchain.options.toolchain.objcopy.flash.app.release"/>
<option id="de.innot.avreclipse.toolchain.options.toolchain.objcopy.eeprom.app.release.1476883532" name="Generate HEX file for EEPROM" superClass="de.innot.avreclipse.toolchain.options.toolchain.objcopy.eeprom.app.release"/>
<option id="de.innot.avreclipse.toolchain.options.toolchain.objdump.app.release.969282505" name="Generate Extended Listing (Source + generated Assembler)" superClass="de.innot.avreclipse.toolchain.options.toolchain.objdump.app.release"/>
<option id="de.innot.avreclipse.toolchain.options.toolchain.size.app.release.1474677980" name="Print Size" superClass="de.innot.avreclipse.toolchain.options.toolchain.size.app.release"/>
<option id="de.innot.avreclipse.toolchain.options.toolchain.avrdude.app.release.265966189" name="AVRDude" superClass="de.innot.avreclipse.toolchain.options.toolchain.avrdude.app.release"/>
<targetPlatform id="de.innot.avreclipse.targetplatform.winavr.app.release.1542916267" name="AVR Cross-Target" superClass="de.innot.avreclipse.targetplatform.winavr.app.release"/>
<builder buildPath="${workspace_loc:/ArduCopterMega/Release}" id="de.innot.avreclipse.target.builder.winavr.app.release.1459354658" managedBuildOn="true" name="AVR GNU Make Builder.Release" superClass="de.innot.avreclipse.target.builder.winavr.app.release"/>
<tool id="de.innot.avreclipse.tool.assembler.winavr.app.release.852425672" name="AVR Assembler" superClass="de.innot.avreclipse.tool.assembler.winavr.app.release">
<option id="de.innot.avreclipse.assembler.option.debug.level.1459932655" superClass="de.innot.avreclipse.assembler.option.debug.level" value="de.innot.avreclipse.assembler.option.debug.level.none" valueType="enumerated"/>
<inputType id="de.innot.avreclipse.tool.assembler.input.1941174236" superClass="de.innot.avreclipse.tool.assembler.input"/>
</tool>
<tool id="de.innot.avreclipse.tool.compiler.winavr.app.release.1540978713" name="AVR Compiler" superClass="de.innot.avreclipse.tool.compiler.winavr.app.release">
<option id="de.innot.avreclipse.compiler.option.debug.level.97960433" superClass="de.innot.avreclipse.compiler.option.debug.level" value="de.innot.avreclipse.compiler.option.debug.level.none" valueType="enumerated"/>
<option id="de.innot.avreclipse.compiler.option.optimize.752547436" superClass="de.innot.avreclipse.compiler.option.optimize" value="de.innot.avreclipse.compiler.optimize.size" valueType="enumerated"/>
<inputType id="de.innot.avreclipse.compiler.winavr.input.1826705086" name="C Source Files" superClass="de.innot.avreclipse.compiler.winavr.input"/>
</tool>
<tool id="de.innot.avreclipse.tool.cppcompiler.app.release.1058643775" name="AVR C++ Compiler" superClass="de.innot.avreclipse.tool.cppcompiler.app.release">
<option id="de.innot.avreclipse.cppcompiler.option.debug.level.641137087" superClass="de.innot.avreclipse.cppcompiler.option.debug.level" value="de.innot.avreclipse.cppcompiler.option.debug.level.none" valueType="enumerated"/>
<option id="de.innot.avreclipse.cppcompiler.option.optimize.994407813" superClass="de.innot.avreclipse.cppcompiler.option.optimize" value="de.innot.avreclipse.cppcompiler.optimize.size" valueType="enumerated"/>
<inputType id="de.innot.avreclipse.cppcompiler.input.215275685" superClass="de.innot.avreclipse.cppcompiler.input"/>
</tool>
<tool id="de.innot.avreclipse.tool.linker.winavr.app.release.1634447980" name="AVR C Linker" superClass="de.innot.avreclipse.tool.linker.winavr.app.release"/>
<tool id="de.innot.avreclipse.tool.cpplinker.app.release.2087416315" name="AVR C++ Linker" superClass="de.innot.avreclipse.tool.cpplinker.app.release">
<inputType id="de.innot.avreclipse.tool.cpplinker.input.1124040683" name="OBJ Files" superClass="de.innot.avreclipse.tool.cpplinker.input">
<additionalInput kind="additionalinputdependency" paths="$(USER_OBJS)"/>
<additionalInput kind="additionalinput" paths="$(LIBS)"/>
</inputType>
</tool>
<tool id="de.innot.avreclipse.tool.archiver.winavr.base.399676219" name="AVR Archiver" superClass="de.innot.avreclipse.tool.archiver.winavr.base"/>
<tool id="de.innot.avreclipse.tool.objdump.winavr.app.release.918233152" name="AVR Create Extended Listing" superClass="de.innot.avreclipse.tool.objdump.winavr.app.release"/>
<tool id="de.innot.avreclipse.tool.objcopy.flash.winavr.app.release.260988538" name="AVR Create Flash image" superClass="de.innot.avreclipse.tool.objcopy.flash.winavr.app.release"/>
<tool id="de.innot.avreclipse.tool.objcopy.eeprom.winavr.app.release.1951301138" name="AVR Create EEPROM image" superClass="de.innot.avreclipse.tool.objcopy.eeprom.winavr.app.release"/>
<tool id="de.innot.avreclipse.tool.size.winavr.app.release.267882564" name="Print Size" superClass="de.innot.avreclipse.tool.size.winavr.app.release"/>
<tool id="de.innot.avreclipse.tool.avrdude.app.release.1940466170" name="AVRDude" superClass="de.innot.avreclipse.tool.avrdude.app.release"/>
</toolChain>
</folderInfo>
</configuration>
</storageModule>
<storageModule moduleId="scannerConfiguration">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="makefileGenerator">
<runAction arguments="-E -P -v -dD" command="" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/${specs_file}&quot;'" command="sh" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-c 'g++ -E -P -v -dD &quot;${plugin_state_location}/specs.cpp&quot;'" command="sh" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/specs.c&quot;'" command="sh" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="de.innot.avreclipse.core.AVRGCCManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="avr-gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="de.innot.avreclipse.core.AVRGCCManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="avr-g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<scannerConfigBuildInfo instanceId="de.innot.avreclipse.configuration.app.release.1087441780;de.innot.avreclipse.configuration.app.release.1087441780.;de.innot.avreclipse.tool.cppcompiler.app.release.1058643775;de.innot.avreclipse.cppcompiler.input.215275685">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="de.innot.avreclipse.core.AVRGCCManagedMakePerProjectProfileCPP"/>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="makefileGenerator">
<runAction arguments="-E -P -v -dD" command="" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/${specs_file}&quot;'" command="sh" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-c 'g++ -E -P -v -dD &quot;${plugin_state_location}/specs.cpp&quot;'" command="sh" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/specs.c&quot;'" command="sh" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="de.innot.avreclipse.core.AVRGCCManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="avr-gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="de.innot.avreclipse.core.AVRGCCManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="avr-g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="de.innot.avreclipse.configuration.app.release.1087441780;de.innot.avreclipse.configuration.app.release.1087441780.;de.innot.avreclipse.tool.compiler.winavr.app.release.1540978713;de.innot.avreclipse.compiler.winavr.input.1826705086">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="de.innot.avreclipse.core.AVRGCCManagedMakePerProjectProfileC"/>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="makefileGenerator">
<runAction arguments="-E -P -v -dD" command="" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/${specs_file}&quot;'" command="sh" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-c 'g++ -E -P -v -dD &quot;${plugin_state_location}/specs.cpp&quot;'" command="sh" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/specs.c&quot;'" command="sh" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="de.innot.avreclipse.core.AVRGCCManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="avr-gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="de.innot.avreclipse.core.AVRGCCManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="avr-g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="de.innot.avreclipse.configuration.app.release.1087441780;de.innot.avreclipse.configuration.app.release.1087441780.">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="de.innot.avreclipse.core.AVRGCCManagedMakePerProjectProfileC"/>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="makefileGenerator">
<runAction arguments="-E -P -v -dD" command="" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/${specs_file}&quot;'" command="sh" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-c 'g++ -E -P -v -dD &quot;${plugin_state_location}/specs.cpp&quot;'" command="sh" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/specs.c&quot;'" command="sh" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="de.innot.avreclipse.core.AVRGCCManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="avr-gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="de.innot.avreclipse.core.AVRGCCManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="avr-g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
</scannerConfigBuildInfo>
</storageModule>
<storageModule moduleId="org.eclipse.cdt.core.language.mapping"/>
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
<storageModule moduleId="org.eclipse.cdt.make.core.buildtargets">
<buildTargets>
<target name="ArduCopterMega" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
<buildCommand>make</buildCommand>
<buildArguments/>
<buildTarget/>
<stopOnError>true</stopOnError>
<useDefaultCommand>true</useDefaultCommand>
<runAllBuilders>true</runAllBuilders>
</target>
</buildTargets>
</storageModule>
</cconfiguration>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<project id="ArduCopterMega.de.innot.avreclipse.project.winavr.elf_2.1.0.1993795713" name="AVR Cross Target Application" projectType="de.innot.avreclipse.project.winavr.elf_2.1.0"/>
</storageModule>
</cproject>

View File

@ -1,84 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>ArduCopterMega</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name>
<triggers>clean,full,incremental,</triggers>
<arguments>
<dictionary>
<key>?name?</key>
<value></value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.append_environment</key>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.autoBuildTarget</key>
<value>all</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.buildArguments</key>
<value></value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.buildCommand</key>
<value>make</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.buildLocation</key>
<value>${workspace_loc:/ArduCopterMega/Debug}</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.cleanBuildTarget</key>
<value>clean</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.contents</key>
<value>org.eclipse.cdt.make.core.activeConfigSettings</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.enableAutoBuild</key>
<value>false</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.enableCleanBuild</key>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.enableFullBuild</key>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.fullBuildTarget</key>
<value>all</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.stopOnError</key>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.useDefaultBuildCmd</key>
<value>true</value>
</dictionary>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name>
<triggers>full,incremental,</triggers>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.cdt.core.cnature</nature>
<nature>org.eclipse.cdt.core.ccnature</nature>
<nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
<nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
<nature>de.innot.avreclipse.core.avrnature</nature>
</natures>
</projectDescription>

View File

@ -1,165 +0,0 @@
#=============================================================================#
# Author: Niklaa Goddemeier & Sebastian Rohde #
# Date: 04.09.2011 #
#=============================================================================#
set(CMAKE_SOURCE_DIR "${CMAKE_SOURCE_DIR}/../")
set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake/modules) # CMake module search path
set(CMAKE_TOOLCHAIN_FILE ${CMAKE_SOURCE_DIR}/cmake/toolchains/Arduino.cmake) # Arduino Toolchain
#include(ArduinoProcessing)
set (CMAKE_CXX_SOURCE_FILE_EXTENSIONS pde)
message(STATUS "DIR: ${CMAKE_SOURCE_DIR}")
cmake_minimum_required(VERSION 2.8)
#====================================================================#
# Setup Project #
#====================================================================#
project(ArduCopter C CXX)
find_package(Arduino 22 REQUIRED)
if (NOT DEFINED BOARD)
message(STATUS "board not defined, assuming mega, use cmake -DBOARD=mega2560 , etc. to specify")
set(BOARD "mega")
endif()
message(STATUS "Board configured as: ${BOARD}")
add_subdirectory(../libraries "${CMAKE_CURRENT_BINARY_DIR}/libs")
#add_subdirectory(${CMAKE_SOURCE_DIR}/ArduCopter)
#add_subdirectory(testtool)
PRINT_BOARD_SETTINGS(${BOARD})
#=============================================================================#
# Author: Niklas Goddemeier & Sebastian Rohde #
# Date: 04.09.2011 #
#=============================================================================#
#====================================================================#
# Settings #
#====================================================================#
set(FIRMWARE_NAME arducopter)
set(${FIRMWARE_NAME}_BOARD ${BOARD}) # Arduino Target board
set(${FIRMWARE_NAME}_SKETCHES
ArduCopter.pde
Attitude.pde
Camera.pde
commands.pde
commands_logic.pde
commands_process.pde
control_modes.pde
events.pde
flip.pde
GCS.pde
GCS_Ardupilot.pde
#GCS_IMU_output.pde
GCS_Jason_text.pde
GCS_Mavlink.pde
GCS_Standard.pde
GCS_Xplane.pde
heli.pde
HIL_Xplane.pde
leds.pde
Log.pde
motors_hexa.pde
motors_octa.pde
motors_octa_quad.pde
motors_quad.pde
motors_tri.pde
motors_y6.pde
navigation.pde
planner.pde
radio.pde
read_commands.pde
sensors.pde
setup.pde
system.pde
test.pde
) # Firmware sketches
#create dummy sourcefile
file(WRITE ${FIRMWARE_NAME}.cpp "// Do not edit")
set(${FIRMWARE_NAME}_SRCS
#test.cpp
${FIRMWARE_NAME}.cpp
) # Firmware sources
set(${FIRMWARE_NAME}_HDRS
APM_Config.h
APM_Config_mavlink_hil.h
APM_Config_xplane.h
config.h
defines.h
GCS.h
HIL.h
Mavlink_Common.h
Parameters.h
) # Firmware sources
set(${FIRMWARE_NAME}_LIBS
DataFlash
AP_Math
PID
RC_Channel
AP_OpticalFlow
ModeFilter
memcheck
#AP_PID
APM_PI
#APO
FastSerial
AP_Common
GCS_MAVLink
AP_GPS
APM_RC
AP_DCM
AP_ADC
AP_Compass
AP_IMU
AP_RangeFinder
APM_BMP085
c
m
)
#${CONSOLE_PORT}
set(${FIRMWARE_NAME}_PORT COM2) # Serial upload port
set(${FIRMWARE_NAME}_SERIAL putty -serial COM2 -sercfg 57600,8,n,1,X ) # Serial terminal cmd
include_directories(
${CMAKE_SOURCE_DIR}/libraries/DataFlash
${CMAKE_SOURCE_DIR}/libraries/AP_Math
${CMAKE_SOURCE_DIR}/libraries/PID
${CMAKE_SOURCE_DIR}/libraries/AP_Common
${CMAKE_SOURCE_DIR}/libraries/RC_Channel
${CMAKE_SOURCE_DIR}/libraries/AP_OpticalFlow
${CMAKE_SOURCE_DIR}/libraries/ModeFilter
${CMAKE_SOURCE_DIR}/libraries/memcheck
#${CMAKE_SOURCE_DIR}/libraries/AP_PID
${CMAKE_SOURCE_DIR}/libraries/APM_PI
${CMAKE_SOURCE_DIR}/libraries/FastSerial
${CMAKE_SOURCE_DIR}/libraries/AP_Compass
${CMAKE_SOURCE_DIR}/libraries/AP_RangeFinder
${CMAKE_SOURCE_DIR}/libraries/AP_GPS
${CMAKE_SOURCE_DIR}/libraries/AP_IMU
${CMAKE_SOURCE_DIR}/libraries/AP_ADC
${CMAKE_SOURCE_DIR}/libraries/AP_DCM
${CMAKE_SOURCE_DIR}/libraries/APM_RC
${CMAKE_SOURCE_DIR}/libraries/GCS_MAVLink
${CMAKE_SOURCE_DIR}/libraries/APM_BMP085
)
#====================================================================#
# Target generation #
#====================================================================#
generate_arduino_firmware(${FIRMWARE_NAME})

View File

@ -152,6 +152,7 @@ private:
uint16_t waypoint_count; uint16_t waypoint_count;
uint32_t waypoint_timelast_send; // milliseconds uint32_t waypoint_timelast_send; // milliseconds
uint32_t waypoint_timelast_receive; // milliseconds uint32_t waypoint_timelast_receive; // milliseconds
uint32_t waypoint_timelast_request; // milliseconds
uint16_t waypoint_send_timeout; // milliseconds uint16_t waypoint_send_timeout; // milliseconds
uint16_t waypoint_receive_timeout; // milliseconds uint16_t waypoint_receive_timeout; // milliseconds

View File

@ -572,18 +572,26 @@ GCS_MAVLINK::update(void)
send_message(MSG_NEXT_PARAM); send_message(MSG_NEXT_PARAM);
} }
if (!waypoint_receiving && !waypoint_sending) {
return;
}
uint32_t tnow = millis();
if (waypoint_receiving && if (waypoint_receiving &&
waypoint_request_i <= (unsigned)g.waypoint_total) { waypoint_request_i <= (unsigned)g.waypoint_total &&
tnow > waypoint_timelast_request + 500) {
waypoint_timelast_request = tnow;
send_message(MSG_NEXT_WAYPOINT); send_message(MSG_NEXT_WAYPOINT);
} }
// stop waypoint sending if timeout // stop waypoint sending if timeout
if (waypoint_sending && (millis() - waypoint_timelast_send) > waypoint_send_timeout){ if (waypoint_sending && (tnow - waypoint_timelast_send) > waypoint_send_timeout){
waypoint_sending = false; waypoint_sending = false;
} }
// stop waypoint receiving if timeout // stop waypoint receiving if timeout
if (waypoint_receiving && (millis() - waypoint_timelast_receive) > waypoint_receive_timeout){ if (waypoint_receiving && (tnow - waypoint_timelast_receive) > waypoint_receive_timeout){
waypoint_receiving = false; waypoint_receiving = false;
} }
} }
@ -1151,6 +1159,7 @@ void GCS_MAVLINK::handleMessage(mavlink_message_t* msg)
waypoint_receiving = true; waypoint_receiving = true;
waypoint_sending = false; waypoint_sending = false;
waypoint_request_i = 0; waypoint_request_i = 0;
waypoint_timelast_request = 0;
break; break;
} }
@ -1296,6 +1305,7 @@ void GCS_MAVLINK::handleMessage(mavlink_message_t* msg)
// update waypoint receiving state machine // update waypoint receiving state machine
waypoint_timelast_receive = millis(); waypoint_timelast_receive = millis();
waypoint_timelast_request = 0;
waypoint_request_i++; waypoint_request_i++;
if (waypoint_request_i > (uint16_t)g.waypoint_total){ if (waypoint_request_i > (uint16_t)g.waypoint_total){

View File

@ -1,468 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?fileVersion 4.0.0?>
<cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage">
<storageModule moduleId="org.eclipse.cdt.core.settings">
<cconfiguration id="0.1246468818">
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="0.1246468818" moduleId="org.eclipse.cdt.core.settings" name="Default">
<externalSettings/>
<extensions>
<extension id="org.eclipse.cdt.core.VCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
</extensions>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<configuration buildProperties="" description="" id="0.1246468818" name="Default" parent="org.eclipse.cdt.build.core.prefbase.cfg">
<folderInfo id="0.1246468818." name="/" resourcePath="">
<toolChain id="org.eclipse.cdt.build.core.prefbase.toolchain.1286905935" name="No ToolChain" resourceTypeBasedDiscovery="false" superClass="org.eclipse.cdt.build.core.prefbase.toolchain">
<targetPlatform id="org.eclipse.cdt.build.core.prefbase.toolchain.1286905935.1477421615" name=""/>
<builder id="org.eclipse.cdt.build.core.settings.default.builder.2031915136" keepEnvironmentInBuildfile="false" managedBuildOn="false" name="Gnu Make Builder" superClass="org.eclipse.cdt.build.core.settings.default.builder"/>
<tool id="org.eclipse.cdt.build.core.settings.holder.libs.150062293" name="holder for library settings" superClass="org.eclipse.cdt.build.core.settings.holder.libs"/>
<tool id="org.eclipse.cdt.build.core.settings.holder.990947382" name="Assembly" superClass="org.eclipse.cdt.build.core.settings.holder">
<inputType id="org.eclipse.cdt.build.core.settings.holder.inType.1924975572" languageId="org.eclipse.cdt.core.assembly" languageName="Assembly" sourceContentType="org.eclipse.cdt.core.asmSource" superClass="org.eclipse.cdt.build.core.settings.holder.inType"/>
</tool>
<tool id="org.eclipse.cdt.build.core.settings.holder.299915223" name="GNU C++" superClass="org.eclipse.cdt.build.core.settings.holder">
<inputType id="org.eclipse.cdt.build.core.settings.holder.inType.814698218" languageId="org.eclipse.cdt.core.g++" languageName="GNU C++" sourceContentType="org.eclipse.cdt.core.cxxSource,org.eclipse.cdt.core.cxxHeader" superClass="org.eclipse.cdt.build.core.settings.holder.inType"/>
</tool>
<tool id="org.eclipse.cdt.build.core.settings.holder.2121091413" name="GNU C" superClass="org.eclipse.cdt.build.core.settings.holder">
<inputType id="org.eclipse.cdt.build.core.settings.holder.inType.1614998879" languageId="org.eclipse.cdt.core.gcc" languageName="GNU C" sourceContentType="org.eclipse.cdt.core.cSource,org.eclipse.cdt.core.cHeader" superClass="org.eclipse.cdt.build.core.settings.holder.inType"/>
</tool>
</toolChain>
</folderInfo>
</configuration>
</storageModule>
<storageModule moduleId="scannerConfiguration">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="makefileGenerator">
<runAction arguments="-E -P -v -dD" command="" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/${specs_file}&quot;'" command="sh" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-c 'g++ -E -P -v -dD &quot;${plugin_state_location}/specs.cpp&quot;'" command="sh" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/specs.c&quot;'" command="sh" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="de.innot.avreclipse.core.AVRGCCManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="avr-gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="de.innot.avreclipse.core.AVRGCCManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="avr-g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<scannerConfigBuildInfo instanceId="0.1246468818">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="makefileGenerator">
<runAction arguments="-E -P -v -dD" command="" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/${specs_file}&quot;'" command="sh" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-c 'g++ -E -P -v -dD &quot;${plugin_state_location}/specs.cpp&quot;'" command="sh" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/specs.c&quot;'" command="sh" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="de.innot.avreclipse.core.AVRGCCManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="avr-gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="de.innot.avreclipse.core.AVRGCCManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="avr-g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="0.877812590">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="makefileGenerator">
<runAction arguments="-E -P -v -dD" command="" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/${specs_file}&quot;'" command="sh" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-c 'g++ -E -P -v -dD &quot;${plugin_state_location}/specs.cpp&quot;'" command="sh" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/specs.c&quot;'" command="sh" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="de.innot.avreclipse.core.AVRGCCManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="avr-gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="de.innot.avreclipse.core.AVRGCCManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="avr-g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
</scannerConfigBuildInfo>
<scannerConfigBuildInfo instanceId="0.1935535476">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="makefileGenerator">
<runAction arguments="-E -P -v -dD" command="" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/${specs_file}&quot;'" command="sh" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-c 'g++ -E -P -v -dD &quot;${plugin_state_location}/specs.cpp&quot;'" command="sh" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/specs.c&quot;'" command="sh" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="de.innot.avreclipse.core.AVRGCCManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="avr-gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="de.innot.avreclipse.core.AVRGCCManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="avr-g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
</scannerConfigBuildInfo>
</storageModule>
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
<storageModule moduleId="org.eclipse.cdt.make.core.buildtargets">
<buildTargets>
<target name="ArduPilotMega" path="" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
<buildCommand>make</buildCommand>
<buildArguments/>
<buildTarget/>
<stopOnError>true</stopOnError>
<useDefaultCommand>true</useDefaultCommand>
<runAllBuilders>true</runAllBuilders>
</target>
</buildTargets>
</storageModule>
</cconfiguration>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<project id="ArduPilotMega.null.28020601" name="ArduPilotMega"/>
</storageModule>
</cproject>

View File

@ -1 +0,0 @@
ArduPlane.cpp

View File

@ -1,80 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>ArduPilotMega</name>
<comment></comment>
<projects>
<project>libraries</project>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name>
<triggers>clean,full,incremental,</triggers>
<arguments>
<dictionary>
<key>?name?</key>
<value></value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.append_environment</key>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.autoBuildTarget</key>
<value>all</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.buildArguments</key>
<value></value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.buildCommand</key>
<value>make</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.cleanBuildTarget</key>
<value>clean</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.contents</key>
<value>org.eclipse.cdt.make.core.activeConfigSettings</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.enableAutoBuild</key>
<value>false</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.enableCleanBuild</key>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.enableFullBuild</key>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.fullBuildTarget</key>
<value>all</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.stopOnError</key>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.useDefaultBuildCmd</key>
<value>true</value>
</dictionary>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name>
<triggers>full,incremental,</triggers>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.cdt.core.cnature</nature>
<nature>org.eclipse.cdt.core.ccnature</nature>
<nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
<nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
</natures>
</projectDescription>

View File

@ -42,6 +42,7 @@ version 2.1 of the License, or (at your option) any later version.
#include <AP_RangeFinder.h> // Range finder library #include <AP_RangeFinder.h> // Range finder library
#include <ModeFilter.h> #include <ModeFilter.h>
#include <AP_Relay.h> // APM relay #include <AP_Relay.h> // APM relay
#include <AP_Mount.h> // Camera/Antenna mount
#include <GCS_MAVLink.h> // MAVLink GCS definitions #include <GCS_MAVLink.h> // MAVLink GCS definitions
#include <memcheck.h> #include <memcheck.h>
@ -404,6 +405,13 @@ static float load; // % MCU cycles used
AP_Relay relay; AP_Relay relay;
// Camera/Antenna mount tracking and stabilisation stuff
// --------------------------------------
#if MOUNT == ENABLED
AP_Mount camera_mount(g_gps, &dcm);
#endif
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
// Top-level logic // Top-level logic
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
@ -529,6 +537,10 @@ static void fast_loop()
static void medium_loop() static void medium_loop()
{ {
#if MOUNT == ENABLED
camera_mount.update_mount_position();
#endif
// This is the start of the medium (10 Hz) loop pieces // This is the start of the medium (10 Hz) loop pieces
// ----------------------------------------- // -----------------------------------------
switch(medium_loopCounter) { switch(medium_loopCounter) {
@ -669,6 +681,9 @@ static void slow_loop()
update_aux_servo_function(&g.rc_5, &g.rc_6, &g.rc_7, &g.rc_8); update_aux_servo_function(&g.rc_5, &g.rc_6, &g.rc_7, &g.rc_8);
#if MOUNT == ENABLED
camera_mount.update_mount_type();
#endif
break; break;
case 2: case 2:

View File

@ -1,168 +0,0 @@
#=============================================================================#
# Author: Niklaa Goddemeier & Sebastian Rohde #
# Date: 04.09.2011 #
#=============================================================================#
set(CMAKE_SOURCE_DIR "${CMAKE_SOURCE_DIR}/../")
set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake/modules) # CMake module search path
set(CMAKE_TOOLCHAIN_FILE ${CMAKE_SOURCE_DIR}/cmake/toolchains/Arduino.cmake) # Arduino Toolchain
#include(ArduinoProcessing)
set (CMAKE_CXX_SOURCE_FILE_EXTENSIONS pde)
message(STATUS "DIR: ${CMAKE_SOURCE_DIR}")
cmake_minimum_required(VERSION 2.8)
#====================================================================#
# Setup Project #
#====================================================================#
project(ArduPlane C CXX)
find_package(Arduino 22 REQUIRED)
if (NOT DEFINED BOARD)
message(STATUS "board not defined, assuming mega, use cmake -DBOARD=mega2560 , etc. to specify")
set(BOARD "mega")
endif()
message(STATUS "Board configured as: ${BOARD}")
add_subdirectory(../libraries "${CMAKE_CURRENT_BINARY_DIR}/libs")
#add_subdirectory(${CMAKE_SOURCE_DIR}/ArduCopter)
#add_subdirectory(testtool)
PRINT_BOARD_SETTINGS(${BOARD})
#=============================================================================#
# Author: Niklas Goddemeier & Sebastian Rohde #
# Date: 04.09.2011 #
#=============================================================================#
#====================================================================#
# Settings #
#====================================================================#
set(FIRMWARE_NAME ArduPlane)
set(${FIRMWARE_NAME}_BOARD ${BOARD}) # Arduino Target board
set(${FIRMWARE_NAME}_SKETCHES
ArduPlane.pde
Attitude.pde
climb_rate.pde
commands.pde
commands_logic.pde
commands_process.pde
control_modes.pde
events.pde
#flip.pde
#GCS.pde
#GCS_Ardupilot.pde
#GCS_IMU_output.pde
#GCS_Jason_text.pde
GCS_Mavlink.pde
#GCS_Standard.pde
#GCS_Xplane.pde
#heli.pde
#HIL_Xplane.pde
#leds.pde
Log.pde
#motors_hexa.pde
#motors_octa.pde
#motors_octa_quad.pde
#motors_quad.pde
#motors_tri.pde
#motors_y6.pde
navigation.pde
planner.pde
radio.pde
#read_commands.pde
sensors.pde
setup.pde
system.pde
test.pde
) # Firmware sketches
#create dummy sourcefile
file(WRITE ${FIRMWARE_NAME}.cpp "// Do not edit")
set(${FIRMWARE_NAME}_SRCS
#test.cpp
${FIRMWARE_NAME}.cpp
) # Firmware sources
set(${FIRMWARE_NAME}_HDRS
APM_Config.h
APM_Config_mavlink_hil.h
#APM_Config_xplane.h
config.h
defines.h
GCS.h
#HIL.h
#Mavlink_Common.h
Parameters.h
) # Firmware sources
set(${FIRMWARE_NAME}_LIBS
DataFlash
AP_Math
PID
RC_Channel
AP_OpticalFlow
ModeFilter
memcheck
#AP_PID
APM_PI
#APO
FastSerial
AP_Common
GCS_MAVLink
AP_GPS
APM_RC
AP_DCM
AP_ADC
AP_Compass
AP_IMU
AP_RangeFinder
APM_BMP085
c
m
)
#${CONSOLE_PORT}
set(${FIRMWARE_NAME}_PORT COM2) # Serial upload port
set(${FIRMWARE_NAME}_SERIAL putty -serial COM2 -sercfg 57600,8,n,1,X ) # Serial terminal cmd
include_directories(
${CMAKE_SOURCE_DIR}/libraries/DataFlash
${CMAKE_SOURCE_DIR}/libraries/AP_Math
${CMAKE_SOURCE_DIR}/libraries/PID
${CMAKE_SOURCE_DIR}/libraries/AP_Common
${CMAKE_SOURCE_DIR}/libraries/RC_Channel
${CMAKE_SOURCE_DIR}/libraries/AP_OpticalFlow
${CMAKE_SOURCE_DIR}/libraries/ModeFilter
${CMAKE_SOURCE_DIR}/libraries/memcheck
#${CMAKE_SOURCE_DIR}/libraries/AP_PID
${CMAKE_SOURCE_DIR}/libraries/APM_PI
${CMAKE_SOURCE_DIR}/libraries/FastSerial
${CMAKE_SOURCE_DIR}/libraries/AP_Compass
${CMAKE_SOURCE_DIR}/libraries/AP_RangeFinder
${CMAKE_SOURCE_DIR}/libraries/AP_GPS
${CMAKE_SOURCE_DIR}/libraries/AP_IMU
${CMAKE_SOURCE_DIR}/libraries/AP_ADC
${CMAKE_SOURCE_DIR}/libraries/AP_DCM
${CMAKE_SOURCE_DIR}/libraries/APM_RC
${CMAKE_SOURCE_DIR}/libraries/GCS_MAVLink
${CMAKE_SOURCE_DIR}/libraries/APM_BMP085
#new
#${CMAKE_SOURCE_DIR}/libraries/Wire
#${CMAKE_SOURCE_DIR}/libraries/SPI
)
#====================================================================#
# Target generation #
#====================================================================#
generate_arduino_firmware(${FIRMWARE_NAME})

View File

@ -152,6 +152,7 @@ private:
uint16_t waypoint_count; uint16_t waypoint_count;
uint32_t waypoint_timelast_send; // milliseconds uint32_t waypoint_timelast_send; // milliseconds
uint32_t waypoint_timelast_receive; // milliseconds uint32_t waypoint_timelast_receive; // milliseconds
uint32_t waypoint_timelast_request; // milliseconds
uint16_t waypoint_send_timeout; // milliseconds uint16_t waypoint_send_timeout; // milliseconds
uint16_t waypoint_receive_timeout; // milliseconds uint16_t waypoint_receive_timeout; // milliseconds

View File

@ -28,16 +28,11 @@ static bool mavlink_active;
static NOINLINE void send_heartbeat(mavlink_channel_t chan) static NOINLINE void send_heartbeat(mavlink_channel_t chan)
{ {
#ifdef MAVLINK10 #ifdef MAVLINK10
uint8_t base_mode = 0; uint8_t base_mode = MAV_MODE_FLAG_CUSTOM_MODE_ENABLED;
uint8_t system_status = MAV_STATE_ACTIVE; uint8_t system_status = MAV_STATE_ACTIVE;
uint32_t custom_mode = control_mode;
// we map the custom_mode to our internal mode plus 16, to lower // work out the base_mode. This value is not very useful
// the chance that a ground station will give us 0 and we
// interpret it as manual. This is necessary as the SET_MODE
// command has no way to indicate that the custom_mode is filled in
uint32_t custom_mode = control_mode + 16;
// work out the base_mode. This value is almost completely useless
// for APM, but we calculate it as best we can so a generic // for APM, but we calculate it as best we can so a generic
// MAVLink enabled ground station can work out something about // MAVLink enabled ground station can work out something about
// what the MAV is up to. The actual bit values are highly // what the MAV is up to. The actual bit values are highly
@ -93,6 +88,9 @@ static NOINLINE void send_heartbeat(mavlink_channel_t chan)
base_mode |= MAV_MODE_FLAG_SAFETY_ARMED; base_mode |= MAV_MODE_FLAG_SAFETY_ARMED;
} }
// indicate we have set a custom mode
base_mode |= MAV_MODE_FLAG_CUSTOM_MODE_ENABLED;
mavlink_msg_heartbeat_send( mavlink_msg_heartbeat_send(
chan, chan,
MAV_TYPE_FIXED_WING, MAV_TYPE_FIXED_WING,
@ -284,7 +282,6 @@ static void NOINLINE send_meminfo(mavlink_channel_t chan)
static void NOINLINE send_location(mavlink_channel_t chan) static void NOINLINE send_location(mavlink_channel_t chan)
{ {
Matrix3f rot = dcm.get_dcm_matrix(); // neglecting angle of attack for now Matrix3f rot = dcm.get_dcm_matrix(); // neglecting angle of attack for now
#ifdef MAVLINK10
mavlink_msg_global_position_int_send( mavlink_msg_global_position_int_send(
chan, chan,
millis(), millis(),
@ -296,16 +293,6 @@ static void NOINLINE send_location(mavlink_channel_t chan)
g_gps->ground_speed * rot.b.x, // Y speed cm/s g_gps->ground_speed * rot.b.x, // Y speed cm/s
g_gps->ground_speed * rot.c.x, g_gps->ground_speed * rot.c.x,
g_gps->ground_course); // course in 1/100 degree g_gps->ground_course); // course in 1/100 degree
#else // MAVLINK10
mavlink_msg_global_position_int_send(
chan,
current_loc.lat,
current_loc.lng,
current_loc.alt * 10,
g_gps->ground_speed * rot.a.x,
g_gps->ground_speed * rot.b.x,
g_gps->ground_speed * rot.c.x);
#endif // MAVLINK10
} }
static void NOINLINE send_nav_controller_output(mavlink_channel_t chan) static void NOINLINE send_nav_controller_output(mavlink_channel_t chan)
@ -366,7 +353,6 @@ static void NOINLINE send_servo_out(mavlink_channel_t chan)
// normalized values scaled to -10000 to 10000 // normalized values scaled to -10000 to 10000
// This is used for HIL. Do not change without discussing with // This is used for HIL. Do not change without discussing with
// HIL maintainers // HIL maintainers
#ifdef MAVLINK10
mavlink_msg_rc_channels_scaled_send( mavlink_msg_rc_channels_scaled_send(
chan, chan,
millis(), millis(),
@ -380,26 +366,11 @@ static void NOINLINE send_servo_out(mavlink_channel_t chan)
0, 0,
0, 0,
rssi); rssi);
#else // MAVLINK10
mavlink_msg_rc_channels_scaled_send(
chan,
10000 * g.channel_roll.norm_output(),
10000 * g.channel_pitch.norm_output(),
10000 * g.channel_throttle.norm_output(),
10000 * g.channel_rudder.norm_output(),
0,
0,
0,
0,
rssi);
#endif // MAVLINK10
} }
static void NOINLINE send_radio_in(mavlink_channel_t chan) static void NOINLINE send_radio_in(mavlink_channel_t chan)
{ {
uint8_t rssi = 1; uint8_t rssi = 1;
#ifdef MAVLINK10
mavlink_msg_rc_channels_raw_send( mavlink_msg_rc_channels_raw_send(
chan, chan,
millis(), millis(),
@ -413,25 +384,10 @@ static void NOINLINE send_radio_in(mavlink_channel_t chan)
g.rc_7.radio_in, g.rc_7.radio_in,
g.rc_8.radio_in, g.rc_8.radio_in,
rssi); rssi);
#else // MAVLINK10
mavlink_msg_rc_channels_raw_send(
chan,
g.channel_roll.radio_in,
g.channel_pitch.radio_in,
g.channel_throttle.radio_in,
g.channel_rudder.radio_in,
g.rc_5.radio_in, // XXX currently only 4 RC channels defined
g.rc_6.radio_in,
g.rc_7.radio_in,
g.rc_8.radio_in,
rssi);
#endif // MAVLINK10
} }
static void NOINLINE send_radio_out(mavlink_channel_t chan) static void NOINLINE send_radio_out(mavlink_channel_t chan)
{ {
#ifdef MAVLINK10
mavlink_msg_servo_output_raw_send( mavlink_msg_servo_output_raw_send(
chan, chan,
micros(), micros(),
@ -444,18 +400,6 @@ static void NOINLINE send_radio_out(mavlink_channel_t chan)
g.rc_6.radio_out, g.rc_6.radio_out,
g.rc_7.radio_out, g.rc_7.radio_out,
g.rc_8.radio_out); g.rc_8.radio_out);
#else // MAVLINK10
mavlink_msg_servo_output_raw_send(
chan,
g.channel_roll.radio_out,
g.channel_pitch.radio_out,
g.channel_throttle.radio_out,
g.channel_rudder.radio_out,
g.rc_5.radio_out, // XXX currently only 4 RC channels defined
g.rc_6.radio_out,
g.rc_7.radio_out,
g.rc_8.radio_out);
#endif // MAVLINK10
} }
static void NOINLINE send_vfr_hud(mavlink_channel_t chan) static void NOINLINE send_vfr_hud(mavlink_channel_t chan)
@ -748,11 +692,7 @@ void mavlink_send_text(mavlink_channel_t chan, gcs_severity severity, const char
mavlink_send_message(chan, MSG_STATUSTEXT, 0); mavlink_send_message(chan, MSG_STATUSTEXT, 0);
} else { } else {
// send immediately // send immediately
#ifdef MAVLINK10
mavlink_msg_statustext_send(chan, severity, str); mavlink_msg_statustext_send(chan, severity, str);
#else
mavlink_msg_statustext_send(chan, severity, (const int8_t*) str);
#endif
} }
} }
@ -837,8 +777,15 @@ GCS_MAVLINK::update(void)
send_message(MSG_NEXT_PARAM); send_message(MSG_NEXT_PARAM);
} }
if (!waypoint_receiving && !waypoint_sending) {
return;
}
uint32_t tnow = millis();
if (waypoint_receiving && if (waypoint_receiving &&
waypoint_request_i <= (unsigned)g.command_total) { waypoint_request_i <= (unsigned)g.command_total &&
tnow > waypoint_timelast_request + 500) {
send_message(MSG_NEXT_WAYPOINT); send_message(MSG_NEXT_WAYPOINT);
} }
@ -1198,13 +1145,13 @@ void GCS_MAVLINK::handleMessage(mavlink_message_t* msg)
mavlink_msg_set_mode_decode(msg, &packet); mavlink_msg_set_mode_decode(msg, &packet);
#ifdef MAVLINK10 #ifdef MAVLINK10
// we ignore base_mode as there is no sane way to map if (!(packet.base_mode & MAV_MODE_FLAG_CUSTOM_MODE_ENABLED)) {
// from that bitmap to a APM flight mode. We rely on // we ignore base_mode as there is no sane way to map
// custom_mode instead. // from that bitmap to a APM flight mode. We rely on
// see comment on custom_mode above // custom_mode instead.
int16_t adjusted_mode = packet.custom_mode - 16; break;
}
switch (adjusted_mode) { switch (packet.custom_mode) {
case MANUAL: case MANUAL:
case CIRCLE: case CIRCLE:
case STABILIZE: case STABILIZE:
@ -1214,7 +1161,7 @@ void GCS_MAVLINK::handleMessage(mavlink_message_t* msg)
case AUTO: case AUTO:
case RTL: case RTL:
case LOITER: case LOITER:
set_mode(adjusted_mode); set_mode(packet.custom_mode);
break; break;
} }
@ -1473,6 +1420,7 @@ void GCS_MAVLINK::handleMessage(mavlink_message_t* msg)
g.command_total.set_and_save(packet.count - 1); g.command_total.set_and_save(packet.count - 1);
waypoint_timelast_receive = millis(); waypoint_timelast_receive = millis();
waypoint_timelast_request = 0;
waypoint_receiving = true; waypoint_receiving = true;
waypoint_sending = false; waypoint_sending = false;
waypoint_request_i = 0; waypoint_request_i = 0;
@ -1649,6 +1597,7 @@ void GCS_MAVLINK::handleMessage(mavlink_message_t* msg)
// update waypoint receiving state machine // update waypoint receiving state machine
waypoint_timelast_receive = millis(); waypoint_timelast_receive = millis();
waypoint_timelast_request = 0;
waypoint_request_i++; waypoint_request_i++;
if (waypoint_request_i > (uint16_t)g.command_total){ if (waypoint_request_i > (uint16_t)g.command_total){
@ -1731,7 +1680,6 @@ void GCS_MAVLINK::handleMessage(mavlink_message_t* msg)
// we send the value we actually set, which could be // we send the value we actually set, which could be
// different from the value sent, in case someone sent // different from the value sent, in case someone sent
// a fractional value to an integer type // a fractional value to an integer type
#ifdef MAVLINK10
mavlink_msg_param_value_send( mavlink_msg_param_value_send(
chan, chan,
key, key,
@ -1739,14 +1687,6 @@ void GCS_MAVLINK::handleMessage(mavlink_message_t* msg)
mav_var_type(vp->meta_type_id()), mav_var_type(vp->meta_type_id()),
_count_parameters(), _count_parameters(),
-1); // XXX we don't actually know what its index is... -1); // XXX we don't actually know what its index is...
#else // MAVLINK10
mavlink_msg_param_value_send(
chan,
(int8_t *)key,
vp->cast_to_float(),
_count_parameters(),
-1); // XXX we don't actually know what its index is...
#endif // MAVLINK10
} }
break; break;
@ -1828,7 +1768,48 @@ void GCS_MAVLINK::handleMessage(mavlink_message_t* msg)
airspeed = 100*packet.airspeed; airspeed = 100*packet.airspeed;
break; break;
} }
#ifdef MAVLINK10
case MAVLINK_MSG_ID_HIL_STATE:
{
mavlink_hil_state_t packet;
mavlink_msg_hil_state_decode(msg, &packet);
float vel = sqrt((packet.vx * packet.vx) + (packet.vy * packet.vy));
float cog = wrap_360(ToDeg(atan2(packet.vx, packet.vy)) * 100);
// set gps hil sensor
g_gps->setHIL(packet.time_usec/1000.0,
packet.lat*1.0e-7, packet.lon*1.0e-7, packet.alt*1.0e-3,
vel*1.0e-2, cog*1.0e-2, 0, 0);
#if HIL_MODE == HIL_MODE_SENSORS
// rad/sec
Vector3f gyros;
gyros.x = (float)packet.xgyro / 1000.0;
gyros.y = (float)packet.ygyro / 1000.0;
gyros.z = (float)packet.zgyro / 1000.0;
// m/s/s
Vector3f accels;
accels.x = (float)packet.xacc / 1000.0;
accels.y = (float)packet.yacc / 1000.0;
accels.z = (float)packet.zacc / 1000.0;
imu.set_gyro(gyros);
imu.set_accel(accels);
#else
// set dcm hil sensor
dcm.setHil(packet.roll,packet.pitch,packet.yaw,packet.rollspeed,
packet.pitchspeed,packet.yawspeed);
#endif
break;
}
#endif // MAVLINK10
#endif #endif
#if HIL_MODE == HIL_MODE_ATTITUDE #if HIL_MODE == HIL_MODE_ATTITUDE
case MAVLINK_MSG_ID_ATTITUDE: case MAVLINK_MSG_ID_ATTITUDE:
@ -1890,6 +1871,26 @@ void GCS_MAVLINK::handleMessage(mavlink_message_t* msg)
break; break;
} }
#endif // HIL_MODE #endif // HIL_MODE
#if MOUNT == ENABLED
case MAVLINK_MSG_ID_MOUNT_CONFIGURE:
{
camera_mount.configure_msg(msg);
break;
}
case MAVLINK_MSG_ID_MOUNT_CONTROL:
{
camera_mount.control_msg(msg);
break;
}
case MAVLINK_MSG_ID_MOUNT_STATUS:
{
camera_mount.status_msg(msg);
break;
}
#endif // MOUNT == ENABLED
} // end switch } // end switch
} // end handle mavlink } // end handle mavlink
@ -1959,7 +1960,6 @@ GCS_MAVLINK::queued_param_send()
char param_name[ONBOARD_PARAM_NAME_LENGTH]; /// XXX HACK char param_name[ONBOARD_PARAM_NAME_LENGTH]; /// XXX HACK
vp->copy_name(param_name, sizeof(param_name)); vp->copy_name(param_name, sizeof(param_name));
#ifdef MAVLINK10
mavlink_msg_param_value_send( mavlink_msg_param_value_send(
chan, chan,
param_name, param_name,
@ -1967,14 +1967,6 @@ GCS_MAVLINK::queued_param_send()
mav_var_type(vp->meta_type_id()), mav_var_type(vp->meta_type_id()),
_queued_parameter_count, _queued_parameter_count,
_queued_parameter_index); _queued_parameter_index);
#else // MAVLINK10
mavlink_msg_param_value_send(
chan,
(int8_t*)param_name,
value,
_queued_parameter_count,
_queued_parameter_index);
#endif // MAVLINK10
_queued_parameter_index++; _queued_parameter_index++;
} }

View File

@ -72,10 +72,101 @@ static uint8_t mav_var_type(AP_Meta_class::Type_id t)
#else #else
static uint8_t mav_var_type(AP_Meta_class::Type_id t)
{
return 0;
}
#define MAV_MISSION_ACCEPTED 0 #define MAV_MISSION_ACCEPTED 0
#define MAV_MISSION_UNSUPPORTED 1 #define MAV_MISSION_UNSUPPORTED 1
#define MAV_MISSION_UNSUPPORTED_FRAME 1 #define MAV_MISSION_UNSUPPORTED_FRAME 1
#define MAV_MISSION_ERROR 1 #define MAV_MISSION_ERROR 1
#define MAV_MISSION_INVALID_SEQUENCE 1 #define MAV_MISSION_INVALID_SEQUENCE 1
/*
some functions have some extra params in MAVLink 1.0
*/
static void mavlink_msg_global_position_int_send(mavlink_channel_t chan, uint32_t time_boot_ms, int32_t lat, int32_t lon,
int32_t alt, int32_t relative_alt, int16_t vx, int16_t vy,
int16_t vz, uint16_t hdg)
{
mavlink_msg_global_position_int_send(
chan,
lat,
lon,
alt,
vx, vy, vz);
}
static void mavlink_msg_rc_channels_scaled_send(mavlink_channel_t chan, uint32_t time_boot_ms, uint8_t port,
int16_t chan1_scaled, int16_t chan2_scaled, int16_t chan3_scaled,
int16_t chan4_scaled, int16_t chan5_scaled, int16_t chan6_scaled,
int16_t chan7_scaled, int16_t chan8_scaled, uint8_t rssi)
{
mavlink_msg_rc_channels_scaled_send(
chan,
chan1_scaled,
chan2_scaled,
chan3_scaled,
chan4_scaled,
chan5_scaled,
chan6_scaled,
chan7_scaled,
chan8_scaled,
rssi);
}
static void mavlink_msg_rc_channels_raw_send(mavlink_channel_t chan, uint32_t time_boot_ms, uint8_t port,
uint16_t chan1_raw, uint16_t chan2_raw, uint16_t chan3_raw,
uint16_t chan4_raw, uint16_t chan5_raw, uint16_t chan6_raw,
uint16_t chan7_raw, uint16_t chan8_raw, uint8_t rssi)
{
mavlink_msg_rc_channels_raw_send(
chan,
chan1_raw,
chan2_raw,
chan3_raw,
chan4_raw,
chan5_raw,
chan6_raw,
chan7_raw,
chan8_raw,
rssi);
}
static void mavlink_msg_servo_output_raw_send(mavlink_channel_t chan, uint32_t time_usec, uint8_t port,
uint16_t servo1_raw, uint16_t servo2_raw, uint16_t servo3_raw,
uint16_t servo4_raw, uint16_t servo5_raw, uint16_t servo6_raw,
uint16_t servo7_raw, uint16_t servo8_raw)
{
mavlink_msg_servo_output_raw_send(
chan,
servo1_raw,
servo2_raw,
servo3_raw,
servo4_raw,
servo5_raw,
servo6_raw,
servo7_raw,
servo8_raw);
}
static void mavlink_msg_statustext_send(mavlink_channel_t chan, uint8_t severity, const char *text)
{
mavlink_msg_statustext_send(chan, severity, (const int8_t*) text);
}
static void mavlink_msg_param_value_send(mavlink_channel_t chan, const char *param_id,
float param_value, uint8_t param_type,
uint16_t param_count, uint16_t param_index)
{
mavlink_msg_param_value_send(
chan,
(int8_t *)param_id,
param_value,
param_count,
param_index);
}
#endif #endif

View File

@ -115,6 +115,25 @@ static void handle_process_do_command()
case MAV_CMD_DO_REPEAT_RELAY: case MAV_CMD_DO_REPEAT_RELAY:
do_repeat_relay(); do_repeat_relay();
break; break;
#if MOUNT == ENABLED
// Sets the region of interest (ROI) for a sensor set or the
// vehicle itself. This can then be used by the vehicles control
// system to control the vehicle attitude and the attitude of various
// devices such as cameras.
// |Region of interest mode. (see MAV_ROI enum)| Waypoint index/ target ID. (see MAV_ROI enum)| ROI index (allows a vehicle to manage multiple cameras etc.)| Empty| x the location of the fixed ROI (see MAV_FRAME)| y| z|
case MAV_CMD_DO_SET_ROI:
camera_mount.set_roi_cmd();
break;
case MAV_CMD_DO_MOUNT_CONFIGURE: // Mission command to configure a camera mount |Mount operation mode (see MAV_CONFIGURE_MOUNT_MODE enum)| stabilize roll? (1 = yes, 0 = no)| stabilize pitch? (1 = yes, 0 = no)| stabilize yaw? (1 = yes, 0 = no)| Empty| Empty| Empty|
camera_mount.configure_cmd();
break;
case MAV_CMD_DO_MOUNT_CONTROL: // Mission command to control a camera mount |pitch(deg*100) or lat, depending on mount mode.| roll(deg*100) or lon depending on mount mode| yaw(deg*100) or alt (in cm) depending on mount mode| Empty| Empty| Empty| Empty|
camera_mount.control_cmd();
break;
#endif
} }
} }

View File

@ -50,7 +50,7 @@ static void process_next_command()
// and loads conditional or immediate commands if applicable // and loads conditional or immediate commands if applicable
struct Location temp; struct Location temp;
byte old_index; byte old_index = 0;
// these are Navigation/Must commands // these are Navigation/Must commands
// --------------------------------- // ---------------------------------

View File

@ -331,6 +331,20 @@
# define ELEVON_CH2_REVERSE DISABLED # define ELEVON_CH2_REVERSE DISABLED
#endif #endif
//////////////////////////////////////////////////////////////////////////////
// MOUNT (ANTENNA OR CAMERA)
//
#ifndef MOUNT
# define MOUNT DISABLED
#endif
#if defined( __AVR_ATmega1280__ ) && CAMERA == ENABLED
// The small ATmega1280 chip does not have enough memory for camera support
// so disable CLI, this will allow camera support and other improvements to fit.
// This should almost have no side effects, because the APM planner can now do a complete board setup.
#define CLI_ENABLED DISABLED
#endif
////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////

View File

@ -1,46 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?fileVersion 4.0.0?>
<cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage">
<storageModule moduleId="org.eclipse.cdt.core.settings">
<cconfiguration id="de.innot.avreclipse.toolchain.winavr.base.594686435">
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="de.innot.avreclipse.toolchain.winavr.base.594686435" moduleId="org.eclipse.cdt.core.settings" name="Default">
<externalSettings/>
<extensions>
<extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
<extension id="org.eclipse.cdt.core.MakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
</extensions>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<configuration buildProperties="" id="de.innot.avreclipse.toolchain.winavr.base.594686435" name="Default" parent="org.eclipse.cdt.build.core.emptycfg">
<folderInfo id="de.innot.avreclipse.toolchain.winavr.base.594686435.1498078133" name="/" resourcePath="">
<toolChain id="de.innot.avreclipse.toolchain.winavr.base.689630969" name="de.innot.avreclipse.toolchain.winavr.base" superClass="de.innot.avreclipse.toolchain.winavr.base">
<option id="de.innot.avreclipse.toolchain.options.toolchain.objcopy.flash.1566359540" name="Generate HEX file for Flash memory" superClass="de.innot.avreclipse.toolchain.options.toolchain.objcopy.flash"/>
<option id="de.innot.avreclipse.toolchain.options.toolchain.objcopy.eeprom.765758890" name="Generate HEX file for EEPROM" superClass="de.innot.avreclipse.toolchain.options.toolchain.objcopy.eeprom"/>
<option id="de.innot.avreclipse.toolchain.options.toolchain.objdump.840297081" name="Generate Extended Listing (Source + generated Assembler)" superClass="de.innot.avreclipse.toolchain.options.toolchain.objdump"/>
<option id="de.innot.avreclipse.toolchain.options.toolchain.size.379504817" name="Print Size" superClass="de.innot.avreclipse.toolchain.options.toolchain.size"/>
<option id="de.innot.avreclipse.toolchain.options.toolchain.avrdude.1978944089" name="AVRDude" superClass="de.innot.avreclipse.toolchain.options.toolchain.avrdude"/>
<targetPlatform archList="all" binaryParser="org.eclipse.cdt.core.ELF" id="de.innot.avreclipse.targetplatform.avr.1167300306" name="AVR Cross-Target" osList="all" superClass="de.innot.avreclipse.targetplatform.avr"/>
<builder id="de.innot.avreclipse.target.builder.winavr.base.1810593476" managedBuildOn="false" name="AVR GNU Make Builder.Default" superClass="de.innot.avreclipse.target.builder.winavr.base"/>
<tool id="de.innot.avreclipse.tool.assembler.winavr.base.583552593" name="AVR Assembler" superClass="de.innot.avreclipse.tool.assembler.winavr.base"/>
<tool id="de.innot.avreclipse.tool.compiler.winavr.base.745023243" name="AVR Compiler" superClass="de.innot.avreclipse.tool.compiler.winavr.base"/>
<tool id="de.innot.avreclipse.tool.cppcompiler.base.789662243" name="AVR C++ Compiler" superClass="de.innot.avreclipse.tool.cppcompiler.base"/>
<tool id="de.innot.avreclipse.tool.linker.winavr.base.2119909020" name="AVR C Linker" superClass="de.innot.avreclipse.tool.linker.winavr.base"/>
<tool id="de.innot.avreclipse.tool.cpplinker.base.1744690341" name="AVR C++ Linker" superClass="de.innot.avreclipse.tool.cpplinker.base"/>
<tool id="de.innot.avreclipse.tool.archiver.winavr.base.1982272787" name="AVR Archiver" superClass="de.innot.avreclipse.tool.archiver.winavr.base"/>
</toolChain>
</folderInfo>
</configuration>
</storageModule>
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
</cconfiguration>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<project id="ArduRover.null.866863111" name="ArduRover"/>
</storageModule>
<storageModule moduleId="scannerConfiguration">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
</storageModule>
</cproject>

View File

@ -1,79 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>ArduRover</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name>
<triggers>clean,full,incremental,</triggers>
<arguments>
<dictionary>
<key>?name?</key>
<value></value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.append_environment</key>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.autoBuildTarget</key>
<value>all</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.buildArguments</key>
<value></value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.buildCommand</key>
<value>make</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.cleanBuildTarget</key>
<value>clean</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.contents</key>
<value>org.eclipse.cdt.make.core.activeConfigSettings</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.enableAutoBuild</key>
<value>false</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.enableCleanBuild</key>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.enableFullBuild</key>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.fullBuildTarget</key>
<value>all</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.stopOnError</key>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.useDefaultBuildCmd</key>
<value>true</value>
</dictionary>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name>
<triggers>full,incremental,</triggers>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.cdt.core.cnature</nature>
<nature>org.eclipse.cdt.core.ccnature</nature>
<nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
<nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
</natures>
</projectDescription>

View File

@ -1,26 +0,0 @@
// Libraries
#include <Wire.h>
#include <FastSerial.h>
#include <AP_Common.h>
#include <APM_RC.h>
#include <AP_RangeFinder.h>
#include <GCS_MAVLink.h>
#include <AP_ADC.h>
#include <AP_DCM.h>
#include <AP_Compass.h>
#include <Wire.h>
#include <AP_GPS.h>
#include <AP_IMU.h>
#include <APM_BMP085.h>
#include <ModeFilter.h>
#include <APO.h>
#include <WProgram.h>
// Vehicle Configuration
#include "CarStampede.h"
// ArduPilotOne Default Setup
#include "APO_DefaultSetup.h"
#include <WProgram.h>; int main(void) {init();setup();for(;;) loop(); return 0; }
// vim:ts=4:sw=4:expandtab

View File

@ -1,4 +1,4 @@
cmake_minimum_required(VERSION 2.8) cmake_minimum_required(VERSION 2.8.5)
set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake/modules) set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake/modules)
set(CMAKE_TOOLCHAIN_FILE ${CMAKE_SOURCE_DIR}/cmake/toolchains/Arduino.cmake) set(CMAKE_TOOLCHAIN_FILE ${CMAKE_SOURCE_DIR}/cmake/toolchains/Arduino.cmake)
@ -42,6 +42,12 @@ if (NOT DEFINED BOARD)
set(BOARD "mega") set(BOARD "mega")
endif() endif()
if (NOT DEFINED PORT)
message(STATUS "please define the upload port (for example: cmake
-DPORT=/dev/ttyUSB0, assuming /dev/ttyUSB0")
set(PORT "/dev/ttyUSB0")
endif()
# cpack settings # cpack settings
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "A universal autopilot system for the ArduPilotMega board.") set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "A universal autopilot system for the ArduPilotMega board.")
set(CPACK_PACKAGE_VENDOR "DIYDRONES") set(CPACK_PACKAGE_VENDOR "DIYDRONES")
@ -72,31 +78,84 @@ if (NOT DEFINED BOARD)
endif() endif()
message(STATUS "Board configured as: ${BOARD}") message(STATUS "Board configured as: ${BOARD}")
set (CMAKE_CXX_SOURCE_FILE_EXTENSIONS pde) # add a sketch
macro(add_sketch SKETCH_NAME BOARD PORT)
# standard apm project setup message(STATUS "Generating sketch ${SKETCH_NAME}")
macro(apm_project PROJECT_NAME BOARD SRCS)
message(STATUS "creating apo project ${PROJECT_NAME}") # files
set(${PROJECT_NAME}_BOARD ${BOARD}) set(SKETCH_CPP ${CMAKE_CURRENT_BINARY_DIR}/${SKETCH_NAME}/${SKETCH_NAME}.cpp)
set(${PROJECT_NAME}_AFLAGS "-assembler-with-cpp") set(SKETCH_PDE ${CMAKE_CURRENT_SOURCE_DIR}/${SKETCH_NAME}/${SKETCH_NAME}.pde)
file(GLOB HDRS ${PROJECT_NAME}/*.h) message(STATUS "SKETCH_PDE:\n${SKETCH_PDE}")
file(GLOB PDE ${PROJECT_NAME}/*.pde) message(STATUS "SKETCH_CPP:\n${SKETCH_CPP}")
set(${PROJECT_NAME}_SRCS ${SRCS} ${HDRS} ${PDE})
set(${PROJECT_NAME}_LIBS c) # settings
message(STATUS "sources: ${SRCS}") set(${SKETCH_NAME}_BOARD ${BOARD})
message(STATUS "headers: ${HDRS}") set(${SKETCH_NAME}_PORT ${PORT})
message(STATUS "pde: ${PDE}") set(${SKETCH_NAME}_SRCS ${SKETCH_CPP})
generate_arduino_firmware(${PROJECT_NAME}) set(${SKETCH_NAME}_LIBS m c)
set_target_properties(${PROJECT_NAME} PROPERTIES LINKER_LANGUAGE CXX)
# find pde files
file(GLOB PDE_SOURCES ${SKETCH_NAME}/*.pde)
# find the head of the main pde
file(WRITE ${SKETCH_CPP} "// automatically generated by arduino-cmake\n")
file(READ ${SKETCH_PDE} FILE)
string(FIND "${FILE}" "#include" POS1 REVERSE)
string(LENGTH "${FILE}" FILE_LENGTH)
math(EXPR LENGTH_STR1 "${FILE_LENGTH}-${POS1}")
string(SUBSTRING "${FILE}" ${POS1} ${LENGTH_STR1} STR1)
string(FIND "${STR1}" "\n" POS2)
math(EXPR POS3 "${POS1}+${POS2}")
string(SUBSTRING "${FILE}" 0 ${POS3} FILE_HEAD)
message(STATUS "FILE_HEAD:\n${FILE_HEAD}")
# find the body of the main pde
math(EXPR BODY_LENGTH "${FILE_LENGTH}-${POS3}-1")
string(SUBSTRING "${FILE}" "${POS3}+1" "${BODY_LENGTH}" FILE_BODY)
message(STATUS "BODY:\n${FILE_BODY}")
# write the file head
file(APPEND ${SKETCH_CPP} "${FILE_HEAD}")
file(APPEND ${SKETCH_CPP} "\n#include \"WProgram.h\"\n")
# write prototypes
foreach(PDE ${PDE_SOURCES})
message(STATUS "pde: ${PDE}")
file(READ ${PDE} FILE)
string(REGEX MATCHALL "[\n]([a-zA-Z]+[ ])*[_a-zA-Z0-9]+([ ]*[\n][\t]*|[ ])[_a-zA-Z0-9]+[ ]?[\n]?[\t]*[ ]*[(]([\t]*[ ]*[*]?[ ]?[a-zA-Z0-9_][,]?[ ]*[\n]?)*[)]" PROTOTYPES ${FILE})
foreach(PROTOTYPE ${PROTOTYPES})
message(STATUS "\tprototype: ${PROTOTYPE};")
file(APPEND ${SKETCH_CPP} "${PROTOTYPE};")
endforeach()
endforeach()
# write source
file(APPEND ${SKETCH_CPP} "\n${FILE_BODY}")
list(REMOVE_ITEM PDE_SOURCES ${SKETCH_PDE})
list(SORT PDE_SOURCES)
foreach (PDE ${PDE_SOURCES})
file(READ ${PDE} FILE)
file(APPEND ${SKETCH_CPP} "${FILE}")
endforeach()
# generate firmware
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/${SKETCH_NAME})
generate_arduino_firmware(${SKETCH_NAME})
set_target_properties(${SKETCH_NAME} PROPERTIES LINKER_LANGUAGE CXX)
# install settings
install(FILES install(FILES
${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.hex ${CMAKE_CURRENT_BINARY_DIR}/${SKETCH_NAME}.hex
DESTINATION bin DESTINATION bin
) )
endmacro() endmacro()
# projects # projects
apm_project(apo ${BOARD} apo/apo.cpp) add_sketch(apo ${BOARD} ${PORT})
apm_project(ArduRover ${BOARD} ArduRover/ArduRover.cpp) add_sketch(ArduRover ${BOARD} ${PORT})
apm_project(ArduBoat ${BOARD} ArduBoat/ArduBoat.cpp) add_sketch(ArduBoat ${BOARD} ${PORT})
#apm_project(ArduPlane ${BOARD} ArduPlane/ArduPlane.cpp) add_sketch(ArduPlane ${BOARD} ${PORT})
#apm_project(ArduCopter ${BOARD} ArduCopter/ArduCopter.cpp) #add_sketch(ArduCopter ${BOARD} ${PORT})

View File

@ -17,6 +17,55 @@ Building using cmake
- cmake .. - cmake ..
- make (will build every sketch) - make (will build every sketch)
- make ArduPlane (will build just ArduPlane etc.) - make ArduPlane (will build just ArduPlane etc.)
Building using eclipse
-----------------------------------------------
Getting the Source:
assuming source located here: /home/name/apm-src
You can either download it or grab it from git:
git clone https://code.google.com/p/ardupilot-mega/ /home/name/apm-src
Generating the Eclipse Project for Your System:
mkdir /home/name/apm-build
cd /home/name/apm-build
cmake -G"Eclipse CDT4 - Unix Makefiles" -D CMAKE_BUILD_TYPE=Debug ../apm-src -D BOARD=mega -D PORT=/dev/ttyUSB0
Note: Unix can be substituted for MinGW/ MSYS/ NMake (for windows)
(see http://www.vtk.org/Wiki/Eclipse_CDT4_Generator)
PORT is the port for uploading to the board, COM0 etc on windows.
BOARD is your board type, mega for the 1280 or mega2560 for the 2560 boards.
Importing the Eclipse Build Project:
Import project using Menu File->Import
Select General->Existing projects into workspace:
Browse where your build tree is and select the root build tree directory.
Keep "Copy projects into workspace" unchecked.
You get a fully functional eclipse project
Importing the Eclipse Source Project:
You can also import the source repository (/home/name/apm-src) if you want to modify the source/ commit using git.
Settings up Eclipse to Recognize PDE files:
Window > Preferences > General > Content Types. This tree associates a
filename or filename pattern with its content type so that tools can treat it
properly. Source and header files for most languages are under the Text tree.
Add "*.pde" as a C++ Source.
Autocompletion:
Right click on source project -> Properties -> Project References -> apm-build Project
Advanced:
* Regenerating the eclipse source project file:
cmake -G"Eclipse CDT4 - Unix Makefiles" -DECLIPSE_CDT4_GENERATE_SOURCE_PROJECT=TRUE /home/name/apm-src
Build a package using cpack Build a package using cpack
----------------------------------------------- -----------------------------------------------
@ -24,3 +73,6 @@ Build a package using cpack
- cmake .. - cmake ..
- make package - make package
- make package_source - make package_source
vim:ts=4:sw=4:expandtab

View File

@ -5,13 +5,15 @@ In file included from /root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:55:
/usr/local/share/arduino/libraries/SPI/SPI.h:20:1: warning: this is the location of the previous definition /usr/local/share/arduino/libraries/SPI/SPI.h:20:1: warning: this is the location of the previous definition
In file included from /root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:77: In file included from /root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:77:
/root/apm/ardupilot-mega/ArduCopter/Parameters.h: In constructor 'Parameters::Parameters()': /root/apm/ardupilot-mega/ArduCopter/Parameters.h: In constructor 'Parameters::Parameters()':
/root/apm/ardupilot-mega/ArduCopter/Parameters.h:399: warning: overflow in implicit constant conversion /root/apm/ardupilot-mega/ArduCopter/Parameters.h:407: warning: overflow in implicit constant conversion
/root/apm/ardupilot-mega/ArduCopter/GCS_Mavlink.pde: In function 'bool mavlink_try_send_message(mavlink_channel_t, ap_message, uint16_t)': /root/apm/ardupilot-mega/ArduCopter/GCS_Mavlink.pde: In function 'bool mavlink_try_send_message(mavlink_channel_t, ap_message, uint16_t)':
/root/apm/ardupilot-mega/ArduCopter/GCS_Mavlink.pde:296: warning: enumeration value 'MSG_RAW_IMU1' not handled in switch /root/apm/ardupilot-mega/ArduCopter/GCS_Mavlink.pde:299: warning: enumeration value 'MSG_RAW_IMU1' not handled in switch
/root/apm/ardupilot-mega/ArduCopter/GCS_Mavlink.pde:296: warning: enumeration value 'MSG_RAW_IMU2' not handled in switch /root/apm/ardupilot-mega/ArduCopter/GCS_Mavlink.pde:299: warning: enumeration value 'MSG_RAW_IMU2' not handled in switch
/root/apm/ardupilot-mega/ArduCopter/GCS_Mavlink.pde:296: warning: enumeration value 'MSG_RAW_IMU3' not handled in switch /root/apm/ardupilot-mega/ArduCopter/GCS_Mavlink.pde:299: warning: enumeration value 'MSG_RAW_IMU3' not handled in switch
/root/apm/ardupilot-mega/ArduCopter/heli.pde: In function 'void heli_init_swash()': /root/apm/ardupilot-mega/ArduCopter/heli.pde: In function 'void heli_init_swash()':
/root/apm/ardupilot-mega/ArduCopter/heli.pde:60: warning: comparisons like X<=Y<=Z do not have their mathematical meaning /root/apm/ardupilot-mega/ArduCopter/heli.pde:64: warning: comparisons like X<=Y<=Z do not have their mathematical meaning
/root/apm/ardupilot-mega/ArduCopter/heli.pde: In function 'int heli_get_scaled_throttle(int)':
/root/apm/ardupilot-mega/ArduCopter/heli.pde:205: warning: unused variable 'scaled_throttle'
/root/apm/ardupilot-mega/ArduCopter/setup.pde: In function 'int8_t setup_heli(uint8_t, const Menu::arg*)': /root/apm/ardupilot-mega/ArduCopter/setup.pde: In function 'int8_t setup_heli(uint8_t, const Menu::arg*)':
/root/apm/ardupilot-mega/ArduCopter/setup.pde:467: warning: 'max_tail' may be used uninitialized in this function /root/apm/ardupilot-mega/ArduCopter/setup.pde:467: warning: 'max_tail' may be used uninitialized in this function
/root/apm/ardupilot-mega/ArduCopter/setup.pde:467: warning: 'min_tail' may be used uninitialized in this function /root/apm/ardupilot-mega/ArduCopter/setup.pde:467: warning: 'min_tail' may be used uninitialized in this function
@ -19,7 +21,9 @@ In file included from /root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:77:
/root/apm/ardupilot-mega/ArduCopter/setup.pde:467: warning: 'min_coll' may be used uninitialized in this function /root/apm/ardupilot-mega/ArduCopter/setup.pde:467: warning: 'min_coll' may be used uninitialized in this function
/root/apm/ardupilot-mega/ArduCopter/setup.pde:467: warning: 'max_pitch' may be used uninitialized in this function /root/apm/ardupilot-mega/ArduCopter/setup.pde:467: warning: 'max_pitch' may be used uninitialized in this function
/root/apm/ardupilot-mega/ArduCopter/setup.pde:467: warning: 'max_roll' may be used uninitialized in this function /root/apm/ardupilot-mega/ArduCopter/setup.pde:467: warning: 'max_roll' may be used uninitialized in this function
autogenerated: At global scope: /root/apm/ardupilot-mega/ArduCopter/Attitude.pde: At global scope:
/root/apm/ardupilot-mega/ArduCopter/Attitude.pde:179: warning: 'int alt_hold_velocity()' defined but not used
/root/apm/ardupilot-mega/ArduCopter/Attitude.pde:209: warning: 'int get_angle_boost(int)' defined but not used
autogenerated:51: warning: 'void send_raw_imu1(mavlink_channel_t)' declared 'static' but never defined autogenerated:51: warning: 'void send_raw_imu1(mavlink_channel_t)' declared 'static' but never defined
autogenerated:52: warning: 'void send_raw_imu2(mavlink_channel_t)' declared 'static' but never defined autogenerated:52: warning: 'void send_raw_imu2(mavlink_channel_t)' declared 'static' but never defined
autogenerated:53: warning: 'void send_raw_imu3(mavlink_channel_t)' declared 'static' but never defined autogenerated:53: warning: 'void send_raw_imu3(mavlink_channel_t)' declared 'static' but never defined
@ -28,36 +32,39 @@ autogenerated:109: warning: 'void Log_Write_Optflow()' declared 'static' but nev
autogenerated:111: warning: 'void Log_Write_Control_Tuning()' declared 'static' but never defined autogenerated:111: warning: 'void Log_Write_Control_Tuning()' declared 'static' but never defined
autogenerated:90: warning: 'void Log_Write_Attitude2()' declared 'static' but never defined autogenerated:90: warning: 'void Log_Write_Attitude2()' declared 'static' but never defined
autogenerated:91: warning: 'void Log_Read_Attitude2()' declared 'static' but never defined autogenerated:91: warning: 'void Log_Read_Attitude2()' declared 'static' but never defined
/root/apm/ardupilot-mega/ArduCopter/Log.pde:776: warning: 'void Log_Write_Attitude()' defined but not used /root/apm/ardupilot-mega/ArduCopter/Log.pde:835: warning: 'void Log_Write_Attitude()' defined but not used
autogenerated:121: warning: 'void decrement_WP_index()' declared 'static' but never defined autogenerated:121: warning: 'void decrement_WP_index()' declared 'static' but never defined
/root/apm/ardupilot-mega/ArduCopter/commands.pde:132: warning: 'Location get_LOITER_home_wp()' defined but not used /root/apm/ardupilot-mega/ArduCopter/commands.pde:132: warning: 'Location get_LOITER_home_wp()' defined but not used
/root/apm/ardupilot-mega/ArduCopter/commands_logic.pde:432: warning: 'bool verify_loiter_unlim()' defined but not used /root/apm/ardupilot-mega/ArduCopter/commands_logic.pde:432: warning: 'bool verify_loiter_unlim()' defined but not used
/root/apm/ardupilot-mega/ArduCopter/events.pde:46: warning: 'void low_battery_event()' defined but not used /root/apm/ardupilot-mega/ArduCopter/events.pde:46: warning: 'void low_battery_event()' defined but not used
autogenerated:213: warning: 'void debug_motors()' declared 'static' but never defined autogenerated:215: warning: 'void debug_motors()' declared 'static' but never defined
/root/apm/ardupilot-mega/ArduCopter/navigation.pde:183: warning: 'int get_loiter_angle()' defined but not used /root/apm/ardupilot-mega/ArduCopter/navigation.pde:95: warning: 'void calc_loiter2(int, int)' defined but not used
autogenerated:234: warning: 'long int get_crosstrack_correction()' declared 'static' but never defined /root/apm/ardupilot-mega/ArduCopter/navigation.pde:213: warning: 'int get_loiter_angle()' defined but not used
autogenerated:235: warning: 'long int cross_track_test()' declared 'static' but never defined autogenerated:237: warning: 'long int get_crosstrack_correction()' declared 'static' but never defined
autogenerated:236: warning: 'void reset_crosstrack()' declared 'static' but never defined autogenerated:238: warning: 'long int cross_track_test()' declared 'static' but never defined
autogenerated:238: warning: 'long int get_alt_distance(Location*, Location*)' declared 'static' but never defined autogenerated:239: warning: 'void reset_crosstrack()' declared 'static' but never defined
/root/apm/ardupilot-mega/ArduCopter/radio.pde:130: warning: 'void throttle_failsafe(uint16_t)' defined but not used autogenerated:241: warning: 'long int get_alt_distance(Location*, Location*)' declared 'static' but never defined
autogenerated:246: warning: 'void ReadSCP1000()' declared 'static' but never defined /root/apm/ardupilot-mega/ArduCopter/radio.pde:134: warning: 'void throttle_failsafe(uint16_t)' defined but not used
autogenerated:247: warning: 'void init_barometer()' declared 'static' but never defined autogenerated:250: warning: 'void ReadSCP1000()' declared 'static' but never defined
autogenerated:248: warning: 'long int read_baro_filtered()' declared 'static' but never defined autogenerated:251: warning: 'void init_barometer()' declared 'static' but never defined
autogenerated:249: warning: 'long int read_barometer()' declared 'static' but never defined autogenerated:252: warning: 'long int read_baro_filtered()' declared 'static' but never defined
autogenerated:250: warning: 'void read_airspeed()' declared 'static' but never defined autogenerated:253: warning: 'long int read_barometer()' declared 'static' but never defined
autogenerated:251: warning: 'void zero_airspeed()' declared 'static' but never defined autogenerated:254: warning: 'void read_airspeed()' declared 'static' but never defined
/root/apm/ardupilot-mega/ArduCopter/system.pde:438: warning: 'void set_failsafe(boolean)' defined but not used autogenerated:255: warning: 'void zero_airspeed()' declared 'static' but never defined
autogenerated:285: warning: 'void init_optflow()' declared 'static' but never defined /root/apm/ardupilot-mega/ArduCopter/system.pde:456: warning: 'void set_failsafe(boolean)' defined but not used
autogenerated:292: warning: 'void fake_out_gps()' declared 'static' but never defined autogenerated:290: warning: 'void init_optflow()' declared 'static' but never defined
autogenerated:297: warning: 'void fake_out_gps()' declared 'static' but never defined
/root/apm/ardupilot-mega/ArduCopter/test.pde:1028: warning: 'void print_motor_out()' defined but not used /root/apm/ardupilot-mega/ArduCopter/test.pde:1028: warning: 'void print_motor_out()' defined but not used
/root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:277: warning: 'heli_servo_min' defined but not used /root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:277: warning: 'heli_servo_min' defined but not used
/root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:277: warning: 'heli_servo_max' defined but not used /root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:277: warning: 'heli_servo_max' defined but not used
/root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:344: warning: 'old_altitude' defined but not used /root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:347: warning: 'old_altitude' defined but not used
/root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:362: warning: 'abs_pressure' defined but not used /root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:348: warning: 'old_rate' defined but not used
/root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:363: warning: 'ground_pressure' defined but not used /root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:366: warning: 'abs_pressure' defined but not used
/root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:364: warning: 'ground_temperature' defined but not used /root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:367: warning: 'ground_pressure' defined but not used
/root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:369: warning: 'baro_alt' defined but not used /root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:368: warning: 'ground_temperature' defined but not used
/root/apm/ardupilot-mega/ArduCopter/GCS_Mavlink.pde:1706: warning: 'void gcs_send_text_fmt(const prog_char_t*, ...)' defined but not used /root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:373: warning: 'baro_alt' defined but not used
/root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:389: warning: 'angle_boost' defined but not used
/root/apm/ardupilot-mega/ArduCopter/GCS_Mavlink.pde:1727: warning: 'void gcs_send_text_fmt(const prog_char_t*, ...)' defined but not used
/root/apm/ardupilot-mega/ArduCopter/test.pde:13: warning: 'int8_t test_adc(uint8_t, const Menu::arg*)' declared 'static' but never defined /root/apm/ardupilot-mega/ArduCopter/test.pde:13: warning: 'int8_t test_adc(uint8_t, const Menu::arg*)' declared 'static' but never defined
/root/apm/ardupilot-mega/ArduCopter/test.pde:26: warning: 'int8_t test_baro(uint8_t, const Menu::arg*)' declared 'static' but never defined /root/apm/ardupilot-mega/ArduCopter/test.pde:26: warning: 'int8_t test_baro(uint8_t, const Menu::arg*)' declared 'static' but never defined
%% libraries/APM_BMP085/APM_BMP085.o %% libraries/APM_BMP085/APM_BMP085.o

View File

@ -10,6 +10,7 @@
00000001 b land_complete 00000001 b land_complete
00000001 b throttle_mode 00000001 b throttle_mode
00000001 b command_may_ID 00000001 b command_may_ID
00000001 b mavlink_active
00000001 b wp_verify_byte 00000001 b wp_verify_byte
00000001 d altitude_sensor 00000001 d altitude_sensor
00000001 b command_must_ID 00000001 b command_must_ID
@ -47,8 +48,10 @@
00000002 b loiter_sum 00000002 b loiter_sum
00000002 b event_delay 00000002 b event_delay
00000002 b event_value 00000002 b event_value
00000002 b CH7_wp_index
00000002 b event_repeat 00000002 b event_repeat
00000002 b loiter_total 00000002 b loiter_total
00000002 b manual_boost
00000002 b nav_throttle 00000002 b nav_throttle
00000002 b x_rate_error 00000002 b x_rate_error
00000002 b y_rate_error 00000002 b y_rate_error
@ -86,6 +89,7 @@
00000003 r setup_sonar(unsigned char, Menu::arg const*)::__c 00000003 r setup_sonar(unsigned char, Menu::arg const*)::__c
00000003 r print_enabled(unsigned char)::__c 00000003 r print_enabled(unsigned char)::__c
00000003 r setup_compass(unsigned char, Menu::arg const*)::__c 00000003 r setup_compass(unsigned char, Menu::arg const*)::__c
00000003 V RC_Channel::RC_Channel(unsigned int, prog_char_t const*)::__c
00000004 d cos_roll_x 00000004 d cos_roll_x
00000004 b land_start 00000004 b land_start
00000004 b long_error 00000004 b long_error
@ -124,6 +128,7 @@
00000004 b fiftyhz_loopTimer 00000004 b fiftyhz_loopTimer
00000004 b old_target_bearing 00000004 b old_target_bearing
00000004 b throttle_integrator 00000004 b throttle_integrator
00000004 b heli_throttle_scaler
00000004 r __menu_name__log_menu 00000004 r __menu_name__log_menu
00000004 b command_yaw_start_time 00000004 b command_yaw_start_time
00000004 b initial_simple_bearing 00000004 b initial_simple_bearing
@ -284,6 +289,8 @@
0000000a V Parameters::Parameters()::__c 0000000a V Parameters::Parameters()::__c
0000000a V Parameters::Parameters()::__c 0000000a V Parameters::Parameters()::__c
0000000a V Parameters::Parameters()::__c 0000000a V Parameters::Parameters()::__c
0000000a V Parameters::Parameters()::__c
0000000a V Parameters::Parameters()::__c
0000000a T setup 0000000a T setup
0000000b r test_relay(unsigned char, Menu::arg const*)::__c 0000000b r test_relay(unsigned char, Menu::arg const*)::__c
0000000b r report_batt_monitor()::__c 0000000b r report_batt_monitor()::__c
@ -416,7 +423,6 @@
00000014 r test_tri(unsigned char, Menu::arg const*)::__c 00000014 r test_tri(unsigned char, Menu::arg const*)::__c
00000015 r setup_heli(unsigned char, Menu::arg const*)::__c 00000015 r setup_heli(unsigned char, Menu::arg const*)::__c
00000015 r init_ardupilot()::__c 00000015 r init_ardupilot()::__c
00000015 r Log_Read_Motors()::__c
00000015 r print_hit_enter()::__c 00000015 r print_hit_enter()::__c
00000015 r GCS_MAVLINK::handleMessage(__mavlink_message*)::__c 00000015 r GCS_MAVLINK::handleMessage(__mavlink_message*)::__c
00000016 T piezo_beep() 00000016 T piezo_beep()
@ -427,8 +433,8 @@
00000018 r __menu_name__main_menu 00000018 r __menu_name__main_menu
00000018 W AP_VarT<int>::serialize(void*, unsigned int) const 00000018 W AP_VarT<int>::serialize(void*, unsigned int) const
00000019 r setup_gyro(unsigned char, Menu::arg const*)::__c 00000019 r setup_gyro(unsigned char, Menu::arg const*)::__c
00000019 r Log_Read_Motors()::__c
0000001a r print_log_menu()::__c 0000001a r print_log_menu()::__c
0000001a r Log_Read_Nav_Tuning()::__c
0000001b r setup_heli(unsigned char, Menu::arg const*)::__c 0000001b r setup_heli(unsigned char, Menu::arg const*)::__c
0000001b r report_heli()::__c 0000001b r report_heli()::__c
0000001c W AP_VarS<Matrix3<float> >::unserialize(void*, unsigned int) 0000001c W AP_VarS<Matrix3<float> >::unserialize(void*, unsigned int)
@ -437,6 +443,7 @@
0000001c W AP_VarS<Matrix3<float> >::serialize(void*, unsigned int) const 0000001c W AP_VarS<Matrix3<float> >::serialize(void*, unsigned int) const
0000001c W AP_VarS<Vector3<float> >::serialize(void*, unsigned int) const 0000001c W AP_VarS<Vector3<float> >::serialize(void*, unsigned int) const
0000001d r Log_Read_Attitude()::__c 0000001d r Log_Read_Attitude()::__c
0000001d r Log_Read_Performance()::__c
0000001e r report_heli()::__c 0000001e r report_heli()::__c
0000001e r Log_Read_Optflow()::__c 0000001e r Log_Read_Optflow()::__c
00000020 t gcs_send_message(ap_message) 00000020 t gcs_send_message(ap_message)
@ -446,10 +453,8 @@
00000021 r print_log_menu()::__c 00000021 r print_log_menu()::__c
00000021 r report_compass()::__c 00000021 r report_compass()::__c
00000021 r Log_Read_Current()::__c 00000021 r Log_Read_Current()::__c
00000021 r Log_Read_Performance()::__c
00000022 t clear_leds() 00000022 t clear_leds()
00000022 t print_blanks(int) 00000022 t print_blanks(int)
00000022 t reset_hold_I()
00000022 W AP_Float16::~AP_Float16() 00000022 W AP_Float16::~AP_Float16()
00000022 W AP_VarS<Matrix3<float> >::~AP_VarS() 00000022 W AP_VarS<Matrix3<float> >::~AP_VarS()
00000022 W AP_VarS<Vector3<float> >::~AP_VarS() 00000022 W AP_VarS<Vector3<float> >::~AP_VarS()
@ -459,13 +464,13 @@
00000023 r setup_heli(unsigned char, Menu::arg const*)::__c 00000023 r setup_heli(unsigned char, Menu::arg const*)::__c
00000023 r setup_mode(unsigned char, Menu::arg const*)::__c 00000023 r setup_mode(unsigned char, Menu::arg const*)::__c
00000023 r print_gyro_offsets()::__c 00000023 r print_gyro_offsets()::__c
00000024 t reset_hold_I()
00000024 r setup_heli(unsigned char, Menu::arg const*)::__c 00000024 r setup_heli(unsigned char, Menu::arg const*)::__c
00000024 r init_ardupilot()::__c 00000024 r init_ardupilot()::__c
00000024 r print_accel_offsets()::__c 00000024 r print_accel_offsets()::__c
00000026 t print_done() 00000026 t print_done()
00000026 t print_hit_enter() 00000026 t print_hit_enter()
00000026 t Log_Read_Startup() 00000026 t Log_Read_Startup()
00000026 r Log_Read_Control_Tuning()::__c
00000028 t test_battery(unsigned char, Menu::arg const*) 00000028 t test_battery(unsigned char, Menu::arg const*)
00000028 t main_menu_help(unsigned char, Menu::arg const*) 00000028 t main_menu_help(unsigned char, Menu::arg const*)
00000028 t help_log(unsigned char, Menu::arg const*) 00000028 t help_log(unsigned char, Menu::arg const*)
@ -476,14 +481,16 @@
00000029 r setup_mode(unsigned char, Menu::arg const*)::__c 00000029 r setup_mode(unsigned char, Menu::arg const*)::__c
00000029 r test_gps(unsigned char, Menu::arg const*)::__c 00000029 r test_gps(unsigned char, Menu::arg const*)::__c
0000002a t setup_declination(unsigned char, Menu::arg const*) 0000002a t setup_declination(unsigned char, Menu::arg const*)
0000002a t _mav_put_int8_t_array
0000002b r planner_mode(unsigned char, Menu::arg const*)::__c 0000002b r planner_mode(unsigned char, Menu::arg const*)::__c
0000002e t setup_motors(unsigned char, Menu::arg const*) 0000002e t setup_motors(unsigned char, Menu::arg const*)
0000002e t print_divider() 0000002e t print_divider()
0000002e t gcs_send_text_P(gcs_severity, prog_char_t const*) 0000002e t gcs_send_text_P(gcs_severity, prog_char_t const*)
0000002e t gcs_data_stream_send(unsigned int, unsigned int) 0000002e t gcs_data_stream_send(unsigned int, unsigned int)
0000002e W AP_Var_group::AP_Var_group(unsigned int, prog_char_t const*, unsigned char) 0000002e W AP_Var_group::AP_Var_group(unsigned int, prog_char_t const*, unsigned char)
0000002e r init_ardupilot()::__c
0000002e r Log_Read_Nav_Tuning()::__c
0000002f r test_radio(unsigned char, Menu::arg const*)::__c 0000002f r test_radio(unsigned char, Menu::arg const*)::__c
0000002f r init_ardupilot()::__c
00000030 t planner_mode(unsigned char, Menu::arg const*) 00000030 t planner_mode(unsigned char, Menu::arg const*)
00000030 t send_heartbeat(mavlink_channel_t) 00000030 t send_heartbeat(mavlink_channel_t)
00000030 B imu 00000030 B imu
@ -496,19 +503,17 @@
00000034 t _MAV_RETURN_float 00000034 t _MAV_RETURN_float
00000034 t heli_get_servo(int) 00000034 t heli_get_servo(int)
00000034 W AP_Float16::serialize(void*, unsigned int) const 00000034 W AP_Float16::serialize(void*, unsigned int) const
00000034 t _mav_put_int8_t_array
00000034 t mavlink_msg_statustext_send 00000034 t mavlink_msg_statustext_send
00000035 r test_radio_pwm(unsigned char, Menu::arg const*)::__c 00000035 r test_radio_pwm(unsigned char, Menu::arg const*)::__c
00000036 t report_radio() 00000036 t report_radio()
00000036 r Log_Read_Control_Tuning()::__c
00000037 r print_wp(Location*, unsigned char)::__c 00000037 r print_wp(Location*, unsigned char)::__c
00000038 t init_throttle_cruise()
00000038 t send_current_waypoint(mavlink_channel_t) 00000038 t send_current_waypoint(mavlink_channel_t)
00000038 r setup_radio(unsigned char, Menu::arg const*)::__c 00000038 r setup_radio(unsigned char, Menu::arg const*)::__c
00000038 r setup_factory(unsigned char, Menu::arg const*)::__c 00000038 r setup_factory(unsigned char, Menu::arg const*)::__c
0000003a t report_gps() 0000003a t report_gps()
0000003a t report_imu() 0000003a t report_imu()
0000003a B g_gps_driver 0000003a B g_gps_driver
0000003c W RC_Channel::~RC_Channel()
0000003e T GCS_MAVLINK::send_text(gcs_severity, prog_char_t const*) 0000003e T GCS_MAVLINK::send_text(gcs_severity, prog_char_t const*)
0000003e W AP_VarT<signed char>::AP_VarT(signed char, unsigned int, prog_char_t const*, unsigned char) 0000003e W AP_VarT<signed char>::AP_VarT(signed char, unsigned int, prog_char_t const*, unsigned char)
00000040 W AP_Float16::unserialize(void*, unsigned int) 00000040 W AP_Float16::unserialize(void*, unsigned int)
@ -517,6 +522,7 @@
00000042 t report_sonar() 00000042 t report_sonar()
00000042 r setup_heli(unsigned char, Menu::arg const*)::__c 00000042 r setup_heli(unsigned char, Menu::arg const*)::__c
00000044 W AP_VarT<int>::AP_VarT(int, unsigned int, prog_char_t const*, unsigned char) 00000044 W AP_VarT<int>::AP_VarT(int, unsigned int, prog_char_t const*, unsigned char)
00000046 W RC_Channel::~RC_Channel()
00000048 t change_command(unsigned char) 00000048 t change_command(unsigned char)
00000048 t update_motor_leds() 00000048 t update_motor_leds()
00000049 r setup_flightmodes(unsigned char, Menu::arg const*)::__c 00000049 r setup_flightmodes(unsigned char, Menu::arg const*)::__c
@ -549,9 +555,9 @@
00000064 t mavlink_msg_param_value_send 00000064 t mavlink_msg_param_value_send
00000068 t zero_eeprom() 00000068 t zero_eeprom()
00000068 t find_last_log_page(int) 00000068 t find_last_log_page(int)
00000068 W GCS_MAVLINK::~GCS_MAVLINK()
0000006a T mavlink_send_text(mavlink_channel_t, gcs_severity, char const*) 0000006a T mavlink_send_text(mavlink_channel_t, gcs_severity, char const*)
0000006a t read_num_from_serial() 0000006a t read_num_from_serial()
0000006a W GCS_MAVLINK::~GCS_MAVLINK()
0000006c t setup_sonar(unsigned char, Menu::arg const*) 0000006c t setup_sonar(unsigned char, Menu::arg const*)
00000074 t output_motors_armed() 00000074 t output_motors_armed()
00000078 t setup_batt_monitor(unsigned char, Menu::arg const*) 00000078 t setup_batt_monitor(unsigned char, Menu::arg const*)
@ -572,11 +578,11 @@
00000092 t test_tuning(unsigned char, Menu::arg const*) 00000092 t test_tuning(unsigned char, Menu::arg const*)
00000092 t report_tuning() 00000092 t report_tuning()
00000092 T GCS_MAVLINK::queued_param_send() 00000092 T GCS_MAVLINK::queued_param_send()
00000094 t init_throttle_cruise()
00000096 t print_wp(Location*, unsigned char) 00000096 t print_wp(Location*, unsigned char)
00000098 B gcs0
00000098 B gcs3
0000009a t planner_gcs(unsigned char, Menu::arg const*) 0000009a t planner_gcs(unsigned char, Menu::arg const*)
0000009a t Log_Read_Motors()
0000009b B gcs0
0000009b B gcs3
0000009e t setup_mode(unsigned char, Menu::arg const*) 0000009e t setup_mode(unsigned char, Menu::arg const*)
0000009e t Log_Write_Cmd(unsigned char, Location*) 0000009e t Log_Write_Cmd(unsigned char, Location*)
000000a0 t Log_Read_Mode() 000000a0 t Log_Read_Mode()
@ -585,12 +591,13 @@
000000a4 T __vector_55 000000a4 T __vector_55
000000a6 t send_servo_out(mavlink_channel_t) 000000a6 t send_servo_out(mavlink_channel_t)
000000aa t test_sonar(unsigned char, Menu::arg const*) 000000aa t test_sonar(unsigned char, Menu::arg const*)
000000aa t Log_Read_Nav_Tuning()
000000ab B compass 000000ab B compass
000000ae t Log_Read_Motors()
000000b0 t test_relay(unsigned char, Menu::arg const*) 000000b0 t test_relay(unsigned char, Menu::arg const*)
000000b2 t erase_logs(unsigned char, Menu::arg const*) 000000b2 t erase_logs(unsigned char, Menu::arg const*)
000000b4 t read_radio() 000000b4 t read_radio()
000000b6 t get_log_boundaries(unsigned char, int&, int&) 000000b6 t get_log_boundaries(unsigned char, int&, int&)
000000b6 t Log_Read_Performance()
000000be t update_events() 000000be t update_events()
000000c2 t setup_compass(unsigned char, Menu::arg const*) 000000c2 t setup_compass(unsigned char, Menu::arg const*)
000000c2 t send_radio_out(mavlink_channel_t) 000000c2 t send_radio_out(mavlink_channel_t)
@ -599,7 +606,6 @@
000000c4 r setup_esc(unsigned char, Menu::arg const*)::__c 000000c4 r setup_esc(unsigned char, Menu::arg const*)::__c
000000c6 t test_eedump(unsigned char, Menu::arg const*) 000000c6 t test_eedump(unsigned char, Menu::arg const*)
000000c6 t send_radio_in(mavlink_channel_t) 000000c6 t send_radio_in(mavlink_channel_t)
000000c6 t Log_Read_Performance()
000000c6 t test_tri(unsigned char, Menu::arg const*) 000000c6 t test_tri(unsigned char, Menu::arg const*)
000000d0 t get_bearing(Location*, Location*) 000000d0 t get_bearing(Location*, Location*)
000000d2 t print_switch(unsigned char, unsigned char, bool) 000000d2 t print_switch(unsigned char, unsigned char, bool)
@ -607,29 +613,31 @@
000000d4 t get_stabilize_pitch(long) 000000d4 t get_stabilize_pitch(long)
000000d4 t Log_Read(int, int) 000000d4 t Log_Read(int, int)
000000d8 t test_radio(unsigned char, Menu::arg const*) 000000d8 t test_radio(unsigned char, Menu::arg const*)
000000de t Log_Read_Nav_Tuning()
000000e0 r test_menu_commands 000000e0 r test_menu_commands
000000e4 t test_radio_pwm(unsigned char, Menu::arg const*) 000000e4 t test_radio_pwm(unsigned char, Menu::arg const*)
000000e4 t Log_Read_Optflow() 000000e4 t Log_Read_Optflow()
000000e4 W APM_PI::APM_PI(unsigned int, prog_char_t const*, float const&, float const&, int const&) 000000e4 W APM_PI::APM_PI(unsigned int, prog_char_t const*, float const&, float const&, int const&)
000000e8 t Log_Read_Current() 000000e8 t Log_Read_Current()
000000ea t Log_Read_Control_Tuning()
000000ee t report_batt_monitor() 000000ee t report_batt_monitor()
000000f6 t Log_Read_Cmd() 000000f6 t Log_Read_Cmd()
000000f8 t heli_get_angle_boost(int)
000000fa t calc_loiter_pitch_roll()
00000100 r setup_menu_commands 00000100 r setup_menu_commands
00000102 t Log_Read_Control_Tuning()
00000106 t setup_gyro(unsigned char, Menu::arg const*) 00000106 t setup_gyro(unsigned char, Menu::arg const*)
0000010a t mavlink_delay(unsigned long) 0000010a t mavlink_delay(unsigned long)
0000010a t test_gps(unsigned char, Menu::arg const*) 0000010a t test_gps(unsigned char, Menu::arg const*)
0000010c t test_current(unsigned char, Menu::arg const*) 0000010c t test_current(unsigned char, Menu::arg const*)
0000010e W RC_Channel::RC_Channel(unsigned int, prog_char_t const*) 00000110 T GCS_MAVLINK::GCS_MAVLINK(unsigned int)
00000110 T GCS_MAVLINK::GCS_MAVLINK(unsigned int)
00000112 t set_next_WP(Location*) 00000112 t set_next_WP(Location*)
00000112 t send_extended_status1(mavlink_channel_t, unsigned int) 00000112 t send_extended_status1(mavlink_channel_t, unsigned int)
00000112 T GCS_MAVLINK::GCS_MAVLINK(unsigned int)
00000112 T GCS_MAVLINK::GCS_MAVLINK(unsigned int)
00000118 t set_command_with_index(Location, int) 00000118 t set_command_with_index(Location, int)
0000011c t get_command_with_index(int) 0000011c t get_command_with_index(int)
0000012c t calc_loiter_pitch_roll()
0000012e t arm_motors() 0000012e t arm_motors()
00000130 t report_compass() 00000130 t report_compass()
00000136 W RC_Channel::RC_Channel(unsigned int, prog_char_t const*)
00000148 t Log_Read_GPS() 00000148 t Log_Read_GPS()
00000156 t update_commands() 00000156 t update_commands()
0000015c t update_trig() 0000015c t update_trig()
@ -637,38 +645,38 @@
00000160 t send_nav_controller_output(mavlink_channel_t) 00000160 t send_nav_controller_output(mavlink_channel_t)
00000166 t select_logs(unsigned char, Menu::arg const*) 00000166 t select_logs(unsigned char, Menu::arg const*)
00000166 t send_vfr_hud(mavlink_channel_t) 00000166 t send_vfr_hud(mavlink_channel_t)
00000168 T GCS_MAVLINK::update()
0000016e t send_attitude(mavlink_channel_t) 0000016e t send_attitude(mavlink_channel_t)
00000174 t mavlink_send_message(mavlink_channel_t, ap_message, unsigned int) 00000174 t mavlink_send_message(mavlink_channel_t, ap_message, unsigned int)
00000178 t mavlink_try_send_message(mavlink_channel_t, ap_message, unsigned int) 00000178 t mavlink_try_send_message(mavlink_channel_t, ap_message, unsigned int)
00000184 t test_imu(unsigned char, Menu::arg const*) 00000184 t test_imu(unsigned char, Menu::arg const*)
00000188 T GCS_MAVLINK::data_stream_send(unsigned int, unsigned int) 00000188 T GCS_MAVLINK::data_stream_send(unsigned int, unsigned int)
000001a0 T GCS_MAVLINK::update()
000001a8 t print_radio_values() 000001a8 t print_radio_values()
000001cc t start_new_log() 000001cc t start_new_log()
000001e4 t setup_flightmodes(unsigned char, Menu::arg const*) 000001e4 t setup_flightmodes(unsigned char, Menu::arg const*)
000001e6 t verify_nav_wp() 000001e6 t verify_nav_wp()
000001ea t init_home() 000001ea t init_home()
00000216 t set_mode(unsigned char)
00000220 t test_wp(unsigned char, Menu::arg const*) 00000220 t test_wp(unsigned char, Menu::arg const*)
00000226 t set_mode(unsigned char)
00000228 t setup_radio(unsigned char, Menu::arg const*) 00000228 t setup_radio(unsigned char, Menu::arg const*)
0000022a t send_gps_raw(mavlink_channel_t) 0000022a t send_gps_raw(mavlink_channel_t)
00000242 t calc_loiter(int, int) 00000242 t calc_loiter(int, int)
0000030c t heli_init_swash() 00000298 T update_throttle_mode()
00000312 W Parameters::~Parameters() 00000326 W Parameters::~Parameters()
0000032a t report_heli() 0000032a t report_heli()
00000330 t tuning() 0000033a t heli_init_swash()
0000036a t tuning()
00000384 t print_log_menu() 00000384 t print_log_menu()
0000039a T update_throttle_mode()
0000039c t __static_initialization_and_destruction_0(int, int) 0000039c t __static_initialization_and_destruction_0(int, int)
0000039e T update_roll_pitch_mode()
000003a0 t read_battery() 000003a0 t read_battery()
0000045c T update_yaw_mode() 0000045c T update_yaw_mode()
0000046e T update_roll_pitch_mode()
0000052e t heli_move_swash(int, int, int, int) 0000052e t heli_move_swash(int, int, int, int)
00000622 t init_ardupilot() 00000600 t init_ardupilot()
0000071a t update_nav_wp() 0000071a t update_nav_wp()
000007ec t setup_heli(unsigned char, Menu::arg const*) 000007ec t setup_heli(unsigned char, Menu::arg const*)
00000870 t process_next_command() 00000870 t process_next_command()
000009b8 W Parameters::Parameters() 00000a64 W Parameters::Parameters()
00000a1f b g 00000b2d b g
0000100a T loop 000010b6 T loop
00001604 T GCS_MAVLINK::handleMessage(__mavlink_message*) 00001604 T GCS_MAVLINK::handleMessage(__mavlink_message*)

View File

@ -5,13 +5,15 @@ In file included from /root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:55:
/usr/local/share/arduino/libraries/SPI/SPI.h:20:1: warning: this is the location of the previous definition /usr/local/share/arduino/libraries/SPI/SPI.h:20:1: warning: this is the location of the previous definition
In file included from /root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:77: In file included from /root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:77:
/root/apm/ardupilot-mega/ArduCopter/Parameters.h: In constructor 'Parameters::Parameters()': /root/apm/ardupilot-mega/ArduCopter/Parameters.h: In constructor 'Parameters::Parameters()':
/root/apm/ardupilot-mega/ArduCopter/Parameters.h:399: warning: overflow in implicit constant conversion /root/apm/ardupilot-mega/ArduCopter/Parameters.h:407: warning: overflow in implicit constant conversion
/root/apm/ardupilot-mega/ArduCopter/GCS_Mavlink.pde: In function 'bool mavlink_try_send_message(mavlink_channel_t, ap_message, uint16_t)': /root/apm/ardupilot-mega/ArduCopter/GCS_Mavlink.pde: In function 'bool mavlink_try_send_message(mavlink_channel_t, ap_message, uint16_t)':
/root/apm/ardupilot-mega/ArduCopter/GCS_Mavlink.pde:296: warning: enumeration value 'MSG_RAW_IMU1' not handled in switch /root/apm/ardupilot-mega/ArduCopter/GCS_Mavlink.pde:299: warning: enumeration value 'MSG_RAW_IMU1' not handled in switch
/root/apm/ardupilot-mega/ArduCopter/GCS_Mavlink.pde:296: warning: enumeration value 'MSG_RAW_IMU2' not handled in switch /root/apm/ardupilot-mega/ArduCopter/GCS_Mavlink.pde:299: warning: enumeration value 'MSG_RAW_IMU2' not handled in switch
/root/apm/ardupilot-mega/ArduCopter/GCS_Mavlink.pde:296: warning: enumeration value 'MSG_RAW_IMU3' not handled in switch /root/apm/ardupilot-mega/ArduCopter/GCS_Mavlink.pde:299: warning: enumeration value 'MSG_RAW_IMU3' not handled in switch
/root/apm/ardupilot-mega/ArduCopter/heli.pde: In function 'void heli_init_swash()': /root/apm/ardupilot-mega/ArduCopter/heli.pde: In function 'void heli_init_swash()':
/root/apm/ardupilot-mega/ArduCopter/heli.pde:60: warning: comparisons like X<=Y<=Z do not have their mathematical meaning /root/apm/ardupilot-mega/ArduCopter/heli.pde:64: warning: comparisons like X<=Y<=Z do not have their mathematical meaning
/root/apm/ardupilot-mega/ArduCopter/heli.pde: In function 'int heli_get_scaled_throttle(int)':
/root/apm/ardupilot-mega/ArduCopter/heli.pde:205: warning: unused variable 'scaled_throttle'
/root/apm/ardupilot-mega/ArduCopter/setup.pde: In function 'int8_t setup_heli(uint8_t, const Menu::arg*)': /root/apm/ardupilot-mega/ArduCopter/setup.pde: In function 'int8_t setup_heli(uint8_t, const Menu::arg*)':
/root/apm/ardupilot-mega/ArduCopter/setup.pde:467: warning: 'max_tail' may be used uninitialized in this function /root/apm/ardupilot-mega/ArduCopter/setup.pde:467: warning: 'max_tail' may be used uninitialized in this function
/root/apm/ardupilot-mega/ArduCopter/setup.pde:467: warning: 'min_tail' may be used uninitialized in this function /root/apm/ardupilot-mega/ArduCopter/setup.pde:467: warning: 'min_tail' may be used uninitialized in this function
@ -19,7 +21,9 @@ In file included from /root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:77:
/root/apm/ardupilot-mega/ArduCopter/setup.pde:467: warning: 'min_coll' may be used uninitialized in this function /root/apm/ardupilot-mega/ArduCopter/setup.pde:467: warning: 'min_coll' may be used uninitialized in this function
/root/apm/ardupilot-mega/ArduCopter/setup.pde:467: warning: 'max_pitch' may be used uninitialized in this function /root/apm/ardupilot-mega/ArduCopter/setup.pde:467: warning: 'max_pitch' may be used uninitialized in this function
/root/apm/ardupilot-mega/ArduCopter/setup.pde:467: warning: 'max_roll' may be used uninitialized in this function /root/apm/ardupilot-mega/ArduCopter/setup.pde:467: warning: 'max_roll' may be used uninitialized in this function
autogenerated: At global scope: /root/apm/ardupilot-mega/ArduCopter/Attitude.pde: At global scope:
/root/apm/ardupilot-mega/ArduCopter/Attitude.pde:179: warning: 'int alt_hold_velocity()' defined but not used
/root/apm/ardupilot-mega/ArduCopter/Attitude.pde:209: warning: 'int get_angle_boost(int)' defined but not used
autogenerated:51: warning: 'void send_raw_imu1(mavlink_channel_t)' declared 'static' but never defined autogenerated:51: warning: 'void send_raw_imu1(mavlink_channel_t)' declared 'static' but never defined
autogenerated:52: warning: 'void send_raw_imu2(mavlink_channel_t)' declared 'static' but never defined autogenerated:52: warning: 'void send_raw_imu2(mavlink_channel_t)' declared 'static' but never defined
autogenerated:53: warning: 'void send_raw_imu3(mavlink_channel_t)' declared 'static' but never defined autogenerated:53: warning: 'void send_raw_imu3(mavlink_channel_t)' declared 'static' but never defined
@ -28,36 +32,39 @@ autogenerated:109: warning: 'void Log_Write_Optflow()' declared 'static' but nev
autogenerated:111: warning: 'void Log_Write_Control_Tuning()' declared 'static' but never defined autogenerated:111: warning: 'void Log_Write_Control_Tuning()' declared 'static' but never defined
autogenerated:90: warning: 'void Log_Write_Attitude2()' declared 'static' but never defined autogenerated:90: warning: 'void Log_Write_Attitude2()' declared 'static' but never defined
autogenerated:91: warning: 'void Log_Read_Attitude2()' declared 'static' but never defined autogenerated:91: warning: 'void Log_Read_Attitude2()' declared 'static' but never defined
/root/apm/ardupilot-mega/ArduCopter/Log.pde:776: warning: 'void Log_Write_Attitude()' defined but not used /root/apm/ardupilot-mega/ArduCopter/Log.pde:835: warning: 'void Log_Write_Attitude()' defined but not used
autogenerated:121: warning: 'void decrement_WP_index()' declared 'static' but never defined autogenerated:121: warning: 'void decrement_WP_index()' declared 'static' but never defined
/root/apm/ardupilot-mega/ArduCopter/commands.pde:132: warning: 'Location get_LOITER_home_wp()' defined but not used /root/apm/ardupilot-mega/ArduCopter/commands.pde:132: warning: 'Location get_LOITER_home_wp()' defined but not used
/root/apm/ardupilot-mega/ArduCopter/commands_logic.pde:432: warning: 'bool verify_loiter_unlim()' defined but not used /root/apm/ardupilot-mega/ArduCopter/commands_logic.pde:432: warning: 'bool verify_loiter_unlim()' defined but not used
/root/apm/ardupilot-mega/ArduCopter/events.pde:46: warning: 'void low_battery_event()' defined but not used /root/apm/ardupilot-mega/ArduCopter/events.pde:46: warning: 'void low_battery_event()' defined but not used
autogenerated:213: warning: 'void debug_motors()' declared 'static' but never defined autogenerated:215: warning: 'void debug_motors()' declared 'static' but never defined
/root/apm/ardupilot-mega/ArduCopter/navigation.pde:183: warning: 'int get_loiter_angle()' defined but not used /root/apm/ardupilot-mega/ArduCopter/navigation.pde:95: warning: 'void calc_loiter2(int, int)' defined but not used
autogenerated:234: warning: 'long int get_crosstrack_correction()' declared 'static' but never defined /root/apm/ardupilot-mega/ArduCopter/navigation.pde:213: warning: 'int get_loiter_angle()' defined but not used
autogenerated:235: warning: 'long int cross_track_test()' declared 'static' but never defined autogenerated:237: warning: 'long int get_crosstrack_correction()' declared 'static' but never defined
autogenerated:236: warning: 'void reset_crosstrack()' declared 'static' but never defined autogenerated:238: warning: 'long int cross_track_test()' declared 'static' but never defined
autogenerated:238: warning: 'long int get_alt_distance(Location*, Location*)' declared 'static' but never defined autogenerated:239: warning: 'void reset_crosstrack()' declared 'static' but never defined
/root/apm/ardupilot-mega/ArduCopter/radio.pde:130: warning: 'void throttle_failsafe(uint16_t)' defined but not used autogenerated:241: warning: 'long int get_alt_distance(Location*, Location*)' declared 'static' but never defined
autogenerated:246: warning: 'void ReadSCP1000()' declared 'static' but never defined /root/apm/ardupilot-mega/ArduCopter/radio.pde:134: warning: 'void throttle_failsafe(uint16_t)' defined but not used
autogenerated:247: warning: 'void init_barometer()' declared 'static' but never defined autogenerated:250: warning: 'void ReadSCP1000()' declared 'static' but never defined
autogenerated:248: warning: 'long int read_baro_filtered()' declared 'static' but never defined autogenerated:251: warning: 'void init_barometer()' declared 'static' but never defined
autogenerated:249: warning: 'long int read_barometer()' declared 'static' but never defined autogenerated:252: warning: 'long int read_baro_filtered()' declared 'static' but never defined
autogenerated:250: warning: 'void read_airspeed()' declared 'static' but never defined autogenerated:253: warning: 'long int read_barometer()' declared 'static' but never defined
autogenerated:251: warning: 'void zero_airspeed()' declared 'static' but never defined autogenerated:254: warning: 'void read_airspeed()' declared 'static' but never defined
/root/apm/ardupilot-mega/ArduCopter/system.pde:438: warning: 'void set_failsafe(boolean)' defined but not used autogenerated:255: warning: 'void zero_airspeed()' declared 'static' but never defined
autogenerated:285: warning: 'void init_optflow()' declared 'static' but never defined /root/apm/ardupilot-mega/ArduCopter/system.pde:456: warning: 'void set_failsafe(boolean)' defined but not used
autogenerated:292: warning: 'void fake_out_gps()' declared 'static' but never defined autogenerated:290: warning: 'void init_optflow()' declared 'static' but never defined
autogenerated:297: warning: 'void fake_out_gps()' declared 'static' but never defined
/root/apm/ardupilot-mega/ArduCopter/test.pde:1028: warning: 'void print_motor_out()' defined but not used /root/apm/ardupilot-mega/ArduCopter/test.pde:1028: warning: 'void print_motor_out()' defined but not used
/root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:277: warning: 'heli_servo_min' defined but not used /root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:277: warning: 'heli_servo_min' defined but not used
/root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:277: warning: 'heli_servo_max' defined but not used /root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:277: warning: 'heli_servo_max' defined but not used
/root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:344: warning: 'old_altitude' defined but not used /root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:347: warning: 'old_altitude' defined but not used
/root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:362: warning: 'abs_pressure' defined but not used /root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:348: warning: 'old_rate' defined but not used
/root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:363: warning: 'ground_pressure' defined but not used /root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:366: warning: 'abs_pressure' defined but not used
/root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:364: warning: 'ground_temperature' defined but not used /root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:367: warning: 'ground_pressure' defined but not used
/root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:369: warning: 'baro_alt' defined but not used /root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:368: warning: 'ground_temperature' defined but not used
/root/apm/ardupilot-mega/ArduCopter/GCS_Mavlink.pde:1706: warning: 'void gcs_send_text_fmt(const prog_char_t*, ...)' defined but not used /root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:373: warning: 'baro_alt' defined but not used
/root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:389: warning: 'angle_boost' defined but not used
/root/apm/ardupilot-mega/ArduCopter/GCS_Mavlink.pde:1727: warning: 'void gcs_send_text_fmt(const prog_char_t*, ...)' defined but not used
/root/apm/ardupilot-mega/ArduCopter/test.pde:13: warning: 'int8_t test_adc(uint8_t, const Menu::arg*)' declared 'static' but never defined /root/apm/ardupilot-mega/ArduCopter/test.pde:13: warning: 'int8_t test_adc(uint8_t, const Menu::arg*)' declared 'static' but never defined
/root/apm/ardupilot-mega/ArduCopter/test.pde:26: warning: 'int8_t test_baro(uint8_t, const Menu::arg*)' declared 'static' but never defined /root/apm/ardupilot-mega/ArduCopter/test.pde:26: warning: 'int8_t test_baro(uint8_t, const Menu::arg*)' declared 'static' but never defined
%% libraries/APM_BMP085/APM_BMP085.o %% libraries/APM_BMP085/APM_BMP085.o

View File

@ -10,6 +10,7 @@
00000001 b land_complete 00000001 b land_complete
00000001 b throttle_mode 00000001 b throttle_mode
00000001 b command_may_ID 00000001 b command_may_ID
00000001 b mavlink_active
00000001 b wp_verify_byte 00000001 b wp_verify_byte
00000001 d altitude_sensor 00000001 d altitude_sensor
00000001 b command_must_ID 00000001 b command_must_ID
@ -47,8 +48,10 @@
00000002 b loiter_sum 00000002 b loiter_sum
00000002 b event_delay 00000002 b event_delay
00000002 b event_value 00000002 b event_value
00000002 b CH7_wp_index
00000002 b event_repeat 00000002 b event_repeat
00000002 b loiter_total 00000002 b loiter_total
00000002 b manual_boost
00000002 b nav_throttle 00000002 b nav_throttle
00000002 b x_rate_error 00000002 b x_rate_error
00000002 b y_rate_error 00000002 b y_rate_error
@ -86,6 +89,7 @@
00000003 r setup_sonar(unsigned char, Menu::arg const*)::__c 00000003 r setup_sonar(unsigned char, Menu::arg const*)::__c
00000003 r print_enabled(unsigned char)::__c 00000003 r print_enabled(unsigned char)::__c
00000003 r setup_compass(unsigned char, Menu::arg const*)::__c 00000003 r setup_compass(unsigned char, Menu::arg const*)::__c
00000003 V RC_Channel::RC_Channel(unsigned int, prog_char_t const*)::__c
00000004 d cos_roll_x 00000004 d cos_roll_x
00000004 b land_start 00000004 b land_start
00000004 b long_error 00000004 b long_error
@ -124,6 +128,7 @@
00000004 b fiftyhz_loopTimer 00000004 b fiftyhz_loopTimer
00000004 b old_target_bearing 00000004 b old_target_bearing
00000004 b throttle_integrator 00000004 b throttle_integrator
00000004 b heli_throttle_scaler
00000004 r __menu_name__log_menu 00000004 r __menu_name__log_menu
00000004 b command_yaw_start_time 00000004 b command_yaw_start_time
00000004 b initial_simple_bearing 00000004 b initial_simple_bearing
@ -284,6 +289,8 @@
0000000a V Parameters::Parameters()::__c 0000000a V Parameters::Parameters()::__c
0000000a V Parameters::Parameters()::__c 0000000a V Parameters::Parameters()::__c
0000000a V Parameters::Parameters()::__c 0000000a V Parameters::Parameters()::__c
0000000a V Parameters::Parameters()::__c
0000000a V Parameters::Parameters()::__c
0000000a T setup 0000000a T setup
0000000b r test_relay(unsigned char, Menu::arg const*)::__c 0000000b r test_relay(unsigned char, Menu::arg const*)::__c
0000000b r report_batt_monitor()::__c 0000000b r report_batt_monitor()::__c
@ -416,7 +423,6 @@
00000014 r test_tri(unsigned char, Menu::arg const*)::__c 00000014 r test_tri(unsigned char, Menu::arg const*)::__c
00000015 r setup_heli(unsigned char, Menu::arg const*)::__c 00000015 r setup_heli(unsigned char, Menu::arg const*)::__c
00000015 r init_ardupilot()::__c 00000015 r init_ardupilot()::__c
00000015 r Log_Read_Motors()::__c
00000015 r print_hit_enter()::__c 00000015 r print_hit_enter()::__c
00000015 r GCS_MAVLINK::handleMessage(__mavlink_message*)::__c 00000015 r GCS_MAVLINK::handleMessage(__mavlink_message*)::__c
00000016 T piezo_beep() 00000016 T piezo_beep()
@ -427,8 +433,8 @@
00000018 r __menu_name__main_menu 00000018 r __menu_name__main_menu
00000018 W AP_VarT<int>::serialize(void*, unsigned int) const 00000018 W AP_VarT<int>::serialize(void*, unsigned int) const
00000019 r setup_gyro(unsigned char, Menu::arg const*)::__c 00000019 r setup_gyro(unsigned char, Menu::arg const*)::__c
00000019 r Log_Read_Motors()::__c
0000001a r print_log_menu()::__c 0000001a r print_log_menu()::__c
0000001a r Log_Read_Nav_Tuning()::__c
0000001b r setup_heli(unsigned char, Menu::arg const*)::__c 0000001b r setup_heli(unsigned char, Menu::arg const*)::__c
0000001b r report_heli()::__c 0000001b r report_heli()::__c
0000001c W AP_VarS<Matrix3<float> >::unserialize(void*, unsigned int) 0000001c W AP_VarS<Matrix3<float> >::unserialize(void*, unsigned int)
@ -437,6 +443,7 @@
0000001c W AP_VarS<Matrix3<float> >::serialize(void*, unsigned int) const 0000001c W AP_VarS<Matrix3<float> >::serialize(void*, unsigned int) const
0000001c W AP_VarS<Vector3<float> >::serialize(void*, unsigned int) const 0000001c W AP_VarS<Vector3<float> >::serialize(void*, unsigned int) const
0000001d r Log_Read_Attitude()::__c 0000001d r Log_Read_Attitude()::__c
0000001d r Log_Read_Performance()::__c
0000001e r report_heli()::__c 0000001e r report_heli()::__c
0000001e r Log_Read_Optflow()::__c 0000001e r Log_Read_Optflow()::__c
00000020 t gcs_send_message(ap_message) 00000020 t gcs_send_message(ap_message)
@ -446,10 +453,8 @@
00000021 r print_log_menu()::__c 00000021 r print_log_menu()::__c
00000021 r report_compass()::__c 00000021 r report_compass()::__c
00000021 r Log_Read_Current()::__c 00000021 r Log_Read_Current()::__c
00000021 r Log_Read_Performance()::__c
00000022 t clear_leds() 00000022 t clear_leds()
00000022 t print_blanks(int) 00000022 t print_blanks(int)
00000022 t reset_hold_I()
00000022 W AP_Float16::~AP_Float16() 00000022 W AP_Float16::~AP_Float16()
00000022 W AP_VarS<Matrix3<float> >::~AP_VarS() 00000022 W AP_VarS<Matrix3<float> >::~AP_VarS()
00000022 W AP_VarS<Vector3<float> >::~AP_VarS() 00000022 W AP_VarS<Vector3<float> >::~AP_VarS()
@ -459,13 +464,13 @@
00000023 r setup_heli(unsigned char, Menu::arg const*)::__c 00000023 r setup_heli(unsigned char, Menu::arg const*)::__c
00000023 r setup_mode(unsigned char, Menu::arg const*)::__c 00000023 r setup_mode(unsigned char, Menu::arg const*)::__c
00000023 r print_gyro_offsets()::__c 00000023 r print_gyro_offsets()::__c
00000024 t reset_hold_I()
00000024 r setup_heli(unsigned char, Menu::arg const*)::__c 00000024 r setup_heli(unsigned char, Menu::arg const*)::__c
00000024 r init_ardupilot()::__c 00000024 r init_ardupilot()::__c
00000024 r print_accel_offsets()::__c 00000024 r print_accel_offsets()::__c
00000026 t print_done() 00000026 t print_done()
00000026 t print_hit_enter() 00000026 t print_hit_enter()
00000026 t Log_Read_Startup() 00000026 t Log_Read_Startup()
00000026 r Log_Read_Control_Tuning()::__c
00000028 t test_battery(unsigned char, Menu::arg const*) 00000028 t test_battery(unsigned char, Menu::arg const*)
00000028 t main_menu_help(unsigned char, Menu::arg const*) 00000028 t main_menu_help(unsigned char, Menu::arg const*)
00000028 t help_log(unsigned char, Menu::arg const*) 00000028 t help_log(unsigned char, Menu::arg const*)
@ -476,14 +481,16 @@
00000029 r setup_mode(unsigned char, Menu::arg const*)::__c 00000029 r setup_mode(unsigned char, Menu::arg const*)::__c
00000029 r test_gps(unsigned char, Menu::arg const*)::__c 00000029 r test_gps(unsigned char, Menu::arg const*)::__c
0000002a t setup_declination(unsigned char, Menu::arg const*) 0000002a t setup_declination(unsigned char, Menu::arg const*)
0000002a t _mav_put_int8_t_array
0000002b r planner_mode(unsigned char, Menu::arg const*)::__c 0000002b r planner_mode(unsigned char, Menu::arg const*)::__c
0000002e t setup_motors(unsigned char, Menu::arg const*) 0000002e t setup_motors(unsigned char, Menu::arg const*)
0000002e t print_divider() 0000002e t print_divider()
0000002e t gcs_send_text_P(gcs_severity, prog_char_t const*) 0000002e t gcs_send_text_P(gcs_severity, prog_char_t const*)
0000002e t gcs_data_stream_send(unsigned int, unsigned int) 0000002e t gcs_data_stream_send(unsigned int, unsigned int)
0000002e W AP_Var_group::AP_Var_group(unsigned int, prog_char_t const*, unsigned char) 0000002e W AP_Var_group::AP_Var_group(unsigned int, prog_char_t const*, unsigned char)
0000002e r init_ardupilot()::__c
0000002e r Log_Read_Nav_Tuning()::__c
0000002f r test_radio(unsigned char, Menu::arg const*)::__c 0000002f r test_radio(unsigned char, Menu::arg const*)::__c
0000002f r init_ardupilot()::__c
00000030 t planner_mode(unsigned char, Menu::arg const*) 00000030 t planner_mode(unsigned char, Menu::arg const*)
00000030 t send_heartbeat(mavlink_channel_t) 00000030 t send_heartbeat(mavlink_channel_t)
00000030 B imu 00000030 B imu
@ -496,19 +503,17 @@
00000034 t _MAV_RETURN_float 00000034 t _MAV_RETURN_float
00000034 t heli_get_servo(int) 00000034 t heli_get_servo(int)
00000034 W AP_Float16::serialize(void*, unsigned int) const 00000034 W AP_Float16::serialize(void*, unsigned int) const
00000034 t _mav_put_int8_t_array
00000034 t mavlink_msg_statustext_send 00000034 t mavlink_msg_statustext_send
00000035 r test_radio_pwm(unsigned char, Menu::arg const*)::__c 00000035 r test_radio_pwm(unsigned char, Menu::arg const*)::__c
00000036 t report_radio() 00000036 t report_radio()
00000036 r Log_Read_Control_Tuning()::__c
00000037 r print_wp(Location*, unsigned char)::__c 00000037 r print_wp(Location*, unsigned char)::__c
00000038 t init_throttle_cruise()
00000038 t send_current_waypoint(mavlink_channel_t) 00000038 t send_current_waypoint(mavlink_channel_t)
00000038 r setup_radio(unsigned char, Menu::arg const*)::__c 00000038 r setup_radio(unsigned char, Menu::arg const*)::__c
00000038 r setup_factory(unsigned char, Menu::arg const*)::__c 00000038 r setup_factory(unsigned char, Menu::arg const*)::__c
0000003a t report_gps() 0000003a t report_gps()
0000003a t report_imu() 0000003a t report_imu()
0000003a B g_gps_driver 0000003a B g_gps_driver
0000003c W RC_Channel::~RC_Channel()
0000003e T GCS_MAVLINK::send_text(gcs_severity, prog_char_t const*) 0000003e T GCS_MAVLINK::send_text(gcs_severity, prog_char_t const*)
0000003e W AP_VarT<signed char>::AP_VarT(signed char, unsigned int, prog_char_t const*, unsigned char) 0000003e W AP_VarT<signed char>::AP_VarT(signed char, unsigned int, prog_char_t const*, unsigned char)
00000040 W AP_Float16::unserialize(void*, unsigned int) 00000040 W AP_Float16::unserialize(void*, unsigned int)
@ -517,6 +522,7 @@
00000042 t report_sonar() 00000042 t report_sonar()
00000042 r setup_heli(unsigned char, Menu::arg const*)::__c 00000042 r setup_heli(unsigned char, Menu::arg const*)::__c
00000044 W AP_VarT<int>::AP_VarT(int, unsigned int, prog_char_t const*, unsigned char) 00000044 W AP_VarT<int>::AP_VarT(int, unsigned int, prog_char_t const*, unsigned char)
00000046 W RC_Channel::~RC_Channel()
00000048 t change_command(unsigned char) 00000048 t change_command(unsigned char)
00000048 t update_motor_leds() 00000048 t update_motor_leds()
00000049 r setup_flightmodes(unsigned char, Menu::arg const*)::__c 00000049 r setup_flightmodes(unsigned char, Menu::arg const*)::__c
@ -549,9 +555,9 @@
00000064 t mavlink_msg_param_value_send 00000064 t mavlink_msg_param_value_send
00000068 t zero_eeprom() 00000068 t zero_eeprom()
00000068 t find_last_log_page(int) 00000068 t find_last_log_page(int)
00000068 W GCS_MAVLINK::~GCS_MAVLINK()
0000006a T mavlink_send_text(mavlink_channel_t, gcs_severity, char const*) 0000006a T mavlink_send_text(mavlink_channel_t, gcs_severity, char const*)
0000006a t read_num_from_serial() 0000006a t read_num_from_serial()
0000006a W GCS_MAVLINK::~GCS_MAVLINK()
0000006c t setup_sonar(unsigned char, Menu::arg const*) 0000006c t setup_sonar(unsigned char, Menu::arg const*)
00000074 t output_motors_armed() 00000074 t output_motors_armed()
00000078 t setup_batt_monitor(unsigned char, Menu::arg const*) 00000078 t setup_batt_monitor(unsigned char, Menu::arg const*)
@ -572,11 +578,11 @@
00000090 t report_tuning() 00000090 t report_tuning()
00000092 t test_tuning(unsigned char, Menu::arg const*) 00000092 t test_tuning(unsigned char, Menu::arg const*)
00000092 T GCS_MAVLINK::queued_param_send() 00000092 T GCS_MAVLINK::queued_param_send()
00000094 t init_throttle_cruise()
00000096 t print_wp(Location*, unsigned char) 00000096 t print_wp(Location*, unsigned char)
00000098 B gcs0
00000098 B gcs3
0000009a t planner_gcs(unsigned char, Menu::arg const*) 0000009a t planner_gcs(unsigned char, Menu::arg const*)
0000009a t Log_Read_Motors()
0000009b B gcs0
0000009b B gcs3
0000009e t setup_mode(unsigned char, Menu::arg const*) 0000009e t setup_mode(unsigned char, Menu::arg const*)
0000009e t Log_Read_Mode() 0000009e t Log_Read_Mode()
0000009e t Log_Write_Cmd(unsigned char, Location*) 0000009e t Log_Write_Cmd(unsigned char, Location*)
@ -585,12 +591,13 @@
000000a4 T __vector_55 000000a4 T __vector_55
000000a6 t send_servo_out(mavlink_channel_t) 000000a6 t send_servo_out(mavlink_channel_t)
000000a8 t test_sonar(unsigned char, Menu::arg const*) 000000a8 t test_sonar(unsigned char, Menu::arg const*)
000000aa t Log_Read_Nav_Tuning()
000000ab B compass 000000ab B compass
000000ae t Log_Read_Motors()
000000b0 t test_relay(unsigned char, Menu::arg const*) 000000b0 t test_relay(unsigned char, Menu::arg const*)
000000b2 t erase_logs(unsigned char, Menu::arg const*) 000000b2 t erase_logs(unsigned char, Menu::arg const*)
000000b4 t read_radio() 000000b4 t read_radio()
000000b6 t get_log_boundaries(unsigned char, int&, int&) 000000b6 t get_log_boundaries(unsigned char, int&, int&)
000000b6 t Log_Read_Performance()
000000be t update_events() 000000be t update_events()
000000c2 t test_eedump(unsigned char, Menu::arg const*) 000000c2 t test_eedump(unsigned char, Menu::arg const*)
000000c2 t setup_compass(unsigned char, Menu::arg const*) 000000c2 t setup_compass(unsigned char, Menu::arg const*)
@ -599,7 +606,6 @@
000000c4 t get_distance(Location*, Location*) 000000c4 t get_distance(Location*, Location*)
000000c4 r setup_esc(unsigned char, Menu::arg const*)::__c 000000c4 r setup_esc(unsigned char, Menu::arg const*)::__c
000000c6 t send_radio_in(mavlink_channel_t) 000000c6 t send_radio_in(mavlink_channel_t)
000000c6 t Log_Read_Performance()
000000c6 t test_tri(unsigned char, Menu::arg const*) 000000c6 t test_tri(unsigned char, Menu::arg const*)
000000d0 t get_bearing(Location*, Location*) 000000d0 t get_bearing(Location*, Location*)
000000d0 t print_switch(unsigned char, unsigned char, bool) 000000d0 t print_switch(unsigned char, unsigned char, bool)
@ -607,29 +613,31 @@
000000d4 t get_stabilize_pitch(long) 000000d4 t get_stabilize_pitch(long)
000000d4 t Log_Read(int, int) 000000d4 t Log_Read(int, int)
000000d8 t test_radio(unsigned char, Menu::arg const*) 000000d8 t test_radio(unsigned char, Menu::arg const*)
000000de t Log_Read_Nav_Tuning()
000000e0 r test_menu_commands 000000e0 r test_menu_commands
000000e4 t test_radio_pwm(unsigned char, Menu::arg const*) 000000e4 t test_radio_pwm(unsigned char, Menu::arg const*)
000000e4 t Log_Read_Optflow() 000000e4 t Log_Read_Optflow()
000000e4 W APM_PI::APM_PI(unsigned int, prog_char_t const*, float const&, float const&, int const&) 000000e4 W APM_PI::APM_PI(unsigned int, prog_char_t const*, float const&, float const&, int const&)
000000e8 t Log_Read_Current() 000000e8 t Log_Read_Current()
000000ea t Log_Read_Control_Tuning()
000000ee t report_batt_monitor() 000000ee t report_batt_monitor()
000000f6 t Log_Read_Cmd() 000000f6 t Log_Read_Cmd()
000000f8 t heli_get_angle_boost(int)
000000fa t calc_loiter_pitch_roll()
00000100 r setup_menu_commands 00000100 r setup_menu_commands
00000102 t Log_Read_Control_Tuning()
00000108 t setup_gyro(unsigned char, Menu::arg const*) 00000108 t setup_gyro(unsigned char, Menu::arg const*)
0000010a t mavlink_delay(unsigned long) 0000010a t mavlink_delay(unsigned long)
0000010a t test_gps(unsigned char, Menu::arg const*) 0000010a t test_gps(unsigned char, Menu::arg const*)
0000010c t test_current(unsigned char, Menu::arg const*) 0000010c t test_current(unsigned char, Menu::arg const*)
0000010e W RC_Channel::RC_Channel(unsigned int, prog_char_t const*) 00000110 T GCS_MAVLINK::GCS_MAVLINK(unsigned int)
00000110 T GCS_MAVLINK::GCS_MAVLINK(unsigned int)
00000112 t set_next_WP(Location*) 00000112 t set_next_WP(Location*)
00000112 t send_extended_status1(mavlink_channel_t, unsigned int) 00000112 t send_extended_status1(mavlink_channel_t, unsigned int)
00000112 T GCS_MAVLINK::GCS_MAVLINK(unsigned int)
00000112 T GCS_MAVLINK::GCS_MAVLINK(unsigned int)
00000118 t set_command_with_index(Location, int) 00000118 t set_command_with_index(Location, int)
0000011c t get_command_with_index(int) 0000011c t get_command_with_index(int)
0000012c t calc_loiter_pitch_roll()
0000012e t arm_motors() 0000012e t arm_motors()
00000130 t report_compass() 00000130 t report_compass()
00000136 W RC_Channel::RC_Channel(unsigned int, prog_char_t const*)
00000148 t Log_Read_GPS() 00000148 t Log_Read_GPS()
00000156 t update_commands() 00000156 t update_commands()
0000015c t update_trig() 0000015c t update_trig()
@ -637,38 +645,38 @@
00000160 t send_nav_controller_output(mavlink_channel_t) 00000160 t send_nav_controller_output(mavlink_channel_t)
00000166 t select_logs(unsigned char, Menu::arg const*) 00000166 t select_logs(unsigned char, Menu::arg const*)
00000166 t send_vfr_hud(mavlink_channel_t) 00000166 t send_vfr_hud(mavlink_channel_t)
00000168 T GCS_MAVLINK::update()
0000016e t send_attitude(mavlink_channel_t) 0000016e t send_attitude(mavlink_channel_t)
00000174 t mavlink_send_message(mavlink_channel_t, ap_message, unsigned int) 00000174 t mavlink_send_message(mavlink_channel_t, ap_message, unsigned int)
00000178 t mavlink_try_send_message(mavlink_channel_t, ap_message, unsigned int) 00000178 t mavlink_try_send_message(mavlink_channel_t, ap_message, unsigned int)
00000184 t test_imu(unsigned char, Menu::arg const*) 00000184 t test_imu(unsigned char, Menu::arg const*)
00000188 T GCS_MAVLINK::data_stream_send(unsigned int, unsigned int) 00000188 T GCS_MAVLINK::data_stream_send(unsigned int, unsigned int)
000001a0 T GCS_MAVLINK::update()
000001a8 t print_radio_values() 000001a8 t print_radio_values()
000001cc t start_new_log() 000001cc t start_new_log()
000001e4 t verify_nav_wp() 000001e4 t verify_nav_wp()
000001e4 t setup_flightmodes(unsigned char, Menu::arg const*) 000001e4 t setup_flightmodes(unsigned char, Menu::arg const*)
000001ea t init_home() 000001ea t init_home()
00000216 t set_mode(unsigned char)
0000021c t test_wp(unsigned char, Menu::arg const*) 0000021c t test_wp(unsigned char, Menu::arg const*)
00000226 t set_mode(unsigned char)
00000228 t setup_radio(unsigned char, Menu::arg const*) 00000228 t setup_radio(unsigned char, Menu::arg const*)
0000022a t send_gps_raw(mavlink_channel_t) 0000022a t send_gps_raw(mavlink_channel_t)
00000242 t calc_loiter(int, int) 00000242 t calc_loiter(int, int)
0000030c t heli_init_swash() 00000298 T update_throttle_mode()
00000312 W Parameters::~Parameters() 00000326 W Parameters::~Parameters()
00000328 t report_heli() 00000328 t report_heli()
00000330 t tuning() 0000033a t heli_init_swash()
0000036a t tuning()
00000382 t print_log_menu() 00000382 t print_log_menu()
0000039a T update_throttle_mode()
0000039c t __static_initialization_and_destruction_0(int, int) 0000039c t __static_initialization_and_destruction_0(int, int)
0000039e T update_roll_pitch_mode()
000003a0 t read_battery() 000003a0 t read_battery()
0000045c T update_yaw_mode() 0000045c T update_yaw_mode()
0000046e T update_roll_pitch_mode()
0000052e t heli_move_swash(int, int, int, int) 0000052e t heli_move_swash(int, int, int, int)
00000620 t init_ardupilot() 000005fe t init_ardupilot()
0000071a t update_nav_wp() 0000071a t update_nav_wp()
000007e8 t setup_heli(unsigned char, Menu::arg const*) 000007e8 t setup_heli(unsigned char, Menu::arg const*)
00000870 t process_next_command() 00000870 t process_next_command()
000009b8 W Parameters::Parameters() 00000a64 W Parameters::Parameters()
00000a1f b g 00000b2d b g
0000100a T loop 000010b6 T loop
00001604 T GCS_MAVLINK::handleMessage(__mavlink_message*) 00001604 T GCS_MAVLINK::handleMessage(__mavlink_message*)

View File

@ -5,17 +5,21 @@ In file included from /root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:55:
/usr/local/share/arduino/libraries/SPI/SPI.h:20:1: warning: this is the location of the previous definition /usr/local/share/arduino/libraries/SPI/SPI.h:20:1: warning: this is the location of the previous definition
In file included from /root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:77: In file included from /root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:77:
/root/apm/ardupilot-mega/ArduCopter/Parameters.h: In constructor 'Parameters::Parameters()': /root/apm/ardupilot-mega/ArduCopter/Parameters.h: In constructor 'Parameters::Parameters()':
/root/apm/ardupilot-mega/ArduCopter/Parameters.h:399: warning: overflow in implicit constant conversion /root/apm/ardupilot-mega/ArduCopter/Parameters.h:407: warning: overflow in implicit constant conversion
/root/apm/ardupilot-mega/ArduCopter/heli.pde: In function 'void heli_init_swash()': /root/apm/ardupilot-mega/ArduCopter/heli.pde: In function 'void heli_init_swash()':
/root/apm/ardupilot-mega/ArduCopter/heli.pde:60: warning: comparisons like X<=Y<=Z do not have their mathematical meaning /root/apm/ardupilot-mega/ArduCopter/heli.pde:64: warning: comparisons like X<=Y<=Z do not have their mathematical meaning
/root/apm/ardupilot-mega/ArduCopter/heli.pde: In function 'int heli_get_scaled_throttle(int)':
/root/apm/ardupilot-mega/ArduCopter/heli.pde:205: warning: unused variable 'scaled_throttle'
/root/apm/ardupilot-mega/ArduCopter/setup.pde: In function 'int8_t setup_heli(uint8_t, const Menu::arg*)': /root/apm/ardupilot-mega/ArduCopter/setup.pde: In function 'int8_t setup_heli(uint8_t, const Menu::arg*)':
/root/apm/ardupilot-mega/ArduCopter/setup.pde:467: warning: 'min_tail' may be used uninitialized in this function
/root/apm/ardupilot-mega/ArduCopter/setup.pde:467: warning: 'max_tail' may be used uninitialized in this function /root/apm/ardupilot-mega/ArduCopter/setup.pde:467: warning: 'max_tail' may be used uninitialized in this function
/root/apm/ardupilot-mega/ArduCopter/setup.pde:467: warning: 'min_tail' may be used uninitialized in this function
/root/apm/ardupilot-mega/ArduCopter/setup.pde:467: warning: 'max_coll' may be used uninitialized in this function /root/apm/ardupilot-mega/ArduCopter/setup.pde:467: warning: 'max_coll' may be used uninitialized in this function
/root/apm/ardupilot-mega/ArduCopter/setup.pde:467: warning: 'min_coll' may be used uninitialized in this function /root/apm/ardupilot-mega/ArduCopter/setup.pde:467: warning: 'min_coll' may be used uninitialized in this function
/root/apm/ardupilot-mega/ArduCopter/setup.pde:467: warning: 'max_pitch' may be used uninitialized in this function /root/apm/ardupilot-mega/ArduCopter/setup.pde:467: warning: 'max_pitch' may be used uninitialized in this function
/root/apm/ardupilot-mega/ArduCopter/setup.pde:467: warning: 'max_roll' may be used uninitialized in this function /root/apm/ardupilot-mega/ArduCopter/setup.pde:467: warning: 'max_roll' may be used uninitialized in this function
autogenerated: At global scope: /root/apm/ardupilot-mega/ArduCopter/Attitude.pde: At global scope:
/root/apm/ardupilot-mega/ArduCopter/Attitude.pde:179: warning: 'int alt_hold_velocity()' defined but not used
/root/apm/ardupilot-mega/ArduCopter/Attitude.pde:209: warning: 'int get_angle_boost(int)' defined but not used
autogenerated:109: warning: 'void Log_Write_Optflow()' declared 'static' but never defined autogenerated:109: warning: 'void Log_Write_Optflow()' declared 'static' but never defined
autogenerated:90: warning: 'void Log_Write_Attitude2()' declared 'static' but never defined autogenerated:90: warning: 'void Log_Write_Attitude2()' declared 'static' but never defined
autogenerated:91: warning: 'void Log_Read_Attitude2()' declared 'static' but never defined autogenerated:91: warning: 'void Log_Read_Attitude2()' declared 'static' but never defined
@ -23,24 +27,25 @@ autogenerated:121: warning: 'void decrement_WP_index()' declared 'static' but ne
/root/apm/ardupilot-mega/ArduCopter/commands.pde:132: warning: 'Location get_LOITER_home_wp()' defined but not used /root/apm/ardupilot-mega/ArduCopter/commands.pde:132: warning: 'Location get_LOITER_home_wp()' defined but not used
/root/apm/ardupilot-mega/ArduCopter/commands_logic.pde:432: warning: 'bool verify_loiter_unlim()' defined but not used /root/apm/ardupilot-mega/ArduCopter/commands_logic.pde:432: warning: 'bool verify_loiter_unlim()' defined but not used
/root/apm/ardupilot-mega/ArduCopter/events.pde:46: warning: 'void low_battery_event()' defined but not used /root/apm/ardupilot-mega/ArduCopter/events.pde:46: warning: 'void low_battery_event()' defined but not used
autogenerated:213: warning: 'void debug_motors()' declared 'static' but never defined autogenerated:215: warning: 'void debug_motors()' declared 'static' but never defined
/root/apm/ardupilot-mega/ArduCopter/navigation.pde:183: warning: 'int get_loiter_angle()' defined but not used /root/apm/ardupilot-mega/ArduCopter/navigation.pde:95: warning: 'void calc_loiter2(int, int)' defined but not used
autogenerated:234: warning: 'long int get_crosstrack_correction()' declared 'static' but never defined /root/apm/ardupilot-mega/ArduCopter/navigation.pde:213: warning: 'int get_loiter_angle()' defined but not used
autogenerated:235: warning: 'long int cross_track_test()' declared 'static' but never defined autogenerated:237: warning: 'long int get_crosstrack_correction()' declared 'static' but never defined
autogenerated:236: warning: 'void reset_crosstrack()' declared 'static' but never defined autogenerated:238: warning: 'long int cross_track_test()' declared 'static' but never defined
autogenerated:238: warning: 'long int get_alt_distance(Location*, Location*)' declared 'static' but never defined autogenerated:239: warning: 'void reset_crosstrack()' declared 'static' but never defined
/root/apm/ardupilot-mega/ArduCopter/radio.pde:130: warning: 'void throttle_failsafe(uint16_t)' defined but not used autogenerated:241: warning: 'long int get_alt_distance(Location*, Location*)' declared 'static' but never defined
/root/apm/ardupilot-mega/ArduCopter/radio.pde:134: warning: 'void throttle_failsafe(uint16_t)' defined but not used
/root/apm/ardupilot-mega/ArduCopter/sensors.pde:6: warning: 'void ReadSCP1000()' defined but not used /root/apm/ardupilot-mega/ArduCopter/sensors.pde:6: warning: 'void ReadSCP1000()' defined but not used
autogenerated:248: warning: 'long int read_baro_filtered()' declared 'static' but never defined autogenerated:252: warning: 'long int read_baro_filtered()' declared 'static' but never defined
/root/apm/ardupilot-mega/ArduCopter/sensors.pde:95: warning: 'void read_airspeed()' defined but not used /root/apm/ardupilot-mega/ArduCopter/sensors.pde:95: warning: 'void read_airspeed()' defined but not used
/root/apm/ardupilot-mega/ArduCopter/sensors.pde:100: warning: 'void zero_airspeed()' defined but not used /root/apm/ardupilot-mega/ArduCopter/sensors.pde:100: warning: 'void zero_airspeed()' defined but not used
/root/apm/ardupilot-mega/ArduCopter/system.pde:438: warning: 'void set_failsafe(boolean)' defined but not used /root/apm/ardupilot-mega/ArduCopter/system.pde:456: warning: 'void set_failsafe(boolean)' defined but not used
autogenerated:285: warning: 'void init_optflow()' declared 'static' but never defined autogenerated:290: warning: 'void init_optflow()' declared 'static' but never defined
autogenerated:292: warning: 'void fake_out_gps()' declared 'static' but never defined autogenerated:297: warning: 'void fake_out_gps()' declared 'static' but never defined
/root/apm/ardupilot-mega/ArduCopter/test.pde:1028: warning: 'void print_motor_out()' defined but not used /root/apm/ardupilot-mega/ArduCopter/test.pde:1028: warning: 'void print_motor_out()' defined but not used
/root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:277: warning: 'heli_servo_min' defined but not used /root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:277: warning: 'heli_servo_min' defined but not used
/root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:277: warning: 'heli_servo_max' defined but not used /root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:277: warning: 'heli_servo_max' defined but not used
/root/apm/ardupilot-mega/ArduCopter/GCS_Mavlink.pde:1706: warning: 'void gcs_send_text_fmt(const prog_char_t*, ...)' defined but not used /root/apm/ardupilot-mega/ArduCopter/GCS_Mavlink.pde:1727: warning: 'void gcs_send_text_fmt(const prog_char_t*, ...)' defined but not used
%% libraries/APM_BMP085/APM_BMP085.o %% libraries/APM_BMP085/APM_BMP085.o
%% libraries/APM_BMP085/APM_BMP085_hil.o %% libraries/APM_BMP085/APM_BMP085_hil.o
%% libraries/APM_PI/APM_PI.o %% libraries/APM_PI/APM_PI.o

View File

@ -10,6 +10,7 @@
00000001 b land_complete 00000001 b land_complete
00000001 b throttle_mode 00000001 b throttle_mode
00000001 b command_may_ID 00000001 b command_may_ID
00000001 b mavlink_active
00000001 b wp_verify_byte 00000001 b wp_verify_byte
00000001 d altitude_sensor 00000001 d altitude_sensor
00000001 b command_must_ID 00000001 b command_must_ID
@ -45,10 +46,13 @@
00000002 T userhook_init() 00000002 T userhook_init()
00000002 b climb_rate 00000002 b climb_rate
00000002 b loiter_sum 00000002 b loiter_sum
00000002 b angle_boost
00000002 b event_delay 00000002 b event_delay
00000002 b event_value 00000002 b event_value
00000002 b CH7_wp_index
00000002 b event_repeat 00000002 b event_repeat
00000002 b loiter_total 00000002 b loiter_total
00000002 b manual_boost
00000002 b nav_throttle 00000002 b nav_throttle
00000002 b x_rate_error 00000002 b x_rate_error
00000002 b y_rate_error 00000002 b y_rate_error
@ -71,6 +75,7 @@
00000002 b g_gps 00000002 b g_gps
00000002 b airspeed 00000002 b airspeed
00000002 b baro_alt 00000002 b baro_alt
00000002 b old_rate
00000002 b sonar_alt 00000002 b sonar_alt
00000002 b arm_motors()::arming_counter 00000002 b arm_motors()::arming_counter
00000002 r setup_frame(unsigned char, Menu::arg const*)::__c 00000002 r setup_frame(unsigned char, Menu::arg const*)::__c
@ -85,6 +90,7 @@
00000003 r setup_sonar(unsigned char, Menu::arg const*)::__c 00000003 r setup_sonar(unsigned char, Menu::arg const*)::__c
00000003 r print_enabled(unsigned char)::__c 00000003 r print_enabled(unsigned char)::__c
00000003 r setup_compass(unsigned char, Menu::arg const*)::__c 00000003 r setup_compass(unsigned char, Menu::arg const*)::__c
00000003 V RC_Channel::RC_Channel(unsigned int, prog_char_t const*)::__c
00000004 d cos_roll_x 00000004 d cos_roll_x
00000004 b land_start 00000004 b land_start
00000004 b long_error 00000004 b long_error
@ -125,6 +131,7 @@
00000004 b fiftyhz_loopTimer 00000004 b fiftyhz_loopTimer
00000004 b old_target_bearing 00000004 b old_target_bearing
00000004 b throttle_integrator 00000004 b throttle_integrator
00000004 b heli_throttle_scaler
00000004 r __menu_name__log_menu 00000004 r __menu_name__log_menu
00000004 b command_yaw_start_time 00000004 b command_yaw_start_time
00000004 b initial_simple_bearing 00000004 b initial_simple_bearing
@ -287,6 +294,8 @@
0000000a V Parameters::Parameters()::__c 0000000a V Parameters::Parameters()::__c
0000000a V Parameters::Parameters()::__c 0000000a V Parameters::Parameters()::__c
0000000a V Parameters::Parameters()::__c 0000000a V Parameters::Parameters()::__c
0000000a V Parameters::Parameters()::__c
0000000a V Parameters::Parameters()::__c
0000000a T setup 0000000a T setup
0000000b r test_relay(unsigned char, Menu::arg const*)::__c 0000000b r test_relay(unsigned char, Menu::arg const*)::__c
0000000b r report_batt_monitor()::__c 0000000b r report_batt_monitor()::__c
@ -418,7 +427,6 @@
00000014 r test_tri(unsigned char, Menu::arg const*)::__c 00000014 r test_tri(unsigned char, Menu::arg const*)::__c
00000015 r setup_heli(unsigned char, Menu::arg const*)::__c 00000015 r setup_heli(unsigned char, Menu::arg const*)::__c
00000015 r init_ardupilot()::__c 00000015 r init_ardupilot()::__c
00000015 r Log_Read_Motors()::__c
00000015 r print_hit_enter()::__c 00000015 r print_hit_enter()::__c
00000015 r GCS_MAVLINK::handleMessage(__mavlink_message*)::__c 00000015 r GCS_MAVLINK::handleMessage(__mavlink_message*)::__c
00000016 T piezo_beep() 00000016 T piezo_beep()
@ -429,8 +437,8 @@
00000018 r __menu_name__main_menu 00000018 r __menu_name__main_menu
00000018 W AP_VarT<int>::serialize(void*, unsigned int) const 00000018 W AP_VarT<int>::serialize(void*, unsigned int) const
00000019 r setup_gyro(unsigned char, Menu::arg const*)::__c 00000019 r setup_gyro(unsigned char, Menu::arg const*)::__c
00000019 r Log_Read_Motors()::__c
0000001a r print_log_menu()::__c 0000001a r print_log_menu()::__c
0000001a r Log_Read_Nav_Tuning()::__c
0000001b r setup_heli(unsigned char, Menu::arg const*)::__c 0000001b r setup_heli(unsigned char, Menu::arg const*)::__c
0000001b r report_heli()::__c 0000001b r report_heli()::__c
0000001c W AP_VarA<float, (unsigned char)6>::unserialize(void*, unsigned int) 0000001c W AP_VarA<float, (unsigned char)6>::unserialize(void*, unsigned int)
@ -441,6 +449,7 @@
0000001c W AP_VarS<Matrix3<float> >::serialize(void*, unsigned int) const 0000001c W AP_VarS<Matrix3<float> >::serialize(void*, unsigned int) const
0000001c W AP_VarS<Vector3<float> >::serialize(void*, unsigned int) const 0000001c W AP_VarS<Vector3<float> >::serialize(void*, unsigned int) const
0000001d r Log_Read_Attitude()::__c 0000001d r Log_Read_Attitude()::__c
0000001d r Log_Read_Performance()::__c
0000001e r report_heli()::__c 0000001e r report_heli()::__c
0000001e r Log_Read_Optflow()::__c 0000001e r Log_Read_Optflow()::__c
00000020 t gcs_send_message(ap_message) 00000020 t gcs_send_message(ap_message)
@ -450,10 +459,8 @@
00000021 r print_log_menu()::__c 00000021 r print_log_menu()::__c
00000021 r report_compass()::__c 00000021 r report_compass()::__c
00000021 r Log_Read_Current()::__c 00000021 r Log_Read_Current()::__c
00000021 r Log_Read_Performance()::__c
00000022 t clear_leds() 00000022 t clear_leds()
00000022 t print_blanks(int) 00000022 t print_blanks(int)
00000022 t reset_hold_I()
00000022 t startup_ground() 00000022 t startup_ground()
00000022 W AP_Float16::~AP_Float16() 00000022 W AP_Float16::~AP_Float16()
00000022 W AP_VarA<float, (unsigned char)6>::~AP_VarA() 00000022 W AP_VarA<float, (unsigned char)6>::~AP_VarA()
@ -465,13 +472,13 @@
00000023 r setup_heli(unsigned char, Menu::arg const*)::__c 00000023 r setup_heli(unsigned char, Menu::arg const*)::__c
00000023 r setup_mode(unsigned char, Menu::arg const*)::__c 00000023 r setup_mode(unsigned char, Menu::arg const*)::__c
00000023 r print_gyro_offsets()::__c 00000023 r print_gyro_offsets()::__c
00000024 t reset_hold_I()
00000024 r setup_heli(unsigned char, Menu::arg const*)::__c 00000024 r setup_heli(unsigned char, Menu::arg const*)::__c
00000024 r init_ardupilot()::__c 00000024 r init_ardupilot()::__c
00000024 r print_accel_offsets()::__c 00000024 r print_accel_offsets()::__c
00000026 t print_done() 00000026 t print_done()
00000026 t print_hit_enter() 00000026 t print_hit_enter()
00000026 t Log_Read_Startup() 00000026 t Log_Read_Startup()
00000026 r Log_Read_Control_Tuning()::__c
00000028 t test_battery(unsigned char, Menu::arg const*) 00000028 t test_battery(unsigned char, Menu::arg const*)
00000028 t main_menu_help(unsigned char, Menu::arg const*) 00000028 t main_menu_help(unsigned char, Menu::arg const*)
00000028 t help_log(unsigned char, Menu::arg const*) 00000028 t help_log(unsigned char, Menu::arg const*)
@ -482,14 +489,16 @@
00000029 r setup_mode(unsigned char, Menu::arg const*)::__c 00000029 r setup_mode(unsigned char, Menu::arg const*)::__c
00000029 r test_gps(unsigned char, Menu::arg const*)::__c 00000029 r test_gps(unsigned char, Menu::arg const*)::__c
0000002a t setup_declination(unsigned char, Menu::arg const*) 0000002a t setup_declination(unsigned char, Menu::arg const*)
0000002a t _mav_put_int8_t_array
0000002b r planner_mode(unsigned char, Menu::arg const*)::__c 0000002b r planner_mode(unsigned char, Menu::arg const*)::__c
0000002e t setup_motors(unsigned char, Menu::arg const*) 0000002e t setup_motors(unsigned char, Menu::arg const*)
0000002e t print_divider() 0000002e t print_divider()
0000002e t gcs_send_text_P(gcs_severity, prog_char_t const*) 0000002e t gcs_send_text_P(gcs_severity, prog_char_t const*)
0000002e t gcs_data_stream_send(unsigned int, unsigned int) 0000002e t gcs_data_stream_send(unsigned int, unsigned int)
0000002e W AP_Var_group::AP_Var_group(unsigned int, prog_char_t const*, unsigned char) 0000002e W AP_Var_group::AP_Var_group(unsigned int, prog_char_t const*, unsigned char)
0000002e r init_ardupilot()::__c
0000002e r Log_Read_Nav_Tuning()::__c
0000002f r test_radio(unsigned char, Menu::arg const*)::__c 0000002f r test_radio(unsigned char, Menu::arg const*)::__c
0000002f r init_ardupilot()::__c
00000030 t planner_mode(unsigned char, Menu::arg const*) 00000030 t planner_mode(unsigned char, Menu::arg const*)
00000030 t send_heartbeat(mavlink_channel_t) 00000030 t send_heartbeat(mavlink_channel_t)
00000031 r setup_heli(unsigned char, Menu::arg const*)::__c 00000031 r setup_heli(unsigned char, Menu::arg const*)::__c
@ -500,18 +509,16 @@
00000033 b pending_status 00000033 b pending_status
00000034 t heli_get_servo(int) 00000034 t heli_get_servo(int)
00000034 W AP_Float16::serialize(void*, unsigned int) const 00000034 W AP_Float16::serialize(void*, unsigned int) const
00000034 t _mav_put_int8_t_array
00000034 t mavlink_msg_statustext_send 00000034 t mavlink_msg_statustext_send
00000035 r test_radio_pwm(unsigned char, Menu::arg const*)::__c 00000035 r test_radio_pwm(unsigned char, Menu::arg const*)::__c
00000036 t report_radio() 00000036 t report_radio()
00000036 r Log_Read_Control_Tuning()::__c
00000037 r print_wp(Location*, unsigned char)::__c 00000037 r print_wp(Location*, unsigned char)::__c
00000038 t init_throttle_cruise()
00000038 t send_current_waypoint(mavlink_channel_t) 00000038 t send_current_waypoint(mavlink_channel_t)
00000038 r setup_radio(unsigned char, Menu::arg const*)::__c 00000038 r setup_radio(unsigned char, Menu::arg const*)::__c
00000038 r setup_factory(unsigned char, Menu::arg const*)::__c 00000038 r setup_factory(unsigned char, Menu::arg const*)::__c
0000003a t report_gps() 0000003a t report_gps()
0000003a t report_imu() 0000003a t report_imu()
0000003c W RC_Channel::~RC_Channel()
0000003d B g_gps_driver 0000003d B g_gps_driver
0000003e T GCS_MAVLINK::send_text(gcs_severity, prog_char_t const*) 0000003e T GCS_MAVLINK::send_text(gcs_severity, prog_char_t const*)
0000003e W AP_VarT<signed char>::AP_VarT(signed char, unsigned int, prog_char_t const*, unsigned char) 0000003e W AP_VarT<signed char>::AP_VarT(signed char, unsigned int, prog_char_t const*, unsigned char)
@ -523,6 +530,7 @@
00000042 t report_sonar() 00000042 t report_sonar()
00000042 r setup_heli(unsigned char, Menu::arg const*)::__c 00000042 r setup_heli(unsigned char, Menu::arg const*)::__c
00000044 W AP_VarT<int>::AP_VarT(int, unsigned int, prog_char_t const*, unsigned char) 00000044 W AP_VarT<int>::AP_VarT(int, unsigned int, prog_char_t const*, unsigned char)
00000046 W RC_Channel::~RC_Channel()
00000048 t change_command(unsigned char) 00000048 t change_command(unsigned char)
00000048 t update_motor_leds() 00000048 t update_motor_leds()
00000049 r setup_flightmodes(unsigned char, Menu::arg const*)::__c 00000049 r setup_flightmodes(unsigned char, Menu::arg const*)::__c
@ -553,9 +561,9 @@
00000064 t mavlink_msg_param_value_send 00000064 t mavlink_msg_param_value_send
00000068 t zero_eeprom() 00000068 t zero_eeprom()
00000068 t find_last_log_page(int) 00000068 t find_last_log_page(int)
00000068 W GCS_MAVLINK::~GCS_MAVLINK()
0000006a T mavlink_send_text(mavlink_channel_t, gcs_severity, char const*) 0000006a T mavlink_send_text(mavlink_channel_t, gcs_severity, char const*)
0000006a t read_num_from_serial() 0000006a t read_num_from_serial()
0000006a W GCS_MAVLINK::~GCS_MAVLINK()
0000006c t setup_sonar(unsigned char, Menu::arg const*) 0000006c t setup_sonar(unsigned char, Menu::arg const*)
00000074 t output_motors_armed() 00000074 t output_motors_armed()
00000078 t setup_batt_monitor(unsigned char, Menu::arg const*) 00000078 t setup_batt_monitor(unsigned char, Menu::arg const*)
@ -579,12 +587,12 @@
00000092 t test_tuning(unsigned char, Menu::arg const*) 00000092 t test_tuning(unsigned char, Menu::arg const*)
00000092 t report_tuning() 00000092 t report_tuning()
00000092 T GCS_MAVLINK::queued_param_send() 00000092 T GCS_MAVLINK::queued_param_send()
00000094 t init_throttle_cruise()
00000096 t print_wp(Location*, unsigned char) 00000096 t print_wp(Location*, unsigned char)
00000098 B gcs0
00000098 B gcs3
0000009a t planner_gcs(unsigned char, Menu::arg const*) 0000009a t planner_gcs(unsigned char, Menu::arg const*)
0000009a t init_compass() 0000009a t init_compass()
0000009a t Log_Read_Motors()
0000009b B gcs0
0000009b B gcs3
0000009e t setup_mode(unsigned char, Menu::arg const*) 0000009e t setup_mode(unsigned char, Menu::arg const*)
0000009e t Log_Write_Cmd(unsigned char, Location*) 0000009e t Log_Write_Cmd(unsigned char, Location*)
000000a0 t Log_Read_Mode() 000000a0 t Log_Read_Mode()
@ -593,11 +601,12 @@
000000a4 T __vector_55 000000a4 T __vector_55
000000a6 t send_servo_out(mavlink_channel_t) 000000a6 t send_servo_out(mavlink_channel_t)
000000aa t test_sonar(unsigned char, Menu::arg const*) 000000aa t test_sonar(unsigned char, Menu::arg const*)
000000aa t Log_Read_Nav_Tuning() 000000ae t Log_Read_Motors()
000000b0 t test_relay(unsigned char, Menu::arg const*) 000000b0 t test_relay(unsigned char, Menu::arg const*)
000000b2 t erase_logs(unsigned char, Menu::arg const*) 000000b2 t erase_logs(unsigned char, Menu::arg const*)
000000b4 t read_radio() 000000b4 t read_radio()
000000b6 t get_log_boundaries(unsigned char, int&, int&) 000000b6 t get_log_boundaries(unsigned char, int&, int&)
000000b6 t Log_Read_Performance()
000000b7 B compass 000000b7 B compass
000000be t update_events() 000000be t update_events()
000000c2 t setup_compass(unsigned char, Menu::arg const*) 000000c2 t setup_compass(unsigned char, Menu::arg const*)
@ -607,7 +616,6 @@
000000c4 r setup_esc(unsigned char, Menu::arg const*)::__c 000000c4 r setup_esc(unsigned char, Menu::arg const*)::__c
000000c6 t test_eedump(unsigned char, Menu::arg const*) 000000c6 t test_eedump(unsigned char, Menu::arg const*)
000000c6 t send_radio_in(mavlink_channel_t) 000000c6 t send_radio_in(mavlink_channel_t)
000000c6 t Log_Read_Performance()
000000c6 t test_tri(unsigned char, Menu::arg const*) 000000c6 t test_tri(unsigned char, Menu::arg const*)
000000c7 B dcm 000000c7 B dcm
000000ca t init_barometer() 000000ca t init_barometer()
@ -618,30 +626,32 @@
000000d4 t Log_Read(int, int) 000000d4 t Log_Read(int, int)
000000d8 t test_radio(unsigned char, Menu::arg const*) 000000d8 t test_radio(unsigned char, Menu::arg const*)
000000d8 t read_barometer() 000000d8 t read_barometer()
000000de t Log_Read_Nav_Tuning()
000000de t test_adc(unsigned char, Menu::arg const*) 000000de t test_adc(unsigned char, Menu::arg const*)
000000e4 t test_radio_pwm(unsigned char, Menu::arg const*) 000000e4 t test_radio_pwm(unsigned char, Menu::arg const*)
000000e4 t Log_Read_Optflow() 000000e4 t Log_Read_Optflow()
000000e4 W APM_PI::APM_PI(unsigned int, prog_char_t const*, float const&, float const&, int const&) 000000e4 W APM_PI::APM_PI(unsigned int, prog_char_t const*, float const&, float const&, int const&)
000000e8 t Log_Read_Current() 000000e8 t Log_Read_Current()
000000ea t Log_Read_Control_Tuning()
000000ee t report_batt_monitor() 000000ee t report_batt_monitor()
000000f6 t Log_Read_Cmd() 000000f6 t Log_Read_Cmd()
000000f8 t heli_get_angle_boost(int)
000000fa t calc_loiter_pitch_roll()
00000100 r test_menu_commands 00000100 r test_menu_commands
00000100 r setup_menu_commands 00000100 r setup_menu_commands
00000102 t Log_Read_Control_Tuning()
00000106 t setup_gyro(unsigned char, Menu::arg const*) 00000106 t setup_gyro(unsigned char, Menu::arg const*)
0000010a t mavlink_delay(unsigned long) 0000010a t mavlink_delay(unsigned long)
0000010a t send_raw_imu2(mavlink_channel_t) 0000010a t send_raw_imu2(mavlink_channel_t)
0000010a t test_gps(unsigned char, Menu::arg const*) 0000010a t test_gps(unsigned char, Menu::arg const*)
0000010c t test_current(unsigned char, Menu::arg const*) 0000010c t test_current(unsigned char, Menu::arg const*)
0000010e W RC_Channel::RC_Channel(unsigned int, prog_char_t const*) 00000110 T GCS_MAVLINK::GCS_MAVLINK(unsigned int)
00000110 T GCS_MAVLINK::GCS_MAVLINK(unsigned int)
00000112 t set_next_WP(Location*) 00000112 t set_next_WP(Location*)
00000112 t send_extended_status1(mavlink_channel_t, unsigned int) 00000112 t send_extended_status1(mavlink_channel_t, unsigned int)
00000112 T GCS_MAVLINK::GCS_MAVLINK(unsigned int)
00000112 T GCS_MAVLINK::GCS_MAVLINK(unsigned int)
00000118 t set_command_with_index(Location, int) 00000118 t set_command_with_index(Location, int)
0000011c t get_command_with_index(int) 0000011c t get_command_with_index(int)
0000012c t calc_loiter_pitch_roll()
00000130 t report_compass() 00000130 t report_compass()
00000136 W RC_Channel::RC_Channel(unsigned int, prog_char_t const*)
00000148 t Log_Read_GPS() 00000148 t Log_Read_GPS()
00000156 t update_commands() 00000156 t update_commands()
0000015c t update_trig() 0000015c t update_trig()
@ -650,10 +660,10 @@
00000162 T GCS_MAVLINK::data_stream_send(unsigned int, unsigned int) 00000162 T GCS_MAVLINK::data_stream_send(unsigned int, unsigned int)
00000166 t select_logs(unsigned char, Menu::arg const*) 00000166 t select_logs(unsigned char, Menu::arg const*)
00000166 t send_vfr_hud(mavlink_channel_t) 00000166 t send_vfr_hud(mavlink_channel_t)
00000168 T GCS_MAVLINK::update()
0000016c t test_imu(unsigned char, Menu::arg const*) 0000016c t test_imu(unsigned char, Menu::arg const*)
0000016e t send_attitude(mavlink_channel_t) 0000016e t send_attitude(mavlink_channel_t)
00000174 t mavlink_send_message(mavlink_channel_t, ap_message, unsigned int) 00000174 t mavlink_send_message(mavlink_channel_t, ap_message, unsigned int)
000001a0 T GCS_MAVLINK::update()
000001a2 t mavlink_try_send_message(mavlink_channel_t, ap_message, unsigned int) 000001a2 t mavlink_try_send_message(mavlink_channel_t, ap_message, unsigned int)
000001a8 t print_radio_values() 000001a8 t print_radio_values()
000001be t arm_motors() 000001be t arm_motors()
@ -661,29 +671,29 @@
000001e4 t setup_flightmodes(unsigned char, Menu::arg const*) 000001e4 t setup_flightmodes(unsigned char, Menu::arg const*)
000001e6 t verify_nav_wp() 000001e6 t verify_nav_wp()
000001ea t init_home() 000001ea t init_home()
00000216 t set_mode(unsigned char)
0000021a t send_raw_imu1(mavlink_channel_t) 0000021a t send_raw_imu1(mavlink_channel_t)
00000220 t test_wp(unsigned char, Menu::arg const*) 00000220 t test_wp(unsigned char, Menu::arg const*)
00000226 t set_mode(unsigned char)
00000228 t setup_radio(unsigned char, Menu::arg const*) 00000228 t setup_radio(unsigned char, Menu::arg const*)
0000022a t send_gps_raw(mavlink_channel_t) 0000022a t send_gps_raw(mavlink_channel_t)
00000242 t calc_loiter(int, int) 00000242 t calc_loiter(int, int)
00000268 t send_raw_imu3(mavlink_channel_t) 00000268 t send_raw_imu3(mavlink_channel_t)
0000030c t heli_init_swash() 00000298 T update_throttle_mode()
00000312 W Parameters::~Parameters() 00000326 W Parameters::~Parameters()
0000032a t report_heli() 0000032a t report_heli()
00000330 t tuning() 0000033a t heli_init_swash()
0000036a t tuning()
00000384 t print_log_menu() 00000384 t print_log_menu()
0000039a T update_throttle_mode() 0000039e T update_roll_pitch_mode()
000003a0 t read_battery() 000003a0 t read_battery()
0000045c T update_yaw_mode() 0000045c T update_yaw_mode()
0000046e T update_roll_pitch_mode()
0000053e t heli_move_swash(int, int, int, int) 0000053e t heli_move_swash(int, int, int, int)
000005cc t __static_initialization_and_destruction_0(int, int) 000005cc t __static_initialization_and_destruction_0(int, int)
00000620 t init_ardupilot() 000005fe t init_ardupilot()
0000071a t update_nav_wp() 0000071a t update_nav_wp()
000007ec t setup_heli(unsigned char, Menu::arg const*) 000007ec t setup_heli(unsigned char, Menu::arg const*)
00000870 t process_next_command() 00000870 t process_next_command()
000009b8 W Parameters::Parameters() 00000a64 W Parameters::Parameters()
00000a1f b g 00000b2d b g
000012ec T GCS_MAVLINK::handleMessage(__mavlink_message*) 000012ec T GCS_MAVLINK::handleMessage(__mavlink_message*)
00001598 T loop 000016c8 T loop

View File

@ -5,17 +5,21 @@ In file included from /root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:55:
/usr/local/share/arduino/libraries/SPI/SPI.h:20:1: warning: this is the location of the previous definition /usr/local/share/arduino/libraries/SPI/SPI.h:20:1: warning: this is the location of the previous definition
In file included from /root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:77: In file included from /root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:77:
/root/apm/ardupilot-mega/ArduCopter/Parameters.h: In constructor 'Parameters::Parameters()': /root/apm/ardupilot-mega/ArduCopter/Parameters.h: In constructor 'Parameters::Parameters()':
/root/apm/ardupilot-mega/ArduCopter/Parameters.h:399: warning: overflow in implicit constant conversion /root/apm/ardupilot-mega/ArduCopter/Parameters.h:407: warning: overflow in implicit constant conversion
/root/apm/ardupilot-mega/ArduCopter/heli.pde: In function 'void heli_init_swash()': /root/apm/ardupilot-mega/ArduCopter/heli.pde: In function 'void heli_init_swash()':
/root/apm/ardupilot-mega/ArduCopter/heli.pde:60: warning: comparisons like X<=Y<=Z do not have their mathematical meaning /root/apm/ardupilot-mega/ArduCopter/heli.pde:64: warning: comparisons like X<=Y<=Z do not have their mathematical meaning
/root/apm/ardupilot-mega/ArduCopter/heli.pde: In function 'int heli_get_scaled_throttle(int)':
/root/apm/ardupilot-mega/ArduCopter/heli.pde:205: warning: unused variable 'scaled_throttle'
/root/apm/ardupilot-mega/ArduCopter/setup.pde: In function 'int8_t setup_heli(uint8_t, const Menu::arg*)': /root/apm/ardupilot-mega/ArduCopter/setup.pde: In function 'int8_t setup_heli(uint8_t, const Menu::arg*)':
/root/apm/ardupilot-mega/ArduCopter/setup.pde:467: warning: 'min_tail' may be used uninitialized in this function
/root/apm/ardupilot-mega/ArduCopter/setup.pde:467: warning: 'max_tail' may be used uninitialized in this function /root/apm/ardupilot-mega/ArduCopter/setup.pde:467: warning: 'max_tail' may be used uninitialized in this function
/root/apm/ardupilot-mega/ArduCopter/setup.pde:467: warning: 'min_tail' may be used uninitialized in this function
/root/apm/ardupilot-mega/ArduCopter/setup.pde:467: warning: 'max_coll' may be used uninitialized in this function /root/apm/ardupilot-mega/ArduCopter/setup.pde:467: warning: 'max_coll' may be used uninitialized in this function
/root/apm/ardupilot-mega/ArduCopter/setup.pde:467: warning: 'min_coll' may be used uninitialized in this function /root/apm/ardupilot-mega/ArduCopter/setup.pde:467: warning: 'min_coll' may be used uninitialized in this function
/root/apm/ardupilot-mega/ArduCopter/setup.pde:467: warning: 'max_pitch' may be used uninitialized in this function /root/apm/ardupilot-mega/ArduCopter/setup.pde:467: warning: 'max_pitch' may be used uninitialized in this function
/root/apm/ardupilot-mega/ArduCopter/setup.pde:467: warning: 'max_roll' may be used uninitialized in this function /root/apm/ardupilot-mega/ArduCopter/setup.pde:467: warning: 'max_roll' may be used uninitialized in this function
autogenerated: At global scope: /root/apm/ardupilot-mega/ArduCopter/Attitude.pde: At global scope:
/root/apm/ardupilot-mega/ArduCopter/Attitude.pde:179: warning: 'int alt_hold_velocity()' defined but not used
/root/apm/ardupilot-mega/ArduCopter/Attitude.pde:209: warning: 'int get_angle_boost(int)' defined but not used
autogenerated:109: warning: 'void Log_Write_Optflow()' declared 'static' but never defined autogenerated:109: warning: 'void Log_Write_Optflow()' declared 'static' but never defined
autogenerated:90: warning: 'void Log_Write_Attitude2()' declared 'static' but never defined autogenerated:90: warning: 'void Log_Write_Attitude2()' declared 'static' but never defined
autogenerated:91: warning: 'void Log_Read_Attitude2()' declared 'static' but never defined autogenerated:91: warning: 'void Log_Read_Attitude2()' declared 'static' but never defined
@ -23,24 +27,25 @@ autogenerated:121: warning: 'void decrement_WP_index()' declared 'static' but ne
/root/apm/ardupilot-mega/ArduCopter/commands.pde:132: warning: 'Location get_LOITER_home_wp()' defined but not used /root/apm/ardupilot-mega/ArduCopter/commands.pde:132: warning: 'Location get_LOITER_home_wp()' defined but not used
/root/apm/ardupilot-mega/ArduCopter/commands_logic.pde:432: warning: 'bool verify_loiter_unlim()' defined but not used /root/apm/ardupilot-mega/ArduCopter/commands_logic.pde:432: warning: 'bool verify_loiter_unlim()' defined but not used
/root/apm/ardupilot-mega/ArduCopter/events.pde:46: warning: 'void low_battery_event()' defined but not used /root/apm/ardupilot-mega/ArduCopter/events.pde:46: warning: 'void low_battery_event()' defined but not used
autogenerated:213: warning: 'void debug_motors()' declared 'static' but never defined autogenerated:215: warning: 'void debug_motors()' declared 'static' but never defined
/root/apm/ardupilot-mega/ArduCopter/navigation.pde:183: warning: 'int get_loiter_angle()' defined but not used /root/apm/ardupilot-mega/ArduCopter/navigation.pde:95: warning: 'void calc_loiter2(int, int)' defined but not used
autogenerated:234: warning: 'long int get_crosstrack_correction()' declared 'static' but never defined /root/apm/ardupilot-mega/ArduCopter/navigation.pde:213: warning: 'int get_loiter_angle()' defined but not used
autogenerated:235: warning: 'long int cross_track_test()' declared 'static' but never defined autogenerated:237: warning: 'long int get_crosstrack_correction()' declared 'static' but never defined
autogenerated:236: warning: 'void reset_crosstrack()' declared 'static' but never defined autogenerated:238: warning: 'long int cross_track_test()' declared 'static' but never defined
autogenerated:238: warning: 'long int get_alt_distance(Location*, Location*)' declared 'static' but never defined autogenerated:239: warning: 'void reset_crosstrack()' declared 'static' but never defined
/root/apm/ardupilot-mega/ArduCopter/radio.pde:130: warning: 'void throttle_failsafe(uint16_t)' defined but not used autogenerated:241: warning: 'long int get_alt_distance(Location*, Location*)' declared 'static' but never defined
/root/apm/ardupilot-mega/ArduCopter/radio.pde:134: warning: 'void throttle_failsafe(uint16_t)' defined but not used
/root/apm/ardupilot-mega/ArduCopter/sensors.pde:6: warning: 'void ReadSCP1000()' defined but not used /root/apm/ardupilot-mega/ArduCopter/sensors.pde:6: warning: 'void ReadSCP1000()' defined but not used
autogenerated:248: warning: 'long int read_baro_filtered()' declared 'static' but never defined autogenerated:252: warning: 'long int read_baro_filtered()' declared 'static' but never defined
/root/apm/ardupilot-mega/ArduCopter/sensors.pde:95: warning: 'void read_airspeed()' defined but not used /root/apm/ardupilot-mega/ArduCopter/sensors.pde:95: warning: 'void read_airspeed()' defined but not used
/root/apm/ardupilot-mega/ArduCopter/sensors.pde:100: warning: 'void zero_airspeed()' defined but not used /root/apm/ardupilot-mega/ArduCopter/sensors.pde:100: warning: 'void zero_airspeed()' defined but not used
/root/apm/ardupilot-mega/ArduCopter/system.pde:438: warning: 'void set_failsafe(boolean)' defined but not used /root/apm/ardupilot-mega/ArduCopter/system.pde:456: warning: 'void set_failsafe(boolean)' defined but not used
autogenerated:285: warning: 'void init_optflow()' declared 'static' but never defined autogenerated:290: warning: 'void init_optflow()' declared 'static' but never defined
autogenerated:292: warning: 'void fake_out_gps()' declared 'static' but never defined autogenerated:297: warning: 'void fake_out_gps()' declared 'static' but never defined
/root/apm/ardupilot-mega/ArduCopter/test.pde:1028: warning: 'void print_motor_out()' defined but not used /root/apm/ardupilot-mega/ArduCopter/test.pde:1028: warning: 'void print_motor_out()' defined but not used
/root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:277: warning: 'heli_servo_min' defined but not used /root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:277: warning: 'heli_servo_min' defined but not used
/root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:277: warning: 'heli_servo_max' defined but not used /root/apm/ardupilot-mega/ArduCopter/ArduCopter.pde:277: warning: 'heli_servo_max' defined but not used
/root/apm/ardupilot-mega/ArduCopter/GCS_Mavlink.pde:1706: warning: 'void gcs_send_text_fmt(const prog_char_t*, ...)' defined but not used /root/apm/ardupilot-mega/ArduCopter/GCS_Mavlink.pde:1727: warning: 'void gcs_send_text_fmt(const prog_char_t*, ...)' defined but not used
%% libraries/APM_BMP085/APM_BMP085.o %% libraries/APM_BMP085/APM_BMP085.o
%% libraries/APM_BMP085/APM_BMP085_hil.o %% libraries/APM_BMP085/APM_BMP085_hil.o
%% libraries/APM_PI/APM_PI.o %% libraries/APM_PI/APM_PI.o

View File

@ -10,6 +10,7 @@
00000001 b land_complete 00000001 b land_complete
00000001 b throttle_mode 00000001 b throttle_mode
00000001 b command_may_ID 00000001 b command_may_ID
00000001 b mavlink_active
00000001 b wp_verify_byte 00000001 b wp_verify_byte
00000001 d altitude_sensor 00000001 d altitude_sensor
00000001 b command_must_ID 00000001 b command_must_ID
@ -45,10 +46,13 @@
00000002 T userhook_init() 00000002 T userhook_init()
00000002 b climb_rate 00000002 b climb_rate
00000002 b loiter_sum 00000002 b loiter_sum
00000002 b angle_boost
00000002 b event_delay 00000002 b event_delay
00000002 b event_value 00000002 b event_value
00000002 b CH7_wp_index
00000002 b event_repeat 00000002 b event_repeat
00000002 b loiter_total 00000002 b loiter_total
00000002 b manual_boost
00000002 b nav_throttle 00000002 b nav_throttle
00000002 b x_rate_error 00000002 b x_rate_error
00000002 b y_rate_error 00000002 b y_rate_error
@ -71,6 +75,7 @@
00000002 b g_gps 00000002 b g_gps
00000002 b airspeed 00000002 b airspeed
00000002 b baro_alt 00000002 b baro_alt
00000002 b old_rate
00000002 b sonar_alt 00000002 b sonar_alt
00000002 b arm_motors()::arming_counter 00000002 b arm_motors()::arming_counter
00000002 r setup_frame(unsigned char, Menu::arg const*)::__c 00000002 r setup_frame(unsigned char, Menu::arg const*)::__c
@ -85,6 +90,7 @@
00000003 r setup_sonar(unsigned char, Menu::arg const*)::__c 00000003 r setup_sonar(unsigned char, Menu::arg const*)::__c
00000003 r print_enabled(unsigned char)::__c 00000003 r print_enabled(unsigned char)::__c
00000003 r setup_compass(unsigned char, Menu::arg const*)::__c 00000003 r setup_compass(unsigned char, Menu::arg const*)::__c
00000003 V RC_Channel::RC_Channel(unsigned int, prog_char_t const*)::__c
00000004 d cos_roll_x 00000004 d cos_roll_x
00000004 b land_start 00000004 b land_start
00000004 b long_error 00000004 b long_error
@ -125,6 +131,7 @@
00000004 b fiftyhz_loopTimer 00000004 b fiftyhz_loopTimer
00000004 b old_target_bearing 00000004 b old_target_bearing
00000004 b throttle_integrator 00000004 b throttle_integrator
00000004 b heli_throttle_scaler
00000004 r __menu_name__log_menu 00000004 r __menu_name__log_menu
00000004 b command_yaw_start_time 00000004 b command_yaw_start_time
00000004 b initial_simple_bearing 00000004 b initial_simple_bearing
@ -287,6 +294,8 @@
0000000a V Parameters::Parameters()::__c 0000000a V Parameters::Parameters()::__c
0000000a V Parameters::Parameters()::__c 0000000a V Parameters::Parameters()::__c
0000000a V Parameters::Parameters()::__c 0000000a V Parameters::Parameters()::__c
0000000a V Parameters::Parameters()::__c
0000000a V Parameters::Parameters()::__c
0000000a T setup 0000000a T setup
0000000b r test_relay(unsigned char, Menu::arg const*)::__c 0000000b r test_relay(unsigned char, Menu::arg const*)::__c
0000000b r report_batt_monitor()::__c 0000000b r report_batt_monitor()::__c
@ -418,7 +427,6 @@
00000014 r test_tri(unsigned char, Menu::arg const*)::__c 00000014 r test_tri(unsigned char, Menu::arg const*)::__c
00000015 r setup_heli(unsigned char, Menu::arg const*)::__c 00000015 r setup_heli(unsigned char, Menu::arg const*)::__c
00000015 r init_ardupilot()::__c 00000015 r init_ardupilot()::__c
00000015 r Log_Read_Motors()::__c
00000015 r print_hit_enter()::__c 00000015 r print_hit_enter()::__c
00000015 r GCS_MAVLINK::handleMessage(__mavlink_message*)::__c 00000015 r GCS_MAVLINK::handleMessage(__mavlink_message*)::__c
00000016 T piezo_beep() 00000016 T piezo_beep()
@ -429,8 +437,8 @@
00000018 r __menu_name__main_menu 00000018 r __menu_name__main_menu
00000018 W AP_VarT<int>::serialize(void*, unsigned int) const 00000018 W AP_VarT<int>::serialize(void*, unsigned int) const
00000019 r setup_gyro(unsigned char, Menu::arg const*)::__c 00000019 r setup_gyro(unsigned char, Menu::arg const*)::__c
00000019 r Log_Read_Motors()::__c
0000001a r print_log_menu()::__c 0000001a r print_log_menu()::__c
0000001a r Log_Read_Nav_Tuning()::__c
0000001b r setup_heli(unsigned char, Menu::arg const*)::__c 0000001b r setup_heli(unsigned char, Menu::arg const*)::__c
0000001b r report_heli()::__c 0000001b r report_heli()::__c
0000001c W AP_VarA<float, (unsigned char)6>::unserialize(void*, unsigned int) 0000001c W AP_VarA<float, (unsigned char)6>::unserialize(void*, unsigned int)
@ -441,6 +449,7 @@
0000001c W AP_VarS<Matrix3<float> >::serialize(void*, unsigned int) const 0000001c W AP_VarS<Matrix3<float> >::serialize(void*, unsigned int) const
0000001c W AP_VarS<Vector3<float> >::serialize(void*, unsigned int) const 0000001c W AP_VarS<Vector3<float> >::serialize(void*, unsigned int) const
0000001d r Log_Read_Attitude()::__c 0000001d r Log_Read_Attitude()::__c
0000001d r Log_Read_Performance()::__c
0000001e r report_heli()::__c 0000001e r report_heli()::__c
0000001e r Log_Read_Optflow()::__c 0000001e r Log_Read_Optflow()::__c
00000020 t gcs_send_message(ap_message) 00000020 t gcs_send_message(ap_message)
@ -450,10 +459,8 @@
00000021 r print_log_menu()::__c 00000021 r print_log_menu()::__c
00000021 r report_compass()::__c 00000021 r report_compass()::__c
00000021 r Log_Read_Current()::__c 00000021 r Log_Read_Current()::__c
00000021 r Log_Read_Performance()::__c
00000022 t clear_leds() 00000022 t clear_leds()
00000022 t print_blanks(int) 00000022 t print_blanks(int)
00000022 t reset_hold_I()
00000022 t startup_ground() 00000022 t startup_ground()
00000022 W AP_Float16::~AP_Float16() 00000022 W AP_Float16::~AP_Float16()
00000022 W AP_VarA<float, (unsigned char)6>::~AP_VarA() 00000022 W AP_VarA<float, (unsigned char)6>::~AP_VarA()
@ -465,13 +472,13 @@
00000023 r setup_heli(unsigned char, Menu::arg const*)::__c 00000023 r setup_heli(unsigned char, Menu::arg const*)::__c
00000023 r setup_mode(unsigned char, Menu::arg const*)::__c 00000023 r setup_mode(unsigned char, Menu::arg const*)::__c
00000023 r print_gyro_offsets()::__c 00000023 r print_gyro_offsets()::__c
00000024 t reset_hold_I()
00000024 r setup_heli(unsigned char, Menu::arg const*)::__c 00000024 r setup_heli(unsigned char, Menu::arg const*)::__c
00000024 r init_ardupilot()::__c 00000024 r init_ardupilot()::__c
00000024 r print_accel_offsets()::__c 00000024 r print_accel_offsets()::__c
00000026 t print_done() 00000026 t print_done()
00000026 t print_hit_enter() 00000026 t print_hit_enter()
00000026 t Log_Read_Startup() 00000026 t Log_Read_Startup()
00000026 r Log_Read_Control_Tuning()::__c
00000028 t test_battery(unsigned char, Menu::arg const*) 00000028 t test_battery(unsigned char, Menu::arg const*)
00000028 t main_menu_help(unsigned char, Menu::arg const*) 00000028 t main_menu_help(unsigned char, Menu::arg const*)
00000028 t help_log(unsigned char, Menu::arg const*) 00000028 t help_log(unsigned char, Menu::arg const*)
@ -482,14 +489,16 @@
00000029 r setup_mode(unsigned char, Menu::arg const*)::__c 00000029 r setup_mode(unsigned char, Menu::arg const*)::__c
00000029 r test_gps(unsigned char, Menu::arg const*)::__c 00000029 r test_gps(unsigned char, Menu::arg const*)::__c
0000002a t setup_declination(unsigned char, Menu::arg const*) 0000002a t setup_declination(unsigned char, Menu::arg const*)
0000002a t _mav_put_int8_t_array
0000002b r planner_mode(unsigned char, Menu::arg const*)::__c 0000002b r planner_mode(unsigned char, Menu::arg const*)::__c
0000002e t setup_motors(unsigned char, Menu::arg const*) 0000002e t setup_motors(unsigned char, Menu::arg const*)
0000002e t print_divider() 0000002e t print_divider()
0000002e t gcs_send_text_P(gcs_severity, prog_char_t const*) 0000002e t gcs_send_text_P(gcs_severity, prog_char_t const*)
0000002e t gcs_data_stream_send(unsigned int, unsigned int) 0000002e t gcs_data_stream_send(unsigned int, unsigned int)
0000002e W AP_Var_group::AP_Var_group(unsigned int, prog_char_t const*, unsigned char) 0000002e W AP_Var_group::AP_Var_group(unsigned int, prog_char_t const*, unsigned char)
0000002e r init_ardupilot()::__c
0000002e r Log_Read_Nav_Tuning()::__c
0000002f r test_radio(unsigned char, Menu::arg const*)::__c 0000002f r test_radio(unsigned char, Menu::arg const*)::__c
0000002f r init_ardupilot()::__c
00000030 t planner_mode(unsigned char, Menu::arg const*) 00000030 t planner_mode(unsigned char, Menu::arg const*)
00000030 t send_heartbeat(mavlink_channel_t) 00000030 t send_heartbeat(mavlink_channel_t)
00000031 r setup_heli(unsigned char, Menu::arg const*)::__c 00000031 r setup_heli(unsigned char, Menu::arg const*)::__c
@ -500,18 +509,16 @@
00000033 b pending_status 00000033 b pending_status
00000034 t heli_get_servo(int) 00000034 t heli_get_servo(int)
00000034 W AP_Float16::serialize(void*, unsigned int) const 00000034 W AP_Float16::serialize(void*, unsigned int) const
00000034 t _mav_put_int8_t_array
00000034 t mavlink_msg_statustext_send 00000034 t mavlink_msg_statustext_send
00000035 r test_radio_pwm(unsigned char, Menu::arg const*)::__c 00000035 r test_radio_pwm(unsigned char, Menu::arg const*)::__c
00000036 t report_radio() 00000036 t report_radio()
00000036 r Log_Read_Control_Tuning()::__c
00000037 r print_wp(Location*, unsigned char)::__c 00000037 r print_wp(Location*, unsigned char)::__c
00000038 t init_throttle_cruise()
00000038 t send_current_waypoint(mavlink_channel_t) 00000038 t send_current_waypoint(mavlink_channel_t)
00000038 r setup_radio(unsigned char, Menu::arg const*)::__c 00000038 r setup_radio(unsigned char, Menu::arg const*)::__c
00000038 r setup_factory(unsigned char, Menu::arg const*)::__c 00000038 r setup_factory(unsigned char, Menu::arg const*)::__c
0000003a t report_gps() 0000003a t report_gps()
0000003a t report_imu() 0000003a t report_imu()
0000003c W RC_Channel::~RC_Channel()
0000003d B g_gps_driver 0000003d B g_gps_driver
0000003e T GCS_MAVLINK::send_text(gcs_severity, prog_char_t const*) 0000003e T GCS_MAVLINK::send_text(gcs_severity, prog_char_t const*)
0000003e W AP_VarT<signed char>::AP_VarT(signed char, unsigned int, prog_char_t const*, unsigned char) 0000003e W AP_VarT<signed char>::AP_VarT(signed char, unsigned int, prog_char_t const*, unsigned char)
@ -523,6 +530,7 @@
00000042 t report_sonar() 00000042 t report_sonar()
00000042 r setup_heli(unsigned char, Menu::arg const*)::__c 00000042 r setup_heli(unsigned char, Menu::arg const*)::__c
00000044 W AP_VarT<int>::AP_VarT(int, unsigned int, prog_char_t const*, unsigned char) 00000044 W AP_VarT<int>::AP_VarT(int, unsigned int, prog_char_t const*, unsigned char)
00000046 W RC_Channel::~RC_Channel()
00000048 t change_command(unsigned char) 00000048 t change_command(unsigned char)
00000048 t update_motor_leds() 00000048 t update_motor_leds()
00000049 r setup_flightmodes(unsigned char, Menu::arg const*)::__c 00000049 r setup_flightmodes(unsigned char, Menu::arg const*)::__c
@ -553,9 +561,9 @@
00000064 t mavlink_msg_param_value_send 00000064 t mavlink_msg_param_value_send
00000068 t zero_eeprom() 00000068 t zero_eeprom()
00000068 t find_last_log_page(int) 00000068 t find_last_log_page(int)
00000068 W GCS_MAVLINK::~GCS_MAVLINK()
0000006a T mavlink_send_text(mavlink_channel_t, gcs_severity, char const*) 0000006a T mavlink_send_text(mavlink_channel_t, gcs_severity, char const*)
0000006a t read_num_from_serial() 0000006a t read_num_from_serial()
0000006a W GCS_MAVLINK::~GCS_MAVLINK()
0000006c t setup_sonar(unsigned char, Menu::arg const*) 0000006c t setup_sonar(unsigned char, Menu::arg const*)
00000074 t output_motors_armed() 00000074 t output_motors_armed()
00000078 t setup_batt_monitor(unsigned char, Menu::arg const*) 00000078 t setup_batt_monitor(unsigned char, Menu::arg const*)
@ -579,12 +587,12 @@
00000090 t report_tuning() 00000090 t report_tuning()
00000092 t test_tuning(unsigned char, Menu::arg const*) 00000092 t test_tuning(unsigned char, Menu::arg const*)
00000092 T GCS_MAVLINK::queued_param_send() 00000092 T GCS_MAVLINK::queued_param_send()
00000094 t init_throttle_cruise()
00000096 t print_wp(Location*, unsigned char) 00000096 t print_wp(Location*, unsigned char)
00000098 B gcs0
00000098 B gcs3
0000009a t planner_gcs(unsigned char, Menu::arg const*) 0000009a t planner_gcs(unsigned char, Menu::arg const*)
0000009a t init_compass() 0000009a t init_compass()
0000009a t Log_Read_Motors()
0000009b B gcs0
0000009b B gcs3
0000009e t setup_mode(unsigned char, Menu::arg const*) 0000009e t setup_mode(unsigned char, Menu::arg const*)
0000009e t Log_Read_Mode() 0000009e t Log_Read_Mode()
0000009e t Log_Write_Cmd(unsigned char, Location*) 0000009e t Log_Write_Cmd(unsigned char, Location*)
@ -593,11 +601,12 @@
000000a4 T __vector_55 000000a4 T __vector_55
000000a6 t send_servo_out(mavlink_channel_t) 000000a6 t send_servo_out(mavlink_channel_t)
000000a8 t test_sonar(unsigned char, Menu::arg const*) 000000a8 t test_sonar(unsigned char, Menu::arg const*)
000000aa t Log_Read_Nav_Tuning() 000000ae t Log_Read_Motors()
000000b0 t test_relay(unsigned char, Menu::arg const*) 000000b0 t test_relay(unsigned char, Menu::arg const*)
000000b2 t erase_logs(unsigned char, Menu::arg const*) 000000b2 t erase_logs(unsigned char, Menu::arg const*)
000000b4 t read_radio() 000000b4 t read_radio()
000000b6 t get_log_boundaries(unsigned char, int&, int&) 000000b6 t get_log_boundaries(unsigned char, int&, int&)
000000b6 t Log_Read_Performance()
000000b7 B compass 000000b7 B compass
000000be t update_events() 000000be t update_events()
000000c2 t test_eedump(unsigned char, Menu::arg const*) 000000c2 t test_eedump(unsigned char, Menu::arg const*)
@ -607,7 +616,6 @@
000000c4 t get_distance(Location*, Location*) 000000c4 t get_distance(Location*, Location*)
000000c4 r setup_esc(unsigned char, Menu::arg const*)::__c 000000c4 r setup_esc(unsigned char, Menu::arg const*)::__c
000000c6 t send_radio_in(mavlink_channel_t) 000000c6 t send_radio_in(mavlink_channel_t)
000000c6 t Log_Read_Performance()
000000c6 t test_tri(unsigned char, Menu::arg const*) 000000c6 t test_tri(unsigned char, Menu::arg const*)
000000c7 B dcm 000000c7 B dcm
000000ca t init_barometer() 000000ca t init_barometer()
@ -619,29 +627,31 @@
000000d8 t test_radio(unsigned char, Menu::arg const*) 000000d8 t test_radio(unsigned char, Menu::arg const*)
000000d8 t read_barometer() 000000d8 t read_barometer()
000000dc t test_adc(unsigned char, Menu::arg const*) 000000dc t test_adc(unsigned char, Menu::arg const*)
000000de t Log_Read_Nav_Tuning()
000000e4 t test_radio_pwm(unsigned char, Menu::arg const*) 000000e4 t test_radio_pwm(unsigned char, Menu::arg const*)
000000e4 t Log_Read_Optflow() 000000e4 t Log_Read_Optflow()
000000e4 W APM_PI::APM_PI(unsigned int, prog_char_t const*, float const&, float const&, int const&) 000000e4 W APM_PI::APM_PI(unsigned int, prog_char_t const*, float const&, float const&, int const&)
000000e8 t Log_Read_Current() 000000e8 t Log_Read_Current()
000000ea t Log_Read_Control_Tuning()
000000ee t report_batt_monitor() 000000ee t report_batt_monitor()
000000f6 t Log_Read_Cmd() 000000f6 t Log_Read_Cmd()
000000f8 t heli_get_angle_boost(int)
000000fa t calc_loiter_pitch_roll()
00000100 r test_menu_commands 00000100 r test_menu_commands
00000100 r setup_menu_commands 00000100 r setup_menu_commands
00000102 t Log_Read_Control_Tuning()
00000108 t setup_gyro(unsigned char, Menu::arg const*) 00000108 t setup_gyro(unsigned char, Menu::arg const*)
0000010a t mavlink_delay(unsigned long) 0000010a t mavlink_delay(unsigned long)
0000010a t send_raw_imu2(mavlink_channel_t) 0000010a t send_raw_imu2(mavlink_channel_t)
0000010a t test_gps(unsigned char, Menu::arg const*) 0000010a t test_gps(unsigned char, Menu::arg const*)
0000010c t test_current(unsigned char, Menu::arg const*) 0000010c t test_current(unsigned char, Menu::arg const*)
0000010e W RC_Channel::RC_Channel(unsigned int, prog_char_t const*) 00000110 T GCS_MAVLINK::GCS_MAVLINK(unsigned int)
00000110 T GCS_MAVLINK::GCS_MAVLINK(unsigned int)
00000112 t set_next_WP(Location*) 00000112 t set_next_WP(Location*)
00000112 t send_extended_status1(mavlink_channel_t, unsigned int) 00000112 t send_extended_status1(mavlink_channel_t, unsigned int)
00000112 T GCS_MAVLINK::GCS_MAVLINK(unsigned int)
00000112 T GCS_MAVLINK::GCS_MAVLINK(unsigned int)
00000118 t set_command_with_index(Location, int) 00000118 t set_command_with_index(Location, int)
0000011c t get_command_with_index(int) 0000011c t get_command_with_index(int)
0000012c t calc_loiter_pitch_roll()
00000130 t report_compass() 00000130 t report_compass()
00000136 W RC_Channel::RC_Channel(unsigned int, prog_char_t const*)
00000148 t Log_Read_GPS() 00000148 t Log_Read_GPS()
00000156 t update_commands() 00000156 t update_commands()
0000015c t update_trig() 0000015c t update_trig()
@ -650,10 +660,10 @@
00000162 T GCS_MAVLINK::data_stream_send(unsigned int, unsigned int) 00000162 T GCS_MAVLINK::data_stream_send(unsigned int, unsigned int)
00000166 t select_logs(unsigned char, Menu::arg const*) 00000166 t select_logs(unsigned char, Menu::arg const*)
00000166 t send_vfr_hud(mavlink_channel_t) 00000166 t send_vfr_hud(mavlink_channel_t)
00000168 T GCS_MAVLINK::update()
0000016c t test_imu(unsigned char, Menu::arg const*) 0000016c t test_imu(unsigned char, Menu::arg const*)
0000016e t send_attitude(mavlink_channel_t) 0000016e t send_attitude(mavlink_channel_t)
00000174 t mavlink_send_message(mavlink_channel_t, ap_message, unsigned int) 00000174 t mavlink_send_message(mavlink_channel_t, ap_message, unsigned int)
000001a0 T GCS_MAVLINK::update()
000001a2 t mavlink_try_send_message(mavlink_channel_t, ap_message, unsigned int) 000001a2 t mavlink_try_send_message(mavlink_channel_t, ap_message, unsigned int)
000001a8 t print_radio_values() 000001a8 t print_radio_values()
000001be t arm_motors() 000001be t arm_motors()
@ -661,29 +671,29 @@
000001e4 t verify_nav_wp() 000001e4 t verify_nav_wp()
000001e4 t setup_flightmodes(unsigned char, Menu::arg const*) 000001e4 t setup_flightmodes(unsigned char, Menu::arg const*)
000001ea t init_home() 000001ea t init_home()
00000216 t set_mode(unsigned char)
0000021a t send_raw_imu1(mavlink_channel_t) 0000021a t send_raw_imu1(mavlink_channel_t)
0000021c t test_wp(unsigned char, Menu::arg const*) 0000021c t test_wp(unsigned char, Menu::arg const*)
00000226 t set_mode(unsigned char)
00000228 t setup_radio(unsigned char, Menu::arg const*) 00000228 t setup_radio(unsigned char, Menu::arg const*)
0000022a t send_gps_raw(mavlink_channel_t) 0000022a t send_gps_raw(mavlink_channel_t)
00000242 t calc_loiter(int, int) 00000242 t calc_loiter(int, int)
00000268 t send_raw_imu3(mavlink_channel_t) 00000268 t send_raw_imu3(mavlink_channel_t)
0000030c t heli_init_swash() 00000298 T update_throttle_mode()
00000312 W Parameters::~Parameters() 00000326 W Parameters::~Parameters()
00000328 t report_heli() 00000328 t report_heli()
00000330 t tuning() 0000033a t heli_init_swash()
0000036a t tuning()
00000382 t print_log_menu() 00000382 t print_log_menu()
0000039a T update_throttle_mode() 0000039e T update_roll_pitch_mode()
000003a0 t read_battery() 000003a0 t read_battery()
0000045c T update_yaw_mode() 0000045c T update_yaw_mode()
0000046e T update_roll_pitch_mode()
0000053e t heli_move_swash(int, int, int, int) 0000053e t heli_move_swash(int, int, int, int)
000005cc t __static_initialization_and_destruction_0(int, int) 000005cc t __static_initialization_and_destruction_0(int, int)
0000061e t init_ardupilot() 000005fc t init_ardupilot()
0000071a t update_nav_wp() 0000071a t update_nav_wp()
000007e8 t setup_heli(unsigned char, Menu::arg const*) 000007e8 t setup_heli(unsigned char, Menu::arg const*)
00000870 t process_next_command() 00000870 t process_next_command()
000009b8 W Parameters::Parameters() 00000a64 W Parameters::Parameters()
00000a1f b g 00000b2d b g
000012ec T GCS_MAVLINK::handleMessage(__mavlink_message*) 000012ec T GCS_MAVLINK::handleMessage(__mavlink_message*)
00001598 T loop 000016c8 T loop

View File

@ -95,7 +95,7 @@
<Firmware> <Firmware>
<url>http://ardupilot-mega.googlecode.com/git/Tools/ArdupilotMegaPlanner/Firmware/AC2-Heli-1280.hex</url> <url>http://ardupilot-mega.googlecode.com/git/Tools/ArdupilotMegaPlanner/Firmware/AC2-Heli-1280.hex</url>
<url2560>http://ardupilot-mega.googlecode.com/git/Tools/ArdupilotMegaPlanner/Firmware/AC2-Heli-2560.hex</url2560> <url2560>http://ardupilot-mega.googlecode.com/git/Tools/ArdupilotMegaPlanner/Firmware/AC2-Heli-2560.hex</url2560>
<name>ArduCopter V2.0.49 Beta Heli (2560 only)</name> <name>ArduCopter V2.0.50 Beta Heli (2560 only)</name>
<desc> <desc>
#define AUTO_RESET_LOITER 0 #define AUTO_RESET_LOITER 0
#define FRAME_CONFIG HELI_FRAME #define FRAME_CONFIG HELI_FRAME
@ -137,7 +137,7 @@
#define NAV_LOITER_IMAX 10 #define NAV_LOITER_IMAX 10
</desc> </desc>
<format_version>111</format_version> <format_version>112</format_version>
</Firmware> </Firmware>
<Firmware> <Firmware>
<url>http://ardupilot-mega.googlecode.com/git/Tools/ArdupilotMegaPlanner/Firmware/AC2-QUADHIL-1280.hex</url> <url>http://ardupilot-mega.googlecode.com/git/Tools/ArdupilotMegaPlanner/Firmware/AC2-QUADHIL-1280.hex</url>
@ -157,7 +157,7 @@
<Firmware> <Firmware>
<url>http://ardupilot-mega.googlecode.com/git/Tools/ArdupilotMegaPlanner/Firmware/AC2-HELHIL-1280.hex</url> <url>http://ardupilot-mega.googlecode.com/git/Tools/ArdupilotMegaPlanner/Firmware/AC2-HELHIL-1280.hex</url>
<url2560>http://ardupilot-mega.googlecode.com/git/Tools/ArdupilotMegaPlanner/Firmware/AC2-HELHIL-2560.hex</url2560> <url2560>http://ardupilot-mega.googlecode.com/git/Tools/ArdupilotMegaPlanner/Firmware/AC2-HELHIL-2560.hex</url2560>
<name>ArduCopter V2.0.49 Beta Heli Hil</name> <name>ArduCopter V2.0.50 Beta Heli Hil</name>
<desc> <desc>
#define HIL_MODE HIL_MODE_ATTITUDE #define HIL_MODE HIL_MODE_ATTITUDE
@ -203,6 +203,6 @@
</desc> </desc>
<format_version>111</format_version> <format_version>112</format_version>
</Firmware> </Firmware>
</options> </options>

View File

@ -1,36 +1,545 @@
From https://code.google.com/p/ardupilot-mega From https://code.google.com/p/ardupilot-mega
8a21477..b0bfa54 APM_Camera -> origin/APM_Camera b0bfa54..8d3fb35 APM_Camera -> origin/APM_Camera
6f44fff..076459c master -> origin/master cd1bcd6..34c9a18 master -> origin/master
Updating 6f44fff..076459c Updating cd1bcd6..34c9a18
Fast-forward Fast-forward
ArduCopter/control_modes.pde | 16 + .gitignore | 4 +-
ArduBoat/ArduBoat.cpp | 7 +-
ArduBoat/ArduBoat.pde | 2 +-
ArduBoat/BoatGeneric.h | 39 +-
ArduBoat/ControllerBoat.h | 157 +-
ArduCopter/APM_Config.h | 7 +-
ArduCopter/ArduCopter.pde | 64 +-
ArduCopter/Attitude.pde | 54 +-
ArduCopter/CMakeLists.txt | 165 -
ArduCopter/GCS.h | 7 +-
ArduCopter/GCS_Mavlink.pde | 23 +-
ArduCopter/Log.pde | 261 +-
ArduCopter/Parameters.h | 12 +-
ArduCopter/config.h | 45 +-
ArduCopter/control_modes.pde | 8 +-
ArduCopter/defines.h | 1 + ArduCopter/defines.h | 1 +
ArduCopter/system.pde | 4 + ArduCopter/heli.pde | 25 +
ArduPlane/ArduPlane.pde | 10 +- ArduCopter/motors.pde | 4 +-
ArduPlane/Parameters.h | 3 + ArduCopter/navigation.pde | 42 +-
ArduPlane/config.h | 8 + ArduCopter/radio.pde | 14 +-
Tools/ArduTracker/tags |148411 -------------------- ArduCopter/system.pde | 36 +-
Tools/ArdupilotMegaPlanner/GCSViews/Terminal.cs | 2 + ArduPlane/.gitignore | 1 -
Tools/ArdupilotMegaPlanner/Log.cs | 174 +- ArduPlane/ArduPlane.pde | 27 +-
Tools/ArdupilotMegaPlanner/MainV2.cs | 9 +- ArduPlane/CMakeLists.txt | 168 -
ArduPlane/GCS.h | 7 +-
ArduPlane/GCS_Mavlink.pde | 464 +++-
ArduPlane/Log.pde | 10 +-
ArduPlane/Mavlink_compat.h | 172 +
ArduPlane/Parameters.h | 12 +-
ArduPlane/commands.pde | 65 +-
ArduPlane/commands_logic.pde | 152 +-
ArduPlane/commands_process.pde | 183 +-
ArduPlane/config.h | 5 +
ArduPlane/defines.h | 3 +-
ArduPlane/navigation.pde | 2 +-
ArduPlane/system.pde | 21 +-
ArduPlane/test.pde | 6 +-
ArduRover/ArduRover.cpp | 6 +-
ArduRover/ArduRover.pde | 1 +
ArduRover/CarStampede.h | 31 +-
ArduRover/ControllerCar.h | 158 +-
ArduRover/ControllerTank.h | 176 +-
ArduRover/TankGeneric.h | 16 +-
CMakeLists.txt | 9 +-
Tools/ArdupilotMegaPlanner/ArdupilotMega.csproj | 9 +
Tools/ArdupilotMegaPlanner/Camera.Designer.cs | 421 +++
Tools/ArdupilotMegaPlanner/Camera.cs | 139 +
Tools/ArdupilotMegaPlanner/Camera.resx | 120 +
Tools/ArdupilotMegaPlanner/CommsTCPSerial.cs | 12 +-
Tools/ArdupilotMegaPlanner/CurrentState.cs | 81 +-
.../GCSViews/Configuration.Designer.cs | 137 +-
.../ArdupilotMegaPlanner/GCSViews/Configuration.cs | 47 +-
.../GCSViews/Configuration.resx | 2088 +++++-------
Tools/ArdupilotMegaPlanner/GCSViews/Firmware.cs | 12 +-
.../GCSViews/FlightData.Designer.cs | 155 +-
Tools/ArdupilotMegaPlanner/GCSViews/FlightData.cs | 164 +-
.../ArdupilotMegaPlanner/GCSViews/FlightData.resx | 604 ++--
.../ArdupilotMegaPlanner/GCSViews/FlightPlanner.cs | 4 +-
Tools/ArdupilotMegaPlanner/GCSViews/Simulation.cs | 18 +-
Tools/ArdupilotMegaPlanner/GCSViews/Terminal.cs | 7 +
Tools/ArdupilotMegaPlanner/Joystick.cs | 50 +-
.../ArdupilotMegaPlanner/JoystickSetup.Designer.cs | 276 ++-
Tools/ArdupilotMegaPlanner/JoystickSetup.cs | 125 +-
Tools/ArdupilotMegaPlanner/JoystickSetup.resx | 763 ++++-
Tools/ArdupilotMegaPlanner/MAVLink.cs | 11 +-
Tools/ArdupilotMegaPlanner/MainV2.cs | 87 +-
Tools/ArdupilotMegaPlanner/MavlinkLog.cs | 9 +-
Tools/ArdupilotMegaPlanner/Program.cs | 1 +
.../Properties/AssemblyInfo.cs | 2 +- .../Properties/AssemblyInfo.cs | 2 +-
Tools/ArdupilotMegaPlanner/SerialOutput.cs | 13 +-
Tools/ArdupilotMegaPlanner/Setup/Setup.cs | 4 +-
Tools/ArdupilotMegaPlanner/Updater/Updater.csproj | 2 +-
.../bin/Release/ArdupilotMegaPlanner.application | 2 +- .../bin/Release/ArdupilotMegaPlanner.application | 2 +-
.../bin/Release/ArdupilotMegaPlanner.exe | Bin 2194432 -> 2194944 bytes .../bin/Release/ArdupilotMegaPlanner.exe | Bin 2194944 -> 2188288 bytes
.../bin/Release/GCSViews/Configuration.resx | 2088 +++++-------
.../bin/Release/GCSViews/FlightData.resx | 604 ++--
.../bin/Release/JoystickSetup.resx | 763 ++++-
Tools/ArdupilotMegaPlanner/bin/Release/Updater.exe | Bin 8192 -> 8192 bytes Tools/ArdupilotMegaPlanner/bin/Release/Updater.exe | Bin 8192 -> 8192 bytes
Tools/ArdupilotMegaPlanner/bin/Release/resedit.exe | Bin 20480 -> 20480 bytes Tools/ArdupilotMegaPlanner/bin/Release/resedit.exe | Bin 20480 -> 20480 bytes
.../ru-RU/ArdupilotMegaPlanner.resources.dll | Bin 53248 -> 53248 bytes .../ru-RU/ArdupilotMegaPlanner.resources.dll | Bin 53248 -> 53248 bytes
.../zh-Hans/ArdupilotMegaPlanner.resources.dll | Bin 380928 -> 380928 bytes .../zh-Hans/ArdupilotMegaPlanner.resources.dll | Bin 380928 -> 380928 bytes
apo/ControllerQuad.h | 51 +- Tools/scripts/format.sh | 13 +
apo/QuadArducopter.h | 10 +- apo/ControllerPlane.h | 329 +-
libraries/APO/AP_ArmingMechanism.cpp | 57 + apo/ControllerQuad.h | 414 +--
libraries/APO/AP_ArmingMechanism.h | 67 + apo/PlaneEasystar.h | 18 +-
libraries/APO/AP_BatteryMonitor.cpp | 2 + apo/QuadArducopter.h | 17 +-
libraries/APO/AP_BatteryMonitor.h | 58 +- apo/apo.pde | 5 +-
libraries/APO/AP_Guide.h | 1 + libraries/APM_BMP085/APM_BMP085.h | 2 +-
libraries/APO/AP_HardwareAbstractionLayer.h | 13 + libraries/APM_PI/APM_PI.cpp | 8 +-
libraries/APO/AP_Navigator.cpp | 20 +- libraries/APO/APO.h | 6 +-
libraries/Desktop/support/FastSerial.cpp | 283 +- libraries/APO/APO_DefaultSetup.h | 321 +-
27 files changed, 517 insertions(+), 148687 deletions(-) libraries/APO/AP_ArmingMechanism.cpp | 14 +-
delete mode 100644 Tools/ArduTracker/tags libraries/APO/AP_ArmingMechanism.h | 10 +-
create mode 100644 libraries/APO/AP_ArmingMechanism.cpp libraries/APO/AP_Autopilot.cpp | 461 ++--
create mode 100644 libraries/APO/AP_ArmingMechanism.h libraries/APO/AP_Autopilot.h | 195 +-
libraries/APO/AP_BatteryMonitor.h | 1 -
libraries/APO/AP_CommLink.cpp | 1280 ++++----
libraries/APO/AP_CommLink.h | 126 +-
libraries/APO/AP_Controller.cpp | 111 +-
libraries/APO/AP_Controller.h | 402 ++-
libraries/APO/AP_Guide.cpp | 429 ++-
libraries/APO/AP_Guide.h | 203 +-
libraries/APO/AP_HardwareAbstractionLayer.cpp | 1 +
libraries/APO/AP_HardwareAbstractionLayer.h | 258 +-
libraries/APO/AP_MavlinkCommand.cpp | 304 +-
libraries/APO/AP_MavlinkCommand.h | 654 ++--
libraries/APO/AP_Navigator.cpp | 298 +-
libraries/APO/AP_Navigator.h | 358 +-
libraries/APO/AP_RcChannel.cpp | 125 +-
libraries/APO/AP_RcChannel.h | 103 +-
libraries/APO/AP_Var_keys.h | 21 +-
libraries/APO/constants.h | 1 +
libraries/APO/examples/MavlinkTest/MavlinkTest.pde | 64 +-
libraries/APO/examples/ServoManual/ServoManual.pde | 144 +-
libraries/APO/examples/ServoSweep/ServoSweep.pde | 184 +-
libraries/AP_Common/AP_Common.h | 20 +-
libraries/AP_Common/AP_Test.h | 4 +-
libraries/AP_Common/AP_Var.cpp | 80 +-
libraries/AP_Common/AP_Var.h | 12 +-
libraries/AP_Common/c++.cpp | 22 +-
libraries/AP_Common/examples/menu/menu.pde | 22 +-
libraries/AP_Common/include/menu.h | 186 +-
libraries/AP_Common/menu.cpp | 198 +-
libraries/AP_DCM/AP_DCM_HIL.cpp | 12 +-
libraries/AP_GPS/AP_GPS_406.cpp | 72 +-
libraries/AP_GPS/AP_GPS_406.h | 8 +-
libraries/AP_GPS/AP_GPS_Auto.cpp | 316 +-
libraries/AP_GPS/AP_GPS_Auto.h | 58 +-
libraries/AP_GPS/AP_GPS_HIL.cpp | 18 +-
libraries/AP_GPS/AP_GPS_HIL.h | 10 +-
libraries/AP_GPS/AP_GPS_IMU.cpp | 294 +-
libraries/AP_GPS/AP_GPS_IMU.h | 68 +-
libraries/AP_GPS/AP_GPS_MTK.cpp | 226 +-
libraries/AP_GPS/AP_GPS_MTK.h | 74 +-
libraries/AP_GPS/AP_GPS_MTK16.cpp | 240 +-
libraries/AP_GPS/AP_GPS_MTK16.h | 78 +-
libraries/AP_GPS/AP_GPS_NMEA.cpp | 528 ++--
libraries/AP_GPS/AP_GPS_NMEA.h | 118 +-
libraries/AP_GPS/AP_GPS_None.h | 8 +-
libraries/AP_GPS/AP_GPS_SIRF.cpp | 280 +-
libraries/AP_GPS/AP_GPS_SIRF.h | 130 +-
libraries/AP_GPS/AP_GPS_Shim.h | 38 +-
libraries/AP_GPS/AP_GPS_UBLOX.cpp | 292 +-
libraries/AP_GPS/AP_GPS_UBLOX.h | 184 +-
libraries/AP_GPS/GPS.cpp | 50 +-
libraries/AP_GPS/GPS.h | 330 +-
.../AP_GPS/examples/GPS_406_test/GPS_406_test.pde | 62 +-
.../examples/GPS_AUTO_test/GPS_AUTO_test.pde | 42 +-
.../AP_GPS/examples/GPS_MTK_test/GPS_MTK_test.pde | 60 +-
.../examples/GPS_NMEA_test/GPS_NMEA_test.pde | 81 +-
.../examples/GPS_UBLOX_test/GPS_UBLOX_test.pde | 60 +-
libraries/Desktop/Desktop.mk | 2 +-
libraries/Desktop/Makefile.desktop | 3 +
libraries/GCS_MAVLink/GCS_MAVLink.cpp | 6 +-
libraries/GCS_MAVLink/GCS_MAVLink.h | 18 +-
.../include/ardupilotmega/ardupilotmega.h | 74 +-
.../include/ardupilotmega/mavlink_msg_ap_adc.h | 254 ++
.../ardupilotmega/mavlink_msg_digicam_configure.h | 364 ++
.../ardupilotmega/mavlink_msg_digicam_control.h | 342 ++
.../ardupilotmega/mavlink_msg_mount_configure.h | 254 ++
.../ardupilotmega/mavlink_msg_mount_control.h | 254 ++
.../ardupilotmega/mavlink_msg_mount_status.h | 232 ++
.../GCS_MAVLink/include/ardupilotmega/testsuite.h | 340 ++
.../GCS_MAVLink/include/ardupilotmega/version.h | 2 +-
libraries/GCS_MAVLink/include/bittest.c | 39 -
libraries/GCS_MAVLink/include/common/common.h | 52 +-
.../mavlink_msg_attitude_controller_output.h | 169 -
.../include/common/mavlink_msg_attitude_new.h | 268 --
.../include/common/mavlink_msg_auth_key.h | 6 +-
.../common/mavlink_msg_change_operator_control.h | 6 +-
.../include/common/mavlink_msg_debug_vect.h | 6 +-
.../include/common/mavlink_msg_full_state.h | 428 ---
.../include/common/mavlink_msg_gps_status.h | 30 +-
.../include/common/mavlink_msg_named_value_float.h | 6 +-
.../include/common/mavlink_msg_named_value_int.h | 6 +-
.../common/mavlink_msg_object_detection_event.h | 6 +-
.../common/mavlink_msg_param_request_read.h | 6 +-
.../include/common/mavlink_msg_param_set.h | 6 +-
.../include/common/mavlink_msg_param_value.h | 6 +-
.../mavlink_msg_position_controller_output.h | 169 -
.../mavlink_msg_request_dynamic_gyro_calibration.h | 177 -
.../mavlink_msg_request_static_calibration.h | 138 -
.../common/mavlink_msg_set_roll_pitch_yaw.h | 184 -
.../common/mavlink_msg_set_roll_pitch_yaw_speed.h | 184 -
.../include/common/mavlink_msg_statustext.h | 6 +-
.../mavlink_msg_waypoint_set_global_reference.h | 294 --
libraries/GCS_MAVLink/include/common/testsuite.h | 30 +-
libraries/GCS_MAVLink/include/common/version.h | 2 +-
libraries/GCS_MAVLink/include/documentation.dox | 41 -
libraries/GCS_MAVLink/include/mavlink_helpers.h | 8 +-
libraries/GCS_MAVLink/include/minimal/mavlink.h | 11 -
.../include/minimal/mavlink_msg_heartbeat.h | 132 -
libraries/GCS_MAVLink/include/minimal/minimal.h | 45 -
libraries/GCS_MAVLink/include/pixhawk/mavlink.h | 11 -
.../include/pixhawk/mavlink_msg_attitude_control.h | 257 --
.../include/pixhawk/mavlink_msg_aux_status.h | 204 -
.../include/pixhawk/mavlink_msg_brief_feature.h | 249 --
.../include/pixhawk/mavlink_msg_control_status.h | 203 -
.../mavlink_msg_data_transmission_handshake.h | 174 -
.../include/pixhawk/mavlink_msg_debug_vect.h | 156 -
.../pixhawk/mavlink_msg_encapsulated_data.h | 124 -
.../pixhawk/mavlink_msg_encapsulated_image.h | 76 -
.../include/pixhawk/mavlink_msg_get_image_ack.h | 104 -
.../include/pixhawk/mavlink_msg_image_available.h | 586 ---
.../pixhawk/mavlink_msg_image_trigger_control.h | 101 -
.../include/pixhawk/mavlink_msg_image_triggered.h | 352 --
.../include/pixhawk/mavlink_msg_manual_control.h | 191 -
.../include/pixhawk/mavlink_msg_marker.h | 236 --
.../include/pixhawk/mavlink_msg_pattern_detected.h | 160 -
.../pixhawk/mavlink_msg_point_of_interest.h | 241 --
.../mavlink_msg_point_of_interest_connection.h | 307 --
.../mavlink_msg_position_control_offset_set.h | 206 -
.../mavlink_msg_position_control_setpoint.h | 192 -
.../mavlink_msg_position_control_setpoint_set.h | 226 --
.../include/pixhawk/mavlink_msg_raw_aux.h | 226 --
.../pixhawk/mavlink_msg_request_data_stream.h | 118 -
.../mavlink_msg_request_dynamic_gyro_calibration.h | 123 -
.../mavlink_msg_request_static_calibration.h | 90 -
.../include/pixhawk/mavlink_msg_set_altitude.h | 78 -
.../include/pixhawk/mavlink_msg_set_cam_shutter.h | 197 -
.../include/pixhawk/mavlink_msg_watchdog_command.h | 158 -
.../pixhawk/mavlink_msg_watchdog_heartbeat.h | 124 -
.../pixhawk/mavlink_msg_watchdog_process_info.h | 186 -
.../pixhawk/mavlink_msg_watchdog_process_status.h | 200 -
libraries/GCS_MAVLink/include/pixhawk/pixhawk.h | 79 -
libraries/GCS_MAVLink/include/protocol.h | 37 +-
libraries/GCS_MAVLink/include/slugs/mavlink.h | 11 -
.../include/slugs/mavlink_msg_air_data.h | 148 -
.../include/slugs/mavlink_msg_cpu_load.h | 138 -
.../include/slugs/mavlink_msg_ctrl_srfc_pt.h | 121 -
.../include/slugs/mavlink_msg_data_log.h | 216 --
.../include/slugs/mavlink_msg_diagnostic.h | 210 --
.../include/slugs/mavlink_msg_filtered_data.h | 216 --
.../include/slugs/mavlink_msg_gps_date_time.h | 203 -
.../include/slugs/mavlink_msg_mid_lvl_cmds.h | 167 -
.../GCS_MAVLink/include/slugs/mavlink_msg_pid.h | 130 -
.../include/slugs/mavlink_msg_pilot_console.h | 145 -
.../include/slugs/mavlink_msg_pwm_commands.h | 235 --
.../include/slugs/mavlink_msg_sensor_bias.h | 216 --
.../include/slugs/mavlink_msg_slugs_action.h | 138 -
.../include/slugs/mavlink_msg_slugs_navigation.h | 272 --
libraries/GCS_MAVLink/include/slugs/slugs.h | 56 -
libraries/GCS_MAVLink/include/ualberta/mavlink.h | 11 -
.../include/ualberta/mavlink_msg_nav_filter_bias.h | 242 --
.../ualberta/mavlink_msg_radio_calibration.h | 204 -
.../mavlink_msg_request_radio_calibration.h | 59 -
.../ualberta/mavlink_msg_request_rc_channels.h | 101 -
.../ualberta/mavlink_msg_ualberta_sys_status.h | 135 -
libraries/GCS_MAVLink/include/ualberta/ualberta.h | 79 -
.../include_v1.0/ardupilotmega/ardupilotmega.h | 122 +
.../include_v1.0/ardupilotmega/mavlink.h | 27 +
.../ardupilotmega/mavlink_msg_ap_adc.h | 254 ++
.../ardupilotmega/mavlink_msg_digicam_configure.h | 364 ++
.../ardupilotmega/mavlink_msg_digicam_control.h | 342 ++
.../ardupilotmega/mavlink_msg_meminfo.h | 166 +
.../ardupilotmega/mavlink_msg_mount_configure.h | 254 ++
.../ardupilotmega/mavlink_msg_mount_control.h | 254 ++
.../ardupilotmega/mavlink_msg_mount_status.h | 232 ++
.../ardupilotmega/mavlink_msg_sensor_offsets.h | 386 ++
.../ardupilotmega/mavlink_msg_set_mag_offsets.h | 232 ++
.../include_v1.0/ardupilotmega/testsuite.h | 538 +++
.../include_v1.0/ardupilotmega/version.h | 12 +
libraries/GCS_MAVLink/include_v1.0/checksum.h | 89 +
libraries/GCS_MAVLink/include_v1.0/common/common.h | 429 +++
.../GCS_MAVLink/include_v1.0/common/mavlink.h | 27 +
.../include_v1.0/common/mavlink_msg_attitude.h | 276 ++
.../common/mavlink_msg_attitude_quaternion.h | 298 ++
.../include_v1.0/common/mavlink_msg_auth_key.h | 144 +
.../common/mavlink_msg_change_operator_control.h | 204 +
.../mavlink_msg_change_operator_control_ack.h | 188 +
.../include_v1.0/common/mavlink_msg_command_ack.h | 166 +
.../include_v1.0/common/mavlink_msg_command_long.h | 364 ++
.../include_v1.0/common/mavlink_msg_data_stream.h | 188 +
.../include_v1.0/common/mavlink_msg_debug.h | 188 +
.../include_v1.0/common/mavlink_msg_debug_vect.h | 226 ++
.../common/mavlink_msg_extended_message.h | 188 +
.../common/mavlink_msg_global_position_int.h | 320 ++
.../mavlink_msg_global_position_setpoint_int.h | 232 ++
.../mavlink_msg_global_vision_position_estimate.h | 276 ++
.../common/mavlink_msg_gps_global_origin.h | 188 +
.../include_v1.0/common/mavlink_msg_gps_raw_int.h | 342 ++
.../include_v1.0/common/mavlink_msg_gps_status.h | 252 ++
.../include_v1.0/common/mavlink_msg_heartbeat.h | 251 ++
.../include_v1.0/common/mavlink_msg_hil_controls.h | 364 ++
.../common/mavlink_msg_hil_rc_inputs_raw.h | 430 +++
.../include_v1.0/common/mavlink_msg_hil_state.h | 474 +++
.../common/mavlink_msg_local_position_ned.h | 276 ++
.../common/mavlink_msg_local_position_setpoint.h | 232 ++
.../common/mavlink_msg_manual_control.h | 320 ++
.../include_v1.0/common/mavlink_msg_memory_vect.h | 204 +
.../include_v1.0/common/mavlink_msg_mission_ack.h | 188 +
.../common/mavlink_msg_mission_clear_all.h | 166 +
.../common/mavlink_msg_mission_count.h | 188 +
.../common/mavlink_msg_mission_current.h | 144 +
.../include_v1.0/common/mavlink_msg_mission_item.h | 430 +++
.../common/mavlink_msg_mission_item_reached.h | 144 +
.../common/mavlink_msg_mission_request.h | 188 +
.../common/mavlink_msg_mission_request_list.h | 166 +
.../mavlink_msg_mission_request_partial_list.h | 210 ++
.../common/mavlink_msg_mission_set_current.h | 188 +
.../mavlink_msg_mission_write_partial_list.h | 210 ++
.../common/mavlink_msg_named_value_float.h | 182 +
.../common/mavlink_msg_named_value_int.h | 182 +
.../common/mavlink_msg_nav_controller_output.h | 298 ++
.../include_v1.0/common/mavlink_msg_optical_flow.h | 254 ++
.../common/mavlink_msg_param_request_list.h | 166 +
.../common/mavlink_msg_param_request_read.h | 204 +
.../include_v1.0/common/mavlink_msg_param_set.h | 226 ++
.../include_v1.0/common/mavlink_msg_param_value.h | 226 ++
.../include_v1.0/common/mavlink_msg_ping.h | 210 ++
.../include_v1.0/common/mavlink_msg_raw_imu.h | 342 ++
.../include_v1.0/common/mavlink_msg_raw_pressure.h | 232 ++
.../common/mavlink_msg_rc_channels_override.h | 342 ++
.../common/mavlink_msg_rc_channels_raw.h | 364 ++
.../common/mavlink_msg_rc_channels_scaled.h | 364 ++
.../common/mavlink_msg_request_data_stream.h | 232 ++
...link_msg_roll_pitch_yaw_speed_thrust_setpoint.h | 232 ++
.../mavlink_msg_roll_pitch_yaw_thrust_setpoint.h | 232 ++
.../common/mavlink_msg_safety_allowed_area.h | 276 ++
.../common/mavlink_msg_safety_set_allowed_area.h | 320 ++
.../include_v1.0/common/mavlink_msg_scaled_imu.h | 342 ++
.../common/mavlink_msg_scaled_pressure.h | 210 ++
.../common/mavlink_msg_servo_output_raw.h | 342 ++
.../mavlink_msg_set_global_position_setpoint_int.h | 232 ++
.../common/mavlink_msg_set_gps_global_origin.h | 210 ++
.../mavlink_msg_set_local_position_setpoint.h | 276 ++
.../include_v1.0/common/mavlink_msg_set_mode.h | 188 +
.../mavlink_msg_set_roll_pitch_yaw_speed_thrust.h | 254 ++
.../common/mavlink_msg_set_roll_pitch_yaw_thrust.h | 254 ++
.../common/mavlink_msg_state_correction.h | 320 ++
.../include_v1.0/common/mavlink_msg_statustext.h | 160 +
.../include_v1.0/common/mavlink_msg_sys_status.h | 408 ++
.../include_v1.0/common/mavlink_msg_system_time.h | 166 +
.../include_v1.0/common/mavlink_msg_vfr_hud.h | 254 ++
.../common}/mavlink_msg_vicon_position_estimate.h | 198 +-
.../common}/mavlink_msg_vision_position_estimate.h | 198 +-
.../common}/mavlink_msg_vision_speed_estimate.h | 148 +-
.../GCS_MAVLink/include_v1.0/common/testsuite.h | 3908 ++++++++++++++++++++
.../GCS_MAVLink/include_v1.0/common/version.h | 12 +
.../GCS_MAVLink/include_v1.0/mavlink_helpers.h | 488 +++
libraries/GCS_MAVLink/include_v1.0/mavlink_types.h | 182 +
libraries/GCS_MAVLink/include_v1.0/protocol.h | 319 ++
.../message_definitions/ardupilotmega.xml | 132 +
libraries/GCS_MAVLink/message_definitions/test.xml | 31 +
.../message_definitions_v1.0/ardupilotmega.xml | 177 +
.../message_definitions_v1.0/common.xml | 1536 ++++++++
.../message_definitions_v1.0/minimal.xml | 16 +
.../message_definitions_v1.0/pixhawk.xml | 193 +
.../GCS_MAVLink/message_definitions_v1.0/slugs.xml | 144 +
.../GCS_MAVLink/message_definitions_v1.0/test.xml | 31 +
.../message_definitions_v1.0/ualberta.xml | 54 +
libraries/RC_Channel/RC_Channel.cpp | 2 +-
libraries/RC_Channel/RC_Channel.h | 8 +-
libraries/RC_Channel/RC_Channel_aux.cpp | 2 +-
libraries/RC_Channel/RC_Channel_aux.h | 1 +
355 files changed, 43388 insertions(+), 22115 deletions(-)
delete mode 100644 ArduCopter/CMakeLists.txt
delete mode 100644 ArduPlane/.gitignore
delete mode 100644 ArduPlane/CMakeLists.txt
create mode 100644 ArduPlane/Mavlink_compat.h
create mode 100644 Tools/ArdupilotMegaPlanner/Camera.Designer.cs
create mode 100644 Tools/ArdupilotMegaPlanner/Camera.cs
create mode 100644 Tools/ArdupilotMegaPlanner/Camera.resx
create mode 100755 Tools/scripts/format.sh
create mode 100644 libraries/GCS_MAVLink/include/ardupilotmega/mavlink_msg_ap_adc.h
create mode 100644 libraries/GCS_MAVLink/include/ardupilotmega/mavlink_msg_digicam_configure.h
create mode 100644 libraries/GCS_MAVLink/include/ardupilotmega/mavlink_msg_digicam_control.h
create mode 100644 libraries/GCS_MAVLink/include/ardupilotmega/mavlink_msg_mount_configure.h
create mode 100644 libraries/GCS_MAVLink/include/ardupilotmega/mavlink_msg_mount_control.h
create mode 100644 libraries/GCS_MAVLink/include/ardupilotmega/mavlink_msg_mount_status.h
delete mode 100644 libraries/GCS_MAVLink/include/bittest.c
delete mode 100644 libraries/GCS_MAVLink/include/common/mavlink_msg_attitude_controller_output.h
delete mode 100644 libraries/GCS_MAVLink/include/common/mavlink_msg_attitude_new.h
delete mode 100644 libraries/GCS_MAVLink/include/common/mavlink_msg_full_state.h
delete mode 100644 libraries/GCS_MAVLink/include/common/mavlink_msg_position_controller_output.h
delete mode 100644 libraries/GCS_MAVLink/include/common/mavlink_msg_request_dynamic_gyro_calibration.h
delete mode 100644 libraries/GCS_MAVLink/include/common/mavlink_msg_request_static_calibration.h
delete mode 100644 libraries/GCS_MAVLink/include/common/mavlink_msg_set_roll_pitch_yaw.h
delete mode 100644 libraries/GCS_MAVLink/include/common/mavlink_msg_set_roll_pitch_yaw_speed.h
delete mode 100644 libraries/GCS_MAVLink/include/common/mavlink_msg_waypoint_set_global_reference.h
delete mode 100644 libraries/GCS_MAVLink/include/documentation.dox
delete mode 100644 libraries/GCS_MAVLink/include/minimal/mavlink.h
delete mode 100644 libraries/GCS_MAVLink/include/minimal/mavlink_msg_heartbeat.h
delete mode 100644 libraries/GCS_MAVLink/include/minimal/minimal.h
delete mode 100644 libraries/GCS_MAVLink/include/pixhawk/mavlink.h
delete mode 100644 libraries/GCS_MAVLink/include/pixhawk/mavlink_msg_attitude_control.h
delete mode 100644 libraries/GCS_MAVLink/include/pixhawk/mavlink_msg_aux_status.h
delete mode 100644 libraries/GCS_MAVLink/include/pixhawk/mavlink_msg_brief_feature.h
delete mode 100644 libraries/GCS_MAVLink/include/pixhawk/mavlink_msg_control_status.h
delete mode 100644 libraries/GCS_MAVLink/include/pixhawk/mavlink_msg_data_transmission_handshake.h
delete mode 100644 libraries/GCS_MAVLink/include/pixhawk/mavlink_msg_debug_vect.h
delete mode 100644 libraries/GCS_MAVLink/include/pixhawk/mavlink_msg_encapsulated_data.h
delete mode 100644 libraries/GCS_MAVLink/include/pixhawk/mavlink_msg_encapsulated_image.h
delete mode 100644 libraries/GCS_MAVLink/include/pixhawk/mavlink_msg_get_image_ack.h
delete mode 100644 libraries/GCS_MAVLink/include/pixhawk/mavlink_msg_image_available.h
delete mode 100644 libraries/GCS_MAVLink/include/pixhawk/mavlink_msg_image_trigger_control.h
delete mode 100644 libraries/GCS_MAVLink/include/pixhawk/mavlink_msg_image_triggered.h
delete mode 100644 libraries/GCS_MAVLink/include/pixhawk/mavlink_msg_manual_control.h
delete mode 100644 libraries/GCS_MAVLink/include/pixhawk/mavlink_msg_marker.h
delete mode 100644 libraries/GCS_MAVLink/include/pixhawk/mavlink_msg_pattern_detected.h
delete mode 100644 libraries/GCS_MAVLink/include/pixhawk/mavlink_msg_point_of_interest.h
delete mode 100644 libraries/GCS_MAVLink/include/pixhawk/mavlink_msg_point_of_interest_connection.h
delete mode 100644 libraries/GCS_MAVLink/include/pixhawk/mavlink_msg_position_control_offset_set.h
delete mode 100644 libraries/GCS_MAVLink/include/pixhawk/mavlink_msg_position_control_setpoint.h
delete mode 100644 libraries/GCS_MAVLink/include/pixhawk/mavlink_msg_position_control_setpoint_set.h
delete mode 100644 libraries/GCS_MAVLink/include/pixhawk/mavlink_msg_raw_aux.h
delete mode 100644 libraries/GCS_MAVLink/include/pixhawk/mavlink_msg_request_data_stream.h
delete mode 100644 libraries/GCS_MAVLink/include/pixhawk/mavlink_msg_request_dynamic_gyro_calibration.h
delete mode 100644 libraries/GCS_MAVLink/include/pixhawk/mavlink_msg_request_static_calibration.h
delete mode 100644 libraries/GCS_MAVLink/include/pixhawk/mavlink_msg_set_altitude.h
delete mode 100644 libraries/GCS_MAVLink/include/pixhawk/mavlink_msg_set_cam_shutter.h
delete mode 100644 libraries/GCS_MAVLink/include/pixhawk/mavlink_msg_watchdog_command.h
delete mode 100644 libraries/GCS_MAVLink/include/pixhawk/mavlink_msg_watchdog_heartbeat.h
delete mode 100644 libraries/GCS_MAVLink/include/pixhawk/mavlink_msg_watchdog_process_info.h
delete mode 100644 libraries/GCS_MAVLink/include/pixhawk/mavlink_msg_watchdog_process_status.h
delete mode 100644 libraries/GCS_MAVLink/include/pixhawk/pixhawk.h
delete mode 100644 libraries/GCS_MAVLink/include/slugs/mavlink.h
delete mode 100644 libraries/GCS_MAVLink/include/slugs/mavlink_msg_air_data.h
delete mode 100644 libraries/GCS_MAVLink/include/slugs/mavlink_msg_cpu_load.h
delete mode 100644 libraries/GCS_MAVLink/include/slugs/mavlink_msg_ctrl_srfc_pt.h
delete mode 100644 libraries/GCS_MAVLink/include/slugs/mavlink_msg_data_log.h
delete mode 100644 libraries/GCS_MAVLink/include/slugs/mavlink_msg_diagnostic.h
delete mode 100644 libraries/GCS_MAVLink/include/slugs/mavlink_msg_filtered_data.h
delete mode 100644 libraries/GCS_MAVLink/include/slugs/mavlink_msg_gps_date_time.h
delete mode 100644 libraries/GCS_MAVLink/include/slugs/mavlink_msg_mid_lvl_cmds.h
delete mode 100644 libraries/GCS_MAVLink/include/slugs/mavlink_msg_pid.h
delete mode 100644 libraries/GCS_MAVLink/include/slugs/mavlink_msg_pilot_console.h
delete mode 100644 libraries/GCS_MAVLink/include/slugs/mavlink_msg_pwm_commands.h
delete mode 100644 libraries/GCS_MAVLink/include/slugs/mavlink_msg_sensor_bias.h
delete mode 100644 libraries/GCS_MAVLink/include/slugs/mavlink_msg_slugs_action.h
delete mode 100644 libraries/GCS_MAVLink/include/slugs/mavlink_msg_slugs_navigation.h
delete mode 100644 libraries/GCS_MAVLink/include/slugs/slugs.h
delete mode 100644 libraries/GCS_MAVLink/include/ualberta/mavlink.h
delete mode 100644 libraries/GCS_MAVLink/include/ualberta/mavlink_msg_nav_filter_bias.h
delete mode 100644 libraries/GCS_MAVLink/include/ualberta/mavlink_msg_radio_calibration.h
delete mode 100644 libraries/GCS_MAVLink/include/ualberta/mavlink_msg_request_radio_calibration.h
delete mode 100644 libraries/GCS_MAVLink/include/ualberta/mavlink_msg_request_rc_channels.h
delete mode 100644 libraries/GCS_MAVLink/include/ualberta/mavlink_msg_ualberta_sys_status.h
delete mode 100644 libraries/GCS_MAVLink/include/ualberta/ualberta.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/ardupilotmega/ardupilotmega.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/ardupilotmega/mavlink.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/ardupilotmega/mavlink_msg_ap_adc.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/ardupilotmega/mavlink_msg_digicam_configure.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/ardupilotmega/mavlink_msg_digicam_control.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/ardupilotmega/mavlink_msg_meminfo.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/ardupilotmega/mavlink_msg_mount_configure.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/ardupilotmega/mavlink_msg_mount_control.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/ardupilotmega/mavlink_msg_mount_status.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/ardupilotmega/mavlink_msg_sensor_offsets.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/ardupilotmega/mavlink_msg_set_mag_offsets.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/ardupilotmega/testsuite.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/ardupilotmega/version.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/checksum.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/common.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_attitude.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_attitude_quaternion.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_auth_key.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_change_operator_control.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_change_operator_control_ack.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_command_ack.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_command_long.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_data_stream.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_debug.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_debug_vect.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_extended_message.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_global_position_int.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_global_position_setpoint_int.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_global_vision_position_estimate.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_gps_global_origin.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_gps_raw_int.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_gps_status.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_heartbeat.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_hil_controls.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_hil_rc_inputs_raw.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_hil_state.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_local_position_ned.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_local_position_setpoint.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_manual_control.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_memory_vect.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_mission_ack.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_mission_clear_all.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_mission_count.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_mission_current.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_mission_item.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_mission_item_reached.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_mission_request.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_mission_request_list.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_mission_request_partial_list.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_mission_set_current.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_mission_write_partial_list.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_named_value_float.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_named_value_int.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_nav_controller_output.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_optical_flow.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_param_request_list.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_param_request_read.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_param_set.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_param_value.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_ping.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_raw_imu.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_raw_pressure.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_rc_channels_override.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_rc_channels_raw.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_rc_channels_scaled.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_request_data_stream.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_roll_pitch_yaw_speed_thrust_setpoint.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_roll_pitch_yaw_thrust_setpoint.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_safety_allowed_area.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_safety_set_allowed_area.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_scaled_imu.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_scaled_pressure.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_servo_output_raw.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_set_global_position_setpoint_int.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_set_gps_global_origin.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_set_local_position_setpoint.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_set_mode.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_set_roll_pitch_yaw_speed_thrust.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_set_roll_pitch_yaw_thrust.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_state_correction.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_statustext.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_sys_status.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_system_time.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/mavlink_msg_vfr_hud.h
rename libraries/GCS_MAVLink/{include/pixhawk => include_v1.0/common}/mavlink_msg_vicon_position_estimate.h (54%)
rename libraries/GCS_MAVLink/{include/pixhawk => include_v1.0/common}/mavlink_msg_vision_position_estimate.h (54%)
rename libraries/GCS_MAVLink/{include/pixhawk => include_v1.0/common}/mavlink_msg_vision_speed_estimate.h (57%)
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/testsuite.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/common/version.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/mavlink_helpers.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/mavlink_types.h
create mode 100644 libraries/GCS_MAVLink/include_v1.0/protocol.h
create mode 100644 libraries/GCS_MAVLink/message_definitions/test.xml
create mode 100644 libraries/GCS_MAVLink/message_definitions_v1.0/ardupilotmega.xml
create mode 100644 libraries/GCS_MAVLink/message_definitions_v1.0/common.xml
create mode 100644 libraries/GCS_MAVLink/message_definitions_v1.0/minimal.xml
create mode 100644 libraries/GCS_MAVLink/message_definitions_v1.0/pixhawk.xml
create mode 100644 libraries/GCS_MAVLink/message_definitions_v1.0/slugs.xml
create mode 100644 libraries/GCS_MAVLink/message_definitions_v1.0/test.xml
create mode 100644 libraries/GCS_MAVLink/message_definitions_v1.0/ualberta.xml

View File

@ -488,6 +488,11 @@ namespace ArdupilotMega.GCSViews
((DomainUpDown)text[0]).SelectedIndex = index; ((DomainUpDown)text[0]).SelectedIndex = index;
((DomainUpDown)text[0]).BackColor = Color.Green; ((DomainUpDown)text[0]).BackColor = Color.Green;
} }
else
{
((DomainUpDown)text[0]).Text = option;
((DomainUpDown)text[0]).BackColor = Color.Green;
}
} }
} }
catch { } catch { }
@ -515,8 +520,11 @@ namespace ArdupilotMega.GCSViews
int index = line.IndexOf(','); int index = line.IndexOf(',');
int index2 = line.IndexOf(',', index + 1);
if (index == -1) if (index == -1)
continue; continue;
if (index2 != -1)
line = line.Replace(',','.');
string name = line.Substring(0, index); string name = line.Substring(0, index);
float value = float.Parse(line.Substring(index + 1), new System.Globalization.CultureInfo("en-US")); float value = float.Parse(line.Substring(index + 1), new System.Globalization.CultureInfo("en-US"));
@ -569,7 +577,7 @@ namespace ArdupilotMega.GCSViews
MAVLink.modifyParamForDisplay(false, row.Cells[0].Value.ToString(), ref value); MAVLink.modifyParamForDisplay(false, row.Cells[0].Value.ToString(), ref value);
sw.WriteLine(row.Cells[0].Value.ToString() + "," + value); sw.WriteLine(row.Cells[0].Value.ToString() + "," + value.ToString(new System.Globalization.CultureInfo("en-US")));
} }
sw.Close(); sw.Close();
} }

View File

@ -34,5 +34,5 @@ using System.Resources;
// by using the '*' as shown below: // by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")] // [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")] [assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.87")] [assembly: AssemblyFileVersion("1.0.88")]
[assembly: NeutralResourcesLanguageAttribute("")] [assembly: NeutralResourcesLanguageAttribute("")]

View File

@ -2,12 +2,6 @@
<configuration> <configuration>
<configSections> <configSections>
</configSections> </configSections>
<!--
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
<supportedRuntime version="v4.0"/>
</startup>
-->
<startup> <startup>
<supportedRuntime version="v2.0.50727"/> <supportedRuntime version="v2.0.50727"/>
</startup> </startup>

View File

@ -11,7 +11,7 @@
<dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity" /> <dsig:Transform Algorithm="urn:schemas-microsoft-com:HashTransforms.Identity" />
</dsig:Transforms> </dsig:Transforms>
<dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" /> <dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" />
<dsig:DigestValue>S+dMQOC9TeJyQiYvhw37LpJxZU0=</dsig:DigestValue> <dsig:DigestValue>wRpim3tDq7ttru3QnVS/G/tNt8A=</dsig:DigestValue>
</hash> </hash>
</dependentAssembly> </dependentAssembly>
</dependency> </dependency>

View File

@ -2,12 +2,6 @@
<configuration> <configuration>
<configSections> <configSections>
</configSections> </configSections>
<!--
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
<supportedRuntime version="v4.0"/>
</startup>
-->
<startup> <startup>
<supportedRuntime version="v2.0.50727"/> <supportedRuntime version="v2.0.50727"/>
</startup> </startup>

View File

@ -22,10 +22,15 @@
</ATT> </ATT>
<NTUN> <NTUN>
<F1>WP Dist</F1> <F1>WP Dist</F1>
<F2>WP Verify</F2> <F2>Target Bear</F2>
<F3>Target Bear</F3> <F3>Long Err</F3>
<F4>Long Err</F4> <F4>Lat Err</F4>
<F5>Lat Err</F5> <F5>nav lon</F5>
<F6>nav lat</F6>
<F7>nav lon I</F7>
<F8>nav lat I</F8>
<F9>Loiter Lon I</F9>
<F10>Loiter Lat I</F10>
</NTUN> </NTUN>
<CTUN> <CTUN>
<F1>Yaw Sensor</F1> <F1>Yaw Sensor</F1>

View File

@ -22,10 +22,15 @@
</ATT> </ATT>
<NTUN> <NTUN>
<F1>WP Dist</F1> <F1>WP Dist</F1>
<F2>WP Verify</F2> <F2>Target Bear</F2>
<F3>Target Bear</F3> <F3>Long Err</F3>
<F4>Long Err</F4> <F4>Lat Err</F4>
<F5>Lat Err</F5> <F5>nav lon</F5>
<F6>nav lat</F6>
<F7>nav lon I</F7>
<F8>nav lat I</F8>
<F9>Loiter Lon I</F9>
<F10>Loiter Lat I</F10>
</NTUN> </NTUN>
<CTUN> <CTUN>
<F1>Yaw Sensor</F1> <F1>Yaw Sensor</F1>

View File

@ -0,0 +1,40 @@
FRAME 0
RC1_MAX 2000.000000
RC1_MIN 1000.000000
RC1_TRIM 1500.000000
RC2_MAX 2000.000000
RC2_MIN 1000.000000
RC2_TRIM 1500.000000
RC3_MAX 2000.000000
RC3_MIN 1000.000000
RC3_TRIM 1500.000000
RC4_MAX 2000.000000
RC4_MIN 1000.000000
RC4_TRIM 1500.000000
RC5_MAX 2000.000000
RC5_MIN 1000.000000
RC5_TRIM 1500.000000
RC6_MAX 2000.000000
RC6_MIN 1000.000000
RC6_TRIM 1500.000000
RC7_MAX 2000.000000
RC7_MIN 1000.000000
RC7_TRIM 1500.000000
RC8_MAX 2000.000000
RC8_MIN 1000.000000
RC8_TRIM 1500.000000
FLTMODE1 3
FLTMODE2 1
FLTMODE3 2
FLTMODE4 6
FLTMODE5 5
FLTMODE6 0
NAV_LAT_I 0
NAV_LON_I 0
NAV_LAT_P 1
NAV_LON_P 1
STB_PIT_P 2
STB_RLL_P 2
XTRACK_P 1
RATE_PIT_P 0.1
RATE_RLL_P 0.1

1
Tools/autotest/README Normal file
View File

@ -0,0 +1 @@
This is an automated test suite for APM

View File

@ -0,0 +1,324 @@
# fly ArduCopter in SIL
import util, pexpect, sys, time, math, shutil, os
# get location of scripts
testdir=os.path.dirname(os.path.realpath(__file__))
sys.path.insert(0, util.reltopdir('../pymavlink'))
import mavutil
HOME_LOCATION='-35.362938,149.165085,650,270'
# a list of pexpect objects to read while waiting for
# messages. This keeps the output to stdout flowing
expect_list = []
def message_hook(mav, msg):
'''called as each mavlink msg is received'''
global expect_list
if msg.get_type() in [ 'NAV_CONTROLLER_OUTPUT' ]:
print(msg)
for p in expect_list:
try:
p.read_nonblocking(100, timeout=0)
except pexpect.TIMEOUT:
pass
def expect_callback(e):
'''called when waiting for a expect pattern'''
global expect_list
for p in expect_list:
if p == e:
continue
try:
while p.read_nonblocking(100, timeout=0):
pass
except pexpect.TIMEOUT:
pass
class location(object):
'''represent a GPS coordinate'''
def __init__(self, lat, lng, alt=0):
self.lat = lat
self.lng = lng
self.alt = alt
def get_distance(loc1, loc2):
'''get ground distance between two locations'''
dlat = loc2.lat - loc1.lat
dlong = loc2.lng - loc1.lng
return math.sqrt((dlat*dlat) + (dlong*dlong)) * 1.113195e5
def get_bearing(loc1, loc2):
'''get bearing from loc1 to loc2'''
off_x = loc2.lng - loc1.lng
off_y = loc2.lat - loc1.lat
bearing = 90.00 + math.atan2(-off_y, off_x) * 57.2957795
if bearing < 0:
bearing += 360.00
return bearing;
def current_location(mav):
'''return current location'''
return location(mav.messages['GPS_RAW'].lat,
mav.messages['GPS_RAW'].lon,
mav.messages['VFR_HUD'].alt)
def wait_altitude(mav, alt_min, alt_max, timeout=30):
'''wait for a given altitude range'''
tstart = time.time()
print("Waiting for altitude between %u and %u" % (alt_min, alt_max))
while time.time() < tstart + timeout:
m = mav.recv_match(type='VFR_HUD', blocking=True)
print("Altitude %u" % m.alt)
if m.alt >= alt_min and m.alt <= alt_max:
return True
print("Failed to attain altitude range")
return False
def arm_motors(mavproxy):
'''arm motors'''
mavproxy.send('switch 6\n') # stabilize mode
mavproxy.expect('STABILIZE>')
mavproxy.send('rc 3 1000\n')
mavproxy.send('rc 4 2000\n')
mavproxy.expect('APM: ARMING MOTORS')
mavproxy.send('rc 4 1500\n')
print("MOTORS ARMED OK")
def disarm_motors(mavproxy):
'''disarm motors'''
mavproxy.send('rc 3 1000\n')
mavproxy.send('rc 4 1000\n')
mavproxy.expect('APM: DISARMING MOTORS')
mavproxy.send('rc 4 1500\n')
print("MOTORS DISARMED OK")
def takeoff(mavproxy, mav):
'''takeoff get to 30m altitude'''
mavproxy.send('switch 6\n') # stabilize mode
mavproxy.expect('STABILIZE>')
mavproxy.send('rc 3 1500\n')
wait_altitude(mav, 30, 40)
print("TAKEOFF COMPLETE")
def loiter(mavproxy, mav, maxaltchange=10, holdtime=10, timeout=60):
'''hold loiter position'''
mavproxy.send('switch 5\n') # loiter mode
mavproxy.expect('LOITER>')
mavproxy.send('status\n')
mavproxy.expect('>')
m = mav.recv_match(type='VFR_HUD', blocking=True)
start_altitude = m.alt
tstart = time.time()
tholdstart = time.time()
print("Holding loiter at %u meters for %u seconds" % (start_altitude, holdtime))
while time.time() < tstart + timeout:
m = mav.recv_match(type='VFR_HUD', blocking=True)
print("Altitude %u" % m.alt)
if math.fabs(m.alt - start_altitude) > maxaltchange:
tholdstart = time.time()
if time.time() - tholdstart > holdtime:
print("Loiter OK for %u seconds" % holdtime)
return True
print("Loiter FAILED")
return False
def wait_heading(mav, heading, accuracy=5, timeout=30):
'''wait for a given heading'''
tstart = time.time()
while time.time() < tstart + timeout:
m = mav.recv_match(type='VFR_HUD', blocking=True)
print("Heading %u" % m.heading)
if math.fabs(m.heading - heading) <= accuracy:
return True
print("Failed to attain heading %u" % heading)
return False
def wait_distance(mav, distance, accuracy=5, timeout=30):
'''wait for flight of a given distance'''
tstart = time.time()
start = current_location(mav)
while time.time() < tstart + timeout:
m = mav.recv_match(type='GPS_RAW', blocking=True)
pos = current_location(mav)
delta = get_distance(start, pos)
print("Distance %.2f meters" % delta)
if math.fabs(delta - distance) <= accuracy:
return True
print("Failed to attain distance %u" % distance)
return False
def wait_location(mav, loc, accuracy=5, timeout=30):
'''wait for arrival at a location'''
tstart = time.time()
while time.time() < tstart + timeout:
m = mav.recv_match(type='GPS_RAW', blocking=True)
pos = current_location(mav)
delta = get_distance(loc, pos)
print("Distance %.2f meters" % delta)
if delta <= accuracy:
return True
print("Failed to attain location")
return False
def fly_square(mavproxy, mav, side=50, timeout=120):
'''fly a square, flying N then E'''
mavproxy.send('switch 6\n')
mavproxy.expect('STABILIZE>')
tstart = time.time()
mavproxy.send('rc 3 1430\n')
mavproxy.send('rc 4 1610\n')
if not wait_heading(mav, 0):
return False
mavproxy.send('rc 4 1500\n')
print("Going north %u meters" % side)
mavproxy.send('rc 2 1390\n')
ok = wait_distance(mav, side)
mavproxy.send('rc 2 1500\n')
print("Going east %u meters" % side)
mavproxy.send('rc 1 1610\n')
ok = wait_distance(mav, side)
mavproxy.send('rc 1 1500\n')
print("Going south %u meters" % side)
mavproxy.send('rc 2 1610\n')
ok = wait_distance(mav, side)
mavproxy.send('rc 2 1500\n')
print("Going west %u meters" % side)
mavproxy.send('rc 1 1390\n')
ok = wait_distance(mav, side)
mavproxy.send('rc 1 1500\n')
return ok
def land(mavproxy, mav, timeout=60):
'''land the quad'''
print("STARTING LANDING")
mavproxy.send('switch 6\n')
mavproxy.expect('STABILIZE>')
mavproxy.send('status\n')
mavproxy.expect('>')
# start by dropping throttle till we have lost 5m
mavproxy.send('rc 3 1380\n')
m = mav.recv_match(type='VFR_HUD', blocking=True)
wait_altitude(mav, 0, m.alt-5)
# now let it settle gently
mavproxy.send('rc 3 1400\n')
tstart = time.time()
if wait_altitude(mav, -5, 0):
print("LANDING OK")
return True
else:
print("LANDING FAILED")
return False
def fly_mission(mavproxy, mav, filename, timeout=120):
'''fly a mission from a file'''
startloc = current_location(mav)
mavproxy.send('wp load %s\n' % filename)
mavproxy.expect('flight plan received')
mavproxy.send('wp list\n')
mavproxy.expect('Requesting [0-9]+ waypoints')
mavproxy.send('switch 1\n') # auto mode
mavproxy.expect('AUTO>')
wait_distance(mav, 30, timeout=120)
wait_location(mav, startloc, timeout=300)
def setup_rc(mavproxy):
'''setup RC override control'''
for chan in range(1,9):
mavproxy.send('rc %u 1500\n' % chan)
# zero throttle
mavproxy.send('rc 3 1000\n')
def fly_ArduCopter():
'''fly ArduCopter in SIL'''
global expect_list
util.rmfile('eeprom.bin')
sil = util.start_SIL('ArduCopter')
mavproxy = util.start_MAVProxy_SIL('ArduCopter')
mavproxy.expect('Please Run Setup')
# we need to restart it after eeprom erase
mavproxy.close()
sil.close()
sil = util.start_SIL('ArduCopter')
mavproxy = util.start_MAVProxy_SIL('ArduCopter', options='--fgout=127.0.0.1:5502 --fgin=127.0.0.1:5501 --out=127.0.0.1:14550 --quadcopter')
mavproxy.expect('Received [0-9]+ parameters')
# setup test parameters
mavproxy.send("param load %s/ArduCopter.parm\n" % testdir)
mavproxy.expect('Loaded [0-9]+ parameters')
# reboot with new parameters
mavproxy.close()
sil.close()
sil = util.start_SIL('ArduCopter')
mavproxy = util.start_MAVProxy_SIL('ArduCopter', options='--fgout=127.0.0.1:5502 --fgin=127.0.0.1:5501 --out=127.0.0.1:14550 --out=192.168.2.15:14550 --quadcopter --streamrate=1')
mavproxy.expect('Logging to (\S+)')
logfile = mavproxy.match.group(1)
print("LOGFILE %s" % logfile)
mavproxy.expect("Ready to FLY")
mavproxy.expect('Received [0-9]+ parameters')
util.expect_setup_callback(mavproxy, expect_callback)
# start hil_quad.py
util.run_cmd('pkill -f hil_quad.py', checkfail=False)
hquad = pexpect.spawn(util.reltopdir('../HILTest/hil_quad.py') + ' --fgout=192.168.2.15:9123 --home=%s' % HOME_LOCATION,
logfile=sys.stdout, timeout=10)
hquad.expect('Starting at')
expect_list.extend([hquad, sil, mavproxy])
# get a mavlink connection going
mav = mavutil.mavlink_connection('127.0.0.1:14550', robust_parsing=True)
mav.message_hooks.append(message_hook)
failed = False
try:
mav.wait_heartbeat()
mav.recv_match(type='GPS_RAW')
setup_rc(mavproxy)
arm_motors(mavproxy)
takeoff(mavproxy, mav)
fly_square(mavproxy, mav)
loiter(mavproxy, mav)
land(mavproxy, mav)
fly_mission(mavproxy, mav, os.path.join(testdir, "mission1.txt"))
disarm_motors(mavproxy)
except pexpect.TIMEOUT, e:
failed = True
mavproxy.close()
sil.close()
hquad.close()
shutil.copy(logfile, util.reltopdir("../buildlogs/ArduCopter-test.mavlog"))
util.run_cmd(util.reltopdir("../pymavlink/examples/mavtogpx.py") + " " + util.reltopdir("../buildlogs/ArduCopter-test.mavlog"))
util.run_cmd(util.reltopdir("../bin/gpxtokml") + " " + util.reltopdir("../buildlogs/ArduCopter-test.mavlog.gpx"))
if failed:
print("FAILED: %s" % e)
sys.exit(1)

76
Tools/autotest/autotest.py Executable file
View File

@ -0,0 +1,76 @@
#!/usr/bin/env python
# APM automatic test suite
# Andrew Tridgell, October 2011
import pexpect, os, util, sys, shutil, arducopter
import optparse, fnmatch
os.putenv('TMPDIR', util.reltopdir('tmp'))
def get_default_params(atype):
'''get default parameters'''
util.rmfile('eeprom.bin')
sil = util.start_SIL(atype)
mavproxy = util.start_MAVProxy_SIL(atype)
idx = mavproxy.expect(['Please Run Setup', 'Saved [0-9]+ parameters to (\S+)'])
if idx == 0:
# we need to restart it after eeprom erase
mavproxy.close()
sil.close()
sil = util.start_SIL(atype)
mavproxy = util.start_MAVProxy_SIL(atype)
idx = mavproxy.expect('Saved [0-9]+ parameters to (\S+)')
parmfile = mavproxy.match.group(1)
dest = util.reltopdir('../buildlogs/%s.defaults.txt' % atype)
shutil.copy(parmfile, dest)
mavproxy.close()
sil.close()
print("Saved defaults for %s to %s" % (atype, dest))
############## main program #############
parser = optparse.OptionParser("autotest")
parser.add_option("--skip", type='string', default='', help='list of steps to skip (comma separated)')
parser.add_option("--list", action='store_true', default=False, help='list the available steps')
opts, args = parser.parse_args()
steps = [
'build.ArduPlane',
'build.ArduCopter',
'defaults.ArduPlane',
'defaults.ArduCopter',
'fly.ArduCopter'
]
skipsteps = opts.skip.split(',')
def skip_step(step):
'''see if a step should be skipped'''
for skip in skipsteps:
if fnmatch.fnmatch(step, skip):
return True
return False
# kill any previous instance
util.kill('ArduCopter.elf')
util.kill('ArduPilot.elf')
for step in steps:
if skip_step(step):
continue
if step == 'build.ArduPlane':
util.build_SIL('ArduPlane')
elif step == 'build.ArduCopter':
util.build_SIL('ArduCopter')
elif step == 'defaults.ArduPlane':
get_default_params('ArduPlane')
elif step == 'defaults.ArduCopter':
get_default_params('ArduCopter')
elif step == 'fly.ArduCopter':
arducopter.fly_ArduCopter()
else:
raise RuntimeError("Unknown step %s" % step)
util.kill('ArduCopter.elf')
util.kill('ArduPilot.elf')

View File

@ -0,0 +1,11 @@
QGC WPL 110
0 1 3 0 0.000000 0.000000 0.000000 0.000000 -35.362881 149.165222 582.000000 1
1 0 3 16 0.000000 0.000000 0.000000 0.000000 -35.362324 149.164291 120.000000 1
2 0 3 16 0.000000 0.000000 0.000000 0.000000 -35.363670 149.164505 120.000000 1
3 0 3 16 0.000000 0.000000 0.000000 0.000000 -35.362358 149.163651 120.000000 1
4 0 3 16 0.000000 0.000000 0.000000 0.000000 -35.363777 149.163895 120.000000 1
5 0 3 16 0.000000 0.000000 0.000000 0.000000 -35.362411 149.163071 120.000000 1
6 0 3 16 0.000000 0.000000 0.000000 0.000000 -35.363865 149.163223 120.000000 1
7 0 3 16 0.000000 0.000000 0.000000 0.000000 -35.362431 149.162384 120.000000 1
8 0 3 16 0.000000 0.000000 0.000000 0.000000 -35.363968 149.162567 120.000000 1
9 0 3 20 0.000000 0.000000 0.000000 0.000000 -35.363228 149.161896 30.000000 1

88
Tools/autotest/util.py Normal file
View File

@ -0,0 +1,88 @@
# utility code for autotest
import os, pexpect, sys, time
from subprocess import call, check_call,Popen, PIPE
def topdir():
'''return top of git tree where autotest is running from'''
d = os.path.dirname(os.path.realpath(__file__))
assert(os.path.basename(d)=='autotest')
d = os.path.dirname(d)
assert(os.path.basename(d)=='Tools')
d = os.path.dirname(d)
return d
def reltopdir(path):
'''return a path relative to topdir()'''
return os.path.normpath(os.path.join(topdir(), path))
def run_cmd(cmd, dir=".", show=False, output=False, checkfail=True):
'''run a shell command'''
if show:
print("Running: '%s' in '%s'" % (cmd, dir))
if output:
return Popen([cmd], shell=True, stdout=PIPE, cwd=dir).communicate()[0]
elif checkfail:
return check_call(cmd, shell=True, cwd=dir)
else:
return call(cmd, shell=True, cwd=dir)
def rmfile(path):
'''remove a file if it exists'''
try:
os.unlink('eeprom.bin')
except Exception:
pass
def deltree(path):
'''delete a tree of files'''
run_cmd('rm -rf %s' % path)
def build_SIL(atype):
'''build desktop SIL'''
run_cmd("make -f ../libraries/Desktop/Makefile.desktop clean hil",
dir=reltopdir(atype),
checkfail=True)
def start_SIL(atype):
'''launch a SIL instance'''
ret = pexpect.spawn('tmp/%s.build/%s.elf' % (atype, atype),
logfile=sys.stdout, timeout=5)
ret.expect('Waiting for connection')
return ret
def start_MAVProxy_SIL(atype, options=''):
'''launch mavproxy connected to a SIL instance'''
MAVPROXY = reltopdir('../MAVProxy/mavproxy.py')
ret = pexpect.spawn('%s --master=tcp:127.0.0.1:5760 --aircraft=test.%s %s' % (
MAVPROXY,atype,options),
logfile=sys.stdout, timeout=60)
return ret
def kill(name):
'''kill a process'''
run_cmd('killall -9 -q %s' % name, checkfail=False)
def expect_setup_callback(e, callback):
'''setup a callback that is called once a second while waiting for
patterns'''
def _expect_callback(pattern, timeout=e.timeout):
tstart = time.time()
while time.time() < tstart + timeout:
try:
ret = e.expect_saved(pattern, timeout=1)
return ret
except pexpect.TIMEOUT:
e.expect_user_callback(e)
pass
raise pexpect.TIMEOUT
e.expect_user_callback = callback
e.expect_saved = e.expect
e.expect = _expect_callback

View File

@ -1,46 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?fileVersion 4.0.0?>
<cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage">
<storageModule moduleId="org.eclipse.cdt.core.settings">
<cconfiguration id="de.innot.avreclipse.toolchain.winavr.base.394129733">
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="de.innot.avreclipse.toolchain.winavr.base.394129733" moduleId="org.eclipse.cdt.core.settings" name="Default">
<externalSettings/>
<extensions>
<extension id="org.eclipse.cdt.core.ELF" point="org.eclipse.cdt.core.BinaryParser"/>
<extension id="org.eclipse.cdt.core.MakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
</extensions>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<configuration buildProperties="" id="de.innot.avreclipse.toolchain.winavr.base.394129733" name="Default" parent="org.eclipse.cdt.build.core.emptycfg">
<folderInfo id="de.innot.avreclipse.toolchain.winavr.base.394129733.231173920" name="/" resourcePath="">
<toolChain id="de.innot.avreclipse.toolchain.winavr.base.1572708284" name="de.innot.avreclipse.toolchain.winavr.base" superClass="de.innot.avreclipse.toolchain.winavr.base">
<option id="de.innot.avreclipse.toolchain.options.toolchain.objcopy.flash.630916939" name="Generate HEX file for Flash memory" superClass="de.innot.avreclipse.toolchain.options.toolchain.objcopy.flash"/>
<option id="de.innot.avreclipse.toolchain.options.toolchain.objcopy.eeprom.1019241228" name="Generate HEX file for EEPROM" superClass="de.innot.avreclipse.toolchain.options.toolchain.objcopy.eeprom"/>
<option id="de.innot.avreclipse.toolchain.options.toolchain.objdump.1029096770" name="Generate Extended Listing (Source + generated Assembler)" superClass="de.innot.avreclipse.toolchain.options.toolchain.objdump"/>
<option id="de.innot.avreclipse.toolchain.options.toolchain.size.1221033519" name="Print Size" superClass="de.innot.avreclipse.toolchain.options.toolchain.size"/>
<option id="de.innot.avreclipse.toolchain.options.toolchain.avrdude.1918477271" name="AVRDude" superClass="de.innot.avreclipse.toolchain.options.toolchain.avrdude"/>
<targetPlatform archList="all" binaryParser="org.eclipse.cdt.core.ELF" id="de.innot.avreclipse.targetplatform.avr.439246581" name="AVR Cross-Target" osList="all" superClass="de.innot.avreclipse.targetplatform.avr"/>
<builder id="de.innot.avreclipse.target.builder.winavr.base.666588525" managedBuildOn="false" name="AVR GNU Make Builder.Default" superClass="de.innot.avreclipse.target.builder.winavr.base"/>
<tool id="de.innot.avreclipse.tool.assembler.winavr.base.530847775" name="AVR Assembler" superClass="de.innot.avreclipse.tool.assembler.winavr.base"/>
<tool id="de.innot.avreclipse.tool.compiler.winavr.base.752046336" name="AVR Compiler" superClass="de.innot.avreclipse.tool.compiler.winavr.base"/>
<tool id="de.innot.avreclipse.tool.cppcompiler.base.920729075" name="AVR C++ Compiler" superClass="de.innot.avreclipse.tool.cppcompiler.base"/>
<tool id="de.innot.avreclipse.tool.linker.winavr.base.778684722" name="AVR C Linker" superClass="de.innot.avreclipse.tool.linker.winavr.base"/>
<tool id="de.innot.avreclipse.tool.cpplinker.base.1086108831" name="AVR C++ Linker" superClass="de.innot.avreclipse.tool.cpplinker.base"/>
<tool id="de.innot.avreclipse.tool.archiver.winavr.base.2066059097" name="AVR Archiver" superClass="de.innot.avreclipse.tool.archiver.winavr.base"/>
</toolChain>
</folderInfo>
</configuration>
</storageModule>
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
</cconfiguration>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<project id="apo.null.958255624" name="apo"/>
</storageModule>
<storageModule moduleId="scannerConfiguration">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
</storageModule>
</cproject>

View File

@ -1,79 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>apo</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name>
<triggers>clean,full,incremental,</triggers>
<arguments>
<dictionary>
<key>?name?</key>
<value></value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.append_environment</key>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.autoBuildTarget</key>
<value>all</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.buildArguments</key>
<value></value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.buildCommand</key>
<value>make</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.cleanBuildTarget</key>
<value>clean</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.contents</key>
<value>org.eclipse.cdt.make.core.activeConfigSettings</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.enableAutoBuild</key>
<value>false</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.enableCleanBuild</key>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.enableFullBuild</key>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.fullBuildTarget</key>
<value>all</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.stopOnError</key>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.useDefaultBuildCmd</key>
<value>true</value>
</dictionary>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name>
<triggers>full,incremental,</triggers>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.cdt.core.cnature</nature>
<nature>org.eclipse.cdt.core.ccnature</nature>
<nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
<nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
</natures>
</projectDescription>

View File

@ -14,7 +14,6 @@
#include <APM_BMP085.h> #include <APM_BMP085.h>
#include <ModeFilter.h> #include <ModeFilter.h>
#include <APO.h> #include <APO.h>
#include <WProgram.h>
// Vehicle Configuration // Vehicle Configuration
//#include "QuadArducopter.h" //#include "QuadArducopter.h"

View File

@ -1,270 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?fileVersion 4.0.0?>
<cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage">
<storageModule moduleId="org.eclipse.cdt.core.settings">
<cconfiguration id="0.329617321">
<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="0.329617321" moduleId="org.eclipse.cdt.core.settings" name="Default">
<externalSettings/>
<extensions>
<extension id="org.eclipse.cdt.core.VCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
</extensions>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<configuration buildProperties="" description="" id="0.329617321" name="Default" parent="org.eclipse.cdt.build.core.prefbase.cfg">
<folderInfo id="0.329617321." name="/" resourcePath="">
<toolChain id="org.eclipse.cdt.build.core.prefbase.toolchain.1939771838" name="No ToolChain" resourceTypeBasedDiscovery="false" superClass="org.eclipse.cdt.build.core.prefbase.toolchain">
<targetPlatform id="org.eclipse.cdt.build.core.prefbase.toolchain.1939771838.575402359" name=""/>
<builder id="org.eclipse.cdt.build.core.settings.default.builder.1682056926" keepEnvironmentInBuildfile="false" managedBuildOn="false" name="Gnu Make Builder" superClass="org.eclipse.cdt.build.core.settings.default.builder"/>
<tool id="org.eclipse.cdt.build.core.settings.holder.libs.1418726134" name="holder for library settings" superClass="org.eclipse.cdt.build.core.settings.holder.libs"/>
<tool id="org.eclipse.cdt.build.core.settings.holder.1555543693" name="Assembly" superClass="org.eclipse.cdt.build.core.settings.holder">
<inputType id="org.eclipse.cdt.build.core.settings.holder.inType.2046099434" languageId="org.eclipse.cdt.core.assembly" languageName="Assembly" sourceContentType="org.eclipse.cdt.core.asmSource" superClass="org.eclipse.cdt.build.core.settings.holder.inType"/>
</tool>
<tool id="org.eclipse.cdt.build.core.settings.holder.1685875887" name="GNU C++" superClass="org.eclipse.cdt.build.core.settings.holder">
<inputType id="org.eclipse.cdt.build.core.settings.holder.inType.1814146587" languageId="org.eclipse.cdt.core.g++" languageName="GNU C++" sourceContentType="org.eclipse.cdt.core.cxxSource,org.eclipse.cdt.core.cxxHeader" superClass="org.eclipse.cdt.build.core.settings.holder.inType"/>
</tool>
<tool id="org.eclipse.cdt.build.core.settings.holder.1837199226" name="GNU C" superClass="org.eclipse.cdt.build.core.settings.holder">
<inputType id="org.eclipse.cdt.build.core.settings.holder.inType.2111517793" languageId="org.eclipse.cdt.core.gcc" languageName="GNU C" sourceContentType="org.eclipse.cdt.core.cSource,org.eclipse.cdt.core.cHeader" superClass="org.eclipse.cdt.build.core.settings.holder.inType"/>
</tool>
</toolChain>
</folderInfo>
</configuration>
</storageModule>
<storageModule moduleId="scannerConfiguration">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="makefileGenerator">
<runAction arguments="-E -P -v -dD" command="" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/${specs_file}&quot;'" command="sh" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-c 'g++ -E -P -v -dD &quot;${plugin_state_location}/specs.cpp&quot;'" command="sh" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/specs.c&quot;'" command="sh" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="de.innot.avreclipse.core.AVRGCCManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="avr-gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="de.innot.avreclipse.core.AVRGCCManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="avr-g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<scannerConfigBuildInfo instanceId="0.329617321">
<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="makefileGenerator">
<runAction arguments="-E -P -v -dD" command="" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/${specs_file}" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfile">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/${specs_file}&quot;'" command="sh" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-c 'g++ -E -P -v -dD &quot;${plugin_state_location}/specs.cpp&quot;'" command="sh" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="org.eclipse.cdt.managedbuilder.core.GCCWinManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-c 'gcc -E -P -v -dD &quot;${plugin_state_location}/specs.c&quot;'" command="sh" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="de.innot.avreclipse.core.AVRGCCManagedMakePerProjectProfileC">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.c" command="avr-gcc" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
<profile id="de.innot.avreclipse.core.AVRGCCManagedMakePerProjectProfileCPP">
<buildOutputProvider>
<openAction enabled="true" filePath=""/>
<parser enabled="true"/>
</buildOutputProvider>
<scannerInfoProvider id="specsFile">
<runAction arguments="-E -P -v -dD ${plugin_state_location}/specs.cpp" command="avr-g++" useDefault="true"/>
<parser enabled="true"/>
</scannerInfoProvider>
</profile>
</scannerConfigBuildInfo>
</storageModule>
<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
<storageModule moduleId="org.eclipse.cdt.internal.ui.text.commentOwnerProjectMappings"/>
<storageModule moduleId="org.eclipse.cdt.core.language.mapping"/>
<storageModule moduleId="org.eclipse.cdt.make.core.buildtargets">
<buildTargets>
<target name="AP_Var" path="AP_Common/examples/AP_Var" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
<buildCommand>make</buildCommand>
<stopOnError>true</stopOnError>
<useDefaultCommand>true</useDefaultCommand>
<runAllBuilders>true</runAllBuilders>
</target>
<target name="AP_Compass" path="AP_Compass/examples/AP_Compass_test" targetID="org.eclipse.cdt.build.MakeTargetBuilder">
<buildCommand>make</buildCommand>
<buildArguments/>
<buildTarget/>
<stopOnError>true</stopOnError>
<useDefaultCommand>true</useDefaultCommand>
<runAllBuilders>true</runAllBuilders>
</target>
</buildTargets>
</storageModule>
</cconfiguration>
</storageModule>
<storageModule moduleId="cdtBuildSystem" version="4.0.0">
<project id="libraries.null.603614078" name="libraries"/>
</storageModule>
</cproject>

View File

@ -1,79 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>libraries</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name>
<triggers>clean,full,incremental,</triggers>
<arguments>
<dictionary>
<key>?name?</key>
<value></value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.append_environment</key>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.autoBuildTarget</key>
<value>all</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.buildArguments</key>
<value></value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.buildCommand</key>
<value>make</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.cleanBuildTarget</key>
<value>clean</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.contents</key>
<value>org.eclipse.cdt.make.core.activeConfigSettings</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.enableAutoBuild</key>
<value>false</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.enableCleanBuild</key>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.enableFullBuild</key>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.fullBuildTarget</key>
<value>all</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.stopOnError</key>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.useDefaultBuildCmd</key>
<value>true</value>
</dictionary>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name>
<triggers>full,incremental,</triggers>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.cdt.core.cnature</nature>
<nature>org.eclipse.cdt.core.ccnature</nature>
<nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
<nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
</natures>
</projectDescription>

View File

@ -220,7 +220,7 @@ void AP_GPS_IMU::GPS_join_data(void)
* *
****************************************************************/ ****************************************************************/
// checksum algorithm // checksum algorithm
void AP_GPS_IMU::checksum(byte data) void AP_GPS_IMU::checksum(unsigned char data)
{ {
ck_a += data; ck_a += data;
ck_b += ck_a; ck_b += ck_a;

View File

@ -0,0 +1,296 @@
// -*- tab-width: 4; Mode: C++; c-basic-offset: 4; indent-tabs-mode: t -*-
#include <AP_Mount.h>
extern RC_Channel_aux* g_rc_function[RC_Channel_aux::k_nr_aux_servo_functions]; // the aux. servo ch. assigned to each function
AP_Mount::AP_Mount(GPS *gps, AP_DCM *dcm)
{
_dcm=dcm;
_dcm_hil=NULL;
_gps=gps;
//set_mode(MAV_MOUNT_MODE_RETRACT);
//set_mode(MAV_MOUNT_MODE_RC_TARGETING); // FIXME: This is just to test without mavlink
set_mode(MAV_MOUNT_MODE_GPS_POINT); // FIXME: this is to test ONLY targeting
_retract_angles.x=0;
_retract_angles.y=0;
_retract_angles.z=0;
}
AP_Mount::AP_Mount(GPS *gps, AP_DCM_HIL *dcm)
{
_dcm=NULL;
_dcm_hil=dcm;
_gps=gps;
//set_mode(MAV_MOUNT_MODE_RETRACT);
//set_mode(MAV_MOUNT_MODE_RC_TARGETING); // FIXME: This is just to test without mavlink
set_mode(MAV_MOUNT_MODE_MAVLINK_TARGETING); // FIXME: this is to test ONLY targeting
_retract_angles.x=0;
_retract_angles.y=0;
_retract_angles.z=0;
}
//sets the servo angles for retraction, note angles are * 100
void AP_Mount::set_retract_angles(int roll, int pitch, int yaw)
{
_retract_angles.x=roll;
_retract_angles.y=pitch;
_retract_angles.z=yaw;
}
//sets the servo angles for neutral, note angles are * 100
void AP_Mount::set_neutral_angles(int roll, int pitch, int yaw)
{
_neutral_angles.x=roll;
_neutral_angles.y=pitch;
_neutral_angles.z=yaw;
}
//sets the servo angles for MAVLink, note angles are * 100
void AP_Mount::set_mavlink_angles(int roll, int pitch, int yaw)
{
_mavlink_angles.x = roll;
_mavlink_angles.y = pitch;
_mavlink_angles.z = yaw;
}
// used to tell the mount to track GPS location
void AP_Mount::set_GPS_target_location(Location targetGPSLocation)
{
_target_GPS_location=targetGPSLocation;
}
// This one should be called periodically
void AP_Mount::update_mount_position()
{
Matrix3f m; //holds 3 x 3 matrix, var is used as temp in calcs
Vector3f targ; //holds target vector, var is used as temp in calcs
Vector3f aux_vec; //holds target vector, var is used as temp in calcs
switch(_mount_mode)
{
case MAV_MOUNT_MODE_RETRACT:
roll_angle =100*_retract_angles.x;
pitch_angle=100*_retract_angles.y;
yaw_angle =100*_retract_angles.z;
break;
case MAV_MOUNT_MODE_NEUTRAL:
roll_angle =100*_neutral_angles.x;
pitch_angle=100*_neutral_angles.y;
yaw_angle =100*_neutral_angles.z;
break;
case MAV_MOUNT_MODE_MAVLINK_TARGETING:
{
aux_vec.x = _mavlink_angles.x;
aux_vec.y = _mavlink_angles.y;
aux_vec.z = _mavlink_angles.z;
m = _dcm?_dcm->get_dcm_transposed():_dcm_hil->get_dcm_transposed();
//rotate vector
targ = m*aux_vec;
// TODO The next three lines are probably not correct yet
roll_angle = _stab_roll? degrees(atan2( targ.y,targ.z))*100:_mavlink_angles.y; //roll
pitch_angle = _stab_pitch?degrees(atan2(-targ.x,targ.z))*100:_neutral_angles.x; //pitch
yaw_angle = _stab_yaw? degrees(atan2(-targ.x,targ.y))*100:_neutral_angles.z; //yaw
break;
}
case MAV_MOUNT_MODE_RC_TARGETING: // radio manual control
{
// TODO It does work, but maybe is a good idea to replace this simplified implementation with a proper one
if (_dcm)
{
roll_angle = -_dcm->roll_sensor;
pitch_angle = -_dcm->pitch_sensor;
yaw_angle = -_dcm->yaw_sensor;
}
if (_dcm_hil)
{
roll_angle = -_dcm_hil->roll_sensor;
pitch_angle = -_dcm_hil->pitch_sensor;
yaw_angle = -_dcm_hil->yaw_sensor;
}
if (g_rc_function[RC_Channel_aux::k_mount_roll])
roll_angle = rc_map(g_rc_function[RC_Channel_aux::k_mount_roll]);
if (g_rc_function[RC_Channel_aux::k_mount_pitch])
pitch_angle = rc_map(g_rc_function[RC_Channel_aux::k_mount_pitch]);
if (g_rc_function[RC_Channel_aux::k_mount_yaw])
yaw_angle = rc_map(g_rc_function[RC_Channel_aux::k_mount_yaw]);
break;
}
case MAV_MOUNT_MODE_GPS_POINT:
{
if(_gps->fix)
{
calc_GPS_target_vector(&_target_GPS_location);
}
m = (_dcm)?_dcm->get_dcm_transposed():_dcm_hil->get_dcm_transposed();
targ = m*_GPS_vector;
/* disable stabilization for now, this will help debug */
_stab_roll = 0;_stab_pitch=0;_stab_yaw=0;
/**/
// TODO The next three lines are probably not correct yet
roll_angle = _stab_roll? degrees(atan2( targ.y,targ.z))*100:_GPS_vector.y; //roll
pitch_angle = _stab_pitch?degrees(atan2(-targ.x,targ.z))*100:0; //pitch
yaw_angle = _stab_yaw? degrees(atan2(-targ.x,targ.y))*100:degrees(atan2(-_GPS_vector.x,_GPS_vector.y))*100; //yaw
break;
}
default:
//do nothing
break;
}
// write the results to the servos
// Change scaling to 0.1 degrees in order to avoid overflows in the angle arithmetic
G_RC_AUX(k_mount_roll)->closest_limit(roll_angle/10);
G_RC_AUX(k_mount_pitch)->closest_limit(pitch_angle/10);
G_RC_AUX(k_mount_yaw)->closest_limit(yaw_angle/10);
}
void AP_Mount::set_mode(enum MAV_MOUNT_MODE mode)
{
_mount_mode=mode;
}
void AP_Mount::configure_msg(mavlink_message_t* msg)
{
__mavlink_mount_configure_t packet;
mavlink_msg_mount_configure_decode(msg, &packet);
if (mavlink_check_target(packet.target_system, packet.target_component)) {
// not for us
return;
}
set_mode((enum MAV_MOUNT_MODE)packet.mount_mode);
_stab_pitch = packet.stab_pitch;
_stab_roll = packet.stab_roll;
_stab_yaw = packet.stab_yaw;
}
void AP_Mount::control_msg(mavlink_message_t *msg)
{
__mavlink_mount_control_t packet;
mavlink_msg_mount_control_decode(msg, &packet);
if (mavlink_check_target(packet.target_system, packet.target_component)) {
// not for us
return;
}
switch (_mount_mode)
{
case MAV_MOUNT_MODE_RETRACT: // Load and keep safe position (Roll,Pitch,Yaw) from EEPROM and stop stabilization
set_retract_angles(packet.input_b, packet.input_a, packet.input_c);
if (packet.save_position)
{
// TODO: Save current trimmed position on EEPROM
}
break;
case MAV_MOUNT_MODE_NEUTRAL: // Load and keep neutral position (Roll,Pitch,Yaw) from EEPROM
set_neutral_angles(packet.input_b, packet.input_a, packet.input_c);
if (packet.save_position)
{
// TODO: Save current trimmed position on EEPROM
}
break;
case MAV_MOUNT_MODE_MAVLINK_TARGETING: // Load neutral position and start MAVLink Roll,Pitch,Yaw control with stabilization
set_mavlink_angles(packet.input_b, packet.input_a, packet.input_c);
break;
case MAV_MOUNT_MODE_RC_TARGETING: // Load neutral position and start RC Roll,Pitch,Yaw control with stabilization
break;
case MAV_MOUNT_MODE_GPS_POINT: // Load neutral position and start to point to Lat,Lon,Alt
Location targetGPSLocation;
targetGPSLocation.lat = packet.input_a;
targetGPSLocation.lng = packet.input_b;
targetGPSLocation.alt = packet.input_c;
set_GPS_target_location(targetGPSLocation);
break;
}
}
void AP_Mount::status_msg(mavlink_message_t *msg)
{
__mavlink_mount_status_t packet;
mavlink_msg_mount_status_decode(msg, &packet);
if (mavlink_check_target(packet.target_system, packet.target_component)) {
// not for us
return;
}
switch (_mount_mode)
{
case MAV_MOUNT_MODE_RETRACT: // safe position (Roll,Pitch,Yaw) from EEPROM and stop stabilization
case MAV_MOUNT_MODE_NEUTRAL: // neutral position (Roll,Pitch,Yaw) from EEPROM
case MAV_MOUNT_MODE_MAVLINK_TARGETING: // neutral position and start MAVLink Roll,Pitch,Yaw control with stabilization
case MAV_MOUNT_MODE_RC_TARGETING: // neutral position and start RC Roll,Pitch,Yaw control with stabilization
packet.pointing_b = roll_angle; ///< degrees*100
packet.pointing_a = pitch_angle; ///< degrees*100
packet.pointing_c = yaw_angle; ///< degrees*100
break;
case MAV_MOUNT_MODE_GPS_POINT: // neutral position and start to point to Lat,Lon,Alt
packet.pointing_a = _target_GPS_location.lat; ///< latitude
packet.pointing_b = _target_GPS_location.lng; ///< longitude
packet.pointing_c = _target_GPS_location.alt; ///< altitude
break;
}
// status reply
// TODO: is COMM_3 correct ?
mavlink_msg_mount_status_send(MAVLINK_COMM_3, packet.target_system, packet.target_component,
packet.pointing_a, packet.pointing_b, packet.pointing_c);
}
void AP_Mount::set_roi_cmd()
{
// TODO get the information out of the mission command and use it
}
void AP_Mount::configure_cmd()
{
// TODO get the information out of the mission command and use it
}
void AP_Mount::control_cmd()
{
// TODO get the information out of the mission command and use it
}
void AP_Mount::calc_GPS_target_vector(struct Location *target)
{
_GPS_vector.x = (target->lng-_gps->longitude) * cos((_gps->latitude+target->lat)/2)*.01113195;
_GPS_vector.y = (target->lat-_gps->latitude)*.01113195;
_GPS_vector.z = (_gps->altitude-target->alt);
}
void
AP_Mount::update_mount_type()
{
// Auto-detect the mount gimbal type depending on the functions assigned to the servos
if ((g_rc_function[RC_Channel_aux::k_mount_roll] == NULL) && (g_rc_function[RC_Channel_aux::k_mount_pitch] != NULL) && (g_rc_function[RC_Channel_aux::k_mount_yaw] != NULL))
{
_mount_type = k_pan_tilt;
}
if ((g_rc_function[RC_Channel_aux::k_mount_roll] != NULL) && (g_rc_function[RC_Channel_aux::k_mount_pitch] != NULL) && (g_rc_function[RC_Channel_aux::k_mount_yaw] == NULL))
{
_mount_type = k_tilt_roll;
}
if ((g_rc_function[RC_Channel_aux::k_mount_roll] != NULL) && (g_rc_function[RC_Channel_aux::k_mount_pitch] != NULL) && (g_rc_function[RC_Channel_aux::k_mount_yaw] != NULL))
{
_mount_type = k_pan_tilt_roll;
}
}
// This function is needed to let the HIL code compile
long
AP_Mount::rc_map(RC_Channel_aux* rc_ch)
{
return (rc_ch->radio_in - rc_ch->radio_min) * (rc_ch->angle_max - rc_ch->angle_min) / (rc_ch->radio_max - rc_ch->radio_min) + rc_ch->angle_min;
}

View File

@ -0,0 +1,96 @@
// -*- tab-width: 4; Mode: C++; c-basic-offset: 4; indent-tabs-mode: t -*-
/************************************************************
* AP_mount -- library to control a 2 or 3 axis mount. *
* *
* Author: Joe Holdsworth; *
* Ritchie Wilson; *
* Amilcar Lucas; *
* *
* Purpose: Move a 2 or 3 axis mount attached to vehicle, *
* Used for mount to track targets or stabilise *
* camera plus other modes. *
* *
* Usage: Use in main code to control mounts attached to *
* vehicle. *
* *
*Comments: All angles in degrees * 100, distances in meters*
* unless otherwise stated. *
************************************************************/
#ifndef AP_Mount_H
#define AP_Mount_H
//#include <AP_Common.h>
#include <AP_Math.h>
#include <AP_GPS.h>
#include <AP_DCM.h>
#include <GCS_MAVLink.h>
#include <../RC_Channel/RC_Channel_aux.h>
class AP_Mount
{
public:
//Constructors
AP_Mount(GPS *gps, AP_DCM *dcm);
AP_Mount(GPS *gps, AP_DCM_HIL *dcm); // constructor for HIL usage
//enums
enum MountType{
k_pan_tilt = 0, ///< yaw-pitch
k_tilt_roll = 1, ///< pitch-roll
k_pan_tilt_roll = 2, ///< yaw-pitch-roll
};
// MAVLink methods
void configure_msg(mavlink_message_t* msg);
void control_msg(mavlink_message_t* msg);
void status_msg(mavlink_message_t* msg);
void set_roi_cmd();
void configure_cmd();
void control_cmd();
// should be called periodically
void update_mount_position();
void update_mount_type(); ///< Auto-detect the mount gimbal type depending on the functions assigned to the servos
// Accessors
enum MountType get_mount_type();
private:
//methods
void set_mode(enum MAV_MOUNT_MODE mode);
void set_retract_angles(int roll, int pitch, int yaw); ///< set mount retracted position
void set_neutral_angles(int roll, int pitch, int yaw);
void set_mavlink_angles(int roll, int pitch, int yaw);
void set_GPS_target_location(Location targetGPSLocation); ///< used to tell the mount to track GPS location
// internal methods
void calc_GPS_target_vector(struct Location *target);
long rc_map(RC_Channel_aux* rc_ch);
//members
AP_DCM *_dcm;
AP_DCM_HIL *_dcm_hil;
GPS *_gps;
int roll_angle; ///< degrees*100
int pitch_angle; ///< degrees*100
int yaw_angle; ///< degrees*100
uint8_t _stab_roll; ///< (1 = yes, 0 = no)
uint8_t _stab_pitch; ///< (1 = yes, 0 = no)
uint8_t _stab_yaw; ///< (1 = yes, 0 = no)
enum MAV_MOUNT_MODE _mount_mode;
MountType _mount_type;
struct Location _target_GPS_location;
Vector3i _retract_angles; ///< retracted position for mount, vector.x = roll vector.y = pitch, vector.z=yaw
Vector3i _neutral_angles; ///< neutral position for mount, vector.x = roll vector.y = pitch, vector.z=yaw
Vector3i _mavlink_angles; ///< mavlink position for mount, vector.x = roll vector.y = pitch, vector.z=yaw
Vector3f _GPS_vector; ///< target vector calculated stored in meters
};
#endif

View File

@ -2,17 +2,32 @@ This provides some support files for building APM on normal desktop
systems. This makes it possible to use debugging tools (such as gdb systems. This makes it possible to use debugging tools (such as gdb
and valgrind) on the APM code and valgrind) on the APM code
To build it do this: The code can then run on the PC instead of on the Arduino board and
simulate the behaviour of the real system by integrating it with
X-Plane of FlightGear to build a Software-In-the-Loop (SIL) simulator.
cd ArduPlane It will use TCP sockets to communicate between the several software
make -f ../libraries/Desktop/Makefile.desktop hil components (ArduPilot, GCS and Flight simulator). All the ArduPilot
serial ports that get initialised map to separate TCP ports, which
means you can separately test the telemetry port and the main serial
port. It also makes using a debugger easier, as the debugger can use
stdin/stdout.
currently only 'hil' builds work. So the new usage is:
It currently runs with the first serial port mapped to 1) build with "make -f ../libraries/Desktop/Makefile.desktop hil"
stdin/stdout. To test it, you can use mavproxy like this:
mavproxy.py --master=/tmp/ArduPlane/ArduPlane.elf 2) start in a terminal like this: /tmp/ArduPlane.build/ArduPlane.elf
it will say something like this:
that will run ArduPlane as a child process, and will give you the Serial port 0 on TCP port 5760
ability to control ArduPlane over MAVLink. Waiting for connection ....
3) start a GCS, pointing it at localhost:5760. For the current
mavproxy, you would use:
mavproxy.py --master=tcp:localhost:5760
MichaelO has also added support in the GCS mission planner for TCP.
You will see a TCP option in the drop down for the serial port, then
choose port 5760.

View File

@ -45,6 +45,7 @@
#include <sys/types.h> #include <sys/types.h>
#include <sys/socket.h> #include <sys/socket.h>
#include <netinet/in.h> #include <netinet/in.h>
#include "desktop.h"
#define LISTEN_BASE_PORT 5760 #define LISTEN_BASE_PORT 5760
#define BUFFER_SIZE 128 #define BUFFER_SIZE 128
@ -305,3 +306,19 @@ void FastSerial::_freeBuffer(Buffer *buffer)
{ {
} }
/*
return true if any bytes are pending
*/
void desktop_serial_select_setup(fd_set *fds, int *fd_high)
{
int i;
for (i=0; i<FS_MAX_PORTS; i++) {
if (tcp_state[i].connected) {
FD_SET(tcp_state[i].fd, fds);
if (tcp_state[i].fd > *fd_high) {
*fd_high = tcp_state[i].fd;
}
}
}
}

View File

@ -0,0 +1,2 @@
void desktop_serial_select_setup(fd_set *fds, int *fd_high);

View File

@ -4,6 +4,7 @@
#include <sys/time.h> #include <sys/time.h>
#include <sched.h> #include <sched.h>
#include <wiring.h> #include <wiring.h>
#include "desktop.h"
void setup(void); void setup(void);
void loop(void); void loop(void);
@ -16,15 +17,17 @@ int main(void)
setup(); setup();
while (true) { while (true) {
struct timeval tv; struct timeval tv;
unsigned long t1, t2; fd_set fds;
t1 = micros(); int fd_high = 0;
FD_ZERO(&fds);
loop(); loop();
t2 = micros();
if (t2 - t1 < 2) { desktop_serial_select_setup(&fds, &fd_high);
tv.tv_sec = 0; tv.tv_sec = 0;
tv.tv_usec = 1; tv.tv_usec = 100;
select(0, NULL, NULL, NULL, &tv);
} select(fd_high+1, &fds, NULL, NULL, &tv);
} }
return 0; return 0;
} }

View File

@ -190,6 +190,10 @@ RC_Channel::pwm_to_angle()
{ {
int radio_trim_high = radio_trim + _dead_zone; int radio_trim_high = radio_trim + _dead_zone;
int radio_trim_low = radio_trim - _dead_zone; int radio_trim_low = radio_trim - _dead_zone;
// prevent div by 0
if ((radio_trim_low - radio_min) == 0 || (radio_max - radio_trim_high) == 0)
return 0;
if(radio_in > radio_trim_high){ if(radio_in > radio_trim_high){
return _reverse * ((long)_high * (long)(radio_in - radio_trim_high)) / (long)(radio_max - radio_trim_high); return _reverse * ((long)_high * (long)(radio_in - radio_trim_high)) / (long)(radio_max - radio_trim_high);

View File

@ -5,6 +5,42 @@
RC_Channel_aux* g_rc_function[RC_Channel_aux::k_nr_aux_servo_functions]; // the aux. servo ch. assigned to each function RC_Channel_aux* g_rc_function[RC_Channel_aux::k_nr_aux_servo_functions]; // the aux. servo ch. assigned to each function
int16_t
RC_Channel_aux::closest_limit(int16_t angle)
{
// Change scaling to 0.1 degrees in order to avoid overflows in the angle arithmetic
int16_t min = angle_min / 10;
int16_t max = angle_max / 10;
// Make sure the angle lies in the interval [-180 .. 180[ degrees
while (angle < -1800) angle += 3600;
while (angle >= 1800) angle -= 3600;
// Make sure the angle limits lie in the interval [-180 .. 180[ degrees
while (min < -1800) min += 3600;
while (min >= 1800) min -= 3600;
while (max < -1800) max += 3600;
while (max >= 1800) max -= 3600;
// This is done every time because the user might change the min, max values on the fly
set_range(min, max);
// If the angle is outside servo limits, saturate the angle to the closest limit
// On a circle the closest angular position must be carefully calculated to account for wrap-around
if ((angle < min) && (angle > max)){
// angle error if min limit is used
int16_t err_min = min - angle + (angle<min?0:3600); // add 360 degrees if on the "wrong side"
// angle error if max limit is used
int16_t err_max = angle - max + (angle>max?0:3600); // add 360 degrees if on the "wrong side"
angle = err_min<err_max?min:max;
}
servo_out = angle;
// convert angle to PWM using a linear transformation (ignores trimming because the camera limits might not be symmetric)
calc_pwm();
return angle;
}
// map a function to a servo channel and output it // map a function to a servo channel and output it
void void
RC_Channel_aux::output_ch(unsigned char ch_nr) RC_Channel_aux::output_ch(unsigned char ch_nr)
@ -53,4 +89,14 @@ void update_aux_servo_function(RC_Channel_aux* rc_5, RC_Channel_aux* rc_6, RC_Ch
G_RC_AUX(k_flap_auto)->set_range(0,100); G_RC_AUX(k_flap_auto)->set_range(0,100);
G_RC_AUX(k_aileron)->set_angle(4500); G_RC_AUX(k_aileron)->set_angle(4500);
G_RC_AUX(k_flaperon)->set_range(0,100); G_RC_AUX(k_flaperon)->set_range(0,100);
G_RC_AUX(k_mount_yaw)->set_range(
g_rc_function[RC_Channel_aux::k_mount_yaw]->angle_min / 10,
g_rc_function[RC_Channel_aux::k_mount_yaw]->angle_max / 10);
G_RC_AUX(k_mount_pitch)->set_range(
g_rc_function[RC_Channel_aux::k_mount_pitch]->angle_min / 10,
g_rc_function[RC_Channel_aux::k_mount_pitch]->angle_max / 10);
G_RC_AUX(k_mount_roll)->set_range(
g_rc_function[RC_Channel_aux::k_mount_roll]->angle_min / 10,
g_rc_function[RC_Channel_aux::k_mount_roll]->angle_max / 10);
G_RC_AUX(k_mount_open)->set_range(0,100);
} }

View File

@ -14,6 +14,7 @@
/// @class RC_Channel_aux /// @class RC_Channel_aux
/// @brief Object managing one aux. RC channel (CH5-8), with information about its function /// @brief Object managing one aux. RC channel (CH5-8), with information about its function
/// Also contains physical min,max angular deflection, to allow calibrating open-loop servo movements
class RC_Channel_aux : public RC_Channel{ class RC_Channel_aux : public RC_Channel{
public: public:
/// Constructor /// Constructor
@ -23,7 +24,9 @@ public:
/// ///
RC_Channel_aux(AP_Var::Key key, const prog_char_t *name) : RC_Channel_aux(AP_Var::Key key, const prog_char_t *name) :
RC_Channel(key, name), RC_Channel(key, name),
function (&_group, 4, k_none, name ? PSTR("FUNCTION") : 0) // suppress name if group has no name function (&_group, 4, k_none, name ? PSTR("FUNCTION") : 0), // suppress name if group has no name
angle_min (&_group, 5, -4500, name ? PSTR("ANGLE_MIN") : 0), // assume -45 degrees min deflection
angle_max (&_group, 6, 4500, name ? PSTR("ANGLE_MAX") : 0) // assume 45 degrees max deflection
{} {}
typedef enum typedef enum
@ -34,10 +37,18 @@ public:
k_flap_auto = 3, // flap automated k_flap_auto = 3, // flap automated
k_aileron = 4, // aileron k_aileron = 4, // aileron
k_flaperon = 5, // flaperon (flaps and aileron combined, needs two independent servos one for each wing) k_flaperon = 5, // flaperon (flaps and aileron combined, needs two independent servos one for each wing)
k_mount_yaw = 6, // mount yaw (pan)
k_mount_pitch = 7, // mount pitch (tilt)
k_mount_roll = 8, // mount roll
k_mount_open = 9, // mount open (deploy) / close (retract)
k_nr_aux_servo_functions // This must be the last enum value (only add new values _before_ this one) k_nr_aux_servo_functions // This must be the last enum value (only add new values _before_ this one)
} Aux_servo_function_t; } Aux_servo_function_t;
AP_Int8 function; // 0=disabled, 1=manual, 2=flap, 3=flap auto, 4=aileron, 5=flaperon, 6=mount yaw (pan), 7=mount pitch (tilt), 8=mount roll, 9=camera trigger, 10=camera open, 11=egg drop AP_Int8 function; // 0=disabled, 1=manual, 2=flap, 3=flap auto, 4=aileron, 5=flaperon, 6=mount yaw (pan), 7=mount pitch (tilt), 8=mount roll, 9=camera trigger, 10=camera open, 11=egg drop
AP_Int16 angle_min; // min angle limit of actuated surface in 0.01 degree units
AP_Int16 angle_max; // max angle limit of actuated surface in 0.01 degree units
int16_t closest_limit(int16_t angle); // saturate to the closest angle limit if outside of min max angle interval
void output_ch(unsigned char ch_nr); // map a function to a servo channel and output it void output_ch(unsigned char ch_nr); // map a function to a servo channel and output it