Commit Graph

190 Commits

Author SHA1 Message Date
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
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
be0a205438 refactor ist8310: use driver base class 2020-03-17 23:31:17 -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
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
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
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
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
Beat Küng
40898ba237 px4/fmu-v5x: use hw description methods for timer configuration 2020-02-13 03:49:16 -08:00
Beat Küng
62b4f3487a io timer: remove some fields from io_timers_t and split out channel indexes
- reduces amount of board configuration required
- removes the cyclic dependency between io_timers_t and timer_io_channels_t

Fixes a bug in the fmuk66-v3 config: the 2. timer has 3 channels associated
not 2.
Fixes a bug in the modelai config: the 2. timer has 4 channels associated.
2020-02-13 03:49:16 -08:00
David Sidrane
254b05d377 px4_fmu-v5x:P2 Base migrating to LAN8742Ai phy 2020-02-08 06:39:10 -08:00
Beat Küng
b399698306 ist8310: remove calibration code
- it does nothing useful
- increases boot time by 2 seconds on pixhawk 4 due to a poll timeout:
IST8310 on I2C bus 3 at 0x0e (bus: 100 KHz, max: 400 KHz)
WARN  [ist8310] ERROR: TIMEOUT 2
2020-02-06 12:39:39 -05:00
Roman Dvořák
c8a58c5c9d drivers: add PCF8583 RPM sensor (#14018) 2020-02-02 12:10:20 -05:00
Claudio Micheli
624fcc3adb v5x target: Fix wrong FD for TELEM3
Signed-off-by: Claudio Micheli <claudio@auterion.com>
2020-01-21 23:27:59 +01:00
Daniel Agar
dc05ceaad2 create temperature_compensation module
- this is a new module for temperature compensation that consolidates the functionality previously handled in the sensors module (calculating runtime thermal corrections) and the events module (online thermal calibration)
 - by collecting this functionality into a single module we can optionally disable it on systems where it's not used and save some flash (if disabled at build time) or memory (disabled at run time)
2020-01-20 21:42:42 -05:00
David Sidrane
351c3f7c22 px4_fmu-v5x:Support Nuttx SDIO Fixes 2020-01-08 12:23:01 -05:00
Timothy Scott
fc1341208f INA226: Integrate with PX4 (#12673)
* Publish I2C battery data as battery_status
2019-12-28 12:30:11 -05:00
David Sidrane
5bb82a9f93 px4_fmu-v5x:GPIO_VDD_5V_{HIPOWER|PERIPH}_nOC remove Pull up - OC have series 47K 2019-12-17 18:33:20 -08:00
David Sidrane
feaa657172 px4_fmu-v5x:SE050 Assert Reset on board_init, and release in appinit 2019-12-03 16:16:49 -05:00
David Sidrane
949ab563ef px4_fmu-v5x:Drop netinit task priority below LP work 2019-12-03 16:16:49 -05:00
David Sidrane
c9cb59fdd8 px4_fmu-v5x:Init Network in background (no monitor CONFIG_NETINIT_MONITOR is not set) 2019-12-03 16:16:49 -05:00
dino
34f53c14bf Fixed sensor orientation 2019-12-03 16:16:49 -05:00
David Sidrane
213174fc74 px4_fmu-v5x:Set IP 192.168.0.123 GW:192.168.0.254 2019-12-03 16:16:49 -05:00
David Sidrane
ea69fde02a px4_fmu-v5x:Add SPI6_nRESET_EXTERNAL1 2019-12-03 16:16:49 -05:00
David Sidrane
3b88142744 px4_fmu-v5x:rc.board_sensors Add Second BMP388 2019-12-03 16:16:49 -05:00
David Sidrane
996ee49868 fmu-v5x:SPI4 is not used BMM150 moved to I2C4 2019-12-03 16:16:49 -05:00
David Sidrane
0399d689ce px4_fmu-v5x:Start MS5611 on Base I2C3 2019-12-03 16:16:49 -05:00
David Sidrane
31456419e9 px4_fmu-v5x:Add 4096 for ism330dlc to BOARD_DMA_ALLOC_POOL_SIZE
ISM330DLC uses 4096 of memory allocated from DMA pool.
   This depleted the pool to the point the next allocation
   for FAT would fail. Unfortuanly this is the logger
   on a later open.
2019-12-03 16:16:49 -05:00
Daniel Agar
1a395fb6d9 ST ISM330DLC IMU driver 2019-12-03 16:16:49 -05:00
David Sidrane
eb560e8a0f fmu-v5x:Properly reset SPI 2019-12-03 16:16:49 -05:00
David Sidrane
14b592d0c6 px4fmuv5x:Add Sync pin to board config 2019-12-03 16:16:49 -05:00
Beat Küng
cf4e97b71c fmu-v5x: enable DShot
Only the first 6 FMU pins support it.
DMA conflict with UART8, which is the GPS2 port.
2019-11-29 07:39:08 +01:00
Beat Küng
7aa905eb21 fix fmu-v5x: use correct GPS2 serial port 2019-11-29 07:39:08 +01:00
Daniel Agar
bc182e94e6 sensors split rc_update into new standalone module 2019-11-24 13:25:11 -05:00
Daniel Agar
5aaf1b100b delete unused md25 driver 2019-11-21 18:56:24 -05:00
Daniel Agar
8c38176d77 boards: alphabetize and sync common drivers and modules 2019-11-21 18:56:24 -05:00
Daniel Agar
1af7af02db bmp388: cleanup main and add to px4_fmu-v5x board_config.h 2019-11-20 13:12:03 -05:00
Daniel Agar
84fe64b1c2 create new multicopter rate controller module (mc_rate_control) split out of mc_att_control 2019-11-19 17:03:11 -05:00
Daniel Agar
99aae8b891 NuttX use toolchain math.h and avoid empty drivers/Kconfig 2019-11-16 11:43:42 +01:00
David Sidrane
26b9b0371f px4:fmu-v5x BSP Updated to NuttX 8.1+ 2019-11-16 11:43:42 +01:00
Daniel Agar
668984b6b0 boards: start adc in rc.board_sensors 2019-11-11 17:08:24 -05:00