BoosterPack Design Guide
From Texas Instruments Embedded Processors Wiki
|
This wiki is open and can be edited by all! More information available @ www.ti.com/launchpad
|
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
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:
- 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
- BoosterPacks should not extend more than 0.350 inches above the center of the top BoosterPack interface pin.
- BoosterPacks should not extend more than 0.150 inches below the center of the bottom pin of the BoosterPack interface.
- Note: BoosterPacks that extend more than 0.150 inches below the center of the bottom pin will partially cover the LaunchPad user switches which can result in lost user access to those user inputs.
- BoosterPacks are not restricted in width and may extend as much as desired left and right of the LaunchPad
- For BoosterPacks with RF antennas, place the antenna to the left or right of the LaunchPad for minimal interference and signal attenuation.
- The BoosterPack interface does not provide any means of keying or alignment guidance. It is recommended that visual cues be provided on the BoosterPack to assist user in proper orientation of the BoosterPack.
- If possible, design the BoosterPack so that incorrect mating to a LaunchPad will not damage the BoosterPack
- If stacking of multiple BoosterPacks is desired, pay special attention to the pin assignments of each BoosterPack to ensure there are no conflicts with pin resources.
- 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.
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.
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.
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
- MSP-EXP430G2 Product Folder
- eStore Page
- MSP-EXP430G2 Tool User's Guide
- MSP-EXP430G2 Hardware Design Files // Schematics and PCB Design files developed using EAGLE
- Out-of-box Demo firmware
- MSP-EXP430G2 LaunchPad Driver // Note that this driver is pre-installed when you install CCS or IAR.
- Target MCU MSP430G2xx Family User's Guide // Provides detailed information on the MSP430G2xx series of microcontrollers. Provides information on all of the peripherals integrated into the MCU & how to use them.
- Target MCU MSP430G2xx3 Datasheet // This device is included with the MSP-EXP430G2 LaunchPad kit. This document includes physical & electrical characteristics of the microcontroller.
- Target MCU MSP430G2xx2 Datasheet // This is the 2nd device included in the MSP-EXP430G2 LaunchPad kit. This document includes physical & electrical characteristics of the microcontroller.
- List of compatible MSP430G2xx microcontroller devices
- Code Examples for each MSP430G2xx peripheral
- More Resources...
C2000 Piccolo LaunchPad
Stellaris® LM4F120 LaunchPad
- Tool Folder: [5]
- Tool User’s Guide: [6]
- Target Device Datasheet: [7]
- Stellaris LM4F120 LaunchPad StellarisWare Software Package: [8]

