Commit Graph
56 Commits
Author SHA1 Message Date
alessandro b49ccb889c tap_esc: removed unused NO_VERIFY_CONFIG 2018-04-18 07:48:24 +02:00
Daniel Agar f194c5424c move hmc5883 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 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 c264cb3224 erofc-v1:Updated to new NuttX IRQ API changes 2017-09-29 10:13:51 -04:00
David Sidrane 0e6c7890c0 aerofc-v1: 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 40a6de5821 aerofc-v1:spi_dev_e is now uint32_t in NuttX
Using new type of uint32_t for spi device and macros
   that define a PX4 device on a given BUS and Chip Select
2017-09-29 10:13:51 -04:00
Henry Zhang 4778c79201 commander: removed CONFIG_ARCH_BOARD_xxx usage 2017-09-20 18:40:55 -10:00
José Roberto de Souza 7d46858ae4 aerofc: Use the additional I2C
This change plus the new FPGA RTL(version 0xC1 or higher) will make
use of the new I2C bus, this new bus will be shared between aerofc_adc
and ll40ls(if connected) and leaving the old bus just to IST8310.
2017-08-02 11:49:10 +02:00
José Roberto de Souza ce180af4ca aerofc: Move GPS to UART7
The UART3 also have the I2C bus 2 functions so moving GPS to UART7 to
have one additional I2C.
To keep GPS working is also necessary update the FPGA RTL to version
0xC1 or higher.
2017-08-02 11:49:10 +02:00
José Roberto de Souza 0b9e32ca3e aerofc: Reboot board when force bootloader pin is set
This can help "unbrick" AeroFC when a bad firmware is loaded
and it keeps rebooting or it spinning in some loop.

No need to request to stay in booloader as it will stay
in bootloader because the pin is set.
2017-07-26 07:14:13 +02:00
Lucas De Marchi 260b8ea940 aerofc: remove USB
There's no USB, don't bring it in.
2017-04-06 12:18:30 +02:00
Lucas De Marchi c5108cafff aerofc: fix documentation about pins
- There's no I2C2, so remove it
  - Fix alignments everywhere in board_config.h
  - Clarify STM32 ADC (not available) and the ADC on the FGPA
  - Fix format on some comments
2017-04-06 12:18:30 +02:00
Lucas De Marchi 16cd710251 aerofc: set tap esc mode 2017-04-06 12:18:30 +02:00
Lucas De Marchi 173001e73a aerofc: add BOARD_ prefix to define and update description 2017-04-06 12:18:30 +02:00
David Sidrane 9f0ea7ff4f aerofc-v1 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
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
José Roberto de Souza 07921c9f3a aerofc: Use ram_flash dataman backend 2017-03-10 11:31:07 +01:00
José Roberto de Souza ef228b82aa boards: AeroFC: Make it a memory constrained system
The maximum number of missions was increased in almost 8 times in
recent commit: 9369262e63 navigator: allow more mission items.

As this board loads missions in RAM, now it don't have enough memory
to allocate causing dataman start to fail, so mark it as a memory
constrained system and reduce the number of maximum missions
supported.
2017-02-23 08:26:42 +01: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
José Roberto de Souza aa8fa2ae05 drivers: AeroFC: Add more leds
Also change the initial state of the leds to off.
2017-02-17 09:13:33 +01:00
Lorenz Meier 565a43dee0 Aero FC v1: Remove unused power management file 2017-02-04 21:06:21 +01:00
Lorenz Meier f7fa374656 Implement default board power control to allow software switch-off 2017-02-04 21:06:21 +01:00
David Sidrane b955ef2876 aerofc-v1 using board common mcu version api 2017-01-26 08:39:12 +01:00
David Sidrane ff2e8b10a2 aerofc-v1 using board common identity api 2017-01-25 07:43:11 +01:00
David Sidrane a89a51cb9b aerofc-v1 use board common reset interface 2017-01-24 21:17:06 +01:00
José Roberto de Souza 523688e43c aerofc: Reboot after crash 2017-01-24 00:06:12 +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
José Roberto de Souza 0b3fa7bfbb aerofc: Remove call to board_dma_alloc_init()
This commit will only remove the error message from serial console as
this board don't define BOARD_DMA_ALLOC_POOL_SIZE.
2017-01-23 22:10:38 +01:00
David Sidrane fd25f0a594 AEROFC_V1 Moved magic numbers for battery V div and A per V to board_config.h 2017-01-21 11:45:36 +01:00
David Sidrane 0fe915bdfd aerofc-v1 Removed empty GPIO table
aerofc-v1 does not used any user GPIO via the FMU Driver
2017-01-21 11:45:36 +01:00
David Sidrane 216ec6513a Removed CONFIG_ARCH_BOARD_AEROFC_V1 from tap_esc
Changed the CONFIG_ARCH_BOARD_AEROFC_V1 in tap_esc.cpp to
   TAP_ESC_NO_VERIFY_CONFIG to maintian the commitment to not
   have CONFIG_ARCH_BOARD_xxxx ifdef litter in the PX4 code base.
   TAP_ESC_NO_VERIFY_CONFIG will be removed (see todo) in
   aerofc-v1/board_config.h
2017-01-21 11:45:36 +01:00
Lorenz Meier faf83aad6a Aero FC: Add missing headers 2016-12-27 21:00:51 +01:00
Lucas De Marchi 0341af4858 aerofc: add some fixes to adc driver
- Other channels are irrelevant since they aren't physically
    connected. Avoid the I2C transaction to get invalid data
  - Port the driver to use only one address, as it should be
  - Minor changes here and there
  - Add test() method to read the latest value - helpful during
    debugging.
2016-12-26 16:11:33 +01:00
José Roberto de Souza 53f2c1eb19 aerofc: Implement ADC
Measure the battery voltage of Aero RTF kit will be done by FPGA
and read by AeroFC using I2C bus.

The protocol is a little bit odd, it have different I2C slave
address for each "register", in future the FPGA RTL will
have a protocol more similar to other I2C sensors.

Also Aero RTF don't have a ADC line to measure current consumption.
2016-12-26 16:11:33 +01:00
Beat Küng c662113527 board_name.c: remove the file and HW_ARCH macro, use px4_board_name() instead
boards define BOARD_NAME, so board_name() is not necessary. HW_ARCH was
just a wrapper around board_name().

This patch simplifies to having only one common method px4_board_name().
2016-12-21 11:35:10 +01:00
David Sidrane 3f64bf81f3 RGB LED cleanup
Removed dead code and magic numbers
  Defined the RGB LED to support 2 timers
2016-12-21 08:34:22 +01:00
David Sidrane a2adf94d13 Changes to aerofc-v1 for upstream Nuttx and hardfault logging 2016-12-21 08:34:21 +01:00
Lucas De Marchi 9468e7779a aerofc: use same macro name as px4fmu boards 2016-12-20 08:51:14 +01:00
Lucas De Marchi eaa2cf7d99 aerofc: fix LED names
There are no blue/red LEDs and these names just causes confusion with
the "always-on LEDs".
2016-12-20 08:51:14 +01:00
José Roberto de Souza 9bb77adbec Aerofc: Fix and add more information about flash sectors 2016-12-01 07:52:23 +01:00
José Roberto de Souza 9befff1e79 aerofc: Add information about the flash usage 2016-11-28 09:21:12 +01:00
José Roberto de Souza 8fb15f1de8 aerofc: Enable I2C1 for external compass
For now it is only checking if there is a external HMC5883, if
necessary more compass should be added and probe.
2016-11-28 09:21:12 +01:00
Lucas De Marchi 3b3d4f385c aerofc: fix UART port assignments 2016-11-28 09:21:12 +01:00
James Goppert 893714dc6a aerofc: Fixes for init 2016-11-28 09:21:12 +01:00
Lucas De Marchi ce8a7f6bdc aerofc: fix comment regarding hrt 2016-11-28 09:21:12 +01:00
Lucas De Marchi 1aea9457a9 aerofc: remove usb sensing 2016-11-28 09:21:12 +01:00
José Roberto de Souza 51f85858f2 aerofc: Power on sensors
MPU6500, MS5611 and HMC5883 only power on when GPIO_SENSORS_POWER is
set.
2016-11-28 09:21:12 +01:00
José Roberto de Souza 7ced5a1b6f aerofc: Remove unused GPIO configuration 2016-11-28 09:21:12 +01:00