Commit Graph

699 Commits

Author SHA1 Message Date
DonLakeFlyer a697d34b98 Tracker: return success or failure of get home position 2015-12-07 12:33:20 +09:00
Lucas De Marchi c64b7cc7e4 AntennaTracker: remove unused AP_ADC_AnalogSource 2015-12-03 13:32:44 +11:00
Caio Marcelo de Oliveira Filho 6e7b73610d waf: add waf support 2015-12-03 07:54:30 +11:00
Luis Vale Gonçalves 6dd28f632c Tracker: revise text messages
Clean up text messages
2015-11-25 20:47:07 +09:00
Caio Marcelo de Oliveira Filho dd3fb0a689 Tracker: use millis/micros/panic functions 2015-11-20 12:26:23 +09:00
lvale e7efaa45c5 Tracker: text message severity uniformization
Continuing the uniformization, now for AntennaTracker
2015-11-05 12:33:59 +09:00
Lucas De Marchi 2b37906f0d AntennaTracker: remove check for MAVLINK_COMM_NUM_BUFFERS 2015-11-04 12:14:15 +11:00
Lucas De Marchi cb8ae444d1 AntennaTracker: remove check for AVR CPUs
Remove the checks for HAL_CPU_CLASS > HAL_CPU_CLASS_16 and
HAL_CPU_CLASS >= HAL_CPU_CLASS_75. Corresponding dead code will be
removed on separate commits.
2015-11-04 12:14:14 +11:00
Lucas De Marchi 3b0a1ef563 AntennaTracker: remove checks for HAL_BOARD_APM2 and HAL_BOARD_APM1 2015-11-04 12:14:13 +11:00
Lucas De Marchi 5244559010 Minimize AP_Progmem.h includes
Most of AP_Progmem is already gone so we can stop including it in most
of the places. The only places that need it are the ones using
pgm_read_*() APIs.

In some cases the header needed to be added in the .cpp since it was
removed from the .h to reduce scope. In those cases the headers were
also reordered.
2015-10-30 14:35:32 +09:00
Lucas De Marchi 1b07dabeb7 Replace prog_char and prog_char_t with char
prog_char and prog_char_t are now the same as char on supported
platforms. So, just change all places that use them and prefer char
instead.

AVR-specific places were not changed.
2015-10-30 14:35:30 +09:00
Lucas De Marchi 4ab9821624 Replace use of Log_Write_Message_P() with Log_Write_Message() 2015-10-30 14:35:28 +09:00
Lucas De Marchi 20c6ffc5e3 Replace use of UARTDriver::printf_P() with UARTDriver::printf()
This also starts to show warnings on places that were already using
wrong printf format strings.
2015-10-30 14:35:25 +09:00
Lucas De Marchi 6f4904189b Replace use of println_P() with println() 2015-10-30 14:35:22 +09:00
Lucas De Marchi 89fc4f4b62 Replace use of send_text_P() with send_text() 2015-10-30 14:35:17 +09:00
Lucas De Marchi 831d8acca5 Remove use of PROGMEM
Now variables don't have to be declared with PROGMEM anymore, so remove
them. This was automated with:

    git grep -l -z PROGMEM | xargs -0 sed -i 's/ PROGMEM / /g'
    git grep -l -z PROGMEM | xargs -0 sed -i 's/PROGMEM//g'

The 2 commands were done so we don't leave behind spurious spaces.

AVR-specific places were not changed.
2015-10-30 14:35:16 +09:00
Lucas De Marchi 84da1f5039 Rename gcs_send_text_P to gcs_send_text 2015-10-30 14:35:07 +09:00
Lucas De Marchi 84d5fb006f Remove use of Util::{v,}snprintf_P()
These are now the same function as Util::snprintf().
2015-10-30 14:35:05 +09:00
Lucas De Marchi 2c38e31c93 Remove use of PSTR
The PSTR is already define as a NOP for all supported platforms. It's
only needed for AVR so here we remove all the uses throughout the
codebase.

This was automated with a simple python script so it also converts
places which spans to multiple lines, removing the matching parentheses.

AVR-specific places were not changed.
2015-10-30 14:35:04 +09:00
ggregory8 76871ef0cd Tracker: fix start lat, lon sanity check 2015-10-27 12:50:40 +09:00
Caio Marcelo de Oliveira Filho a3fb1c0e4f AntennaTracker: include SITL only for SITL board
Include board-specific files only when the board is used. Since these
should be exceptional cases, let the includer handle the ifdef instead
of putting ifdefs in every platform-specific header.

In the future we should evaluate whether the HAL for the board should
instantiate this.
2015-10-22 13:36:14 -02:00
Caio Marcelo de Oliveira Filho 49a42dc985 SITL: use a SITL namespace 2015-10-22 11:04:42 -02:00
Caio Marcelo de Oliveira Filho b648715496 AntennaTracker: implement HAL::Callbacks
Also removes includes for each board since they are not necessary
anymore.
2015-10-21 09:16:09 +11:00
Caio Marcelo de Oliveira Filho ec52df991c build: compile only the HAL files needed by the board
Instead of requiring every program to specify the HAL related modules,
let the build system do it (in practice everything we compiled depended
on HAL anyway). This allow including only the necessary files in the
compilation.
2015-10-21 09:16:07 +11:00
Caio Marcelo de Oliveira Filho 2e464a53c2 AP_HAL: make code not depend on concrete HAL implementations
The switching between different AP_HAL was happening by giving different
definitions of AP_HAL_BOARD_DRIVER, and the programs would use it to
instantiate.

A program or library code would have to explicitly include (and depend)
on the concrete implementation of the HAL, even when using it only via
interface.

The proposed change move this dependency to be link time. There is a
AP_HAL::get_HAL() function that is used by the client code. Each
implementation of HAL provides its own definition of this function,
returning the appropriate concrete instance.

Since this replaces the job of AP_HAL_BOARD_DRIVER, the definition was
removed.

The static variables for PX4 and VRBRAIN were named differently to avoid
shadowing the extern symbol 'hal'.
2015-10-21 09:16:07 +11:00
Randy Mackay 012b632d09 Tracker: send home position when home is set or get-home msg received 2015-10-03 12:56:31 +09:00
Andrew Tridgell 277f2f3b27 Tracker: added EKF2 instance 2015-09-23 11:57:18 +10:00
Andrew Tridgell 3dcb840816 AntennaTracker: build NavEKF2 2015-09-23 11:56:32 +10:00
Randy Mackay b6229288a1 Tracker: calibrate gyros on accel cal and trim 2015-09-21 17:06:50 +09:00
Randy Mackay 7f0aad63b9 Tracker: remove INS start style 2015-09-21 17:06:47 +09:00
Andrew Tridgell f2b0f8f4db AntennaTracker: fix for changed AP_RangeFinder API 2015-09-08 16:46:52 +10:00
Siddharth Bharat Purohit 0c004c13a1 AntennaTracker: implement on-board compass calibration for Antenna tracker 2015-09-03 16:59:14 +10:00
Gustavo Jose de Sousa 2c9d9e8060 AntennaTracker: use function name for AP_Scheduler task name
That makes it easier to identify tasks when debug is enabled in AP_Scheduler.
2015-09-01 20:22:18 +10:00
Gustavo Jose de Sousa 9820cb0c07 AntennaTracker: use designated initializers for tasks structs
Makes code less prone to break build and semantics (e.g., when a new field is
added).
2015-09-01 20:22:18 +10:00
Randy Mackay a9c6d34a9e Tracker: sanity check home location parameters 2015-08-27 15:16:01 +09:00
Randy Mackay 3db22a9c27 Tracker: update version to 0.7.3
This is done because of the text severity change.  The GCSs need a unique version from which they can be sure the severities have changed.
2015-08-25 14:54:58 +09:00
squilter f1d9b3570c Tracker: update severity values 2015-08-25 14:04:45 +09:00
squilter 979763c341 Tracker: define and send FIRMWARE_VERSION 2015-08-23 09:21:55 +09:00
Tom Pittenger 85027e1997 Tracker: moved gcs code to be more common 2015-08-19 15:42:08 +10:00
dgrat 2b36457261 Tracker: add handle_guided_request to allow cmake to work
merge
2015-08-17 16:47:42 +09:00
Andrew Tridgell 3f04c6415f AntennaTracker: prevent build error with MSG_RPM 2015-08-12 15:03:51 +10:00
Gustavo Jose de Sousa a672e3c5ce AntennaTracker: standardize inclusion of libaries headers
This commit changes the way libraries headers are included in source files:

 - If the header is in the same directory the source belongs to, so the
 notation '#include ""' is used with the path relative to the directory
 containing the source.

 - If the header is outside the directory containing the source, then we use
 the notation '#include <>' with the path relative to libraries folder.

Some of the advantages of such approach:

 - Only one search path for libraries headers.

 - OSs like Windows may have a better lookup time.
2015-08-11 16:28:40 +10:00
Jakub Oller 06031985cc Tracker: version to 0.7.2 and update release notes 2015-08-01 20:18:06 +09:00
Randy Mackay b377d4deac Tracker: fix initialisation of nav_status
Thanks to Jakub Oller for finding the cause.  This is a slight
modification upon his fix.
2015-08-01 20:18:03 +09:00
squilter d99c85c1fe Tracker: init vehicle capabilities 2015-08-01 09:47:35 +09:00
Randy Mackay 72c8f411d7 Tracker: update readme 2015-07-28 14:02:03 +09:00
Спивак Константин 4fa0797d19 Tracker: create readme.txt 2015-07-28 14:01:56 +09:00
Lucas De Marchi e62c653362 AntennaTracker: use ARRAY_SIZE macro 2015-07-07 07:56:29 +10:00
Jakub Oller e73562140b Tracker: remove return from mavlink_snoop_static 2015-07-06 12:11:47 +09:00
Andrew Tridgell 48aae34319 AntennaTracker: fixed pde path 2015-06-16 09:59:27 +10:00
Randy Mackay 0b9929bb04 Tracker: avoid compiler warning re to new VIBRATION msg 2015-06-12 21:36:51 +09:00
Randy Mackay 5f53937c6a Tracker: init member variables
Resolves Coverity warnings
2015-06-08 14:46:29 +09:00
Lucas De Marchi 34058787f3 AntennaTracker: stop using alias FUNCTOR_BIND_VOID 2015-06-04 13:37:39 +09:00
Randy Mackay 26fdaa0710 Tracker: reverse CR servo error calculation 2015-06-03 23:23:52 +09:00
rcairman fba8ca3a98 AntennaTracker: continuous rotation servos
Global modifications for continuous rotation servos
2015-06-03 23:23:51 +09:00
Randy Mackay ac05f0f1d4 Tracker: remove duplicate THISFIRMWARE define 2015-06-03 23:23:50 +09:00
rcairman 7382095d79 Tracker: version to 0.7.1 and release notes 2015-06-03 23:23:44 +09:00
Andrew Tridgell fdc0839aaa AntennaTracker: changes for new AHRS API 2015-06-01 16:17:07 +10:00
Andrew Tridgell 24c85ff9d8 AntennaTracker: added Parameters.pde for old MissionPlanner 2015-06-01 15:08:08 +10:00
Andrew Tridgell f8adea2ddd AntennaTracker: complete conversion to .cpp files 2015-06-01 15:08:08 +10:00
Andrew Tridgell 1660b027ca AntennaTracker: rename pde files to cpp 2015-06-01 15:06:32 +10:00
Andrew Tridgell 4512e408f7 AntennaTracker: fixed build 2015-05-27 14:28:48 +10:00
Andrew Tridgell ce0ee69a3b AntennaTracker: fix for scheduler API change 2015-05-26 14:36:34 +10:00
Andrew Tridgell 65a95039c3 AntennaTracker: removed NOINLINE define 2015-05-21 09:35:47 +10:00
Andrew Tridgell a5c5ab2581 AntennaTracker: adjust for new AP_Scheduler syntax 2015-05-21 07:48:48 +10:00
Randy Mackay d467507b88 Tracker: version and release notes for 0.7 2015-05-17 15:30:40 +09:00
Andrew Tridgell 4a290cd2f1 AntennaTracker: support setting just accel trim with preflight-cal
use param5==2
2015-05-16 07:56:34 +10:00
Randy Mackay 35275aab85 Tracker: add support for 4th mavlink channel 2015-05-15 15:07:26 +09:00
Randy Mackay 6e97f2e1fb Tracker: clarify SYSID_MAV parameter description 2015-05-11 09:23:08 +09:00
Andrew Tridgell 295041ef45 AntennaTracker: revert AP_Math class change 2015-05-05 13:27:03 +10:00
Tom Pittenger 0e3d54d9e4 Tracker: compile warnings: float to double. print statements require doubles 2015-05-05 13:27:00 +10:00
Tom Pittenger 896c86bcc6 Tracker: compile warnings: remove unused function update_servo_test 2015-05-05 13:26:59 +10:00
Tom Pittenger 1020be9d9f Tracker: compile warnings: float to double. print statements require doubles 2015-05-05 13:26:59 +10:00
Tom Pittenger d8d8593708 AntennaTracker: compiler warnings: apply is_zero(float) or is_equal(float) 2015-05-05 13:26:53 +10:00
Andrew Tridgell 429efc4d6c AntennaTracker: fix for HAL_SITL rename 2015-05-05 09:45:57 +10:00
Randy Mackay 1f80e8859c Tracker: 0.5 release notes 2015-04-29 14:50:04 +09:00
Randy Mackay 94737e4df6 Tracker: add SYSID_TARGET and request 1hz pos data from vehicle 2015-04-27 16:58:05 +09:00
Randy Mackay 10b9f2ebe0 Tracker: snoop on all channels
This ensures we check for vehicle data on all channels
2015-04-27 16:58:02 +09:00
Randy Mackay 212e4940d4 Tracker: version to 0.5 2015-04-27 12:10:21 +09:00
Randy Mackay 404df7fe7d Tracker: add DISTANCE_MIN parameter
Vehicles will only be tracked if they are at least DISTANCE_MIN meters
away from the tracker
2015-04-27 12:10:20 +09:00
Randy Mackay f74d2101d1 Tracker: add SERVO_TEST mode
tracker switches into this mode when it receives a do-set-servo command
from the GCS.  In this mode the tracker simply moves the servo to the
specified pwm.
2015-04-27 12:10:19 +09:00
Randy Mackay f7f5040d2d Tracker: replace abs with labs for yaw servo 2015-04-27 12:10:18 +09:00
Randy Mackay ebf700d736 Tracker: fix notify initialisation
notify should be initialised before setting the initial startup flag
status
2015-04-27 12:10:16 +09:00
Randy Mackay 253a19a7fe Tracker: add range finder include
NavEKF constructor requires a range finder object even if not used
2015-04-24 14:39:09 +09:00
Niels Joubert eae9452cd1 AntennaTracker: Handle GPS Injection 2015-04-24 08:01:33 +10:00
Jonathan Challinger 90d74e55d3 AntennaTracker: fix newlines 2015-04-18 09:50:44 +09:00
Andrew Tridgell 2f8764d31a AntennaTracker: added LOCAL_POSITION message 2015-04-06 15:29:47 -07:00
Randy Mackay 912a5d80b1 Tracker: fix serial manager integration 2015-04-01 15:13:41 -07:00
Randy Mackay a32220636a Tracker: integrate Serial Manager instance 2015-04-01 14:59:30 -07:00
Vic 53275ab8af AntennaTracker: Update compass to new interface 2015-03-13 18:46:16 +11:00
Randy Mackay 94bd357c57 Tracker: add EKF_STATUS_REPORT to enum
avoids a compiler warning
2015-03-12 13:44:04 +09:00
Andrew Tridgell bd4476cb84 AntennaTracker: removed 1D accel cal 2015-03-12 12:50:29 +11:00
Andrew Tridgell e6b291f270 AntennaTracker: use new interactive accelcal 2015-03-07 21:56:40 +11:00
Randy Mackay 343bcbb1c9 Tracker: fixed MAVLink stream trigger calculations 2015-02-20 13:16:05 +09:00
Randy Mackay 73f40c697b Tracker: remove unused definitions 2015-02-15 12:16:27 +09:00
Andrew Tridgell 6ec65bf629 AntennaTracker: implement MAV_CMD_REQUEST_AUTOPILOT_CAPABILITIES 2015-02-12 09:04:16 +11:00
Andrew Tridgell 4484465b38 AntennaTracker: support AUTOPILOT_VERSION command 2015-02-11 19:52:45 +11:00
Andrew Tridgell 91df1ba738 AntennaTracker: fixed build warning 2015-02-03 09:49:15 +11:00
Randy Mackay 2684d55b59 Tracker: version to 0.4 and release notes 2015-01-31 17:42:28 +09:00
Randy Mackay b12cf4644c Tracker: initialise telem2 2015-01-29 14:05:16 +11:00
Randy Mackay c7fb252fbb Tracker: integrate SerialManager 2015-01-29 14:05:16 +11:00
Randy Mackay eced90f3a7 Tracker: version number and release notes for 0.3 2015-01-28 11:32:47 +09:00
Andrew Tridgell f8962d2439 AntennaTracker: updates for new AP_Baro API 2015-01-09 11:50:55 +11:00
Andrew Tridgell 17eee56b89 AntennaTracker: fixed build warnings 2015-01-09 11:38:23 +11:00
Staroselskii Georgii 67dc638840 Antenna: added AK8963 support 2015-01-07 08:41:13 +11:00
Andrew Tridgell 86c5d2932a AntennaTracker: fixed build with AHRS change 2015-01-03 14:16:34 +11:00
Randy Mackay 860e4b1ce2 Tracker: pre_arm_gps_check flag always true 2014-12-26 12:32:43 +09:00
Randy Mackay 43901dce65 Tracker: mavlink component id to 1
The antenna tracker's system id (aka SYSID) should be different from
other vehicles but it's component id should be "1" like copter, plane
and rover.
2014-12-11 21:09:15 +09:00
Andrew Tridgell 0d2308f754 AntennaTracker: removed old PROXY_MODE parameter
this should not be needed any more
2014-12-11 12:32:42 +09:00
Andrew Tridgell c94e934fdf AntennaTracker: use generic mavlink routing
this replaces the special purpose routing in the AntennaTracker
2014-12-11 12:32:40 +09:00
Andrew Tridgell 6b5492a586 AntennaTracker: fix build with new mavlink repo 2014-11-18 11:19:59 +11:00
Andrew Tridgell a4d2b044f0 AntennaTracker: convert to new AP_InertialSensor API 2014-10-24 12:10:38 +11:00
Randy Mackay 67a38be7ce Tracker: update version to 0.2 2014-10-11 17:11:07 +09:00
Randy Mackay 32d8e5c8d4 Tracker: only run servo updates when safety is off
Largely removes the sudden jerk that occurs when the user pushes the
safety switch
2014-10-11 17:06:29 +09:00
Michael Oborne e8303475e8 AntennaTracker: fix documentation 2014-10-11 15:25:06 +09:00
Randy Mackay 5e91d49736 Tracker: constrain manual pass through 2014-10-06 19:41:04 +09:00
Randy Mackay 4f5f253656 Tracker: send RADIO_IN msg to GCS 2014-10-06 19:41:02 +09:00
Randy Mackay 1b7ca684ee Tracker: add read_radio 2014-10-06 19:41:01 +09:00
Randy Mackay f4d45c9b6d Tracker: limit yaw to YAW_RANGE 2014-10-06 19:40:59 +09:00
Randy Mackay e7e0dd3509 Tracker: remove outdated comments 2014-10-06 19:40:58 +09:00
Randy Mackay b6634bb416 Tracker: reorder servo functions
No functional change.
Flow runs from top to bottom with functions at top of file calling those
lower down.
2014-10-06 19:40:57 +09:00
Randy Mackay a43a8ccfa0 Tracker: remove servo debug 2014-10-06 19:40:55 +09:00
Randy Mackay 704a720412 Tracker: move servo init to servos.pde 2014-10-06 19:40:54 +09:00
Randy Mackay c69bfa2cb1 Tracker: limit pitch to PITCH_RANGE
Also set servo_limit flags for pitch
2014-10-06 19:40:53 +09:00
Randy Mackay f2dab17230 Tracker: add YAW_RANGE and PITCH_RANGE params
These capture the yaw and pitch range of movement in degrees
2014-10-06 19:40:51 +09:00
Randy Mackay 1786c36457 Tracker: move nav_status lower in AntennaTracker.pde
No functional change
2014-10-06 19:40:50 +09:00
Randy Mackay b9eaec8e97 Tracker: rename err variable to angle_err
No functional change
2014-10-06 19:40:48 +09:00
Randy Mackay bf4ba9ffc4 Tracker: auto move servos only with valid vehicle position 2014-10-06 19:40:47 +09:00
Randy Mackay 0d1fefc23d Tracker: vehicle state made global 2014-10-06 19:40:46 +09:00
Randy Mackay 2155951e63 Tracker: move startup delay to update_tracking call
This ensure the tracker does not move in any mode until after the
startup delay has passed
2014-10-06 19:40:44 +09:00
Randy Mackay 1135ef3610 Tracker: move servo control to servos.pde file 2014-10-06 19:40:43 +09:00
Randy Mackay 643a680fed Tracker: move pos estimate to separate function 2014-10-06 19:40:41 +09:00
Randy Mackay 8e548ddabc Tracker: move auto, manual and scan to separate files 2014-10-06 19:40:40 +09:00
Randy Mackay 7afd443f57 Tracker: move bearing and dist calcs to separate function 2014-10-06 19:40:39 +09:00
Randy Mackay a0e89281ef Tracker: move vehicle pos estimate to separate function 2014-10-06 19:40:37 +09:00
Randy Mackay 1f91306a3b Tracker: remove unused relative_alt 2014-10-06 19:40:36 +09:00
Randy Mackay 8fde1aabe9 Tracker: add vehicle struct comments
No functional change
2014-10-06 19:40:34 +09:00
Randy Mackay ac158f15e9 Tracker: check target of manual control msgs 2014-10-06 19:40:33 +09:00
Randy Mackay df827fdb8c Tracker: add nav_status comments
no functional impact
2014-10-06 19:40:31 +09:00
Randy Mackay b06d3d3f52 Tracker: remove forwarding of pos and pressure to vehicle 2014-10-01 15:54:26 +09:00
Randy Mackay 111ec147f0 Tracker: GCS_Mavlink format fix-up of indentation 2014-10-01 15:54:24 +09:00
Randy Mackay 3e62b188a1 Tracker: process mavlink msgs from vehicle once
previously heartbeat messages from the vehicle could be processed twice.
Once at the top of hte handleMessage function where they were forwarded
onto the GCS and then again lower down in the function where all
received heartbeats were sent to the vehicle.
2014-10-01 15:54:21 +09:00
Randy Mackay 7a06ed8a8a AntennaTracker: minor comment and format fix 2014-10-01 15:54:18 +09:00
Randy Mackay 72053a8a74 AntennaTracker: notify armed after receiving vehicle position 2014-10-01 15:54:16 +09:00
Randy Mackay dbc1c03d49 Tracker: use handle_set_mode() 2014-10-01 15:54:13 +09:00
Andrew Tridgell 655db3c2d5 AntennaTracker: set GPS non-blocking
the new GPS driver only ever needs a non-blocking port
2014-08-19 10:08:17 +10:00
Andrew Tridgell 565e897336 AntennaTracker: fixed autodoc format errors 2014-08-15 06:19:55 +10:00
Randy Mackay 6195b2b0c8 Antenna: update makefile for new location 2014-08-14 20:56:05 +10:00
Randy Mackay eb4eca8550 Antenna: move up one directory 2014-08-14 20:56:00 +10:00