BoosterPack Design Guide

From Texas Instruments Embedded Processors Wiki

Jump to: navigation, search
Translate this page to   




LaunchPad Resource Portal  LaunchPadRocket.png


This wiki is open and can be edited by all!

More information available @ www.ti.com/launchpad


LaunchPad Banner.jpg

Contents

BoosterPack Development Guide

for LaunchPad Evaluation Kits from Texas Instruments

ABSTRACT

Build your own BoosterPack (BYOB) and take advantage of Texas Instruments’ web site and marketing potential to promote your solution!

From sharing a new idea or project, to designing, manufacturing and selling your own BoosterPack kit, TI offers a variety of avenues for you to reach potential customers with your solutions.

This guide shows how to create a BoosterPack that plugs into the LaunchPad evaluation kits based on TI microcontrollers – MSP430, Stellaris and C2000.

This standard defines the physical & electrical specifications of all TI LaunchPad evaluation kits. In addition, this standard also defines the physical & electrical specifications of all BoosterPacks.

These guidelines can also maximize success when creating a BoosterPack for cross-compatibility between the various LaunchPad evaluation kits.


DISCLAIMER

It is important to note that this guide only shows physical and electrical compatability between a LaunchPad baseboard and a BoosterPack plugin module. This standard does not ensure full support in terms of firmware availability, nor does it ensure that the embedded processor on the LaunchPad can support the functions of a given BoosterPack.

This document does not ensure cross compatibility between BoosterPack kits or support for stacking of multiple BoosterPack kits. Review the specific BoosterPack pinouts to determine support for stacking.

TI recommends that you use the pins from the smallest footprint that fits the requirements when creating a new BoosterPack to ensure maximum reusability. For example, it is better to use only the outer rows of the 20 pin standard when implementing a 40 pin boosterpack as this would potentially enable the boosterpack to work with 20 pin LaunchPads and allow stacking of 40 pin BoosterPacks.

Chapter 1

The BoosterPack pinout standard

The BoosterPack standard is fully defined here: [[1]]

Chapter 2

LaunchPad and the BoosterPack Ecosystem Concept and Overview

The LaunchPad Evaluation Kits from Texas Instruments are extremely low-cost, expandable evaluation systems for TI microcontrollers. This concept began with the tremendously successful MSP430™ LaunchPad, which introduced a large number of engineers to the TI MSP430 family of microcontrollers. The LaunchPad ecosystem has since expanded to the rest of the TI microcontroller portfolio, resulting in a Stellaris™-based and C2000-based LaunchPad, with more variants to follow.

What are LaunchPad Evaluation Kits?

A LaunchPad Evaluation Kit is a complete development platform that consists of a target TI microcontroller, an on-board emulator for programming & debugging, a minimal microcontroller support circuit, on-board LEDs & buttons & a set of expansion headers. The expansion headers are referred to as the “BoosterPack” interface and are available in two general footprints – 20 pin or 40 pin. The 20 or 40 pin expansion headers on the LaunchPad should be male & face upwards. If downward stackability is desired, female headers should also be available and face downward. All pins are on 100mil/2.54mm grid.

What are BoosterPacks?

BoosterPacks are plug-in modules that connect to the LaunchPad evaluation kits. BoosterPacks are available in two general foot prints – 20 pin and 40 pin. A BoosterPack can interface with the various LaunchPad evaluation kits if the BoosterPack design guide is closely followed. To ensure proper stacking of multiple BoosterPacks, pay special attention to the pin assignments of each BoosterPack. The 20 or 40 pin BoosterPack header should be female & face downwards. If BoosterPack stackability is desired, male headers should face upwards as well. All pins are on 100mil/2.54mm grid.

Table 2-1 provides a summary of the available LaunchPads and the BoosterPack interface pin count. Links to the specific LaunchPad's Tool Folder is also provided. It is there where you can find more documents and information regarding each LaunchPad, including user's guides, datasheets & more.

Table 2-1. LaunchPad & BoosterPack Interface Pincount Summary


LaunchPad Name Part Number Target MCU BoosterPack Interface Pin Count Link
MSP430G2 Value Line LaunchPad MSP-EXP430G2 MSP430G2553IN20 20 Tool Folder
C2000 Piccolo LaunchPad LAUNCHXL-F28027 TMS320F28027 40 "XL" Tool Folder
Stellaris® LM4F120 LaunchPad EK-LM4F120XL LM4F120H5QRFIG 40 "XL" Tool Folder

This development guide provides the necessary design information for developers who want to create BoosterPacks that extend functionality of one or several LaunchPad evaluation kits using either the 40 or 20 pin BoosterPack implementation.

BoosterPack Functional Interface

The LaunchPad BoosterPack interface provides a standardized pinout to enable BoosterPack modularity and cross-compatibility across the various LaunchPad variants. The interface consists of either 2 or 4 10-pin headers. The pins are spaced 0.10 inch apart (100mil) with the two outer headers being 1.8 inches (1800mil) apart.

Figure 1-1 shows the physical specifications for the header positions. It also provides labels (A, B, C, D & E), which will be further defined in Table 2-2, Table 2-3, Table 2-4, Table 2-5 and Table 2-6 below.

It should be noted that 20-pin BoosterPacks & LaunchPad evaluation boards leverage Headers “A” and “B”. 40-pin BoosterPacks & LaunchPad evaluation boards can leverage all 4 headers (A, B, C & D).

Additionally, BoosterPacks have the potential of stacking vertically. This allows multiple LaunchPads to connect to a single LaunchPad evaluation board. This is especially useful when several BoosterPacks are leveraging the same Vcc, GND, I2C, SPI bus, etc. To ensure interoperability between multiple BoosterPacks, careful consideration must be given to each BoosterPacks pin/resource requirements.

Figure 2-1. Physical Specifications of a BoosterPack
BoosterPackFootprint.png

The tables below show the shared functionality that is available across the various LaunchPad evaluation boards. The consistent functionality is shown through color coding.

Green means that all MCU LaunchPads are consistent with the suggested functionality of the BoosterPack standard. Yellow means that only a sub-set of LaunchPads are consistent with each other in terms of pin compatibility.

Each table below also has a “NOTES” section, which summarizes some considerations that should be taken.

Note that many pins below are muxed for multiple functionality. The bolded items within the tables below indicate which functionality is consistent with the suggested functionality of the BoosterPack standard.

Table 2-2. Header "A"


MSP430G2 Value Line LaunchPad Stellaris LM4F120 LaunchPad C2000 Piccolo F28027 LaunchPad
PN: MSP-EXP430G2 PN: EK-LM4F120XL PN: LAUNCHXL-F28027
20-pin LaunchPad 40-pin LaunchPad 40-pin LaunchPad
Pin Suggested Function
1 VCC 3.3V 3.3V 3.3V
2 Analog In A0/P1.0/ACLK/TA0CLK/CA0 AIN11/PB5/SSI2Fss/T1CCP1/CAN0Tx ADCINA6/AIO6
3 UART RX UCA0RXD/A1/P1.1/UCA0SOMI/TA0.0/CA1 U1Rx/PB0/T2CCP0 SCIRXDA/SDAA/GPIO28/TZ2
4 UART TX UCA0TXD/A2/P1.2/UCA0SIMO/TA0.1/CA2 U1Tx/PB1/T2CCP1 SCITXDA/SCLA/GPIO29/TZ3
5 Interruptible GPIO P1.3/A3/ADC10CLK/CA3/CAOUT/VREF-/VeREF- PE4/AIN9/U5Rx/I2C2SCL/CAN0Rx GPIO34/COMP2OUT
6 SPI_A_CLK UCA0CLK/UCB0STE/P1.4/A4/SMCLK/CA4/VREF+/VeREF+ PE5/AIN8/U5Tx/I2C2SDA/CAN0Tx AIO4/ADCINA4/COMP2A
7 SPI_B_CLK UCB0CLK/UCA0STE/P1.5/A5/CA5/TCK SSI2Clk/PB4/AIN10/T1CCP0/CAN0Rx SPICLK/SCITXDA/GPIO18
8 GPIO P2.0†/TA1.0 PA5/SSI0Tx AIO2/ADCINA2/COMP1A
9 GPIO P2.1†/TA1.1 PA6/I2C1SCL AIO10/ADCINB2/COMP1B
10 GPIO P2.2†/TA1.1 PA7/I2C1SDA AIO12/ACDINB4/COMP2B
NOTES: P2.0, P2.1 & P2.2 are capacitive touch-capable SPI SIMO/TX is the secondary recommended function for SPI communication


Table 2-3. Header "B"

MSP430G2 Value Line LaunchPad Stellaris LM4F120 LaunchPad C2000 Piccolo F28027 LaunchPad
PN: MSP-EXP430G2 PN: EK-LM4F120XL PN: LAUNCHXL-F28027
20-pin LaunchPad 40-pin LaunchPad 40-pin LaunchPad
Pin Suggested Function
1 GND GND GND GND
2 Timer Output TA0.1/P2.6/XIN T3CCP0/PB2/I2C0SCL ECAP1/GPIO19/SCIRXDA/SPISTEA/XCLKIN
3 Interruptible GPIO P2.7/XOUT PE0/AIN3/U7Rx GPIO12/SCITXDA/TZ1
4 Test TEST/SBWTCK PF0/U1RTS/SSI1Rx/CAN0Rx/T0CCP0/NMI/C0o NC
5 RESET RESET RESET RESET
6 SPI_B_SIMO/I2C_SDA UCBOSDA/UCBOSIMO/P1.7/A7/CA7/CAOUT/TDO/TDI SSI2Tx/I2C3SCL*/PB7/T0CCP1 SDAA/GPIO32/ADCSOCAO/EPWMSYNCI OR SPISIMOA/GPIO16/TZ2 ††
7 SPI_B_SOMI/I2C_SCL UCB0SCL/UCB0SOMI/P1.6/A6/TA0.1/CA6/TCLK/TDI SSI2Rx/I2C3SDA*/PB6/T0CCP0 SCLA/GPIO33/ADCSOCBO/EPWMSYNCO OR SPISOMIA/GPIO17/TZ3 †††
8 GPIO P2.5**/TA1.2 PA4/SSI0Rx‡ GPIO6/EPWMSYNCI/EPWM4A
9 GPIO P2.4**/TA1.2 PA3/SSI0Fss GPIO7/SCIRXDA/EPWM4B
10 GPIO P2.3**/TA1.0 PA2/SSI0Clk AIO14/ADCINB6
NOTES **P2.5, P2.4 & P2.3 are capacitive touch-capable * I2C3SCL and I2C3SDA are enabled by a connection to Pin3 & 4 in Header "C" via 0-ohm resistor
SPI SOMI,RX, Fss & CLK is the secondary recommended function for SPI communication
†† Functionality is chosen by the position of JP4 & JP5
††† Functionality is chosen by the position of JP6 & JP7


Table 2-4. Header "C"


MSP430G2 Value Line LaunchPad Stellaris LM4F120 LaunchPad C2000 Piccolo F28027 LaunchPad
PN: MSP-EXP430G2 PN: EK-LM4F120XL PN: LAUNCHXL-F28027
20-pin LaunchPad 40-pin LaunchPad 40-pin LaunchPad
Pin Suggested Function
1 5V - 5V 5V
2 GND - GND GND
3 Analog In - AIN7/PD0/SSI3Clk/SSI1Clk/I2C3SCL/WT2CCP0 ADCINA7
4 Analog In - AIN6/PD1/SSI3Fss/SSIFss/I2C3SDA/WT2CCP1 ADCINA3
5 Analog In - AIN5/PD2/SSI3Rx/SSI1Rx/WT3CCP0 ADCINA1
6 Analog In - AIN4/PD3/SSI3Tx/SSI1Tx/WT3CCP1 ADCINA0/VREFHI
7 Analog In - AIN2/PE1/U7Tx ADCINB1
8 Analog In - AIN1/PE2 ADCINB3
9 Analog In - AIN0/PE3 ADCINB7
10 Analog In - PF1/U1CTS/SSI1Tx/T0CCP1/C1o/TRD1 NC
NOTES:


Table 2-5. Header "D"

MSP430G2 Value Line LaunchPad Stellaris LM4F120 LaunchPad C2000 Piccolo F28027 LaunchPad
PN: MSP-EXP430G2 PN: EK-LM4F120XL PN: LAUNCHXL-F28027
20-pin LaunchPad 40-pin LaunchPad 40-pin LaunchPad
Pin Suggested Function
1 Timer Output - T1CCP0/PF2/SSI1Clk/TRD0 EPWM1A/GPIO0
2 Timer Output - T1CCP1/PF3/SSI1Fss/CAN0Tx/TRCLK EPWM1B/GPIO1
3 Timer Output - T3CCP1/PB3/I2C0SDA EPWM2A/GPIO2
4 Timer Output - WT0CCP0/PC4/C1-/U4Rx/U1Rx/U1RTS EPWM2B/GPIO3
5 Timer Output - WT0CCP1/PC5/C1+/U4Tx/U1Tx/U1CTS EPWM3A/GPIO4
6 Timer Output - WT1CCP0/PC6/C0+/U3Rx EPWM3B/GPIO5
7 Timer Output - WT1CCP1/PC7/C0-/U3Tx EPWMSYNCI/GPIO32/ADCSOCAO/SDAA OR GPIO16/SPISIMOA/TZ2 ††
8 Timer Output - WT5CCP0/PD6/U2Rx EPWMSYNCO/GPIO33/ADCSOCBO/SCLA OR GPIO17/SPISOMIA/TZ3 †††
9 Timer Output - WT5CCP1/PD7/U2Tx/NMI NC
10 Timer Output - T2CCP0/PF4 NC
NOTES: †† Functionality is chosen by the position of JP4 & JP5
††† Functionality is chosen by the position of JP6 & JP7


BoosterPack Design Guidelines

Follow these guidelines when designing your BoosterPack:


Special Considerations for Energia

Be sure to check out the Energia wiki to see how the core APIs are allocated to each pin/peripheral resource. This will help ensure that your BoosterPack can be supported by core APIs straight out of the box.

Energia Hardware Pin Mapping


Special Considerations for Stellaris LaunchPad

Stellaris LaunchPad Power Interface

The Stellaris LaunchPad has provisions to provide power to a BoosterPack through either the BoosterPack interface or the BoosterPack XL, 40-pin Interface. The configuration of power and ground pins on both of these interfaces must be consistent across LaunchPads from all TI microcontroller families.

The Stellaris LaunchPad draws power from either of the on-board USB interfaces as selected by the power switch in the top left corner of the board. Typically, the USB connection provides 500 milliamps at 5 V to the Stellaris LaunchPad. The selected USB power source is made directly available to the BoosterPack XL Interface on the J3.01 pin. This is a direct connection with only small decoupling capacitors provided on the Stellaris LaunchPad.

All LaunchPads, including the Stellaris LaunchPad, also provide a 3.3-V supply on pin J1.01 of the BoosterPack interface. On the Stellaris LaunchPad, this is sourced by a TPS73633 LDO voltage regulator which converts the selected 5-V USB power to 3.3 V. The regulator is capable of sourcing 400 milliamps at 3.3 V. This 3.3-V supply is shared between the BoosterPack interface, the in-circuit debug interface (ICDI), and the target microcontroller. Therefore, under normal circumstances, about 300 to 350 milliamps are available to the BoosterPack interface. Detailed power management is left to the BoosterPack developer who must also manage the application to be run on the target microcontroller.

The Stellaris LaunchPad can be powered through an external supply on a BoosterPack. If providing power to the Stellaris LaunchPad from a BoosterPack, move the power select switch to select an unused USB connection to prevent power bus contention between the BoosterPack and the USB connection. Power may be supplied to either the 3.3 V or the 5.0-V system but not both.

Providing external power to both 5 V and 3.3 V would result in a contention between the external power supplies and the Stellaris LaunchPad's voltage regulator. Providing only 3.3 V will result in some lost functionality such as the on-board LED’s. It may also result in reverse current leakage through the on-board voltage regulator. Therefore, it is recommended if providing power externally to use either the existing USB connections or an external 5-V supply from a BoosterPack.

Ground connections are available on pins J2.01 and J3.02. These provide a ground connection for both the BoosterPack interface and the BoosterPack XL Interface respectively.

Additional power and ground pins are available through labeled pins located in the extreme lower corners of the Stellaris LaunchPad. These are connected to the same 3.3 V, 5 V, and ground connections as the pins on the BoosterPack interface and the BoosterPack XL Interface.

Shared Pins on the Stellaris LaunchPad

To provide compatibility with the MSP430 LaunchPad's BoosterPack interface and to provide a maximum number of signals to the BoosterPack interface and BoosterPack XL Interface, it was necessary to route some signals to more than one pin. In addition, certain on-board functions such as the button and LED signals are available on the BoosterPack interface and BoosterPack XL Interface. A 0-Ω jumper resistor was installed for signals that are used for more than one purpose or routed to more than one GPIO. Removal of this jumper disconnects the functions. All jumpers are installed by default. A listing of these jumpers and their use is provided in Table 1-6

Table 2-6. Stellaris® LaunchPad Jumper List.


Resistor Primary Function Alternate Function Comments
R1 Right User Switch J2.04 Test pin on MSP430 LaunchPad. This connection along with R13 provides Hibernate wake to BoosterPack interface
R2 Red LED To PF1 and J3.10 If removed: allows extra GPIO to the BoosterPack XL interface. If installed (default): allows booster pack to drive LED or sense LED state.
Also provides Embedded Trace signal TRD1.
R8 Hibernate Wake To PF0 and J2.04 via R1 Allows user switch 2 to wake device from hibernate. Also ties wake to J2.04 to allow BoosterPack to wake Stellaris LaunchPad from

Hibernate.

R9 PB6 SSI2 TX on J2.07 PD0 I2C SCL on J2.07 Routes I2C from PD0 to J2.07 for MSP430 Stellaris LaunchPad compatibility. If using PD0 or PB6, the unused GPIO must be configured as an input or R9 removed.
R10 PB7 SSI2 RX on J2.06 PD1 I2C SDA on J2.06 Routes I2C from PD1 to J2.06 for MSP430 Stellaris LaunchPad compatibility. If using PD1 or PB7, the unused GPIO must be configured as an input or R9 removed.
R11 Green LED To PF2 and J4.01 If removed: allows extra GPIO to the BoosterPack XL interface. If installed (default): allows BoosterPack to drive LED or sense LED state.
Also provides Embedded Trace signal TRD0.
R12 Blue LED To PF3 and J4.02 If removed: allows extra GPIO to the BoosterPack XL interface. If installed (default): allows BoosterPack to drive LED or sense LED state.
Also provides Embedded Trace signal TRDCLK.
R13 Left User Switch To PF4 and J4.10 If removed: allows extra GPIO to the BoosterPack XL interface. If installed (default): allows BoosterPack to simulate switch press or sense switch state.

StellarisWare Software Integration

StellarisWare® software is an extensive suite of software designed to simplify and speed development of Stellaris-based microcontroller applications. It contains peripheral drivers, a USB stack, Graphics library, utility functions and software code examples that run on Stellaris devices. It is recommended that BoosterPack example software build upon this foundation.

When installed StellarisWare by default will reside in the C:\StellarisWare directory on a Windows machine. The directory C:\StellarisWare\boards\ek-lm4f120xl provides several complete functional code examples that demonstrate the Stellaris LM4F120 LaunchPad's capabilities. Each example resides in its own directory.

The simplest and most effective way to integrate your BoosterPack example software with StellarisWare is to design your example to exist inside the StellarisWare directory structure. The C:\StellarisWare\boards\ek-lm4f120xl\<your_example>\ directory should house everything for your example. Your example can then reference to the libraries and utilities and board drivers in the same way that the official StellarisWare examples do.

This structure provides a consistent customer experience and familiar environment. It also resolves many common issues with relative links and finding references to external includes or libraries.

Supporting Documents & Links

Supporting Documents & Links

MSP-EXP430G2 LaunchPad

C2000 Piccolo LaunchPad

Stellaris® LM4F120 LaunchPad

Leave a Comment
Personal tools
Namespaces
Variants
Actions
Navigation
Print/export
Toolbox