nuttx/boards/arm/stm32/omnibusf4
Gregory Nutt 2aa85fd17e arch/arm, board/arm: Rename all up_* functions to arm_*
Summary

The naming standard at https://cwiki.apache.org/confluence/display/NUTTX/Naming+FAQ requires that all MCU-private functions begin with the name of the architecture, not up_.

This PR addresses only these name changes for the ARM-private functions prototyped in arm_internal.h

This change to the files only modifies the name of called functions.  nxstyle fixes were made for all core architecture files.  However, there are well over 5000 additional complaints from MCU drivers and board logic that are unrelated to to this change but were affected by the name change.  It is not humanly possible to fix all of these.   I ask that this change be treated like other cosmetic changes that we have done which do not require full nxstyle compliance.

Impact

There should be not impact of this change (other that one step toward more consistent naming).
Testing

stm32f4discovery:netnsh
2020-05-01 18:28:13 +01:00
..
configs/nsh Run ./tools/refresh.sh --silent all 2020-01-22 20:47:18 -06:00
include Refine the preprocessor conditional guard style (#190) 2020-01-31 19:07:39 +01:00
kernel Revert "Don't generate .depend anymore" 2020-03-22 23:07:29 -05:00
scripts Use EXTRAFLAGS instead of EXTRADEFINES to be used by make via command line 2020-04-11 08:31:08 -06:00
src arch/arm, board/arm: Rename all up_* functions to arm_* 2020-05-01 18:28:13 +01:00
Kconfig Merged in alinjerpelea/nuttx (pull request #967) 2019-08-07 20:49:39 +00:00
README.txt Remove exra whitespace from files (#189) 2020-01-31 09:24:49 -06:00

OMNIBUSF4 Target Support README
===============================

"OmnibusF4" is not a product name per se, but rather a design spec
that many product vendors within the drone flight management unit
(FMU) community adhere to. The spec defines the major components, and
how those components are wired into the STM32F405RGT6 microcontroller.

Airbot is one such vendor, and they publish a schematic here:

    http://bit.ly/obf4pro

Other software that supports the OmnibusF4 family include Betaflight,
iNAV, and many others. PX4 recently added support as well. No code
from any of those sources is included in this port.

Since OmnibusF4 is a drone FMU, most of its IO is already allocated to
FMU-specific tasks. As such, we don't need to make the board support
package as flexible as, say, an STM32F4 Discovery board.

The following are some of the committed IO pins. Most of the pins not
mentioned here are inaccessible, the details vary by board vendor:

io    peripheral   signal    notes
==================================
XIN                          8MHz crystal oscillator

PB0     TIM3 CH3   S1_OUT    motor 1 PWM output
PB1     TIM3 CH4   S2_OUT    motor 2 PWM output
PA3     TIM2 CH4   S3_OUT    motor 3 PWM output
PA2     TIM2 CH3   S4_OUT    motor 4 PWM output
PA1     TIM2 CH2   S5_OUT    motor 5 PWM output
PA8     TIM1 CH4   S6_OUT    motor 6 PWM output

PA4     SPI1      SPI1_NSS   mpu6000
PA5     SPI1      SPI1_SCL
PA6     SPI1      SPI1_MISO
PA7     SPI1      SPI1_MOSI

PC4     GPIO      GYRO_INT   mpu6000 EXTI

PB10    UART3/I2C UART3_TX   ttl UART tx or i2c_scl (used as console)
PB11    UART3/I2C UART3_RX   ttl UART rx or i2c_sda (used as console)

PB9                          RC_CH2 (rx pwm input)
PB8                          RC_CH1 (rx pwm input)
PC9                          RC_CH6 (rx pwm input)
PC8                          RC_CH5 (rx pwm input)
PC7                          RC_CH4 or USART6_RX (ttl)
PC6                          RC_CH3 or USART6_TX (ttl)

PB7     GPIO      SD_DET     SD card detection pin (low when card inserted)
PB5     GPIO      STAT       LED output (active low)
PB4     GPIO      BUZZER     buzzer output (active low)

PD2     GPIO      LED_STRIP  one-wire interface for LED strips

PC12    SPI3      SPI3_MOSI  bmp280 barometer (if populated) and/or max7456 OSD
PC11    SPI3      SPI3_MISO
PC10    SPI3      SPI3_SCL
PA15    GPIO      SPI3_NSS   OSD NSS
PB3     GPIO      BARO_CS    bmp280 NSS (if populated)

PA12    OTG       USB_DP
PA11    OTG       USB_DN

PA10    UART1     USART1_RX  SBUS_IN (through inverter) or PPM
PA9     UART1     USART1_TX

PB15    SPI2      SPI2_MOSI  sd/mmc card interface
PB14    SPI2      SPI2_MISO
PB13    SPI2      SPI2_SCLK
PB12    SPI2      SPI2_NSS


Build Instructions
==================

The boards/arm/stm32/omnibusf4/nsh/defconfig file creates a basic setup, and
includes drivers for all supported onboard chips. The console and
command prompt are sent to USART3.