Commit Graph

586 Commits

Author SHA1 Message Date
Beat Küng 81dc73b752 fmu-v5_optimized: disable bl_update
to reduce FLASH usage
2020-03-24 09:46:20 -04:00
Beat Küng b156fe5787 boards: remove deprecated SPI + I2C defines from board_config.h
chip-selects are deselected in stm32_spiinitialize()
2020-03-24 09:46:20 -04:00
Beat Küng 6588dd0861 refactor icm20948: use driver base class 2020-03-24 09:46:20 -04:00
Beat Küng 924f46ee28 refactor icm20608g: use driver base class 2020-03-24 09:46:20 -04:00
Beat Küng c4a19c8852 refactor icm20689: use driver base class 2020-03-24 09:46:20 -04:00
Beat Küng 609eafd4cd refactor l3gd20: use driver base class 2020-03-24 09:46:20 -04:00
Beat Küng 6cf4de9e02 refactor lsm303d: use driver base class 2020-03-24 09:46:20 -04:00
Beat Küng 3423809cd9 refactor ism330dlc: use driver base class 2020-03-24 09:46:20 -04:00
Beat Küng 00280d55c2 refactor rm3100: use driver base class 2020-03-24 09:46:20 -04:00
Beat Küng 4d511868e6 refactor lis3mdl: use driver base class 2020-03-24 09:46:20 -04:00
Beat Küng 54da4997ad refactor bmi088: use driver base class 2020-03-24 09:46:20 -04:00
Beat Küng 7626be0485 refactor mpu9250: use driver base class 2020-03-24 09:46:20 -04:00
Beat Küng 2f3174abb0 refactor icm20602: use driver base class 2020-03-24 09:46:20 -04:00
Daniel Agar 8738c26426 boards: enable NuttX SPI DMA buffers
- update to NuttX with stm32f4 and stm32f7 SPI DMA internal buffers
 - remove explicit DMA buffer allocations from new IMU drivers
 - restore original BOARD_DMA_ALLOC_POOL_SIZE
 - decrease SPI DMA thresholds based on fmu-v2/v3/v4/v5 bench testing
2020-03-22 19:24:26 -04:00
Daniel Agar b73ec18abb boards: add px4_fmu-v4 and px4_fmu-v5 optimized (-O3) build variants 2020-03-22 17:50:17 -04:00
Daniel Agar 1be959cba8 InvenSense ICM-40609-D IMU driver
This is another new InvenSense sensor with max output data rate of 32 kHz (both accel & gyro), on board anti-aliasing filter, and accel range 32G. Overall quite similar to the ICM-42688-P added in #14420, but with doubled accel range and without the optional high resolution output or clock sync.
2020-03-20 13:02:13 -04:00
SalimTerryLi dc8e775d8f ADC: replace ioctl with uorb message (#14087) 2020-03-20 11:23:32 +01:00
Beat Küng 8ebde51648 refactor hmc5883: use driver base class
Removes the calibration on startup, as these values were overwritten by
the system calibration values anyway.
So the only difference is that if all calibration scales were equal to 1,
the driver startup would have failed.
2020-03-17 23:31:17 -04:00
Beat Küng 47b329cc54 refactor bmm150: use driver base class 2020-03-17 23:31:17 -04:00
Beat Küng ec2de33547 lights: use driver base class 2020-03-17 23:31:17 -04:00
Beat Küng 832ccd262e refactor ina226: use driver base class 2020-03-17 23:31:17 -04:00
Beat Küng 985bb2adc9 refactor bmp388: use driver base class 2020-03-17 23:31:17 -04:00
Beat Küng dbb53044ce refactor ms5611: use driver base class
Also: remove device type auto-detection as it will not work with
together with the new SPI board config (which specifies a specific
device type)
2020-03-17 23:31:17 -04:00
Beat Küng 22a38453ab refactor bmi055: use driver base class 2020-03-17 23:31:17 -04:00
Beat Küng 969a77f889 refactor mpu6000: use driver base class 2020-03-17 23:31:17 -04:00
Beat Küng be0a205438 refactor ist8310: use driver base class 2020-03-17 23:31:17 -04:00
Beat Küng f555fe309c fmu-v5: change external i2c bus ordering to match with the label 2020-03-17 23:31:17 -04:00
Beat Küng 87cd20180c i2c spi: add unittests for BusCLIArguments 2020-03-17 23:31:17 -04:00
SalimTerryLi b70289c536 move __PX4_LINUX out of px4_impl_os.cmake 2020-03-17 13:20:32 -04:00
Paul Riseborough ab92b46e69 Update ecl to add ability to recover from bad magnetic yaw
* msg: Add EKF-GSF yaw estimator logging data
* ecl: update to version with EKF-GSF yaw estimator
* ekf2: Add param control and logging for EKF-GSF yaw estimator
* logger: Add logging for EKF-GSF yaw esimtator
2020-03-15 12:57:25 -04:00
Daniel Agar 2b03aa3d1b px4_fmu-v2: disable vtol_att_control to save flash 2020-03-12 14:10:39 -04:00
Daniel Agar 0ce9e113ff boards: stm32f4/f7 enable SPI_DMATHRESHOLD=32 2020-03-11 22:08:37 -04:00
Beat Küng 179c89b6bd board configs: extend board_dma_map.h with a table 2020-03-11 22:08:37 -04:00
Daniel Agar aeff85322d px4_fmu-v2: leave SPI DMA disabled for now (flash space) 2020-03-11 22:08:37 -04:00
Daniel Agar 772ddd7f5e px4_fmu-v2/v3: add board_dma_map.h and enable SPI1/SPI4 DMA 2020-03-11 22:08:37 -04:00
Daniel Agar bd16c2b4f6 px4_fmu-v5x: add board_dma_map.h and enable SPI{1,2,3} DMA 2020-03-11 22:08:37 -04:00
Daniel Agar 6ed4b6978e px4_fmu-v5: add board_dma_map.h and enable SPI1 DMA 2020-03-11 22:08:37 -04:00
Daniel Agar 6834f089cc px4_fmu-v4pro: cleanup board_dma_map.h 2020-03-11 22:08:37 -04:00
Daniel Agar 147e37ac88 px4_fmu-v4: cleanup board_dma_map.h 2020-03-11 22:08:37 -04:00
Daniel Agar f9794e99f8 move hover_thrust_estimator to new module (mc_hover_thrust_estimator)
* MC_HTE: unitialize with hover_thrust parameter
* MC_HTE: constrain hover thrust setter between 0.1 and 0.9
* MC_HTE: integrate with land detector and velocity controller
* MCHoverThrustEstimator: Always publish an estimate even when not fusing measurements. This is required as the land detector and the position controller need to receive a hover thrust value.

* MC_HTE: use altitude agl threshold to start the estimator
local_position.z is relative to the origin of the EKF while dist_bottom
is above ground

Co-authored-by: bresch <brescianimathieu@gmail.com>
2020-03-11 21:20:54 -04:00
David Sidrane 82ab1413fc px4_fmu-v5:Add Manifest Entries for UAVCAN interfaces 2020-03-11 20:36:58 -04:00
Daniel Agar 46a09b711f boards: increase STDIO buffer size where we can afford it 2020-03-11 17:19:44 -04:00
Daniel Agar 505afc6063 boards: increase LPWORKSTACKSIZE 1536 -> 1600 2020-03-10 12:53:01 -04:00
Beat Küng 335623e11d SPI config: use enum to specify bus 2020-03-10 10:11:43 -04:00
Beat Küng e627fed117 fmu-v2: disable perf command and some airframes
to reduce FLASH size
2020-03-10 10:11:43 -04:00
Beat Küng b54e5a1c23 param: automatically update calibration ID params on import
This avoids the need for recalibration, and also cleans up other driver
ID's (merge separate accel/gyro).

The SPI address was previously set to a board-specific (arbitrary) value,
and is now set to 0. This will allow extending for multiple sensors of the
same type on the same bus.
2020-03-10 10:11:43 -04:00
Beat Küng 1851665fab boards: add new spi+i2c config
Chip-select and SPI initialization uses the new config, whereas the drivers
still use the existing defines.

The configuration in board_config.h can be removed after all drivers are
updated.
2020-03-10 10:11:43 -04:00
Daniel Agar 4698a09b98 delete unmaintained outback challenge (OBC) bottle drop example 2020-03-05 14:09:31 -05:00
David Sidrane 25c12d8b9e px4_fmu-v5x:Add Serial test 2020-03-05 13:40:11 -05:00
David Sidrane ee220a5086 px4_fmuv5x:Update manifest for USB not present 2020-03-02 19:59:36 -05:00