- this is one of the last pieces of the system that still depend on DriverFramework
- add new SIM_GPS_NOISE_X parameter for optionally increasing the GPS noise multiplier (was previously a gpssim command line option)
- add SIM_x_BLOCK parameters to block sensor publication
- SIM_GPS_BLOCK
- SIM_ACCEL_BLOCK
- SIM_GYRO_BLOCK
- SIM_MAG_BLOCK
- SIM_BARO_BLOCK
- SIM_DPRES_BLOCK
- deprecate DriverFramework bmp280 driver (df_bmp280_wrapper)
- update beaglebone blue and snapdragon flight eagle boards to use in tree bmp280
- update posix (really just linux) and qurt I2C wrappers
- tested on beaglebone blue
Unfortunately this commit contains two things:
1. Some cleanup and renaiming.
2. An additional wait until lockstep has been initialized.
By waiting until HIL_SENSOR messages arrive including timestamps we
stop the startup script and prevent other modules from running until
time is set up. This should resolve some busy waiting by various
modules and prevent races on initialization (e.g. the landing state
being subscribed by mavlink before being published by the land
detector).
The previous boot configuration took at minimum one second to boot. This is in particular significant in tests when the system is often started and stopped
Before this change, the battery percentage is reset to 100% as soon as
the drone is disarmed again. In my opinion it is more realistic if the
batteries don't magically fill up again but stay low.
and remove the px4_ prefix, except for px4_config.h.
command to update includes:
for k in app.h atomic.h cli.h console_buffer.h defines.h getopt.h i2c.h init.h log.h micro_hal.h module.h module_params.h param.h param_macros.h posix.h sem.h sem.hpp shmem.h shutdown.h tasks.h time.h workqueue.h; do for i in $(grep -rl 'include <px4_'$k src platforms boards); do sed -i 's/#include <px4_'$k'/#include <px4_platform_common\/'$k/ $i; done; done
for in $(grep -rl 'include <px4_config.h' src platforms boards); do sed -i 's/#include <px4_config.h/#include <px4_platform_common\/px4_config.h'/ $i; done
Transitional headers for submodules are added (px4_{defines,log,time}.h)
* Cherry pick the vehicle_imu PR #9756 src/modules/simulator directory work to submit as standalone PR.
* Modify the accelsim init method mag_report usage to match usage in measure() and mag_measure() methods in the class.
* Incorporate review comments in the accelsim.cpp init() method and also make the same modifications in gyrosim.cpp.
* Delete unneeded mag_report initialization from accelsim init() method.
* Deprecate unneeded measure() call from accelsim.cpp init() and gyrosim.cpp init().
The simulator had hardcoded component ID and system ID (sysID was 0), ignoring what was set up in the params MAV_SYS_ID and MAV_COMP_ID. This caused an issue with multi-vehicle simulations that that rely on sysID to identify the vehicles.
Signed-off-by: Gabriel Moreno <gabrielm@cs.cmu.edu>