CC264BPA-UDOG User Guide r06

Download as pdf or txt
Download as pdf or txt
You are on page 1of 17

!

CC264BPA-UDOG
Dongle

User Guide

Revision 06
!

Dongle Overview

CC264BPA-UDOG dongle is a unique hardware that allows customers to build


their own BLE firmware and provide a data and control path to their firmware via
USB. This solution enables customers to expand BLE functionality to any USB
host systems without the constraint of what BLE hardware such USB host
systems must support.

CC264BPA-UDOG dongle is built upon the TI CC2640 SimpleLink BLE Wireless


SoC and is fully compatible with all the supported development tools. For the
data and control path between the USB host and the BLE SoC, this dongle uses
a Silabs CP2110 HID to UART bridging device. CP2110 provides two crucial
features which set apart from other products:

1. HID interface to USB


2. GPIO control in addition to UART bridging

Because of these features, the dongle can enjoy the widest USB host
compatibility and in-field firmware upgrade via USB.

SUBJECT TO CHANGE WITHOUT PRIOR NOTICE © 2017 - GT-TRONICS REV 05 3/13/18


!2
!

Dongle Features
• Simple BLE to USB connection – add BLE to an existing product with USB
o TI CC2640 SimpleLink BLE Wireless SoC for BLE Central or
Peripheral role applications
o Silabs CP2110 for bridging CC2640’s UART and other I/Os to USB-
HID
o user configurable I/O pins between CC2640 and CP2110
• ARM-Cortex 10-pins JTAG connector for CC2640 debugging and firmware
flashing
• CC2640 firmware flashing via USB
o supporting TI CC26xx Serial Bootloader protocol
• Additional resources
• CP2110 Single-Chip HID USB To UART Bridge (Data Sheet)
• TI CC2640 SimpleLink Bluetooth Wireless SoC (Data Sheet)

SUBJECT TO CHANGE WITHOUT PRIOR NOTICE © 2017 - GT-TRONICS REV 05 3/13/18


!3
!

Hardware Block Diagram

!
Figure 1 - CC264BPA-UDOG Functional Block Diagram

SUBJECT TO CHANGE WITHOUT PRIOR NOTICE © 2017 - GT-TRONICS REV 05 3/13/18


!4
!

Preparing CC2640 Firmware Build (for CCS)

TI CC2640 SoC comes in different packages with different antenna design


options and I/O mapping. To build a proper firmware for this dongle, you need to
prepare the correct board files. Follow the steps below for the preparation.

The following preparation is targeted for CC2640 R2 silicon (chip marking is


“CC2640R2F”). If your dongle has the early version of CC2640 silicon (chip
marking is “CC2640F128”), please refer to revision 04 of this document for
preparing your firmware with the older SDKs.

Using SimpleLink CC2640R2 SDK 1.40 with CCS 7.x


1. Install the SDK and Code Composer Studio (CCS) v7.
2. The default installation project directory for this SDK is “C:\ti\
simplelink_cc2640r2_sdk_1_40_00_45”. Apply the file
simplelink_cc2640r2_sdk_1_40_00_45_patch_<timestamp>.ra
r to the simplelink_cc2640r2_sdk_1_40_00_45 directory
accordingly. The patch contains new/modified files needed to support the
firmware build for this dongle and other GT-tronics hardware. Please note:
if you have already done this step for another hardware (e.g. TIEM), you
can skip it as long as the patch file that has already been applied is the
same or newer – compare the timestamps of the patch files.
3. Replace CC2640R2_LAUNCHXL or equivalent with CC264BPA_UDOG_R2 in
Predefines of your project (Build->ARM Compiler->Predefined Symbols).
4. Add the following new defines in Predefines of your project:
• CC264_R2
• SET_CCFG_MODE_CONF_XOSC_CAP_MOD=0
• SET_CCFG_MODE_CONF_XOSC_CAPARRAY_DELTA=0x0A
• Board_UART_CTS=PIN_UNASSIGNED
• Board_UART_RTS=PIN_UNASSIGNED
5. If your project includes board_key.c, make sure you add
defined(CC264BPA_UDOG_R2) along with

SUBJECT TO CHANGE WITHOUT PRIOR NOTICE © 2017 - GT-TRONICS REV 05 3/13/18


!5
!

defined(CC2650_LAUNCHXL).
6. If your project uses the TI’s Display subsystem, make sure you open the
display with Display_Type_UART. CC264BPA-UDOG dongle supports
only UART as the display sink.
7. After the above alterations, rebuild your project to take effect.

Alternatively, included in the patch is a TI’s simple_peripheral project (CCS v7)


file built for this dongle. The location of the project is in “ C:\ti\
simplelink_cc2640r2_sdk_1_40_00_45\examples\rtos\CC264BPA_U
DOG_R2\simple_peripheral”. You can modify this project to build your new
application firmware.

For more details in porting other projects for this dongle, please refer to the
document Building Firmware For CC264BPA r02 (or later version) in the same
user guide package.

SUBJECT TO CHANGE WITHOUT PRIOR NOTICE © 2017 - GT-TRONICS REV 05 3/13/18


!6
!

Flashing Firmware

There are two options to flash the CC2640 firmware in this dongle:

1. Using the supported JTAG debugger and Smart RF Flash Programmer 2


software provided by TI
2. Using the Serial Bootloader Firmware Flasher software provided by GT-
tronics.

Using JTAG Method

The dongle has a standard ARM-Cortex 10-pins JTAG connector for firmware
flashing and debugging. Please refer to these resources for details:
• XDS110 JTAG Debug Probe
• SimpleLink SensorTag Debugger DevPack
• SmartRF06 and User Guide
• SmartRF Flash Programmer 2

Using Serial Bootloader Method

Each CC2640 device comes with bootloader in its ROM that can be activated for
firmware flashing. However, in order to do that, there are some preconditions:

1. The internal flash pages cannot be locked out for serial bootloader access.
2. The previous and current firmware in the dongle must support serial
bootloader download the way this dongle requires.

First, follow the steps below to enable serial bootloader in the firmware.

SUBJECT TO CHANGE WITHOUT PRIOR NOTICE © 2017 - GT-TRONICS REV 05 3/13/18


!7
!

1. Added the following predefines in Project Properties (Build->ARM


Compiler->Predefined Symbols):
a. SET_CCFG_BL_CONFIG_BOOTLOADER_ENABLE=0xC5
b. SET_CCFG_BL_CONFIG_BL_LEVEL=0x0
c. SET_CCFG_BL_CONFIG_BL_PIN_NUMBER=0x6
d. SET_CCFG_BL_CONFIG_BL_ENABLE=0xC5

Second, follow the steps below to flash the new firmware to the target:

1. Unzip the Serial Bootloader Firmware Flasher software included in this


user guide package. Currently, the software supports only Microsoft
Windows 7/8/10.
2. In the unzipped directory, edit the “config.json” file. Replace the bin file
path name in line 9 with your firmware binary file.
3. Open a DOS command window and cd to the unzipped directory.
4. Run sblAppEx.exe
5. Identify the dongle device if multiple devices exist.
6. Enter the index of the target device.

SUBJECT TO CHANGE WITHOUT PRIOR NOTICE © 2017 - GT-TRONICS REV 05 3/13/18


!8
!

!
The Serial Bootloader Firmware Flasher software is not currently open source.
Please contact GT-tronics if you need to incorporate such firmware flashing
capability into your products.

SUBJECT TO CHANGE WITHOUT PRIOR NOTICE © 2017 - GT-TRONICS REV 05 3/13/18


!9
!

Configuring I/Os

In addition to USB to UART communication, this dongle allows host applications


to control I/Os via USB. The following table describes the pin mapping and its
function between CP2110 and CC2640.

CC2640
CP2110 CP2110 CP2110 CC2640 CC2640
UART
Pin Default Changable Pin Firmware
Bootloader

RX DIO_0 No DIO_0 UART_TX UART_TX

TX DIO_1 No DIO_1 UART_RX UART_RX

Rx Toggle Firmware
GPIO_5 Yes DIO_2 GPIO
(Output) Determined
Firmware
GPIO_7 Input Yes DIO_3 GPIO
Determined
UART_RTS/
GPIO_2 CTS Yes DIO_4 UART_CTS
GPIO
UART_CTS/
GPIO_1 RTS Yes DIO_5 UART_RTS
GPIO
Yes But Flashing
GPIO_9 Output DIO_6 GPIO
Forbidden Enable
Tx Toggle
GPIO_4 Yes DIO_7 GPIO Unassigned
(Output)
RS485
GPIO_3 Yes DIO_8 GPIO Unassigned
(Output)
Yes But
GPIO_8 Output RESET Reset Reset
Forbidden
LED Yes But
GPIO_6
(Output) Forbidden

SUBJECT TO CHANGE WITHOUT PRIOR NOTICE © 2017 - GT-TRONICS REV 05 3/13/18


!10
!

The CP2110’s I/Os are one-time configurable for input, output or special
functions. Except TX and RX pins, all the other I/O pins are configurable in
CP2110. However, the default configuration of GPIO_6, GPIO_8, and GPIO_9
pins MUST NOT be changed to maintain the support of serial bootloader
flashing. As a result, only GPIO_1, GPIO_2, GPIO_3, GPIO_4, GPIO_5, and
GPIO_7 (the line with a green block in the table) are configurable by user.

Silabs provides a configuration utility to change the configuration. The utility


program is included in the CP2110 software installation – for Windows, the
executable can be found in “C:
\Silabs\MCU\CP2110_4_SDK\Customization\AN721SW_Windows”.

Please note: CP2110 configuration is one-time only. Once it has changed, the
configuration is hard and stone.

Additional Resources

• CP2110 Configuration Utility Application Note


• CP2110 Data Sheet
• CC2640 Data Sheet
• CC264BPA-UDOG Schematics (in the same user guide package)

SUBJECT TO CHANGE WITHOUT PRIOR NOTICE © 2017 - GT-TRONICS REV 05 3/13/18


!11
!

Developing USB Host Program

CP2110 uses USB-HID to bridge UART to the USB host. Unlike the traditional
USB to UART bridging solutions (eg. FTDI FT231X or Silabs CP2101) that
requires custom virtual COM port driver, CP2110 requires no additional driver
other than the standard USB-HID driver that natively supported by almost any
USB host platform.

To ease the development of the host side app running on the major OSs, Silab
provides a convenient USB-HID wrapper DLL that supports Windows, Mac, and
Linux platform. For other USB host platforms it can build the applications on top
of the USB-HID driver provided by the host platforms.

Addition Resources

• CP2110 Software
• CP2110 HID To UART API Specification (For Windows/Mac/Linux OSs)
• CP2110 HID Interface Specification (For Other USB Host Platform)

Sample Applications

There are two sample applications that can be referenced for building host side
applications.

1. HidUartExample is simple terminal program with source code provided by


Silab which can send and receive data from CP2110’s UART and has full I/
O control. You can find HidUartExample executable and its source code
after installing the CP2110 software (e.g. for Windows, the executeable is
in “C:\Silabs\MCU\CP2110_4_SDK\Software\HidUartExample\Windows”).
This sample application has verions supporting Windows, MacOS, and
Linux.

SUBJECT TO CHANGE WITHOUT PRIOR NOTICE © 2017 - GT-TRONICS REV 05 3/13/18


!12
!

!
2. DxTermie is a Windows open sourced terminal program designed to work
with this dongle. This program is provided by GT-tronics and is based on
the Termie open source project which has better terminal functions and
features. You can find the binary in the user guide package. The source
code is hosted in github: https://github.com/GT-tronics/DxTermie.

SUBJECT TO CHANGE WITHOUT PRIOR NOTICE © 2017 - GT-TRONICS REV 05 3/13/18


!13
!

SUBJECT TO CHANGE WITHOUT PRIOR NOTICE © 2017 - GT-TRONICS REV 05 3/13/18


!14
!

Using with DataExchanger Firmware

DataExchanger-AT is an embedded application running on CC264BPA modules


that enables customers to incorporate Bluetooth connectivity for their applications
and products. DataExchanger-AT features a serial communication interface to
connect to customers’ host MCU for data transfer and command line. Through its
command line, DataExchanger-AT also can control local peripherals via other
interfaces where sensors, actuators, and lights, etc, can be hooked up to. The
key advantage of using DataExchanger-AT is its substantial saving in design
effort that allows fast time-to-market but without adding much cost.
DataExchanger-AT is ideal to be used in applications and products that require
connection to smartphones, PCs, standalone wireless consoles, and IoT
gateways.

CC264BPA-UDOG dongle is one of the key components in the DataExchanger-


AT portfolios to make the customer’s BLE enabled device forming a cohesive
product together with PC, standalone wireless console and/or IoT gateway. The
dongle is preloaded with a central role version of DataExchanger-AT Firmware at
factory. Just like the DataExchanger App or mobile devices, the dongle with this
firmware will allow the USB host applications to use the same API to control the
BLE enabled devices.

For further details about DataExchanger-AT, please contact the GT-tronics for
more information.

Additional Resources
• DataExchanger-AT User Guides and Command Reference.

SUBJECT TO CHANGE WITHOUT PRIOR NOTICE © 2017 - GT-TRONICS REV 05 3/13/18


!15
!

Ordering Information

Part Number FW Code Preloaded Description

Please check with GT-


CC264BPA-UDOG tronics Integrated PCB antenna, CC2640-R2F SoC
distributors

Revision History

Rev. Date Description By


01 2017-04-06 Initial release for Board v2.0 ML
2017-05-01 Included tools and sample project in the user guide
02 ML
3/13/18 package
Updated firmware preparation section for BLE SDK
03 2017-05-25 ML
2.2.1

04 2017-06-26 Minor updates ML

Updated and cleaned up the firmware preparation


05 2017-09-16 ML
section for SimpleLink CC2640R2 SDK 1.40

06 2018-03-13 Corrected the predefines for UART bootloader ML

SUBJECT TO CHANGE WITHOUT PRIOR NOTICE © 2017 - GT-TRONICS REV 05 3/13/18


!16
!

DISCLAIMER

The information disclosed to you hereinabove (the “Materials”) is provided solely for the
selection and use of GT-tronics industrial, evaluation, and do-it-yourself products. To
the maximum extent permitted by applicable law: (1) Materials are made available "AS
IS" and with all faults, GT-tronics hereby DISCLAIMS ALL WARRANTIES AND
CONDITIONS, EXPRESS, IMPLIED, OR STATUTORY, INCLUDING BUT NOT
LIMITED TO WARRANTIES OF MERCHANTABILITY, NON-INFRINGEMENT, OR
FITNESS FOR ANY PARTICULAR PURPOSE; and (2) GT-tronics shall not be liable
(whether in contract or tort, including negligence, or under any other theory of liability)
for any loss or damage of any kind or nature related to, arising under, or in connection
with, the Materials (including your use of the Materials), including for any direct, indirect,
special, incidental, or consequential loss or damage (including loss of data, profits,
goodwill, or any type of loss or damage suffered as a result of any action brought by a
third party) even if such damage or loss was reasonably foreseeable or GT-tronics had
been advised of the possibility of the same. GT-tronics assumes no obligation to correct
any errors contained in the Materials or to notify you of updates to the Materials or to
product specifications. You may not reproduce, modify, distribute, or publicly display the
Materials without prior written consent. Certain products are subject to the terms and
conditions of GT-tronics’s limited warranty, please refer to GT-tronics’s Terms of Sale
which can be viewed at http://www.gt-tronics.com/terms.htm GT-tronics industrial,
evaluation, and do-it-yourself products are not designed or intended to be fail-safe or for
use in any application requiring fail-safe performance; you assume sole risk and liability
for use of GT-tronics products in such critical applications, please refer to GT-tronics’s
Terms of Sale which can be viewed at http://www.gt-tronics.com/terms.htm

SmartRF, SimpleLink, SensorTag and Texas Instruments are trademark and registered
trademark of Texas Instruments Incorporated in the United States and other countries.
All other trademarks are the property of their respective owners.

SUBJECT TO CHANGE WITHOUT PRIOR NOTICE © 2017 - GT-TRONICS REV 05 3/13/18


!17

You might also like