Tiny v1.1

From PaparazziUAV
Revision as of 17:00, 22 February 2007 by Jeremy (talk | contribs) (→‎Programming)
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 PWM 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.

TINY 1.3 MCU 300PX.jpg TINY 1.3 MCU BOTTOM 300PX.jpg

Architecture

Tiny v099 Architecture.gif

Pinout

(Tiny13 v1.1)

Tiny13 v1 1 pinout.gif

Wire colors:

  • USB- : white
  • USB+ : green
  • LPC_SSEL : orange

SERIAL 1

1 GND self explanatory
2 3.3V self explanatory
3 SDA0 OD OUTPUT, INPUT - I2C0 data input/output
4 SCL0 OD OUTPUT, INPUT - I2C0 clock input/output
5 P0.14 INPUT - In-Circuit Serial Programming (ISP) enable - LOW on this pin during boot up to enable
6 RESET INPUT - External Reset input - A LOW on this pin performs a hardware reset
7 RXD_0 INPUT - UART0 Serial Input (used by ISP Serial Bootloader) (5V TOLERANT)
8 TXD_0 OUTPUT - UART0 Serial Output (used by ISP Serial Bootloader) (5V TOLERANT)

SERIAL 2

1 GND self explanatory
2 3.3V self explanatory
3 SCK INPUT, OUTPUT - Serial clock for SPI0. SPI clock output from master or input to slave
4 MISO INPUT, OUTPUT - Master In Slave OUT for SPI0. Data input to SPI master or data output from SPI slave
5 MOSI INPUT, OUTPUT - Master Out Slave In for SPI0. Data output from SPI master or data input to SPI slave
6 SSEL INPUT - Slave Select for SSP. Selects the SSP interface as a slave (SSEL1)
7 INT INPUT - External interrupt 2 input (EINT2)
8 USB+ INPUT, OUTPUT - USB bidirectional D+ line
9 USB- INPUT, OUTPUT - USB bidirectional D- line
10 P0.23 INPUT - Indicates the presence of USB bus power (VBUS) (5V TOLERANT)

RC

1 GND common ground
2 5V POWER_OUTPUT - 5V Rail from Tiny
3 PPM_IN INPUT - PPM Stream from RC Receiver (5V TOLERANT)
4 NC no connection
5 NC no connection

ANALOG

1 GND
2 3.3V
3 ADC_0
4 ADC_1
5 ADC_2
6 ADC_3
7 ADC_4
8 ADC_5
9 ADC_6
10 ADC_7

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

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.

Tiny 1.1 BOM

1.1_bom.zip

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.

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.