CC1352P1 LaunchXL

Overview

The Texas Instruments CC1352P LaunchPad™ (LAUNCHXL-CC1352P1) is a development kit for the SimpleLink™ multi-Standard CC1352P wireless MCU.

See the TI CC1352P LaunchPad Product Page for details.

Hardware

The CC1352P LaunchPad™ development kit features the CC1352P wireless MCU. The board is equipped with two LEDs, two push buttons, antenna switch and BoosterPack connectors for expansion. It also includes an integrated (XDS110) debugger.

The CC1352P wireless MCU has a 48 MHz Arm® Cortex®-M4F SoC and an integrated sub-1GHz and 2.4 GHz transceiver with integrated 20dBm power amplifier (PA) supporting multiple protocols including Bluetooth® Low Energy and IEEE® 802.15.4.

See the TI CC1352P Product Page for additional details.

Supported Features

The cc1352p1_launchxl board supports the hardware features listed below.

on-chip / on-board
Feature integrated in the SoC / present on the board.
2 / 2
Number of instances that are enabled / disabled.
Click on the label to see the first instance of this feature in the board/SoC DTS files.
vnd,foo
Compatible string for the Devicetree binding matching the feature.
Click on the link to view the binding documentation.
cc1352p1_launchxl
/
cc1352p

Type

Location

Description

Compatible

CPU

on-chip

ARM Cortex-M4 CPU1

arm,cortex-m4

ADC

on-chip

TI CC13XX/CC26xx family ADC1

ti,cc13xx-cc26xx-adc

Clock control

on-chip

Generic fixed-rate clock provider1

fixed-clock

Flash controller

on-chip

Texas Instruments CC13xx/CC26xx flash controller1

ti,cc13xx-cc26xx-flash-controller

GPIO & Headers

on-chip

TI SimpleLink CC13xx / CC26xx GPIO1

ti,cc13xx-cc26xx-gpio

on-board

TI BoosterPack GPIO header1

ti,boosterpack-header

I2C

on-chip

TI CC13xx / CC26xx I2C1

ti,cc13xx-cc26xx-i2c

IEEE 802.15.4

on-chip

TI SimpleLink CC13xx / CC26xx IEEE 802.15.4 node1

ti,cc13xx-cc26xx-ieee802154

on-chip

TI SimpleLink CC13xx / CC26xx IEEE 802.15.4 node (sub-GHz)1

ti,cc13xx-cc26xx-ieee802154-subghz

Input

on-board

Group of GPIO-bound input keys1

gpio-keys

Interrupt controller

on-chip

ARMv7-M NVIC (Nested Vectored Interrupt Controller)1

arm,v7m-nvic

LED

on-board

Group of GPIO-controlled LEDs1

gpio-leds

Miscellaneous

on-board

Skyworks SKY13317 pHEMT GaAs SP3T Antenna Switch1

skyworks,sky13317

MTD

on-chip

Flash node1

soc-nv-flash

on-chip

Fixed partitions of a flash (or other non-volatile storage) memory1

fixed-partitions

Networking

on-chip

TI SimpleLink CC13xx / CC26xx radio1

ti,cc13xx-cc26xx-radio

Pin control

on-chip

TI SimpleLink CC13xx / CC26xx Pin Controller1

ti,cc13xx-cc26xx-pinctrl

PWM

on-chip

TI SimpleLink CC13xx/CC26xx GPT timer PWM Controller Node4

ti,cc13xx-cc26xx-timer-pwm

RNG

on-chip

TI SimpleLink CC13xx / CC26xx TRNG (True Random Number Generator)1

ti,cc13xx-cc26xx-trng

RTC

on-chip

TI SimpleLink CC13xx/CC26xx RTC1

ti,cc13xx-cc26xx-rtc-timer

Serial controller

on-chip

TI SimpleLink CC13xx / CC26xx UART node1 1

ti,cc13xx-cc26xx-uart

SPI

on-chip

TI SimpleLink CC13xx / CC26xx SPI node1 1

ti,cc13xx-cc26xx-spi

SRAM

on-chip

Generic on-chip SRAM description1

mmio-sram

Timer

on-chip

ARMv7-M System Tick1

arm,armv7m-systick

on-chip

TI SimpleLink CC13xx/CC26xx Timer Node4

ti,cc13xx-cc26xx-timer

Watchdog

on-chip

TI CC13xx/CC26xx watchdog1

ti,cc13xx-cc26xx-watchdog

Connections and IOs

All I/O signals are accessible from the BoosterPack connectors. Pin function aligns with the LaunchPad standard.

Pin

Function

Usage

DIO3

GPIO

DIO4

I2C_MSSCL

I2C SCL

DIO5

I2C_MSSDA

I2C SDA

DIO6

GPIO

Red LED

DIO7

GPIO

Green LED

DIO8

SSI0_RX

SPI MISO

DIO9

SSI0_TX

SPI MOSI

DIO10

SSI0_CLK

SPI CLK

DIO11

SSIO_CS

SPI CS

DIO12

UART0_RX

UART RXD

DIO13

UART0_TX

UART TXD

DIO14

GPIO

Button 2

DIO15

GPIO

Button 1

DIO16

JTAG TDO

DIO17

JTAG TDI

DIO18

UART0_RTS

UART RTS / JTAG SWO

DIO19

UART0_CTS

UART CTS

DIO20

GPIO

Flash CS

DIO21

GPIO

DIO22

GPIO

DIO23

AUX_IO

A0

DIO24

AUX_IO

A1

DIO25

AUX_IO

A2

DIO26

AUX_IO

A3

DIO27

AUX_IO

A4

DIO28

AUX_IO

A5

DIO29

AUX_IO

A6

DIO30

AUX_IO

A7

Programming and Debugging

Before flashing or debugging ensure the RESET, TMS, TCK, TDO, and TDI jumpers are in place. Also place jumpers on the TXD and RXD signals for a serial console using the XDS110 application serial port.

Prerequisites:

  1. Ensure the XDS-110 emulation firmware on the board is updated.

    Download and install the latest XDS-110 emulation package.

    Follow these xds110 firmware update directions

    Note that the emulation package install may place the xdsdfu utility in <install_dir>/ccs_base/common/uscif/xds110/.

  2. Install OpenOCD

    You can obtain OpenOCD by following these installing the latest Zephyr SDK instructions.

    After the installation, add the directory containing the OpenOCD executable to your environment’s PATH variable. For example, use this command in Linux:

    export PATH=$ZEPHYR_SDK_INSTALL_DIR/sysroots/x86_64-pokysdk-linux/usr/bin/openocd:$PATH
    

Flashing

Applications for the CC1352P LaunchPad board configuration can be built and flashed in the usual way (see Building an Application and Run an Application for more details).

Here is an example for the Hello World application.

First, run your favorite terminal program to listen for output.

$ screen <tty_device> 115200

Replace <tty_device> with the port where the XDS110 application serial device can be found. For example, /dev/ttyACM0.

Then build and flash the application in the usual way.

# From the root of the zephyr repository
west build -b cc1352p1_launchxl samples/hello_world
west flash

Debugging

You can debug an application in the usual way. Here is an example for the Hello World application.

# From the root of the zephyr repository
west build -b cc1352p1_launchxl samples/hello_world
west debug

Bootloader

The ROM bootloader on CC13x2 and CC26x2 devices is enabled by default. The bootloader will start if there is no valid application image in flash or the so-called backdoor is enabled (via option CONFIG_CC13X2_CC26X2_BOOTLOADER_BACKDOOR_ENABLE) and BTN-1 is held down during reset. See the bootloader documentation in chapter 10 of the TI CC13x2 / CC26x2 Technical Reference Manual for additional information.

Power Management and UART

System and device power management are supported on this platform, and can be enabled via the standard Kconfig options in Zephyr, such as CONFIG_PM, CONFIG_PM_DEVICE.

When system power management is turned on (CONFIG_PM=y), sleep state 2 (standby mode) is allowed, and polling is used to retrieve input by calling uart_poll_in(), it is possible for characters to be missed if the system enters standby mode between calls to uart_poll_in(). This is because the UART is inactive while the system is in standby mode. The workaround is to disable sleep state 2 while polling:

pm_policy_state_lock_get(PM_STATE_STANDBY, PM_ALL_SUBSTATES);
<code that calls uart_poll_in() and expects input at any point in time>
pm_policy_state_lock_put(PM_STATE_STANDBY, PM_ALL_SUBSTATES);

References

CC1352P1 LaunchPad Quick Start Guide:

http://www.ti.com/lit/pdf/swru525