Commit Graph

30692 Commits

Author SHA1 Message Date
Nik Langrind ba5efa5642 px4io: When running HITL, don't publish actuator_outputs. Fixes #13471.
When running in HITL mode, pwm_out_sim publishes actuator_outputs.

px4io unconditionally publishes the uOrb actuator_outputs. When HITL
is configured, the px4io copy of the uOrb has all zeros.

The result is that there are two publications, one valid, and one
all-zeros. This causes the HIL_ACTUATOR_CONTROLS mavlink message
to be incorrect (all-zeros) and the SERVO_OUTPUTS_RAW mavlink
message to be inconsistent, as it takes the data from one or the
other uOrb randomly each cycle.

The fix is to let px4io know that HITL is in effect when it is
started, and modify px4io to suppress publication in this case.

This is a bigger more complicated fix than I would like, but I
think it is conceptually correct.

Signed-off-by: Nik Langrind <langrind@gmail.com>
2019-11-17 11:19:35 +01:00
Daniel Agar 8ce2f30aa6 NuttX cmake improve dependencies between configure and runtime
- attempting to make the build slightly more robust to incomplete configures or other bad states.
2019-11-16 18:30:52 -05:00
Daniel Agar ea79bd733d cmake add a few include guards
- this is a minor cmake configure time optimization
2019-11-16 16:27:36 -05:00
Daniel Agar df73a6667d NuttX cmake improvements
- fix temporary Make.defs copy
 - implement custom macros for COMPILE, COMPILEXX, ASSEMBLE, ARCHIVE to enable ccache properly (if available and enabled)
 - fix NuttX mkdeps
 - fix libapps race condition with context
2019-11-16 15:42:19 -05:00
Daniel Agar b5e7e4bc17 add holybro_durandal_stackcheck build and run on Jenkins 2019-11-16 11:43:42 +01:00
Daniel Agar caca3e93e7 Jenkins hardware add holybro_durandal-v1 2019-11-16 11:43:42 +01:00
Daniel Agar a694f0bbdd bl_update: build and include board bootloader if config available 2019-11-16 11:43:42 +01:00
David Sidrane 850821f47f [REVISIT] Support upstream DSHOT Revist!
The Addition of PX4_ARCH_DCACHE_LINESIZE is fundamentally wrong.
   It asserst that an STM32F4 has a cache and it does not.
   This should be #if defined() on CONFIG_ARMV7M_DCACHE
2019-11-16 11:43:42 +01:00
Daniel Agar 2bb7a1f3c7 holybro_durandal-v1 delete extra defconfig copy 2019-11-16 11:43:42 +01:00
Daniel Agar 2af262ed1d NuttX cmake build wrapper thorough dependencies 2019-11-16 11:43:42 +01:00
Daniel Agar 99aae8b891 NuttX use toolchain math.h and avoid empty drivers/Kconfig 2019-11-16 11:43:42 +01:00
David Sidrane a8e7ddd44e durandal-v1:Use Holybro USB PID 2019-11-16 11:43:42 +01:00
David Sidrane b2f28c977d durandal-v1 Nuttx Based PX4 bootloader
durandal bootloader:Run at 480 Mhz

durandal-v1:bootloader use VBUS detection

Add Durandal bootloader to build
2019-11-16 11:43:42 +01:00
David Sidrane 4836fc0719 Added board support for holybro_durandal-v1
Durandal:Fix PLL settings

durandal-v1:Move I2C123, I2C4 to HSI.

   Not liking using HSI but, F7 has, and in reality there is no
  requerment for accuracy.

durandal-v1:board config set 400kHz on card probe

durandal-v1:Board SDMMC Clock Not greater then 25 mHz

durandal-v1:Fix PLL3 configuration typo and value

CI build config for holybro_durandal-v1

durandal-v1:Kconfig - add knob to ensure ARCH_MATH_H is kept

   Upstream changes added ARCH_HAVE_MATH_H to protect from archs
   without math.h from causing isses for users setting
   CONFIG_ARCH_MATH_H and getting errors. PX4 provides a math.h
   and we need CONFIG_ARCH_MATH_H set. So this Selects
   ARCH_HAVE_MATH_H perserving CONFIG_ARCH_MATH_H a defconfig

Track master LED removal

durandal-v1: bmi055 -> bmi088

bmi088 is what the board uses

durandal-v1:add PX4IO support

durandal-v1 rc.board_sensors: start baro

durandal-v1: remove segway module

durandal:Run at 480 Mhz

durandal-v1: build thermal control module

durandal-v1: enable IMU thermal control by default

durandal-v1:Track upstream adc start moved to rc.board_sensors

durandal-v1:Track upstream mavlink start moved to rc.board_mavlink
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 2faa2c5e19 uvify:core BSP Updated to NuttX 8.1+ 2019-11-16 11:43:42 +01:00
David Sidrane 5bb272387a thiemar:s2740vc-v1 BSP Updated to NuttX 8.1+ 2019-11-16 11:43:42 +01:00
David Sidrane 148215c114 px4:io-v2 BSP Updated to NuttX 8.1+ 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
David Sidrane 7e979676ee px4_fmuv5_stackcheck:Remove bl_update to fit 2019-11-16 11:43:42 +01:00
David Sidrane 0ebe285201 px4:fmu-v5 BSP Updated to NuttX 8.1+ 2019-11-16 11:43:42 +01:00
David Sidrane 7ce4f06470 px4:fmu-v4pro BSP Updated to NuttX 8.1+ 2019-11-16 11:43:42 +01:00
David Sidrane 40a3e47712 px4:fmu-v4 BSP Updated to NuttX 8.1+ 2019-11-16 11:43:42 +01:00
David Sidrane 2c13883e56 px4:fmu-v3 BSP Updated to NuttX 8.1+ 2019-11-16 11:43:42 +01:00
David Sidrane 47bbb36575 px4_fmuv2_multicopter:Remove bl_update to fit 2019-11-16 11:43:42 +01:00
David Sidrane ab1c8850fe px4:fmu-v2 BSP Updated to NuttX 8.1+
px4/fmu-v2 disable events and work_queue systemcmd
2019-11-16 11:43:42 +01:00
David Sidrane 208c23c826 px4:esc-v1 BSP Updated to NuttX 8.1+ 2019-11-16 11:43:42 +01:00
David Sidrane 25a6a45640 px4:cannode-v1 BSP Updated to NuttX 8.1+ 2019-11-16 11:43:42 +01:00
David Sidrane 8b33d1fcda omnibus:f4sd BSP Updated 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 9032b64eaa mro:ctrl-zero-f7 BSP Updated to NuttX 8.1+ 2019-11-16 11:43:42 +01:00
David Sidrane 4d021fcd42 modalai:fc-v1 BSP Updated to NuttX 8.1+ 2019-11-16 11:43:42 +01:00
David Sidrane f5fefee57f intel:aerofc-v1 BSP Updated to NuttX 8.1+ 2019-11-16 11:43:42 +01:00
David Sidrane ca45b1ee12 holybro:kakutef7 BSP Updated to NuttX 8.1+ 2019-11-16 11:43:42 +01:00
David Sidrane f62c6442a4 bitcraze:crazyflie BSP Updated to NuttX 8.1+ 2019-11-16 11:43:42 +01:00
David Sidrane 8bc8ea0ea2 av:x-v1 BSP Updated to NuttX 8.1+ 2019-11-16 11:43:42 +01:00
David Sidrane 724f66399a auav:x21 BSP Updated to NuttX 8.1+ 2019-11-16 11:43:42 +01:00
David Sidrane 12a70402ad airmind:mindpx-v2 BSP Updated to NuttX 8.1+ 2019-11-16 11:43:42 +01:00
David Sidrane 4ebc00b22e kakutef7:Remove Duplicate goio header 2019-11-16 11:43:42 +01:00
David Sidrane fa79283602 px4/fmu-v4: update nuttx config 2019-11-16 11:43:42 +01:00
Mohammed Kabir 00d00fdca9 drivers: heater: fix module build and startup
- Startup was broken due to unnecessary cyclic check probably introduced during transition to work_queues
- Module never used other than on Teal One which had a hacky heater input GPIO, this enables usage on general boards

drivers: heater: reduce verbosity and simplify commandline options

- We prefer the linux way of only reporting errors and staying quiet when everything is functioning as designed
- Most of the commandline options just read out the values of the system parameters, and one can just check the parameter values directly.

sensor_params: make thermal control parameters system parameters

heater_params: make thermal control parameters system parameters

drivers: heater: remove pin control hacks

- px4_arch_configgpio(GPIO_HEATER_OUTPUT) directly inits the heater pin to OFF, and as a PUSHPULL (TTL totem pole) OUTPUT

drivers: heater: set default device ID to 0
2019-11-16 11:43:42 +01:00
David Sidrane 69694ab000 px4io-v2:Resonable Def config memory - verified by inspection 2019-11-16 11:43:42 +01:00
Beat Küng d965b928f8 px4iofirmware: convert atomic macro into methods
Reduces flash size by 744 bytes.
CPU (loop time) is not affected.
2019-11-16 11:43:42 +01:00
David Sidrane 0f2a7ad2b7 bl_update:STM32H7 use AIXRAM 2019-11-16 11:43:42 +01:00
David Sidrane 645b6c3fbc bl_update:STM32H7 use 128K 2019-11-16 11:43:42 +01:00
David Sidrane e847698c9f PX4 System changes Supporting STM32H7
stm32:ToneAlarmInterfacePWM TIM15-TIM17 have a BDTR Register

common:board_crashdump Add H7 support

stm32/board_mcu_version:Support H7

PX4 ADC:Use 32 interface and resoution abstraction

Added PX4 stm32h7 ADC driver

stm32h7:adc fix ADC ready check

fmu: handle BOARD_HAS_PWM==5

cmake: improve error handling for NuttX olddefconfig failures

WorkQueueManager:Quiet loadmon stack warning

camera_trigger:GPIO support < 6 GPIO

Adjust stack sizes (under hw stack check)

PX4 System changes Supporting STM32H7 PX4IO Driver

aerotenna_ocpoc:ADC add px4_arch_adc_dn_fullcount

init.cmake:Track Upstream change needing Make.def at config time

PX4 System changes Supporting STM32H7

NuttX CMakeLists.txt Track upstream changes

Common board_crashdump add header and px4 config

NuttX simplify callinb make libapps

Use UINT32_MAX for error return

drivers:uavcannode NuttX chip is now hardware

drivers:uavcanesc NuttX chip is now hardware

px4io:Avoid Race on AP to PX4 IO upgrade
2019-11-16 11:43:42 +01:00
Beat Küng 58799dc7d1 px4/fmu-v5: update nuttx config
px4_fmuv5:Needed PROGMEM

fmu-v5:Kconfig - add knob to ensure ARCH_MATH_H is kept

    Upstream changes added ARCH_HAVE_MATH_H to protect from archs
    without math.h from causing isses for users setting
    CONFIG_ARCH_MATH_H and getting errors. PX4 provides a math.h
    and we need CONFIG_ARCH_MATH_H set. So this Selects
    ARCH_HAVE_MATH_H perserving CONFIG_ARCH_MATH_H a defconfig
2019-11-16 11:43:42 +01:00
Beat Küng 694ae56afe px4/io-v2: update nuttx config
px4_io - add knob to ensure ARCH_MATH_H is kept

   Upstream changes added ARCH_HAVE_MATH_H to protect from archs
   without math.h from causing isses for users setting
   CONFIG_ARCH_MATH_H and getting errors. PX4 provides a math.h
   and we need CONFIG_ARCH_MATH_H set. So this Selects
   ARCH_HAVE_MATH_H perserving CONFIG_ARCH_MATH_H a defconfig
2019-11-16 11:43:42 +01:00