Open Hardware and Software : TMR-FC V1.0

My TMR-FC Flight Controller

- Frame 

Open Hardware and Software : TMR-FC V1.0_第1张图片

- Controller

Open Hardware and Software : TMR-FC V1.0_第2张图片

Open Hardware and Software : TMR-FC V1.0_第3张图片

Open Hardware and Software : TMR-FC V1.0_第4张图片

Open Hardware and Software : TMR-FC V1.0_第5张图片

- Introductions

    1. User Guide :

        TMR_FC_UM_V1_120730.pdf

    2. Sechematic :

        TMR_FC_HW_V1_120830.pdf

    3. Gerber :

        TMRFC_GB_V1_120930.rar

    4. Software :

         The software is Porting from "PX4".

         https://github.com/cctsao1008/TMR

- Hardware Features

    1. MCU : 

          STM32f405RG

    2. AHRS :

          MPU6050, HMC5883, MS5611

    3. Features :

          12 channels PWM output, one PPM input and one Futaba S.BUS input,

          Built-in 10 DOF, 5 LEDs ( controlled by PCA9533/9536), GPS port ( UART / I2C),

          Auxiliary SPI and  GPIO, RF port (APC230 or BT), LiPo Voltage measure via ADC,

          Beeper for tone alarm, SWD port, SONAR, USB VCP and MSC, Micro SD ( can be read via USB),

          Light Bar LED control, Internal FLASH EEPROM emulation using sector 1, 2 and 3 ( 16KB x 3 ),

          RTC ( power keep by 3V CR1220 )

          ....... etc

    4. Stress Test VB scripts :

 

          Auto re-boot loop test, tone alarm loop test, ..... etc

    5. Support PX4 Qupgrade tool :

        Open Hardware and Software : TMR-FC V1.0_第6张图片

- Tests :

Open Hardware and Software : TMR-FC V1.0_第7张图片

Open Hardware and Software : TMR-FC V1.0_第8张图片

Open Hardware and Software : TMR-FC V1.0_第9张图片

Open Hardware and Software : TMR-FC V1.0_第10张图片

Open Hardware and Software : TMR-FC V1.0_第11张图片

Open Hardware and Software : TMR-FC V1.0_第12张图片

- Boot Log :

reboot
ABCDF
nsh_romfsetc: nsh > romfs_img_len 0xFF52F09C 
nsh_romfsetc: nsh > Mounting ROMFS filesystem at target=/etc with source=/dev/ram0
[boot] Initializing (HRT) 1...
[boot] Initializing (CPU) 2...
[boot] Initializing (DMA) 3...
[boot] Initializing pca953x driver
[PCA953X] on I2C bus 2 at 0x62
[TMRFC_LED] led_off, led = 0x338 
[TMRFC_LED] led_off, led = 0x332 
[TMRFC_LED] led_on, led = 0x334 
[boot] Initializing soft SPI for the MMC/SD slot
[boot] Successfully initialized soft SPI for the MMC/SD slot
[boot] Binding soft SPI device to MMC/SD slot 0
[boot] Successfuly bound Soft SPI device to MMC/SD slot 0
[boot] Initializing SPI3
[init] MODE = autostart 
[init] Looking for microSD... 
[init] Card mounted at /fs/microsd 
[init] tone_alarm start 
[init] Reading /fs/microsd/etc/rc.txt 
Detecting on board sensors on I2C bus(I2C2) ......

( 0x62 ) Have PCA9533DP
( 0x41 ) Have PCA9536DP
( 0x69 ) Have MPU6050

  Set MPU6050 auxiliary I2C bus to bypass mode......

  Detecting sensors on MPU6050 auxiliary I2C bus......

  ( 0x1e ) Have HMC5883L
  ( 0x77 ) Have MS5611

i2c: Done

[init] Start the ORB 
[uorb] ready
ramtron: RAMTRON not enabled, skipping.
param: selected parameter default file /fs/microsd/params
[init] param load /fs/microsd/params 
param: end of parameters
[init] Start mavlink ( 57600  /dev/ttyS1 ) 
mavlink: MAVLink v1.0 serial interface starting...
mavlink: DOWNLINK MODE
mavlink: UART is /dev/ttyS1, baudrate is 57600

[init] Start commander 
commander: starting
commander: No RGB LED found
[fcservo] default PWM output device
<fcservo> MODE_NONE
[fcservo] starting
<fcservo> adjusted actuator update interval to 100ms
FC driver (no PWM) started 
[init] Start sensors >> need to implement 
[init] Start one of the estimators ( attitude_estimator_ekf ) >> wait for MPU6050 driver ready !! 
[init] Start GPS >> need to implement 

NuttShell (NSH)
nsh> eeprom test
---------------------------------------------------------------------------------------
RM0090 Table 5. Flash module organization (STM32F40x and STM32F41x)            
---------------------------------------------------------------------------------------
[DEBUG]Check_Sector_Erased (845):SS = 0x08000000, SE = 0x08003FFF, COUNT = 0x00000001  
[DEBUG]internal_flash_test (986):Check_Sector_Erased 0  (DATA)     
---------------------------------------------------------------------------------------
[DEBUG]Check_Sector_Erased (845):SS = 0x08004000, SE = 0x08007FFF, COUNT = 0x00000001  
[DEBUG]internal_flash_test (988):Check_Sector_Erased 1  (DATA)     
---------------------------------------------------------------------------------------
[DEBUG]Check_Sector_Erased (845):SS = 0x08008000, SE = 0x0800BFFF, COUNT = 0x00004000  
[DEBUG]internal_flash_test (990):Check_Sector_Erased 2  (ERASED)     
---------------------------------------------------------------------------------------
[DEBUG]Check_Sector_Erased (845):SS = 0x0800C000, SE = 0x0800FFFF, COUNT = 0x00000001  
[DEBUG]internal_flash_test (992):Check_Sector_Erased 3  (DATA)     
---------------------------------------------------------------------------------------
[DEBUG]Check_Sector_Erased (845):SS = 0x08010000, SE = 0x0801FFFF, COUNT = 0x00000001  
[DEBUG]internal_flash_test (994):Check_Sector_Erased 4  (DATA)     
---------------------------------------------------------------------------------------
[DEBUG]Check_Sector_Erased (845):SS = 0x08020000, SE = 0x0803FFFF, COUNT = 0x00000001  
[DEBUG]internal_flash_test (996):Check_Sector_Erased 5  (DATA)     
---------------------------------------------------------------------------------------
[DEBUG]Check_Sector_Erased (845):SS = 0x08040000, SE = 0x0805FFFF, COUNT = 0x00000001  
[DEBUG]internal_flash_test (998):Check_Sector_Erased 6  (DATA)     
---------------------------------------------------------------------------------------
[DEBUG]Check_Sector_Erased (845):SS = 0x08060000, SE = 0x0807FFFF, COUNT = 0x00000001  
[DEBUG]internal_flash_test (1000):Check_Sector_Erased 7  (DATA)     
---------------------------------------------------------------------------------------
[DEBUG]Check_Sector_Erased (845):SS = 0x08080000, SE = 0x0809FFFF, COUNT = 0x00000001  
[DEBUG]internal_flash_test (1002):Check_Sector_Erased 8  (DATA)     
---------------------------------------------------------------------------------------
[DEBUG]Check_Sector_Erased (845):SS = 0x080A0000, SE = 0x080BFFFF, COUNT = 0x00000001  
[DEBUG]internal_flash_test (1004):Check_Sector_Erased 9  (DATA)     
---------------------------------------------------------------------------------------
[DEBUG]Check_Sector_Erased (845):SS = 0x080C0000, SE = 0x080DFFFF, COUNT = 0x00000001  
[DEBUG]internal_flash_test (1006):Check_Sector_Erased 10 (DATA)     
---------------------------------------------------------------------------------------
[DEBUG]Check_Sector_Erased (845):SS = 0x080E0000, SE = 0x080FFFFF, COUNT = 0x00000001  
[DEBUG]internal_flash_test (1008):Check_Sector_Erased 11 (DATA)     
---------------------------------------------------------------------------------------
[DEBUG]internal_flash_test (1011):Warning !! This test will destroy the data stored on sector 1 and 2 ! 
[DEBUG]internal_flash_test (1014):1)sched_lock.... 
[DEBUG]internal_flash_test (1018):2)FLASH_Unlock.... 
[DEBUG]internal_flash_test (1022):3)EE_Init.... 
[DEBUG]EE_Init (146):EE_Init 
[DEBUG]EE_Init (330):EE_Init >> VALID_PAGE 
[DEBUG]EE_Init (345):EE_Init >> ERASED 
[DEBUG]EE_Init (347):EE_Init >> FLASH_EraseSector 1 
[DEBUG]Check_Sector_Erased (845):SS = 0x08008000, SE = 0x0800BFFF, COUNT = 0x00004000  
[DEBUG]EE_Init (355):Page 1 blank, skip to erase it. 
[DEBUG]internal_flash_test (1025):4)FLASH_Lock.... 
[DEBUG]internal_flash_test (1029):5)sched_unlock.... 
nsh>


# USB 讀 SD 卡, 及 UART NSH 同時使用. 

Open Hardware and Software : TMR-FC V1.0_第13张图片

你可能感兴趣的:(stm32,NuttX,TMR)