Tiny v1.1

From PaparazziUAV
Revision as of 01:44, 14 April 2008 by Michel (talk | contribs)
Jump to navigation Jump to search

The Tiny autopilot was designed with an end user application in mind.

Features

  • Single LPC2148 MCU
  • 8 Analog input channels 0V - 3.3V
  • 1 3.3V TTL UART (5V tolerant)
  • 7 PWM outputs
  • 1 R/C receiver PPM frame input
  • 1 SPI bus
  • 1 I2C bus
  • 1 USB (client)
  • Integrated GPS receiver and patch antenna (4Hz update)
  • 5V/2A switching power supply & 3.3V linear regulator
  • 2 LEDs (status display)
  • 1 button (initiate launch)
  • 25 grams
  • 63 x 35mm (smaller then a business card)

The Tiny autopilot uses a single Philips LPC2148 ARM7 based microcontroller. The ARM7 is a low-power 32-bit RISC processor core and the Philips LPC2148 has 512KB on-chip Flash ROM, 40KB RAM and can be clocked at 60MHz.

Although critical control code such as the R/C interface and servo output are well segregated in Paparazzi software and well protected from interference from flaws in the stability/navigation/comm/payload code, great care must be taken when experimenting with new software as some errors can cause a the processor to halt or stall for extended periods causing total loss of control. The dual processor Classix addresses this risk by runnning critical code on a separate independent processor.

The schematics are available from the CVS repository. Be aware that the Tiny 13 V1.1 is a four layer PCB with a dedicated ground and power supply layer.

TINY 1.3 MCU 300PX.jpg TINY 1.3 MCU BOTTOM 300PX.jpg Tiny13 01.jpg Tiny13 02.jpg

Architecture

Tiny v099 Architecture.gif

Pinout

(Tiny13 v1.1)

Tiny13 v1 1 pinout.gif


Pins Name and Type are specified with respect to the Autopilot Board

SERIAL 1
Pin # Name Type Desription Suggested Color
1 GND PWR common ground Black
2 +3.3v PWR 3.3v Rail from Tiny Red
3 SDA0 I/O O.D. I2C0 data
4 SCL0 I/O O.D. I2C0 clock
5 P0.14 IN In-Circuit Serial Programming (ISP) enable - LOW on this pin during boot up to enable (Note 1)
6 RESET IN External Reset - A LOW on this pin performs a MCU hardware reset
7 RXD_0 IN UART0 Serial Input (used by ISP Serial Bootloader) (5V Tolerant) Green
8 TXD_0 OUT UART0 Serial Output (used by ISP Serial Bootloader) (5V Tolerant) Blue

Note 1 : Holding this pin low for at least 3mS after a RESET (or power up) instructs the controller to enter programming mode.


SERIAL 2
Pin # Name Type Desription Suggested Color
1 GND PWR common ground Black
2 +3.3V PWR 3.3v Rail from Tiny Red
3 SCK I/O SPI0 Serial clock. Clock output from master or input to slave
4 MISO I/O SPI0 Master In Slave Out. Data input to master or data output from slave
5 MOSI I/O SPI0 Master Out Slave In. Data output from master or data input to slave
6 SSEL IN SSP Slave Select. Selects the SSP interface as a slave (SSEL1)
7 INT IN External interrupt 2 input (EINT2)
8 USB+ I/O USB bidirectional D+ line Green
9 USB- I/O USB bidirectional D- line White
10 P0.23 IN Indicates the presence of USB bus power (VBUS) (5V Tolerant) Orange


RC
Pin # Name Type Desription Suggested Color
1 GND PWR common ground Black
2 +5v PWR 5v Rail from Tiny to R/C receiver supply Red
3 PPM_IN IN PPM Stream from RC Receiver (5V TOLERANT) White
4 NC - no connection
5 NC - no connection


ANALOG
Pin # Name Type Desription Suggested Color
1 GND PWR common ground Black
2 +3.3V PWR 3.3v Rail from Tiny Red
3 ADC_0 IN Analog to Digital Converter Input #0
4 ADC_1 IN Analog to Digital Converter Input #1
5 ADC_2 IN Analog to Digital Converter Input #2
6 ADC_3 IN Analog to Digital Converter Input #3
7 ADC_4 IN Analog to Digital Converter Input #4
8 ADC_5 IN Analog to Digital Converter Input #5
9 ADC_6 IN Analog to Digital Converter Input #6
10 ADC_7 IN Analog to Digital Converter Input #7

Schematic

Tiny v1.1 Schematic (1/2)


Tiny v1.1 Schematic (2/2)



POWER SUPPLY
For reference, Matthew Currie is assembling his Tiny(s) with WS Deans Micro 2R connectors for power as they are a commonly available R/C connector and are of high quality and durability. They do not have a positive lock mechanism but insert under a lot of pressure. They do not require any special crimping tools and withstand up to 10A.

Wsdm3007.png

Bill of Materials (BOM)

Please note that there are differences between 0.9, 0.99, and 1.1. Choose the version that matches your hardware.

Warning: C20 needs to be a low ESR capacitor and the one listed on the BOM isn't. A proper replacement would be B45197A2226K209. This could potentially cause instability of the 3V3 supply which, of course, is critical.

Tiny 1.1 BOM

1.1_bom.zip

Addendum: There are digikey part numbers for two more of the components. Murata inductor is 490-1116-1-ND Tactile Switch is either SW1020CT-ND (grounded) or SW1021CT-ND.

Tiny 0.99 BOM

Qty Value Device Parts Manufacturer PN distr PN
7 - 53047-03 CAMERA, RC_RX, S0, S1, S3, S4, S5 Molex 53047-0310 DK WM1732-ND
1 - 53047-04 VIDEO_TX Molex 53047-0410 DK WM1733-ND
1 - 53047-08 SERIAL_1 Molex 53047-0810 DK WM1737-ND
2 - 53047-10 ANALOG, SERIAL_2 Molex 53047-1010 DK WM1739-ND
1 FUTABA_BEND FUTABA_BEND CON_ESC - - -
2 LEDCHIP LED0805 LED1, LED2 Kingbright APT2012EC MO 604-APT2012EC
1 B3S B3S SW1 OMRON ELECTRONICS B3S-1002 RS 183-717
1 0.47uH L-EUL2012C L2 WURTH ELEKTRONIK 74479032 RS 308-8564
1 15uH WE_PD L1 Pulse P1168.153T MO 673-P1168.153T
2 33R R-EU_R1005 R9, R10 Yageo RC0402JR-0733L DK 311-33JRCT-ND
1 150R R-EU_R1005 R12 Yageo RC0402JR-07150L DK 311-150JRCT-ND
3 1K R-EU_R1005 R2, R3, R8 Yageo RC0402JR-071KL DK 311-1.0KJRCT-ND
1 1.5K R-EU_R1005 R11 Yageo RC0402JR-071K5L DK 311-1.5KJRCT-ND
2 3.3K R-EU_R1005 R6, R15 Yageo RC0402JR-073K3L DK 311-3.3KJRCT-ND
1 4.7K R-EU_R1005 R1 Yageo RC0402JR-074K7L DK 311-4.7KJRCT-ND
7 10K R-EU_R1005 R4, R5, R13, R14, R16, R17, R18 Yageo RC0402JR-0710KL DK 311-10KJRCT-ND
2 12K R-EU_R1005 R103, R105 Yageo RC0402JR-0712KL DK 311-12KJRCT-ND
1 15K R-EU_R1005 R7 Yageo RC0402JR-0715KL DK 311-15KJRCT-ND
2 56K R-EU_R1005 R102, R104 Yageo RC0402JR-0756KL DK 311-56KJRCT-ND
1 100K R-EU_R1005 R101 Yageo RC0402JR-07100KL DK 311-100KJRCT-ND
3 18pF C-EUC0402K C3, C7, C10 TDK C1005C0G1H180J DK 445-1238-1-ND
2 22pF C-EUC0402K C8_1, C9_1 Yageo CC0402JRNPO9BN220 DK 311-1018-1-ND
1 100pF C-EUC0402K C103 Kemet C0402C101J3GACTU DK 399-1022-1-ND
1 220pF C-EUC0402K C102 Kemet C0402C221K5RACTU DK 399-1030-1-ND
1 220pF/50V C-EUC1206K C4 Yageo CC1206KRX7R9BB221 DK 311-1164-1-ND
1 1nF C-EUC0402K C104 Kemet C0402C102K3RACTU DK 399-1031-1-ND
1 3.3nF C-EUC0402K C101 Kemet C0402C332K5RACTU DK 399-3070-1-ND
1 22nF/50V C-EUC1206K C6 Yageo CC1206KRX7R9BB222 DK 311-1176-1-ND
8 100nF C-EUC0402K C1_1, C2, C3_1, C4_1, C5_1, C6_1, C7_1, C106 Kemet C0402C104K8PACTU DK 99-3027-1-ND
3 100nF C-EUC0603 C8, C9, C21 Kemet C0603C104J4RACTU DK 399-1097-1-ND
1 10uF CPOL-EUA/3216-18R C18, C105 Kemet T491A106M010AS DK 399-1564-1-ND MO-80-T491A106K010
1 22uF CPOL-EUB/3528-21R C20 Kemet B45196H1226M209 DK 495-2185-1-ND
1 47uF/16V CPOL-EUD/7343-31R C5 Kemet B45197A3476K409 DK 495-1544-1-ND
1 330uF/10V CPOL-EUD/7343-31R C1 Kemet B45197A2337K509 DK 495-1536-1-ND
1 0.2F J1ROUND C77 Panasonic - ECG EEC-EN0F204J1 DK P11070CT-ND
1 AD8552RU AD8552RU IC2 Analog Devices Inc AD8552ARU DK AD8552ARU-ND
1 BAS70 BAS70 D1 Micro Commercial Co. BAS40-TP DK BAS40TPMSCT-ND
1 STPS2L STPS2L D2 STMicroelectronics STPS2L30A DK 497-3759-1-ND
1 CD4015B CD4015B IC1 Texas Instruments CD4015BPWR DK 296-14090-1-ND
1 12MHz CRYSTAL_CTS Q1 CTS-Frequency Controls 405C35B12M00000 DK CTX639CT-ND
1 DDTA143 MUN2111T1 T1 Diodes Inc DDTA143ZCA-7 DK DDTA143ZCADICT-ND
1 L5973D L5973D REG1 STMicroelectronics L5973D013TR DK 497-3638-1-ND
1 REG1117 REG1117 REG2 National Semiconductor LM1117MP-3.3 DK LM1117MP-3.3CT-ND
1 LEA-4P LEA-4P GPS Microblox LEA-4P-0-000-0 -
1 GPS_ANT_13 GPS_ANT_13 ANTENNA Sangshin KSA-ST1580MS13 -
1 LPC2148 LPC2148 MCU Philips LPC2148FBD64-S DK 568-1765-ND

DK = digikey

MO = mouser

RS = radiospares

Home Assembly

Visit here for the wiki page on Self Assembly Tips and Techniques. This page also includes Hardware Troubleshooting.

Programming

Example wiring for programming and telemetry

The Philips LPC21xx series ARM7 microcontrollers include hardware ISP (InCircuit Serial Programming) and can be programmed through the serial interface UART0 (Serial1) by holding pin P0.14 low during power-up. Paparazzi software includes a USB bootloader program that allows for easy 1-second programming through a standard USB port with no adapters needed. This allows us to upload new settings, flight plans, or software updates quickly and conveniently without the need to disconnect the modem from UART0.
See the Compiling and Flashing page for instructions on installing the bootloader and autopilot software.