Commit Graph

141 Commits

Author SHA1 Message Date
Andrew Tridgell c7044c4f91 AP_Terrain: make terrain request times per channel
otherwise we can miss sending one if we send first to a channel not
being listened to
2015-05-26 17:27:51 +10:00
Lucas De Marchi 6ae2591cad AP_Terrain: use functor macros
Functor is not yet being used but let's make is macro fallback to the
previous Delegate implementation for easy of transition between the two.
2015-05-26 13:46:54 +10:00
Andrew Tridgell e6c6fe095f AP_Terrain: fixed a warning 2014-10-22 18:27:20 +11:00
Andrew Tridgell eeb04ba1b8 AP_Terrain: fetch more terrain data around waypoints
this ensures we have data for a wide region (1km) around each waypoint
2014-08-25 14:55:15 +10:00
Andrew Tridgell af4dee39d8 AP_Terrain: added note on CPU cost of height_amsl() 2014-08-07 09:51:14 +10:00
Andrew Tridgell dc72dfb70a AP_Terrain: added terrain lookahead API
this allows for predicting altitude needed to climb over upcoming
terrain
2014-08-07 09:30:35 +10:00
Andrew Tridgell f0f46a77d7 AP_Terrain: don't request data at 0/0 2014-08-06 22:13:37 +10:00
Andrew Tridgell 642a07b6bd AP_Terrain: enable the terrain database by default
MissionPlanner now supports terrain data, and having terrain data in
logs is useful even if users don't fly terrain missions
2014-08-06 20:53:34 +10:00
Andrew Tridgell efa1d370fa AP_Terrain: added missing TerrainMission.cpp 2014-08-06 19:32:53 +10:00
Andrew Tridgell a701fa2098 AP_Terrain: added automatic rally point checking 2014-08-06 17:59:19 +10:00
Andrew Tridgell 7da939047f AP_Terrain: added automatic waypoint checking
check we have terrain data for all waypoints
2014-08-06 17:59:19 +10:00
Andrew Tridgell 9ca65602c6 AP_Terrain: added dataflash logging 2014-08-06 17:59:19 +10:00
Andrew Tridgell 147a7b8b69 AP_Terrain: added extrapolation based on last available data
if we run out of terrain data then extrapolate using the last
available terrain height at the AHRS position. This can be used to
cope with GCS outages over long distances where the terrain data isn't
preloaded
2014-08-06 17:59:18 +10:00
Andrew Tridgell 37b357f282 AP_Terrain: prevent valgrind error when terrain not available 2014-07-25 13:44:36 +10:00
Andrew Tridgell bb31a45596 AP_Terrain: expand parameter docs 2014-07-25 13:18:48 +10:00
Andrew Tridgell ab9785d3ad AP_Terrain: added current_height to TERRAIN_REPORT
and send TERRAIN_REPORT even when downloading TERRAIN_DATA
2014-07-25 11:40:56 +10:00
Andrew Tridgell c4047f6f11 AP_Terrain: rename find_grid() to find_grid_cache()
thanks Randy!
2014-07-25 09:52:20 +10:00
Andrew Tridgell 1fcf35333f AP_Terrain: fixed init order and init more vars
thanks to Randy for spotting this
2014-07-25 09:45:47 +10:00
Andrew Tridgell 679b32b76c AP_Terrain: make parameter variables private 2014-07-25 09:45:28 +10:00
Andrew Tridgell 3faafc9644 AP_Terrain: replace HAVE_AP_TERRAIN with AP_TERRAIN_AVAILABLE 2014-07-25 07:59:48 +10:00
Andrew Tridgell ce60bf8d3f AP_Terrain: removed incorrect ASSERT 2014-07-25 07:56:33 +10:00
Andrew Tridgell 7bc6561f2a AP_Terrain: fixed comment on function 2014-07-25 07:56:22 +10:00
Andrew Tridgell c32595e6ed AP_Terrain: added status() interface for reporting 2014-07-24 21:50:19 +10:00
Andrew Tridgell e2e41d5da7 AP_Terrain: added location_to_relative_home() function 2014-07-24 21:50:19 +10:00
Andrew Tridgell 5e2077185b AP_Terrain: fixed cm conversion error 2014-07-24 21:50:19 +10:00
Andrew Tridgell 18974363d5 AP_Terrain: added some helper functions
this adds easier to use helper functions for terrain handling
2014-07-24 21:50:19 +10:00
Andrew Tridgell 8ea2133c4b AP_Terrain: provide more height_*() convenience functions
these provide functions that are more convenient for the vehicle code
to use
2014-07-24 21:50:19 +10:00
Andrew Tridgell db506b76fa AP_Terrain: split up code into separate cpp files
this should make it a bit easier to review
2014-07-24 21:50:19 +10:00
Andrew Tridgell 2d9637c156 AP_Terrain: re-arrange disk IO code
add some comments explaining split between IO thread and main code
2014-07-24 21:46:07 +10:00
Andrew Tridgell ee04c7de96 AP_Terrain: hold home location as a special location
this ensures home altitude is always available
2014-07-24 21:46:06 +10:00
Andrew Tridgell 0a3aa23619 AP_Terrain: fixed build on APM2 2014-07-24 21:46:06 +10:00
Andrew Tridgell 2f0279659a AP_Terrain: prevent disk blocks getting stuck
we need to match first on the expected state to ensure we don't get an
invalid block
2014-07-24 21:46:06 +10:00
Andrew Tridgell 28d6e39c4c AP_Terrain: added checking of block CRCs on disk
this allows us to cope with SD card data corruption
2014-07-24 21:46:06 +10:00
Andrew Tridgell eeb4ad56bc AP_Terrain: added checking and reporting messages
this allows the GCS to check the status of the terrain system
2014-07-24 21:45:56 +10:00
Andrew Tridgell 9f76f0276f AP_Terrain: added disk IO for terrain data 2014-07-24 21:45:56 +10:00
Andrew Tridgell 09214680fe AP_Terrain: request grids around current grid
this ensures we have grids ahead of time
2014-07-24 21:45:56 +10:00
Andrew Tridgell 18e09c2f3e AP_Terrain: added debug code 2014-07-24 21:45:56 +10:00
Andrew Tridgell 09518d2d91 AP_Terrain: added mavlink transport of terrain data 2014-07-24 21:45:46 +10:00
Andrew Tridgell 1d42eda4da AP_Terrain: started on update() logic 2014-07-24 21:45:46 +10:00
Andrew Tridgell a7eb2ac28c AP_Terrain: implement height_amsl() 2014-07-24 21:45:46 +10:00
Andrew Tridgell ee7fc984f0 AP_Terrain: initial structure 2014-07-24 21:44:50 +10:00