Commit Graph
38 Commits
Author SHA1 Message Date
Daniel Agar ea3acb7121 cmake remove circular linking and reorganize
- px4_add_module now requires MAIN
 - px4_add_library doesn't automatically link
2018-04-29 21:48:54 -04:00
Daniel Agar f194c5424c move hmc5883 i2c address into driver 2018-03-14 14:38:40 -04:00
Daniel Agar bb7466c596 move rgbled i2c address into driver 2018-03-14 14:38:40 -04:00
Daniel Agar a35abf2453 rename nuttx board support packages for consistecy (#8777) 2018-02-19 19:12:32 -05:00
Daniel Agar cf54023c96 lis3mdl i2c address is not board specific 2018-02-09 22:40:34 +01:00
Simon Laube a26c3a0530 IO: Split STM32F4 specific code for serial interface. 2018-01-16 08:36:51 +01:00
David Sidrane ef5d808f6d px4fmu-v4pro:Override default BOARD_VALID_UV
Based on the R values on the LTC4411 the px4fmu-v4pro has a
   UV of 4.01 Volts.
2017-09-29 10:13:51 -04:00
Daniel Agar 01b3e6fd25 NuttX upgrade cmake wrapper (#7873)
* NuttX cmake

* px4_macros:Pass the stringified predicate as second arg to static assert

   CC_ASSERT mapes to the c++ static_assert or provides the same
   funtionality for c via the other macros. The c++ static assert
   takes 2 argumants the prdicate and a message. This fixes the
   lacking second argument.

* Updated nuttx and apps submodule to upstream nuttx 7.21+==master

   This is the latest uptake of upstream nuttx and apps.

* ROMFS generate with xxd instead of objcopy

* delete nuttx-patches

* NuttX update submodules to latest px4_nuttx-master

* fix nuttx apps and board dependency

* docker_run update to latest container 2017-08-29

* cmake ROMFS portable sed usage

* NuttX update submodules to latest px4_nuttx-master
2017-09-29 10:13:51 -04:00
David Sidrane eb9ebb26ea px4fmu-v4pro:Had wrong bus ID for SPI5, SPI6 2017-09-29 10:13:51 -04:00
David Sidrane 0bf10f02c9 px4fmu-v4pro: Upstream NuttX up_cxxinitialize moved
was:<nuttx/arch.h> is:platform/cxxinitialize.h
   Removed PX4 version:src/modules/systemlib/up_cxxinitialize.c
   in favor of nuttx platform/gnu/gnu_cxxinitialize.c
2017-09-29 10:13:51 -04:00
David Sidrane 6dfa55af45 px4fmu-v4pro: Upstream NuttX reloaction of can.h
can.h was moved in upstream NuttX from nuttx/drivers/can.h
   to nuttx/include/nuttx/can/can.h
2017-09-29 10:13:51 -04:00
David Sidrane e332bfa726 px4fmu-v4pro:spi_dev_e is now uint32_t in NuttX
Using new type of uint32_t for spi device and
   that define a PX4 device on a given BUS and Chip Select
2017-09-29 10:13:51 -04:00
David Sidrane 892ae1436c px4fmu-v4pro::Insure the discharge of the PWM pins on rest.
As done on fmuV4 on resets invoked from system (not boot) insure
  we establish a low output state (discharge the pins) on PWM pins
  before they become inputs as a result of the pending reset.

  We also delay the reset by 400 MS to insure the 3.1 Ms pulse is
  not too close to the last PWM pulse.
2017-07-17 21:02:50 -10:00
David Sidrane b23e6fc87c px4fmu-v4pro:Define GPIO xxx_VALIDs and initalize them.
The LTC4417 provides a valid signals for brick1, brick 2 and USB
  This change  configures the GIOP and provides 1) a MACRO to read
  the pin and 2) the IOCTL defines to read it from the FMU.

  The macro's result is true logic: It is true when the signal is active.
  (Active low on the the LTC4417). The IOCTL read would be the actual
  pin state.
2017-07-17 21:02:50 -10:00
David Sidrane 195468bf06 px4fmuv4pro:Init GPIO_VDD_3V3_SENSORS_EN off at reset
Insure a 0.0 voltage initial condition on VDD_3V3_SENSORS
  By starting the GPIO_VDD_3V3_SENSORS_EN, low and deferring
  the GPIO init of the slave selects and drdy signals until
  board_app_initialize. We get ~ 180 ms of power off time
  with 0.00 voltage applied to the sensors.
2017-07-11 08:34:26 +02:00
Beat Küng 410e822775 px4fmu-v4pro board_config: swap BRICK1 with BRICK2
problem: previously when connecting power to Power 1, commander refused
to arm (no power source error), and when connecting to Power 2, arming
works, but power consumption was not measured (& shown in QGC).
Swapping Brick1 with Brick2 makes sure both works when connecting to
power 1.

Ideally we will have support for both power sources (including fail-over)
2017-06-19 16:52:41 +02:00
Kevin Lopez Alvarez cdf941e78b Fix code style 2017-05-20 10:23:28 +02:00
Kevin Lopez Alvarez 588a8d3841 px4fmu-v4pro : Add support for ICM20602 2017-05-20 10:23:28 +02:00
Kevin Lopez Alvarez cff20ee51e FMUv4pro : updates (#6983)
* FMUv4pro : allow power monitoring for hipower rail

* FMUv4pro : init temperare calibration EEPROM CS

* FMUv4pro : workaround for safety switch

* FMUv4pro : remove useless and conflicting defines

* FMUv4pro : disable internal pull-up for OC sensing

/FAULT won't achieve VinputLow with internal pull-up resistor so it must
be turned off for both /VDD_5V_PERIPH_OC and /VDD_5V_HIPOWER_OC.
Replaced by external pull-up.

* FMUv4pro : correct safety switch handling

RC02 has a hardware pull-down on this signal

* Revert "FMUv4pro : workaround for safety switch"

This reverts commit 9528ae29b68700fa7c6604c1ac2756c7dac2819c.
2017-04-07 06:14:04 -10:00
David Sidrane eb86730dca Removed all SPEKTUM Power and Bind Control
FMUv4 PRO HW does not have a controlable V3.3 on the connector
   it therefore can not support the SPEKTUM binding.
   This PR removes the Power switch controls or binding control
   interfaces from the board config
2017-03-30 16:19:26 -10:00
David Sidrane 29dd41db1d px4fmu-v4pro Remove GPIO_RC_OUT and vetted RC_IN wiring
Removed the legacy FMUv4 define that was activating a nonexistent
   pull up and on some HW driving the PPM_IN aka RC_IN aka SPEKTRUM_RX
   to VDD.

   Also detailed the connections of this pins for the board.

   The simplest connection is RC_IN to a timer capture pin
   and a UART.
   In this case the UART_RX pin and just be left as is.
   While the pin can be configured as the PPM_IN (Timer capture)
   or as SPEKTRUM_RX_AS_GPIO_OUTPUT to use it as and GPIO to
   facilitate binding.

  Renamed the macros and defines to be more explicit as to what
  Is being done and the sense of the parameters
2017-03-30 16:19:26 -10:00
David Sidrane bef24b906e Removed v4pro cloned v4 inappropriate definitions (#6808)
* Remove remove safty swtich LED from FMU control

* Differentiate GPIO_BTN_SAFETY_FMU  from GPIO_BTN_SAFETY
2017-03-13 07:26:36 -10:00
Beat Küng b0439836f6 refactor drv_led.h: rename to drv_board_led.h
This makes it clear that it's used to control the board LED's, not external
LED's.
2017-03-12 00:08:35 +01:00
Michael Schaeuble 06c5cb506a Enable ICM 20608 on Pixhawk Pro 2017-03-08 04:18:48 +08:00
Beat Küng df8f0da70c param & param_shmem: enable locking
We need to protect access to the param_values array. This is dynamically
allocated and resized (utarray_reserve() calls realloc). If some thread
was iterating the array while another was resizing the array, the first one
would iterate on a freed array, thus accessing invalid memory.

On NuttX this could lead to hardfaults in rare conditions.

Unfortunately we need to initialize the semaphore on startup, by calling
sem_init(). This adds a param_init() method called by every board/config
that uses the params (at least I think I've found all of them)
2017-02-17 11:27:08 +01:00
Kevin 1167fba9ad px4fmu-v4pro : adding correct logic for overcurrent sensing 2017-02-12 13:52:41 +01:00
Kevin 62b4d2de0d Fixing code style 2017-02-12 13:52:41 +01:00
klopezal 089e50c574 px4fmu-v4pro : board configuration 2017-02-12 13:52:41 +01:00
David Sidrane 3dc205f28a px4fmu-v4pro using board common mcu version api 2017-01-26 08:39:12 +01:00
David Sidrane 5ede3772ee px4fmu-v4pro using board common identity api 2017-01-25 07:43:11 +01:00
David Sidrane ab3a0ba025 px4fmu-v4pro use board common reset interface 2017-01-24 21:17:06 +01:00
David Sidrane 59ec0e8aef Make board_crashdump.c arch agnostic and move to common 2017-01-23 22:10:38 +01:00
José Roberto de Souza 163bcc4bbc drivers: boards: Share board_crashdump() implementation 2017-01-23 22:10:38 +01:00
David Sidrane 7b4f048ca3 px4fmu-v4pro Add PX4IO HW version 2017-01-21 11:45:36 +01:00
David Sidrane fe0f3bc557 PX4FMUV4PRO: moved GPIO defines to px4fmu-v4pro/board_config.h 2017-01-21 11:45:36 +01:00
Lorenz Meier c5a167935e FMUv4PRO: Add missing headers 2016-12-27 21:00:51 +01:00
Beat Küng 8d1f35bff6 board cmake: remove board_name.c from all boards
leftover after rebase
2016-12-21 11:35:10 +01:00
David Sidrane 925102464b Adding px4fmu-v4pro 2016-12-21 08:34:21 +01:00