Commit Graph

442 Commits

Author SHA1 Message Date
David Sidrane 28681405ae nxp_fmuk66-v3:Disable CONFIG_MMCSD_MULTIBLOCK (_DISABLE=y) 2021-03-12 20:45:45 +01:00
David Sidrane 3e443f7dcc nxp_fmuk66-e:Disable CONFIG_MMCSD_MULTIBLOCK (_DISABLE=y) 2021-03-12 20:45:45 +01:00
Daniel Agar f8eaa6e46b ROMFS handle bl_update generically
- include all available legacy bootloaders
2021-03-11 00:38:18 +01:00
Daniel Agar 4d288512b5 add board architecture specific init defaults 2021-03-09 19:59:41 +01:00
Daniel Agar 19de1e57e3 gyro_fft promote to modules and include on all boards 2021-03-05 10:56:54 -05:00
David Sidrane 6542c6e58b nxp_fmuk66-e:Add rtps build 2021-03-02 15:49:03 -05:00
Daniel Agar 6482120d9a
sensors/vehicle_angular_velocity: use full raw FIFO data (sensor_gyro_fifo) if available 2021-02-25 10:06:17 -05:00
Beat Küng 7e33d03470 drivers: remove tap_esc
- it's not used anymore
- it would need a refactoring to use mixer_module
2021-02-25 09:28:37 -05:00
David Sidrane fd0494555c canbootloader:stm32_boarddeinitialize->board_deinitialize 2021-02-24 19:20:15 +01:00
David Sidrane dd3c3098f2 nxp_ucans32k146:Add Can Bootloader build
nxp_ucans32k146:Relocation for Bootloader

nxp_ucans32k146:can_boot enable CAN

nxp_ucans32k146:Save Space use Non Optimize memcpy

nxp_ucans32k146:Increase to 24K

nxp/ucans32k146:Canbootloader LED Driver

nxp_ucans32k146:Can bootloader shut down CAN

nxp_ucans32k146:Use NVMEEPROM for Paramaters

nxp_ucans32k146:Use bootloader AppDescriptor

px4 mtd:Support onchip emulated eeprom
2021-02-24 19:20:15 +01:00
Daniel Agar 11ad41f7cb delete old imu/mpu6000 driver 2021-02-23 15:58:36 -05:00
Daniel Agar 6cf06319d2 boards: nxp_fmurt1062-v1 remove irlock and lights/blinkm to save flash 2021-02-23 13:23:36 -05:00
Daniel Agar 414f9f81d9
move fake GPS to standalone module 2021-02-20 14:13:36 -05:00
Daniel Agar 2a47583be5 boards: nxp/fmurt1062-v1 disable vmount 2021-02-17 13:54:34 -05:00
Daniel Agar ab0d0fd0be
uORB move to PX4 platform layer 2021-02-17 11:25:56 -05:00
Daniel Agar 44df0fb7a2 Analog Devices ADIS16448 rewrite
- new IMU driver structure with state machine (no sleeps in bus thread)
 - verify all configured registers and trigger reset on failure
 - detect if DIO1 or DIO2 are actually connected for data ready interrupt usage
 - don't use CRC-16 on burst transfers except for verified lots
2021-02-16 10:29:07 +01:00
Daniel Agar fb2a199621 delete unmaintaned mkblctrl driver 2021-02-14 10:38:15 +01:00
David Sidrane 3570e1b4da nxp_fmuk66-e: Sync defconfig with latest V3 changes 2021-02-09 23:53:38 -05:00
David Sidrane df3e94bcff nxp_fmuk66-e:Disabled icm42688p until load issue is resolved 2021-02-09 23:53:38 -05:00
David Sidrane 4610692813 nxp_fmuk66-e:Set CONFIG_CDCACM_PRODUCTSTR 2021-02-09 23:53:38 -05:00
David Sidrane b4c17cc8e7 nxp_fmuk66-e:Set Rotation of bmi88 2021-02-09 23:53:38 -05:00
David Sidrane 8c8f48530e nxp_fmuk66-e:Fix missing line rc.board_defaults 2021-02-09 23:53:38 -05:00
David Sidrane 264efde0c9 nxp_fmuk66-v3:SD enable Multi block 2021-02-09 23:50:58 -05:00
Daniel Agar 8f0918a16b boards: remove unused linker __param section 2021-02-08 23:22:48 -05:00
Peter van der Perk 8242968b2b UAVCAN v1 GPS demo with MAVCAN autoconfigure 2021-02-07 17:18:45 +01:00
Peter van der Perk 5f8ad65c40 FMUK66 NuttX 10 SocketCAN initialization 2021-02-07 17:18:45 +01:00
Peter van der Perk e5d29d4079 UAVCANv1 demo UAVCAN146 <-> BMS-722 is working
Fixed UAVCAN146 linker script that caused CXX initalization to wrong
Enabled uORB listener command
Updated UAVCANv1 msg definition

Known isssue: PX4 params are not working on the UAVCAN146
2021-02-07 17:18:45 +01:00
Daniel Agar 58ca575871 UAVCAN v1 bridge
- NuttX stm32f4/stm32f7 uses character device driver
 - NuttX kinetis and s32k uses socketcan
2021-02-07 17:18:45 +01:00
Peter van der Perk 0c74028976 FMUK66 Decrease telnetd ram usage 2021-02-01 11:50:43 -05:00
Daniel Agar 78dff6adcb boards: add CONSTRAINED_MEMORY build option
- currently the main change is that it reduces the max number of ORB multi instances to 4, but usage will be expanded as needed
 - limits number of EKF2 multi instances to 2.
 - enabled on all cortex m4 boards
2021-02-01 08:56:22 +01:00
Daniel Agar 1ec10bfcc6
boards: disable CONFIG_ARMV7M_LAZYFPU again (#16573)
- this was causing hard faults on the CUAV Nora and possibly other boards, disabling everywhere until we fully understand the root cause
2021-01-17 22:40:21 -05:00
Daniel Agar cb74cb8692 boards: enable CONFIG_ARMV7M_LAZYFPU everywhere 2021-01-12 09:04:38 +01:00
Matthias Grob 7545249215 Add flight_mode_manager to all targets with mc_pos_control 2020-12-30 10:25:08 -05:00
David Sidrane 1b70e5f978 nxp_fmurt1062-v1:Rev B will be Using active CD 2020-12-04 12:59:09 -05:00
David Sidrane 394c2edea3 nxp_fmurt1062-v1:Added Single wire support for SBUS 2020-12-04 12:59:09 -05:00
David Sidrane d4a78cea5a nxp_fmurt1062-v1:Correct intial state of PIO_nVDD_5V_{HIPOWER|PERIPH}_E to OFF 2020-12-04 12:59:09 -05:00
David Sidrane 67a78a70ea nxp_fmurt1062-v1:Telem 1 & 2 Swapped to have real HW HS on Telm2 2020-12-04 12:59:09 -05:00
David Sidrane 1dd22acd12 nxp_fmurt1062-v1:Fix memory overflow 2020-12-04 12:59:09 -05:00
David Sidrane 0ca7783ea5 nxp_fmurt1062-v1:Refreshed defconfig fixing 'if-then' disabled 2020-12-04 12:59:09 -05:00
David Sidrane 22bc176885 Added mft for queries 2020-12-02 20:40:23 -05:00
David Sidrane 74a0693040 nxp_ucans32k146: Use px4_platform_configure 2020-12-02 20:40:23 -05:00
David Sidrane ad1c603af4 nxp_fmurt1062-v1: Use px4_platform_configure 2020-12-02 20:40:23 -05:00
David Sidrane 65b3b0b2e7 nxp_fmuk66-v3: Use px4_platform_configure 2020-12-02 20:40:23 -05:00
David Sidrane 6f27deab40 nxp_fmuk66-e: Use px4_platform_configure 2020-12-02 20:40:23 -05:00
David Sidrane 0db70ea475 nxp_fmurt1062-v1:Track fixes on schematic USDHC CD now correct polarity 2020-11-20 00:48:31 -05:00
David Sidrane 136b6a3509 nxp_fmurt1062-v1:Track fixes on schematic OC/EN had been swapped 2020-11-20 00:48:31 -05:00
Jari van Ewijk a246defb68 NXP UCANS32K146: Configure PWM timer for production version 2020-11-18 04:54:38 -08:00
Daniel Agar 880dc6accd ekf2: compile at MAX_CUSTOM_OPT_LEVEL 2020-11-11 20:17:52 -05:00
David Sidrane defa437b88
Add HY-SRF05 ultrasonic sensor driver
* nxp_fmuk66-e: Use srf05 distance sensor
 * nxp_fmuk66-v3: Use srf05 distance sensor
2020-11-08 13:25:58 -05:00
Daniel Agar c60743b306 boards: NuttX increase file name max 32 -> 40 2020-11-08 12:51:59 -05:00
David Sidrane f02d490e89 rddrone-uavcan146:Rename to ucans32k146 2020-11-04 03:37:06 -08:00
Daniel Agar 233949a377 NuttX upgrade to 10.0.0+ defconfig changes 2020-10-28 14:25:25 -04:00
David Sidrane d8a03d04a7 nxp_rddrone-uavcan146:Fixed wrong SPI CLK Pin 2020-10-23 09:18:24 +02:00
David Sidrane 78221ee3d2 s32k1xx:Add PWM LED Support 2020-10-15 12:52:38 -07:00
David Sidrane ddc161a10a nxp_rddrone-uavcan146:Add init to start PWM 2020-10-15 12:52:38 -07:00
David Sidrane 6394e06173 nxp_rddrone-uavcan146:Compresed ROM FS and friends 2020-10-15 12:52:38 -07:00
David Sidrane 59213ed8f6 nxp_rddrone-uavcan146:Add the pwm and suppor 2020-10-15 12:52:38 -07:00
David Sidrane 254ad40ad8 nxp_rddrone-uavcan146:Init the timers 2020-10-15 12:52:38 -07:00
David Sidrane 4099d38ea8 nxp_rddrone-uavcan146: Add arch_io 2020-10-15 12:52:38 -07:00
David Sidrane d3fdb2b6ad nxp_rddrone-uavcan146 add board functions supporting pwm_out 2020-10-15 12:52:38 -07:00
David Sidrane d4fb063651 nxp_rddrone-uavcan146:boards Add KEEP on init_section 2020-10-15 12:52:38 -07:00
Jari van Ewijk 35dce9aff6 NXP UCANS32K: Add Support for PWM
S32K1XX HRT: Allow any channel of any FTM timer to be used

NXP UCANS32K: Enable additional FlexTimers and use FTM5 for HRT

NXP UCANS32K - Change FTM clocksource to system oscillator

NXP UCANS32K - Only need one FlexTimer and channel for PWM output

NXP UCANS32K will have only one PWM header by default

S32K1XX support FlexTimers beyond FTM3

S32K1XX io_timer.c - replace references to Kinetis

S32K1XX io_timer.c correct register names

S32K1XX input_capture.c and pwm_servo.c replace references to Kinetis
2020-10-15 12:52:38 -07:00
Beat Küng 274ccaf57c system: include shutdown lock to BOARD_INDICATE_ARMED_STATE
BOARD_INDICATE_ARMED_STATE was only set during arming, so an external
component might have reset the board during param save, leading to param
loss.

This extends the API to trigger the arming state also while the shutdown
lock is taken.
2020-10-09 08:23:47 +02:00
Tanja Baumann b5ebdb8e41
add system command to get and set system time
* add system_time command for all boards
2020-09-26 13:09:01 -04:00
David Sidrane 65ddf98d76 nxp_rddrone-uavcan146: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane 94b5c961bc nxp_fmurt1062-v1: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane a7365100f4 nxp_fmuk66-v3: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane 1936ead0b4 nxp_fmuk66-v3: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane 3f82b19fc7 nxp_fmuk66-e: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane afad60a0bc nxp_fmuk66-e: Updates for NuttX 9.1.0+ External schedule_note 2020-09-16 21:32:04 -04:00
David Sidrane f9adf861dc spracing_h7extreme Updates for NuttX 9.1.0- 2020-09-16 21:32:04 -04:00
David Sidrane ddacf357a7 nxp_rddrone-uavcan146 Updates for NuttX 9.1.0- 2020-09-16 21:32:04 -04:00
David Sidrane 5698bc254a nxp_fmurt1062-v1:Track PX4 Sensor changes 2020-09-16 21:32:04 -04:00
David Sidrane 1abe88df61 nxp_fmurt1062-v1 Updates for NuttX 9.1.0- 2020-09-16 21:32:04 -04:00
David Sidrane aa67fbdbcb nxp_fmuk66-e: Updates for NuttX 9.1.0- 2020-09-16 21:32:04 -04:00
David Sidrane 8a673c8a3d nxp_fmuk66-v3 Updates for NuttX 9.1.0-
nxp_fmuk66-v3: defconfig MMCSD enable multiblock

nxp_fmuk66-v1:Disable multiblock as it fails
2020-09-16 21:32:04 -04:00
Peter van der Perk 0caad08dd5 Added RTPS target for FMUK66-V3 2020-09-16 09:42:34 -04:00
SalimTerryLi c037dbef21
Rename and move src/drivers/adc to src/drivers/adc/board_adc 2020-09-07 23:09:20 -04:00
David Sidrane fdcd9b2de1 npx_fmurt1062-v1:CONFIG_BOARD_CRASHDUMP is not supported 2020-09-03 14:55:09 +02:00
David Sidrane 5d5a767143 npx_fmuk66:CONFIG_BOARD_CRASHDUMP is not supported 2020-09-03 14:55:09 +02:00
Daniel Agar 7569722821
iSentek IST8310 magnetometer rewrite
- simple state machine to reset, configure, etc
 - checked register mechanism (sensor will reset itself on configuration error)
 - configured in 16 bit mode (1320 LSB/Gauss instead of 330 LSB/Gauss)
 - adjusted orientation handling in driver to match datasheet as closely as possible
     - in many external compass units the rotation was wrong and very difficult to actual determine how to set correctly
2020-09-02 13:14:45 -04:00
Daniel Agar 2c3441aa90 boards: reduce CONFIG_NFILE_DESCRIPTORS 15 -> 12
- reduced now that calibration uses uORB::Subscription
 - can likely be reduced further (perhaps < 8) with additional testing
2020-08-21 10:12:13 -04:00
David Sidrane e67486d603 nxp:Add support for rev E HW nxp_fmuk66-e 2020-07-31 09:46:27 -04:00
David Sidrane f8b6de24c7 nxp_fmurt1062-v1:Assign board_id 2020-07-31 09:46:27 -04:00
Daniel Agar e3d31a881e boards: NuttX disable posix message queues 2020-07-17 17:00:21 -04:00
Jari van Ewijk fe7fcb101f NXP FMUK66 - Fix VDD_3V3_SENSORS_EN polarity 2020-06-29 07:45:47 -07:00
David Sidrane df73662d66 nxp_fmuk66-v3:Add Full networking support 2020-06-22 18:43:03 -04:00
Daniel Agar e819f99064 new Bosch BMI055 IMU driver using FIFOs and DRDY
- accel & gyro FIFOs enabled
 - FIFO watermark on data ready interrupt
 - sensor side filtering completely disabled
 - gyro now respects `IMU_GYRO_RATEMAX` (up to 2 kHz)
 - saves a few % cpu (at default rate)
2020-06-15 10:19:14 -04:00
Daniel Agar 6f6efd60b7 boards: centralize optional external I2C sensor start
- configured with new parameter SENS_EXT_I2C_PRB
2020-06-10 09:04:13 -04:00
Daniel Agar 5e7d2e830d boards: delete old board.h boilerplate 2020-06-08 19:10:33 -04:00
Daniel Agar 5507c15bdc boards: move rgbled_pwm startup to appropriate boards 2020-06-08 16:49:46 -04:00
Daniel Agar 746a8f5cf9 commander: reboot/shutdown usability fixes
- always check with state machine before reboot/shutdown
 - respect BOARD_HAS_POWER_CONTROL (shutdown from command, low battery, power button)
 - px4_shutdown_request add optional delay and always execute from HPWORK
 - px4_shutdown_request split out px4_reboot_request
2020-05-06 13:53:54 -04:00
Daniel Agar 28d2aca699 boards: include all procfs entries on boards that aren't flash constrained 2020-05-01 20:59:57 -04:00
Daniel Agar 8d0c92003a boards: remove all CONFIG_NXFONTS_DISABLE* 2020-05-01 20:59:57 -04:00
Daniel Agar 76cfd8fa39
boards: add nxp fmuk66-v3 and rddrone-uavcan146 socketcan builds 2020-04-30 15:04:08 -04:00
Daniel Agar 06478d9997 delete obsolete SENSORIOCSPOLLRATE/SENSORIOCRESET and systemcmds/config 2020-04-15 23:33:41 -04:00
mcsauder 6548fde024 Whitespace cleanup to quiet new blank line at EOF git hook. 2020-04-15 23:00:39 -04:00
Daniel Agar 66eacd24bc
px4_fmu-v5_stackcheck: update stack sizes and add to Jenkins
- increase stack sizes to run cleanly under stackcheck
     - this is likely overkill for most boards, but using stackcheck to set our minimum ensures we have a very safe margin on regular builds and it's something we can currently afford
 - remove holybro_durandal-v1_stackcheck from test rack (there's only one unit)
2020-04-11 21:16:10 -04:00
Daniel Agar 7aa7f0ed95 switch remaining boards to new InvenSense IMU drivers 2020-04-07 09:59:12 -04:00
Daniel Agar ad559a66a1 examples: add simple work_item example module 2020-04-06 09:43:55 -04:00
Daniel Agar 40b1043e12 NuttX boards minor lpwork and init stack increases 2020-04-02 23:39:17 -04:00
Daniel Agar 15332a7e56 boards: reduce CONFIG_NFILE_DESCRIPTORS 20 -> 15 2020-04-01 16:17:14 -04:00
Daniel Agar ca81175b07 rename drivers/px4fmu -> drivers/pwm_out
- split out header
2020-03-31 19:12:31 -04:00
Peter van der Perk 9490f41f85 rddrone-uavcan146 removed shared clock between hrt & rtc
Removed non-existing SW2 button
Fixed SW3 button pinmux
Added FlexCAN pin definition
hrt use external sirc clock
rtc use 32khz lpo clock
2020-03-28 06:31:11 -07:00
Daniel Agar 44bec269b0 boards: update all NuttX configs CONFIG_NSH_MAXARGUMENTS 12 -> 15 2020-03-25 17:59:22 -04:00
Peter van der Perk a4e6f96365
rddrone-uavcan146: HRT & RTC timer support 2020-03-25 16:37:28 -04:00
Beat Küng 7ea8dff8db spi: do not deselect other chip-selects
And make sure on reset & init everything is deselected.

Reduces CPU load on a pixhawk cube by almost 1%.
2020-03-24 09:46:20 -04:00
Beat Küng 6a41c9e417 refactor fxos8701cq: use driver base class 2020-03-24 09:46:20 -04:00
Beat Küng 5fa4cd1019 refactor fxas21002c: use driver base class 2020-03-24 09:46:20 -04:00
Daniel Agar 974cb30b6d nxp_rddrone-uavcan146 ignore i2c for now (platform support is incomplete) 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 f74474dd55 fmuk66-v3: fix spi bus numbering passing to px4_spibus_initialize
Fixes an error on bootup ([boot] FAILED to initialize SPI port 0). Other
than that, everything was working.
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 00280d55c2 refactor rm3100: 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
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 1710cd9648 refactor px4flow: use driver base class 2020-03-17 23:31:17 -04:00
Beat Küng aeadf54a74 refactor bmp280: use driver base class 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 58f386a81c refactor pmw3910: use driver base class 2020-03-17 23:31:17 -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 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 cad3a811d2 nxp_fmurt1062-v1:Run from OCRAM 2020-03-02 10:20:33 -08:00
David Sidrane 3ed643f3d7 fmurt1062-v1:Update imxrt_flexspi_nor_boot configurable 2020-03-02 10:20:33 -08:00
Daniel Agar d7c3e1066a
uavcannode updates and px4_fmu-v4_cannode example
- drivers/uavcannode add baro, mag, gps publications
 - delete old px4_cannode-v1 board
 - add stripped down simple rcS for CAN nodes
2020-02-16 12:11:54 -05:00
Beat Küng ccf2078c66 nxp/fmurt1062-v1: use hw description methods for timer configuration 2020-02-13 03:49:16 -08:00
Beat Küng 8cd9afc19a imxrt io_timer: remove some fields from io_timers_t and split out channel indexes
IOMUX uses different enumeration from GPIO pin + port, so we cannot use
.gpio_out, and add a .gpio_portpin.
2020-02-13 03:49:16 -08:00
Beat Küng d74d094940 nuttx configs: disable nuttx timers which are used for PWM output
These are not required, and to be consistent we enforce disabling them now.
2020-02-13 03:49:16 -08:00
Beat Küng c01f6811d0 nxp/fmuk66-v3: 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 2193cce50b rddrone-uavcan146:Board Added 2020-02-12 10:29:27 -05: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
David Sidrane 78c7f98ef1 nxp_fmurt1062-v1:Memory Reorg 2020-01-29 13:54:20 -05:00
David Sidrane 962716a7c3 nxp_fmurt1062-v1:Performance tuning 2020-01-29 13:54:20 -05:00
David Sidrane a8720057fd nxp_fmurt1062-v1:RC is on LPUART6 ttyS5 2020-01-29 13:54:20 -05:00
David Sidrane eb30041958 nxp_fmurt1062-v1:PROBES:carry includes and path needed 2020-01-29 13:54:20 -05:00
David Sidrane ef5ed2e43c nxp_fmurt1062-v1:OC remove Pull up - OC have series 47K 2020-01-29 13:54:20 -05:00
David Sidrane ec0f004a7b fmurt1062-v1:Correct SPI1_DRDY4_ICM20602 2020-01-29 13:54:20 -05:00
David Sidrane 1fd2f27493 fmurt1062-v1:Add SPI4 RESET and SYNC 2020-01-29 13:54:20 -05:00
David Sidrane 1346312012 fmurt1062-v1:Add GPIO info 2020-01-29 13:54:20 -05:00
David Sidrane 5202724f19 fmurt1062-v1:Add nARMED Support 2020-01-29 13:54:20 -05:00
David Sidrane 08ac209674 fmurt1062-v1:Set BAT ADC scaling 2020-01-29 13:54:20 -05:00
David Sidrane 453c39230f fmurt1062-v1:Consistently use ONE/ZERO on inital OUTPUT settings 2020-01-29 13:54:20 -05:00
David Sidrane 1d2187528b fmurt1062-v1:Fix LPUART8 RX, TX pin definitions 2020-01-29 13:54:20 -05:00
David Sidrane a4e9498260 fmurt1062-v1:Fix LPUART3 CTS Pin definition 2020-01-29 13:54:20 -05:00
David Sidrane 2cbec89e2b fmurt1062-v1:Fix and enable support for debut Probes 2020-01-29 13:54:20 -05:00
David Sidrane 2385e1091d fmurt1062-v1:Correct ttyS usage 2020-01-29 13:54:20 -05:00
David Sidrane e5bf0710b5 fmurt1062-v1:Support imxrt_lpi2c_reset uses GPIO with SION 2020-01-29 13:54:20 -05:00
David Sidrane f44f8a95e1 fmurt1062-v1:Update board modules ==FMUv5 2020-01-29 13:54:20 -05:00
David Sidrane 625429d3b7 fmurt1062-v1:Support configurations to fine tune LPI2C Timeouts. 2020-01-29 13:54:20 -05:00
David Sidrane 59d17b053f fmurt1062-v1:Support clock setting for SPI and I2C from board.h 2020-01-29 13:54:20 -05:00
David Sidrane 94dbf3176a fmurt1062-v1:Update board modules ==FMUv5 2020-01-29 13:54:20 -05:00
David Sidrane 51f0bc9788 fmurt1062-v1:Remove EVK build options 2020-01-29 13:54:20 -05:00
David Sidrane a8e0c29161 fmurt1062-v1:Invert USDHC CD 2020-01-29 13:54:20 -05:00
David Sidrane be14fa084b fmurt1062-v1 Build for BB Rev A 2020-01-29 13:54:20 -05:00
David Sidrane b4b597251f fmurt1062-v1:Rev to match Rev A HW 2020-01-29 13:54:20 -05:00
David Sidrane 59693dc48e Adding NXP fmurt1062-v1
Add nxp_fmurt1062-v1 to CI
2020-01-29 13:54:20 -05: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
Daniel Agar e951531b12 camera_feedback: move to WQ callback and uORB::Subscription 2019-11-30 15:49:55 -05:00
David Sidrane c93d358145 fmuk66-v3:Add Ethernet Support 2019-11-27 20:29:35 +01:00
Daniel Agar bc182e94e6
sensors split rc_update into new standalone module 2019-11-24 13:25:11 -05:00
Daniel Agar 92559f7a85
Bosch bmp280 barometer cleanup 2019-11-23 15:31:22 -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 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 15f25a4e02 fmuk66-v3:Remove MMC support - NuttX detection is broken 2019-11-16 11:43:42 +01:00
David Sidrane 5c0aada220 fmuk66-v3:Remove CONFIG_EXAMPLES_MOUNT 2019-11-16 11:43:42 +01:00
David Sidrane 65a26ec060 nxp_fmuk66-v1:Port to NuttX 8.1+ 2019-11-16 11:43:42 +01:00
David Sidrane d534349dfe nxp:fmuk66-v3 BSP Updated to NuttX 8.1+ 2019-11-16 11:43:42 +01:00
David Sidrane 11287712f8 fmuk66-v3:Fix hang on SDIO card removal/reinsertion
The interrupt driven card detect logic was enabled
   but the auto mounter was not. That interrupt was
   calling mmcsd_mediachange.

   There is a reentrancy issues in the kinetis callback logic.
   Toplevel calls mmcsd_mediachange calls SDIO_CALLBACKENABLE
   that calls kinetis_callbackenable that calls kinetis_callback
   that calls mmcsd_mediachange.
2019-11-15 11:13:38 -05:00
Daniel Agar 668984b6b0 boards: start adc in rc.board_sensors 2019-11-11 17:08:24 -05:00
Beat Küng 3b7c1b4ff1 src/drivers/boards: move to platforms/nuttx/src/px4/common 2019-10-30 11:48:47 +01:00
Beat Küng b30171ba8d board_common.h: move under platforms/common
Also move board_determine_hw_info and board_gpio_init under platforms/nuttx
2019-10-30 11:48:47 +01:00
Beat Küng 3198610f85 src/platforms: move all headers to platforms/common/include/px4_platform_common
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)
2019-10-30 11:48:47 +01:00
Daniel Agar 6a0f5249f8
sensors: split out analog battery handling to new standalone battery_status module 2019-10-21 13:40:23 -04:00
Beat Küng 182efaa757 dshot: reduce static buffer size
And handle failures of up_dshot_init().

On Omnibus: reduces memory usage if dshot is enabled by ~1.0KB.
The buffer is roughly 1KB in size.
2019-10-11 08:14:17 +02:00
Daniel Agar 315141873e NuttX boards reduce CONFIG_MAX_TASKS 64 -> 32 (default) 2019-10-02 19:44:46 -04:00
Daniel Agar 26364d44c9
px4_work_queue: command line status output and shutdown empty queues
* adds a work_queue systemcmd that will bring a tree view of all active work queues and work items
 * WorkQueues now track attached WorkItems and will shutdown when the last WorkItem is detached
2019-10-02 12:23:17 -04:00
garfieldG bbb96cbd0c Mavlink startup script per board
-moved rc.mavlink to the boards optional rc additions (now it's called rc.board_mavlink) to handle board specific mavlink needs (mavlink over usb, ethernet, additional streams, etc.)
-mavlink module will be responsible to usb defaults, therefore less args are needed to be passed to mavlink module if one wants to use mavlink over usb.
-the way to check if connection is usb is by it's designated variable and not by config mode.
2019-09-29 10:46:08 -04:00
Daniel Agar 0486d69240 delete obsolete segway example 2019-09-28 15:05:50 -04:00
Daniel Agar 2366abefd8
nxp/fmuk66-v3: readd uavcan
* this was accidentally dropped earlier this year
2019-09-25 13:42:59 -04:00
BazookaJoe1900 6ab5c2170e remove unused pca8574 and oreoled drivers 2019-09-04 08:05:08 -07:00
Beat Küng f3fccf53f6 src/drivers/{kinetis,stm32}: move to arch-specific directories 2019-08-30 07:59:44 +02:00
Beat Küng 1cb6c36a00 adc: refactor into arch-specific directories 2019-08-30 07:59:44 +02:00
Beat Küng ab43a83bed platform: restructure (NuttX) architecture-specific code
updated: tone_alarm, px4io_serial, px4_micro_hal
2019-08-30 07:59:44 +02:00
Daniel Agar b1d59c8817
px4fmu split safety button into new driver 2019-08-24 17:14:17 -04:00
Silvan Fuhrer cedf14e2ba Airspeed Selector: repurpose wind estimator into an airspeed (selection, validation) module.
This new airspeed module does:
  -runns an airspeed validator for every airspeed sensor present, which checks measurement validity and estimates an airspeed scale
  -selects another airspeed sensor if for the current one a failure is detected
  -estimates airspeed with groundspeed-windspeed if no valid airspeed sensor is present
  -outputs airspeed_validated topic

Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
2019-08-09 10:55:05 +02:00
Daniel Agar 0955fd2d58
NuttX boards reduce CONFIG_NFILE_DESCRIPTORS 54 -> 20 2019-08-07 21:23:27 -04:00
Daniel Agar 5421ef5535 NuttX increase HPWORK and LPWORK stack by 256 bytes 2019-08-06 23:15:07 -04:00
Daniel Agar 9d701a077d
NuttX reduce stack for interrupts, HPWORK, LPWORK 2019-08-06 11:00:55 -04:00
David Sidrane f21dc82c24 Add i2cdetect to K66 2019-08-05 19:40:32 -04:00
Daniel Agar 77694183b2 delete position_estimator_inav 2019-08-02 17:38:28 -04:00
Beat Küng b7a0e1ef03 boards: simplify RC port configuration by using NuttX ioctl's
A board only needs to define:
 #define RC_SERIAL_PORT                     "/dev/ttyS4"

Then it can optionally define one or more of the following:
 #define RC_SERIAL_SWAP_RXTX
 #define RC_SERIAL_SINGLEWIRE
 #define RC_INVERT_INPUT(_invert_true) px4_arch_gpiowrite(GPIO_SBUS_INV, _invert_true)
2019-07-16 08:09:22 +02:00
Beat Küng a3c920db7d board_defaults: remove unnecessary 'set MIXER_AUX none'
On all of these boards '$USE_IO = no' will hold.
2019-07-16 08:09:22 +02:00
Timothy Scott 2ed00c9cb6 Rover: Rewrote gnd_pos_control and removed gnd_att_control (#12239) 2019-07-11 09:39:13 -04:00
Daniel Agar 321c2c0392 boards don't use px4_add_library for drivers_board
- this prevents low level board support from using PX4 logging, uORB, etc
2019-07-09 19:09:47 -04:00
Daniel Agar bef7a9ba8e
NuttX boards increase task limit 32 -> 64 (#12230) 2019-06-10 09:42:36 -04:00
Daniel Agar b57dff8594 fxas21002c move to PX4Gyroscope and cleanup 2019-05-31 18:20:32 -04:00
Daniel Agar f85c15e247 board common create generic dma allocator (from fat_dma_alloc) 2019-05-30 19:31:40 -04:00
Mohammed Kabir b334b75886 Move optical flow drivers to own subdirectory 2019-05-28 23:23:38 -04:00
Beat Küng 226f3c0999 rc.board_sensors: probe for external qmc5883 2019-04-15 10:37:06 +02:00
Beat Küng 914a9b78b6 new airframe for sih, HIL_STATE_QUATERION sent through MAVLink 2019-04-12 09:25:07 +02:00
David Sidrane 1250fb1b48 RGB order now matchs layout 2019-04-02 13:40:17 -04:00
David Sidrane 005db51d7f nxp_fmuk66-v3:Add support for rgbled_ncp5623c 2019-04-02 13:40:17 -04:00
David Sidrane 8504ffd8f2 nxp_fmuk66-v3:Set bmm150 orientation 2019-04-02 13:40:17 -04:00
David Sidrane bfc704b60a fmuk66-v3:Add pullup on LPUART0_RX 2019-04-02 13:40:17 -04:00
David Sidrane ef882989fe [Breaking Change]fmuk66-v3: Only Support Rev BX11
I2C bus chaged I2C0 is external, I2C1 internal
     Added BMM150 on I2C1 @ Addr 0x100
     Added BMP280 on I2C1 @ Addr 0x76

   UART0 (/dev/ttyS1) now used at Telem 2

   Chip select added for W25X40CLUXIG Calibration EE prom
     Driver is not added at this time
2019-04-02 13:40:17 -04:00
Daniel Agar 5e6bfe1ad8
vscode updates
* working debugging (one click build and debug)
   * SITL jmavsim
   * SITL gazebo
   * jlink px4_fmu-v{2-5}
 * improved syntax highlighting
   * GNU linker files
   * ROS message files msg/*.msg
   * jinja2 template files
 * fixed intellisense support
2019-03-22 20:55:39 -04:00
Daniel Agar 311bf93cd4 nxp_fmuk66-v3 nsh compress defconfig 2019-03-21 08:41:01 -04:00
Hamish Willee 257b90958f Correct links to example docs 2019-03-15 08:05:54 +01:00
mcsauder dc5f18bdcd ToneAlarm class refactoring to implement an interface for hardware specific methods and a single ToneAlarm class. 2019-01-28 18:58:04 -08:00
Daniel Agar 739a02022b position_estimator_inav: move to examples (start deprecation) 2019-01-27 22:15:39 +01:00
David Sidrane 122519c95f nxp_fmuk66-v3: Inital commit NuttX 7.27+ 2019-01-25 06:32:37 -08:00
David Sidrane 8f308efa88 upstram NuttX CONFIG_EXAMPLES_NSH_CXXINITIALIZE->CONFIG_SYSTEM_NSH_CXXINITIALIZE 2019-01-25 06:32:37 -08:00
Daniel Agar 2ffb49b734 delete px4_includes.h header and update boards/ to use syslog 2019-01-23 18:25:18 -05:00
Daniel Agar 67e5986c9b delete obsolete examples/subscriber 2019-01-23 18:25:18 -05:00
Daniel Agar 693ee4808a delete obsolete examples/publisher 2019-01-23 18:25:18 -05:00
Daniel Agar 320d2e9383
create PX4 platform layer initialization helper (#11269)
- starts requirements for PX4 modules (hrt, param, etc)
2019-01-22 14:13:20 -05:00
Daniel Agar fef65bf5c8 ROMFS split rc.board into defaults, sensors, and extras 2019-01-15 23:52:46 -08:00
David Sidrane 53bc357cda nxphlite-v3:SDHC setting is for EMI issue with GPS and FCC (#11029)
This updating of the driver setting is for EMI issue with GPS and FCC.
   With this setting the clock is sinusoidal

   N.B. sd_bench fails on SanDISK HC, but Passes SanDISK **HC1** and
   Kingston cards.

   ****Use HC1 or Kingston cards!***

   Testing done on SanDISK HC all failed sd_bench with Drive/Slew other
   than default and _PIN_OUTPUT_FAST|_PIN_OUTPUT_HIGHDRIVE

	_PIN_OUTPUT_FAST|_PIN_OUTPUT_HIGHDRIVE    Square noisy, pass SanDISK HC
        _PIN_OUTPUT_FAST|_PIN_OUTPUT_LOWDRIVE     Square noisy, pass SanDISK HC
        _PIN_OUTPUT_HIGHDRIVE|_PIN_OUTPUT_SLOW    sinusoidal fail SanDISK HC, pass SanDISK HC1
        _PIN_OUTPUT_LOWDRIVE |_PIN_OUTPUT_SLOW    sinusoidal fail SanDISK HC, pass SanDISK HC1
                              _PIN_OUTPUT_SLOW    sinusoidal fail SanDISK HC, pass SanDISK HC1
2018-12-12 20:51:57 -05:00
Daniel Agar 75b2053243 move uavcan from modules to drivers 2018-12-04 01:06:54 -05:00
Daniel Agar bbab66d974 move vmount to modules (it's not a driver) 2018-12-04 01:06:54 -05:00
Daniel Agar 9d42480f4e drivers create lights category (directory) 2018-12-04 01:06:54 -05:00
Daniel Agar 744bacd424 boards/ enforce astyle 2018-12-04 01:06:54 -05:00
Daniel Agar d4e06e517a delete drv_gpio.h, modules/gpio_led, and fmu GPIO ioctls 2018-12-03 16:30:39 +01:00
Daniel Agar aab08ad6fc move nxp_fmuk66-v3 init to rc.board 2018-12-01 10:03:19 -05:00
David Sidrane 729d1c32d3 Rename nxphlite-v3 to NXP fmuk66-v3 (#10927) 2018-11-28 12:13:21 -05:00
Daniel Agar e45e7aa8a6 move posix/tests/hello to examples/hello and include everywhere 2018-11-26 14:40:14 -08:00
Daniel Agar 3e0a3559a9 cmake use standard mechanisms for settings flags 2018-11-26 14:40:14 -08:00
Daniel Agar c258534aa5 cmake px4_add_board document and cleanup 2018-11-26 14:40:14 -08:00
Daniel Agar fa0fe4cac6 cmake remove need for platform px4_add_board_os
- explicitly set TOOLCHAIN on all NuttX targets
2018-11-26 14:40:14 -08:00
Daniel Agar ec4c9da253 remove BOARD_NAME from board_config.h and set automatically 2018-11-26 14:40:14 -08:00
Daniel Agar abb3817d31 boards new split VENDOR_MODEL naming convention 2018-11-26 14:40:14 -08:00
Daniel Agar f692ad04d0 boards organization 2018-11-26 14:40:14 -08:00