Cypress Semiconductor WAP2001 EZ-BLEPRoC Module User Manual

Add to My manuals
59 Pages

advertisement

Cypress Semiconductor WAP2001 EZ-BLEPRoC Module User Manual | Manualzz

AN96841

Getting Started With EZ-BLE™ PRoC™ Module

Authors: David Solda

Associated Project: Refer to AN94020

Associated Part Family: CYBLE-022001-00

Software Version: PSoC Creator™ 3.1 SP2 and higher

Related Application Notes: For a complete list of the application notes, click here.

To get the latest version of this application note, or the associated project file, please visit http://www.cypress.com/go/AN96841 .

AN96841 introduces you to the EZ-BLE™ PRoC™ Module, a fully qualified and certified Bluetooth Low Energy (BLE) module. The EZ-BLE PRoC Module is a complete BLE solution, integrating a BLE radio system, two crystals, chip antenna and passive components required for BLE operation. This application note helps you explore the EZ-BLE PRoC

Module architecture and development tools and shows you how to create your first project using PSoC Creator™, the development tool for the EZ-BLE PRoC Module. This application note also guides you to more resources to accelerate in-depth learning about the Cypress BLE module solution.

Contents

Introduction ....................................................................... 2

More Information ............................................................... 2

EZ-BLE PRoC Module Overview ...................................... 3

EZ-BLE PRoC Module Mechanical Dimensions ........... 3

EZ-BLE PRoC Module Pinout and Functionality .......... 4

PRoC BLE Silicon Features ......................................... 7

Host Recommended PCB Layout ................................. 7

Bluetooth Low Energy Overview ....................................... 8

Development Tools ......................................................... 12

PSoC Creator Software .............................................. 12

Bluetooth Low Energy Component Software .............. 13

CySmart PC App ........................................................ 13

CySmart Mobile App .................................................. 14

Development Kits and Evaluation Boards ....................... 14

Learning Resources ........................................................ 21

EZ-BLE PRoC Module Datasheet .............................. 21

PRoC BLE Device Datasheet ..................................... 21

PRoC BLE Technical Reference Manual.................... 21

Learning PSoC Creator .............................................. 21

Application Notes ....................................................... 21

Design Guide .............................................................. 21

Technical Support ...................................................... 21

My First EZ-BLE PRoC Module Design ........................... 22

About the Design ........................................................ 22

Create the Design ...................................................... 23

Write the Application Code ......................................... 35

Program the Device.................................................... 43

My First EZ-BLE PRoC Module Design – Shortcut .... 44

Test Your Design........................................................ 46

Summary ......................................................................... 51

Related Application Notes ............................................... 51

Appendix A: EZ-BLE PRoC Module Features ................. 52

Appendix B: Cypress Terms of Art .................................. 53

Appendix C: Code Examples .......................................... 54

Worldwide Sales and Design Support ............................. 59

www.cypress.com

Document No.: 001-96841 Rev. ** 1

Introduction

Bluetooth Low Energy (BLE) is an ultra-low-power wireless standard defined by the Bluetooth Special

Interest Group (SIG) for low-power, short-range communication. It features a physical layer, protocol stack, and profile architecture, all designed and optimized for the lowest power consumption. BLE operates in the 2.4-GHz

ISM band, with a data rate of 1 Mbps.

BLE is used in a wide range of applications. The use of

BLE in these applications also varies widely in production volume, from very low- to high-volume end products. As such, fully qualified, certified, BLE modules have fast become the design preference. The use of modules removes time consuming and costly qualification/certification processes.

The Cypress EZ-BLE PRoC Module is a fully integrated, qualified and certified, programmable system that integrates 32-kHz and 24-MHz crystal oscillators, passive components, on-board chip antenna, and Cypress’s

PRoC™ BLE chip (BLE radio, programmable analog and digital peripherals, memory, and an ARM

®

Cortex

®

-M0 microcontroller) on a small 10 mm × 10 mm × 1.8 mm module.

The EZ-BLE PRoC Module enables a quick time-to-market and eliminates costly certification and qualification processes, offering an effective alternative to completing a

BLE system design from ground up. In addition to reducing the cycle time, certification and qualification expenses, the programmable peripherals and GPIOs allow great flexibility using PSoC Creator IDE, the schematicbased design tool for designing applications with EZ-BLE

PRoC Module, and a speedy time to market.

The BLE stack library is integrated with PSoC Creator and is free-of-cost. It can be easily configured using a simple graphical user interface, allowing you to jumpstart your

BLE design in minutes.

The EZ-BLE PRoC Module offers a best-in-class current consumption of 150 nA while retaining the SRAM contents and the ability to wake up from an interrupt. The EZ-BLE

PRoC Module consumes only 60 nA while maintaining the wakeup capability in its nonretention power mode. The capacitive touch-sensing feature in the EZ-BLE Module, known as CapSense ® , offers an unprecedented signal-tonoise ratio, best-in-class waterproofing, and a wide variety of sensor types such as buttons, sliders, and proximity sensors that are gaining increased popularity in wearable electronic devices such as activity monitors, health, and fitness equipment.

If you are a first-time user of Cypress’s PSoC or PRoC family of products, it is recommended that you read

Appendix B for a list of commonly used terms.

Getting Started With EZ-BLE™ PRoC™ Module

More Information

Cypress provides a wealth of data at www.cypress.com to help you accelerate learning on the EZ-BLE PRoC

Module, as well as Cypress’s PSoC and PRoC family of silicon devices. If you are a first-time user of Cypress’s

PSoC or PRoC family of products, it is recommended that

you read Appendix B: Cypress Terms of Art for a list of

commonly used terms.

Following is an abbreviated list of resources for the

EZ-BLE PRoC Module:

 Datasheets : Describe and provide electrical specifications for the EZ-BLE PRoC Module .

Application Notes and Code Examples : Covers a broad range of topics, from basic to advanced level.

Many of the application notes include code examples.

PSoC Creator provides additional code examples—

see Appendix C: Code Examples .

 Technical Reference Manuals (TRMs) : Provide detailed descriptions of the architecture and registers in each PSoC 4 BLE device family.

 CapSense Design Guide : Learn how to design capacitive touch-sensing applications with the EZ-BLE

PRoC Module.

 Development Tools

 CY8CKIT-042-BLE Bluetooth Low Energy (BLE)

Pioneer Kit is an easy-to-use and inexpensive development platform for BLE. This kit includes connectors for Arduino™ compatible shields and the EZ-BLE PRoC Module Evaluation daughter board.

 CySmart BLE Host Emulation Tool for Windows , iOS , and Android is an easy-to-use GUI that enables you to test and debug your BLE

Peripheral applications.

See

Development Kits and Evaluation Boards for an

overview of available for the EZ-BLE PRoC Module.

Technical Support

 Frequently Asked Questions (FAQs) : Learn more about our BLE ecosystem

 BLE Forum : See if your question is already answered by fellow developers on the PSoC 4

BLE and PRoC BLE forums.

 Cypress support: Still no luck? Visit our support page and create a technical support case or contact a local sales representative . If you are in the United States, you can talk to our technical support team by calling our toll-free number: +1-

800-541-4736. Select option 8 at the prompt. www.cypress.com

Document No.: 001-96841 Rev. ** 2

Getting Started With EZ-BLE™ PRoC™ Module

EZ-BLE PRoC Module Overview

The EZ-BLE PRoC Module (CYBLE-022001-00) is an integrated, fully certified BLE solution, which allows for rapid development and deployment of your BLE-enabled product. This section will provide an outline of the mechanical structure of the EZ-BLE PRoC Module. This information is necessary for customers designing their own PCB layout for this module.

The EZ-BLE PRoC Module ships with the necessary components required to achieve full BLE functionality. It includes:

 PCB substrate: 10 mm × 10 mm × 0.5 mm

Cypress PRoC BLE chip (refer to PRoC BLE Silicon Features for information on the Cypress BLE chip)

Crystal oscillators

 32.768 kHz watch crystal oscillator (WCO)

 24.0 MHz internal main oscillator (IMO)

Chip antenna

 Passives (resistor, capacitor, inductor)

Metal RF Shield

EZ-BLE PRoC Module Mechanical Dimensions

Figure 1 shows a physical picture of the EZ-BLE PRoC module.

Figure 1. EZ-BLE PRoC Module Top View (with and without Shield) and Side View

Shield

Shield Outline

H = 1.10 mm

10.0 mm

Chip Antenna

10.0 mm

1.3 mm

0.5 mm

For more details on the module dimensions, external component connections, and module placement recommendations, see the EZ-BLE PRoC Module datasheet specification . www.cypress.com

Document No.: 001-96841 Rev. ** 3

Getting Started With EZ-BLE™ PRoC™ Module

EZ-BLE PRoC Module Pinout and Functionality

The EZ-BLE PRoC Module is designed to mount as a component on an end product PCB. Only a portion of the available I/O of the PRoC BLE silicon device are exposed on the CYBLE-022001-00 module in order to minimize the module footprint size.

The EZ-BLE PRoC Module contains 21 connections on the bottom side of the module. Figure 2 and Figure 3 detail the bottom

side connections available on the EZ-BLE PRoC Module.

Figure 2. EZ-BLE PRoC Module Bottom View (Actual Unit - Seen Through Top)

Pad 21

Pad 1

Figure 3. EZ-BLE PRoC Module Bottom View (Diagram - Seen Through Top) www.cypress.com

Document No.: 001-96841 Rev. ** 4

Getting Started With EZ-BLE™ PRoC™ Module

The connection pad spacing is listed in Table 1 .

Table 1. EZ-BLE PRoC Module Connection Pad Spacing (Center-to-Center)

Pad X Pad Y

Pad Pitch

(Pad X - Pad Y) Comments

Bottom-Left Corner

1

2

3

4

Top-Left Corner

6

7

8

9

10

11

12

13

14

15

16

Top-Right Corner

18

9

10

11

12

6

7

8

13

14

15

16

17

18

19

1

2

3

4

5

1.64 mm

0.76 mm

0.76 mm

0.76 mm

0.76 mm

0.81 mm

0.76 mm

0.76 mm

0.76 mm

0.76 mm

0.76 mm

0.76 mm

0.76 mm

0.76 mm

0.76 mm

0.76 mm

0.76 mm

1.50 mm

0.76 mm

Distance from bottom left corner to Pad 1 center

Distance from Pad 1 center to Pad 2 center

Distance from Pad 2 center to Pad 3 center

Distance from Pad 3 center to Pad 4 center

Distance from Pad 4 center to Pad 5 center

Distance from top left corner to Pad 6 center

Distance from Pad 6 center to Pad 7 center

Distance from Pad 7 center to Pad 8 center

Distance from Pad 8 center to Pad 9 center

Distance from Pad 9 center to Pad 10 center

Distance from Pad 10 center to Pad 11 center

Distance from Pad 11 center to Pad 12 center

Distance from Pad 12 center to Pad 13 center

Distance from Pad 13 center to Pad 14 center

Distance from Pad 14 center to Pad 15 center

Distance from Pad 15 center to Pad 16 center

Distance from Pad 16 center to Pad 17 center

Distance from top right corner to Pad 18 center

Distance from Pad 18 center to Pad 19 center

19 20 0.76 mm Distance from Pad 19 center to Pad 20 center

20 21 0.76 mm Distance from Pad 20 center to Pad 21 center

A list of the available I/Os and supported functionality for each I/O is shown in Table 2 .

Table 2. EZ-BLE PRoC Module Available Connections and Functionality

4

5

1

2

3

Module Solder Pad

Number

Silicon

Port Pin

UART SPI I2C TCPWM CapSense

Functionality

WCO

Out

EXT_CLK/

ECO_OUT EXTPA_EN

GND

P4[1]

P5[1]

P5[0]

VDDR

Ground Connection

CTS MISO

TX

RX

Yes

SCLK SCL Yes

SS SDA Yes

Sensor/C

Sensor

Sensor

Radio Power Supply 1.9V to 5.5V

TANK

Yes

Yes

SWD GPIO

Yes

Yes

Yes www.cypress.com

Document No.: 001-96841 Rev. ** 5

Getting Started With EZ-BLE™ PRoC™ Module

Module Solder Pad

Number

Silicon

Port Pin

UART SPI I2C TCPWM CapSense

Functionality

WCO

Out

EXT_CLK/

ECO_OUT EXTPA_EN SWD GPIO

6

7

P1[6]

P0[7]

RTS SS

CTS SCLK

Yes

Yes

Sensor

Sensor

Yes

SWDCLK 1 Yes

8 P0[4] RX MOSI SDA Yes Sensor Yes Yes

9 P0[5] TX MISO SCL Yes Sensor Yes

10 GND Ground Connection

11

12

P0[6]

P1[7]

RTS SS

CTS SCLK

Yes

Yes

Sensor

Sensor

SWDIO 1 Yes

Yes

13 VDD Digital Power Supply Input 1.71 to 5.5V

14 XRES External Reset Hardware Connection Input

15 P3[5] TX SCL Yes Sensor Yes

16 P3[4] RX SDA Yes Sensor Yes

17

P3[7] CTS MISO Yes Sensor Yes Yes

18 P1[4] RX MOSI SDA Yes Yes

19 P1[5] TX MISO SCL Yes Yes

20 P3[6] RTS Yes Sensor Yes

21 P4[0] RTS MOSI Yes C

MOD

Yes

1 used for programming without the need to reconfigure the device I/O.

SDWCLK and SWDIO connections can be multiplexed as the functional options listed in each of the respective rows and can be

Low Pow er M ode s

EZ-BLE PRoC Module supports the following five power modes as illustrated in Figure 4 :

Active mode: This is the primary mode of operation. In this mode, all peripherals are available.

Sleep mode: In this mode, the CPU is in sleep mode, SRAM is in retention, and all the peripherals are available. Any interrupt wakes up the CPU and returns the system to Active mode.

Deep-Sleep mode: In this mode, the high-frequency clock (IMO) and all high-speed peripherals are off. The WDT, LCD,

I2C/SPI, link layer, and low-frequency clock (32-kHz ILO) are available. Interrupts from GPIO, WDT, or SCBs can cause a wakeup. The current consumption in this mode is 1.3 µA for all PRoC BLE devices in the family.

Hibernate mode: This power mode provides a best-in-class current consumption of 150 nA while retaining SRAM, programmable logic, and the ability to wake up from an interrupt generated by a GPIO.

Stop mode: This power mode retains the GPIO states. Wakeup is possible by using the external reset (XRES) pin on the module. The current consumption in this mode is only 60 nA. www.cypress.com

Document No.: 001-96841 Rev. ** 6

Getting Started With EZ-BLE™ PRoC™ Module

Figure 4: Power Modes

Power Mode

Deep Sleep

Hibernate

Stop

Current

Consumption

Active 2.2 mA @ 6 MHz

Sleep 1.3 mA

1.3 uA

150 nA

60 nA

Code

Execution

Yes

No

No

No

No

Digital

Peripherals

Available

All

I 2

All

WDT, LCD,

C/SPI, Link

Layer

-

No

No

Analog

Peripherals

Available

All

All

POR, BOD

POR, BOD

No

Clock

Sources

Available

All

All

WCO,

32 kHz ILO

No

No

Wake Up

Sources

-

Any interrupt source

Wake

-

0

-

Time

Up

GPIO, WDT, SCB 25 us

GPIO

XRES

2 ms

2 ms

De vice Se curi t y

The EZ-BLE PRoC Module provides a number of options for the protection of flash memory from unauthorized access or copying. Each row of flash has a single protection bit; these bits are stored in a supervisory flash row.

PRoC BLE Silicon Features

The BLE device used on the EZ-BLE PRoC Module is the Cypress PRoC BLE. For additional details on this device, refer to the PRoC BLE device datasheet .

Host Recommended PCB Layout

The recommended host PCB layout pattern is shown in Figure 5 . Dimensions shown are in mm.

Figure 5. Host Board Recommended PCB Layout Pattern

Note that the pad length shown includes overhang of the pad beyond the module outline. The pad length to the edge of the module is 0.71 mm. www.cypress.com

Document No.: 001-96841 Rev. ** 7

Getting Started With EZ-BLE™ PRoC™ Module

Bluetooth Low Energy Overview

The Bluetooth SIG defines Bluetooth 4.1, also known as Bluetooth Smart or Bluetooth Low Energy as the lowest-power

wireless standard operating in the 2.4-GHz ISM band. Figure 6 summarizes the BLE protocol stack architecture.

The following sections briefly describe the BLE stack layers. For a detailed architecture description, see the Bluetooth 4.1 specification or the training videos on the Bluetooth Developer website. If you are familiar with the Bluetooth BLE stack, you

can skip these sections. Figure 10

shows the system design for a heart rate monitoring application.

Figure 6. BLE Architecture

Applications

Generic Access Profile (GAP)

Generic Attribute Profile (GATT)

Attribute Protocol (ATT) Security Manager (SM)

Host

Logical Link Control and Adaption Protocol (L2CAP)

Host Control Interface (HCI)

Link Layer (LL)

Controller

Ph ys ical La ye r (PH Y)

Physical Layer (PHY)

The physical layer transmits or receives the digital data at

1 Mbps using GFSK modulation in the 2.4-GHz ISM band.

The BLE physical layer divides the ISM band into 40 RF channels with a channel spacing of 2 MHz, 37 of which are data channels and 3 are advertisement channels.

Host Cont rol I nte rface (HCI )

HCI is the interface between the host and the controller.

This layer allows the host and the controller to exchange information such as command, data, and events over different transports.

Link La ye r (LL )

The link layer implements various key functionalities that make the BLE protocol robust and low-power. Some of these are the following:

Adaptive Frequency Hopping (AFH) to provide RF interference immunity

24-bit CRC and AES-128-bit encryption for robust and secure data exchange

Logical Li nk Co ntr ol a nd Adap tation

Proto col ( L2C AP)

L2CAP provides protocol multiplexing, segmentation, and reassembly services to upper-layer protocols.

Segmentation and reassembly breaks the packet received from the upper layer into smaller packets that the link layer can transmit, and vice versa. The Bluetooth Low Energy

L2CAP layer supports three protocol channel IDs for ATT,

SM and L2CAP control. Bluetooth 4.1 allows direct data channels through L2CAP (connection-oriented channels) on top of these protocol channels.

Advertising, scanning, creating and maintaining connections to establish a physical link

Establishing fast connections and low duty cycle advertising for low-power operation www.cypress.com

Document No.: 001-96841 Rev. ** 8

Securi t y M anage r (SM )

The SM layer defines the methods used for key distribution to perform encryption and pairing.

 Pairing is the process to enable security features. In this process, two devices are authenticated, the link is encrypted, and then keys are exchanged.

Bonding is the process in which the keys and identity information exchanged during the pairing process are saved within the paired devices. Bonded devices do not have to go through the pairing process again when reconnected.

Att ribute P rotoco l ( ATT )

ATT forms the basis of the BLE communication. This protocol enables the client to find and access attributes on the server. An attribute is the fundamental data-carrying element in BLE, which consists of the following:

Attribute Handle: This is the 16-bit address assigned by the attribute server to allow its client to identify and access an attribute.

Attribute Type: This specifies the type of data stored in an attribute. It is represented by a 128-bit number called a universally unique identifier (UUID).

Bluetooth SIG defines the Bluetooth Base UUID, which is 128 bits long. In this base UUID, typically 16 bits (32 bits for Bluetooth 4.1) are used to identify an attribute type.

The Bluetooth Base UUID is:

0x0000xxxx-0000-1000-8000-00805F9B34FB

The 16-bit UUID of the Heart Rate Service (HRS) is

0x180D, so the complete 128-bit UUID for the HRS is

0x0000180D-0000-1000-8000-00805F9B34FB

 Attribute Value: This is the actual data stored in the attribute.

Attribute Permission: This specifies whether an attribute can be read or written, and the security level required. Attribute permission is set by the higher layer specification and is not discoverable through the attribute protocol.

Figure 7 shows the structure of an attribute with an

example.

Figure 7. Attribute Format and Example

Format

Example

2 bytes 2 bytes

Attribute

Handle

Attribute Type

0x0003

0x2A00

(UUID for

Device Name)

0 to 512 bytes

Attribute Value

“Cypress HRM”

Implementation specific

Attribute

Permission

Read Only, No

Authentication,

No Encryption

Getting Started With EZ-BLE™ PRoC™ Module

Several types of attributes are defined by Bluetooth SIG; some of which are as follows:

 Service: The service attribute defines the function performed by the server. It is a collection of data entities called “characteristics” and can also include other services.

A service can be of two types: primary service or secondary service. A primary service exposes the main functionality of the device while the secondary service provides additional functionality that a primary service encapsulates, but that is not required to be exposed. In a heart rate monitoring device example,

HRS is a primary service and Battery Service (BAS) is a secondary service.

Characteristic: The characteristic attribute exposes the data, and consists of an attribute that holds the value and a descriptor. “Battery level” is an example of a characteristic.

Descriptor: The descriptor is a part of the characteristic declaration, and provides additional information about the characteristic. Representing the battery level in percentage values is an example of characteristic descriptor.

Figure 8 shows the structure of a characteristic.

Figure 8. Characteristic Format and Example

<<Characteristic>>

Value

<<Descriptor>>

<<Descriptor>>

Battery Service

Battery Level

Client Characteristic

Configuration Descriptor

Characteristic

Presentation Format

Attribute Operations: These are accessed using the following five basic methods:

 Read Request: Sent by the client to read an attribute value. For every request, the server sends a response to the client.

 Write Request: Sent by the client to write an attribute value. The sever responds to the client confirming whether the value is written.

 Write Command: Sent by the client to the server to write an attribute value. The server does not send any response for the write command.

 Notification: Sent by the server to the client to notify a new value or a change in value. The client does not send any response for a notification command.

 Indication: A type of notification from the server that is always confirmed by the client. www.cypress.com

Document No.: 001-96841 Rev. ** 9

Figure 10 shows the services and characteristics

implemented in the peripheral.

Gener ic Attr ibute Pr ofi le (G ATT)

GATT defines the ways in which the attributes can be found and used. GATT operates in one of two roles:

GATT client: The device that requests the data.

GATT server: The device that provides the data.

Figure 9

shows the client-server architecture in the GATT layer.

Figure 9. Client-Server Architectures

Client

Requests

Responses

Server

Service

Service

Char.

Char.

Service

Char.

Figure 10 shows an example in which a smartphone is

configured as the GATT client (wants data) and a heart rate sensor that is configured as the GATT server (has data).

Gener ic Acce ss P rofil e (G AP)

The GAP layer provides the device-specific information: device address, device name, and how it can be discovered and connected.

Profile: This specification defines how devices connect to each other to find and use services. It describes the type of application and general expected behavior of that device.

Figure 10 shows an example of a Heart rate

monitor Profile.

Getting Started With EZ-BLE™ PRoC™ Module

The GAP layer operates in one of four roles:

 Broadcaster: This is a non-connectable advertising role that is used to broadcast its data, but cannot form

BLE connections. A typical example of a GAP broadcaster is iBeacon.

Observer: This is a listening role that scans for advertisements. It is capable of connections but cannot initiate one. A typical example of a GAP observer is a packet sniffer.

Peripheral: This is a connectable advertising role that operates as a slave after a connection is established.

For example, a heart-rate sensor reporting the measured heart-rate to a remote device operates as a

GAP peripheral.

Central: This is a GAP role that scans for advertisements and initiates connections. It operates as a master after a connection is established. For example, a mobile device retrieving the heart-rate measurement from a peripheral heart-rate sensor operates as a GAP central.

Figure 10 shows an example where a smartphone in

which the heart rate app operates as a GAP central and the heart-rate sensor operates as a GAP peripheral. www.cypress.com

Document No.: 001-96841 Rev. ** 10

Getting Started With EZ-BLE™ PRoC™ Module

Figure 10. Bluetooth Low Energy System Example

In Figure 10 , the heart rate monitoring device operates as the GAP peripheral and implements the heart rate sensor profile,

while the smartphone receiving the data operates as the GAP central and implements the heart rate collector profile.

n this example, the heart rate sensor profile implements two standard services the heart rate service that comprises three characteristics (the Heart Rate Measurement Characteristic, the Body Sensor Location Characteristic, and the Heart Rate

Control Point Characteristic) and the Device Information Service. At the link layer, heart rate measurement device is the slave and the smartphone is the master www.cypress.com

Document No.: 001-96841 Rev. ** 11

Getting Started With EZ-BLE™ PRoC™ Module

Development Tools

Cypress supports the EZ-BLE PRoC Module with high-quality software tools and development kits. They provide access to a suite of world-class Integrated Design Environments (IDEs). PSoC Creator is a single IDE to develop application code and then build, debug, and deploy an embedded design.

Cypress provides the following software and hardware tools, to get started with a EZ-BLE PRoC Module based design:

1. PSoC Creator IDE

2. Bluetooth Low Energy Component (part of PSoC Creator)

3. CySmart PC application

4. CySmart Android app

5. CySmart iOS app

6. Bluetooth Low Energy Development Kit (CY8CKIT-042)

7. EZ-BLE PRoC EVAL Board (CYBLE-022001-EVAL)

PSoC Creator Software

PSoC Creator is a state-of-the-art, easy-to-use IDE. It offers a unique combination of hardware configuration and software development based on standard schematic entry, as

Figure 11 shows. You can customize each Component using a

configuration window. Every Component comes with a detailed Component datasheet.

For EZ-BLE PRoC Module, you can use the initial designs in which the components are pre-configured and pre-populated.

You can also develop applications in a drag-and-drop design environment using a library of pre-characterized, productionready Components.

For details, see the PSoC Creator home page .

Figure 11. PSoC Creator Schematic Entry and Components www.cypress.com

Document No.: 001-96841 Rev. ** 12

Getting Started With EZ-BLE™ PRoC™ Module

Bluetooth Low Energy Component Software

The Bluetooth Low Energy Component provides a comprehensive GUI-based configuration window that lets you quickly design applications that require BLE connectivity. The Component incorporates a Bluetooth Core Specification v4.1 compliant

BLE protocol stack and provides API functions to enable user applications to interface with the underlying Bluetooth Low

Energy Sub-System (BLESS) hardware via the stack.

The Component supports the SIG-adopted GATT-based profiles and services as well as custom BLE profiles and services, and it allows various GAP and GATT roles to be configured. The Component generates the necessary code for a particular profile and service operation, as configured in the GUI, abstracting the underlying BLE stack and hardware configuration so that you can concentrate on the system design.

The BLE Component also provides profile Application Programming Interfaces (APIs) to design BLE solutions without requiring manual stack-level manipulation. The exception to this is the L2CAP configuration specified in Bluetooth v4.1, which allows advanced users to configure the L2CAP layer of the stack if desired.

Developing Bluetooth Low Energy Application involves four easy steps. For detailed information, refer to AN94020 – Getting

Started with PRoC

BLE.

CySmart PC App

The Bluetooth Low Energy CySmart ( Figure 12 ) is a Windows-based tool that provides a host emulation software platform for

testing and debugging LE peripheral or sensor applications. The tool provides an easy-to-use graphical user interface (GUI) to enable customers to configure, test and debug their solutions. The tool is available as an independent software application and

can be launched from the PSoC Creator IDE as shown in Figure 62.

CySmart, along with a Cypress BLE dongle, acts as a master device. The tool supports the Bluetooth 4.1 specification and can connect to any Bluetooth 4.1 or 4.0 enabled BLE peripheral devices. Comprehensive test scenarios can be created by configuring the scan, connection and security parameters. The tool provides the ability to analyze advertisement data and scan response data, and explore the Generic Attribute Profile (GATT) database of peripheral device. For more information, refer to CySmart User Guide .

Figure 12. CySmart Tool Window www.cypress.com

Document No.: 001-96841 Rev. ** 13

Getting Started With EZ-BLE™ PRoC™ Module

CySmart Mobile App

In addition to the PC application, you can download the CySmart mobile app for iOS or Android from the respective app stores. The apps use the iOS Core Bluetooth framework and Android built-in platform framework for BLE to configure your

BLE-enabled mobile as a BLE central device that can scan and connect to BLE peripheral devices.

Figure 13. CySmart Heart Rate Profile

The mobile app supports Bluetooth SIG-adopted BLE standard profiles through an intuitive GUI and abstracts the underlying

BLE and characteristic details.

Development Kits and Evaluation Boards

Cypress provides an easy-to-use development kit to help you prototype your EZ-BLE PRoC Module design.

CY8CKIT-042 BLE Pioneer Kit

The CY8CKIT-042 BLE Pioneer Kit

shown in Figure 14 is an Arduino Uno-compliant BLE development kit for the PRoC BLE

family of devices, including the CYBLE-022001-00 module. The CY8CKIT-042 BLE kit consists of pluggable BLE modules that connect to a baseboard. The Pioneer Kit is powered through the USB interface or with a coin cell battery.

The Pioneer baseboard and RF module combination enables you to develop battery-operated low-power BLE designs that work in conjunction with standard Arduino shields and additional PSoC 4 BLE device capabilities such as the CapSense user interface on the Pioneer baseboard.

The kit also contains a BLE USB dongle that acts as a BLE master and works with the CySmart application to provide a BLE master emulation platform on non BLEWindows systems.

Cypress also provides an adapter board for the EZ-BLE PRoC Module to evaluate and develop with the Cypress module without the need to develop custom hardware. www.cypress.com

Document No.: 001-96841 Rev. ** 14

Figure 14. BLE Pioneer Kit

Getting Started With EZ-BLE™ PRoC™ Module

The kit includes of a set of BLE example projects and documentation that should help you get started with developing your own BLE applications. Visit www.cypress.com/go/CY8CKIT-042-BLE to get latest updates on the kit and to download kit design, example projects and documentation files.

CYB LE -022001 -E V AL E Z -BLE P RoC M od ule E valuation Boa rd

The EZ-BLE PRoC Module Evaluation board (CYBLE-022001-EVAL) is a simple evaluation board designed to fan out the

EZ-BLE PRoC Module (CYBLE-022001-00) connections to headers compatible with the CY8CKIT-042-BLE Pioneer Kit.

The CYBLE-022001-EVAL board is used to evaluate the Cypress EZ-BLE PRoC Module without your having to design custom hardware to mount the Cypress EZ-BLE PRoC Module.

Figure 15 shows the CYBLE-022001-EVAL connected to the CY8CKIT-042-BLE Kit.

Figure 15. CYBLE-022001-EVAL (Left) Connected to CY8CKIT-042-BLE (Right) www.cypress.com

Document No.: 001-96841 Rev. ** 15

Getting Started With EZ-BLE™ PRoC™ Module

The CYBLE-022001-EVAL board contains the following components:

Cypress EZ-BLE PRoC Module (CYBLE-022001-00) – soldered directly to the Evaluation Board

PCB substrate used for I/O fan out

Connection headers

 C mod

capacitor (for use with Capacitive Sensing elements on the CY8CKIT-042-BLE kit)

Inductors (power supply – see the datasheet specification for recommended external components)

This evaluation board is designed to simulate the placement and connection of the EZ-BLE PRoC Module in a final

application. All host-side layout pattern recommendations (as shown in Figure 5 ) are followed in the evaluation board.

Note that not all connections available on the CY8CKIT-042-BLE are populated on the CYBLE-022001-00/CYBLE-022001-

EVAL modules. This is due to the number of I/Os supported on the CYBLE-022001-00 module. When designing applications,

PSoC Creator will only display connections that are available on the CYBLE-022001-00 module and CYBLE-022001-EVAL.

The next page will describe in detail the connections of the CYBLE-022001-EVAL board and the corresponding connections on the CY8CKIT-042-BLE development kit.

To place the CYBLE-022001-EVAL on the CY8CKIT-042-BLE baseboard, locate the 20-pin (J11) and 24-pin (J10) connection

headers, as shown in Figure 16 .

Figure 16. CY8CKIT-042-BLE Baseboard with J10 and J11 Headers to Connect the CYBLE-022001-EVAL

Plug the CYBLE-022001-EVAL module into the CY8CKIT-042-BLE baseboard on headers J10 and J11, while keeping the antenna directed outside.

To remove the CYBLE-022001-EVAL evaluation board from the CY8CKIT-042-BLE baseboard, hold the CY8CKIT-042-BLE

baseboard in one hand and the CYBLE-022001-EVAL in the other, as shown in Figure 17 , and pull it out using a rocking

motion.

Figure 17. Removing the CYBLE-022001-EVAL from the CY8CKIT-042-BLE Baseboard www.cypress.com

Document No.: 001-96841 Rev. ** 16

Getting Started With EZ-BLE™ PRoC™ Module

CYB LE -022001 -E V AL C onnections to CY8 CKIT -042-BL E

The CYBLE-022001-00 module contains 21 connections on the back side of the module. Each of these connections is present on the CYBLE-022001-EVAL evaluation board too.

Figure 18 shows the CYBLE-022001-EVAL and highlights the elements on the top side of the board.

Figure 18. CYBLE-022001-EVAL Board Top Side

J5 Header

The CYBLE-022001-EVAL also includes the following elements:

C mod

: A 2.2-nF capacitor mounted on the evaluation board used with the CY8CKIT-042-BLE capacitive sensing slider, buttons and proximity sensors.

 J3 Header: A two-pin header that exposes VDD and VDDR.

J4 Header: A five-pin header that exposes connections used for programming the EZ-BLE PRoC Module Evaluation board by using the MiniProg3

kit, as shown in Figure 19.

Figure 19. CYBLE-022001-EVAL Using CY8CKIT-002 MiniProg3

J5: A header that exposes P5[0] and P5[1], which can be used for I

2

C communication (including high speed I

2

C) to the

EZ-BLE PRoC Module. www.cypress.com

Document No.: 001-96841 Rev. ** 17

Getting Started With EZ-BLE™ PRoC™ Module

Figure 20

reiterates the Port-Pin connections on the CYBLE-022001-EVAL board. A “NC” connection denotes No Connect, where no physical connection is present between the EZ-BLE PRoC Module and the CYBLE-022001-EVAL board.

Figure 20. CYBLE-022001-EVAL Board Pinout

NC NC

NC NC

NC NC

NC NC

NC NC

P0_6 P1_4

P0_7 P1_3

XRES P1_5

GND NC

VDD NC

GND VDD

P3_6 P3_7

NC NC

NC NC

NC NC

NC P5_1

NC P5_0

P3_4 P3_5

P0_5 P0_4

P1_7 P1_6

NC P4_1

VDDR GND

As mentioned previously, the Port-Pin connections above do not completely match the CY8CKIT-042-BLE baseboard pin out.

Seven such connections exist that do not align with the CY8CKIT-042-BLE baseboard (highlighted in red

in Figure 20).

Table 3 details all connections on the CY8CKIT-042-BLE baseboard and provides the equivalent Port-Pin connection on the

CYBLE-022001-EVAL board.

Table 3. CYBLE-022001-EVAL Port-Pin Connections to CY8CKIT-042-BLE Baseboard

CY8CKIT-042-BLE Baseboard Connection

Header

J11

J11

J11

J11

J11

J11

J11

J11

J11

J11

P0_0

P0_1

P0_2

P0_3

P0_4

P0_5

VREF

P1_0

P1_1

P1_2

CY8CKIT-042-BLE Baseboard

Connection Port-Pin 2

NC

NC

NC

NC

NC

NC

NC

NC

NC

NC

CYBLE-022001-EVAL

Connection Port-Pin www.cypress.com

Document No.: 001-96841 Rev. ** 18

Getting Started With EZ-BLE™ PRoC™ Module

CY8CKIT-042-BLE Baseboard Connection

Header

CY8CKIT-042-BLE Baseboard

Connection Port-Pin 2

J10

J10

J10

J10

J10

J10

J12

J10

J10

J10

J10

J10

J10

J10

J11

J11

J11

J11

J11

J11

J11

J11

J11

J11

J10

J10

J10

J10

J10

J10

J10

J10

J10

J10 GND

Note The port-pin list order is according on the CY8CKIT-042-BLE baseboard physical connection pinout.

GND

VDD

P3_6

P3_7

P3_4

P3_5

P3_2

P3_3

P3_0

P3_1

P4_0

P5_1

P4_1

P5_0

P1_4

P0_6

P1_3

P0_7

P1_5

XRES

P1_7

GND

P1_6

VDD

P2_6

P2_7

P2_4

P2_5

P2_2

P2_3

P2_0

P2_1

VDDR

CYBLE-022001-EVAL

Connection Port-Pin

NC

NC

NC

NC

NC

NC

GND

VDD

P3_6

P3_7

NC

P5_1

NC

P5_0

P1_4

P0_6

P1_3

P0_7

P1_5

XRES

NC

GND

NC

VDD

P3_4

P3_5

P0_5

P0_4

P1_7

P1_6

NC

P4_1

VDDR

GND www.cypress.com

Document No.: 001-96841 Rev. ** 19

Getting Started With EZ-BLE™ PRoC™ Module

The connections shown in Table 3 apply to the Arduino compatible headers located on the CY8CKIT-042-BLE baseboard.

Figure 21 shows the Arduino compatible headers located on the CY8CKIT-042-BLE baseboard.

Figure 21. Arduino Compatible Headers on CY8CKIT-042-BLE Baseboard

Connections above are labeled according to the CY8CKIT-042-BLE baseboard pinout. For the equivalent and available

connections used with the CYBLE-022001-EVAL board, refer to Table 3.

For additional information, refer to the CY8CKIT-042-

BLE product webpage. www.cypress.com

Document No.: 001-96841 Rev. ** 20

Getting Started With EZ-BLE™ PRoC™ Module

Learning Resources

This section provides a list of EZ-BLE PRoC Module learning resources that can help you to get started and to develop complete applications with EZ-BLE PRoC Module. You can also use the Document Manager in PSoC Creator to view these resources. To open the Document Manager, choose the Help > Document Manager .

EZ-BLE PRoC Module Datasheet

EZ-BLE PRoC Module datasheet list the features, pinouts, device-level specifications and fixed functional peripheral electrical specifications of all EZ-BLE™ PRoC™ Module.

PRoC BLE Device Datasheet

PRoC BLE device datasheets list the features, pinouts, device-level specifications and fixed functional peripheral electrical specifications of all PRoC™ BLE devices.

PRoC BLE Technical Reference Manual

The PRoC BLE Technical Reference Manuals (TRM) describes all peripheral functionality in detail, with register-level descriptions. The document is divided into two parts, the Architecture TRM and the Register TRM.

Learning PSoC Creator

Visit the PSoC Creator home page to download the latest version of PSoC Creator. Support for the EZ-BLE PRoC Module is included with PSoC Creator 3.1 SP2 and newer versions.

Launch PSoC Creator and navigate to the following items:

 Simple Component example projects : Choose File > Open > Example projects . These example projects demonstrate how to configure and use PSoC Creator Components.

System Reference Guide : Choose Help > System Reference > System Reference Guide . This guide lists and describes the system functions provided by PSoC Creator.

Component datasheets : Right-click a Component and select “Open Datasheet.” In addition, you can get a list of all

PRoC BLE Component datasheets .

Application Notes

Application notes assist you with understanding specific features of the device and designing your PSoC application.

Visit the following page for a complete list of EZ-BLE PRoC Module application notes .

Design Guide

You can download the PSoC 4 CapSense Design Guide , which shows how to design capacitive touch-sensing applications with the PRoC BLE family of devices.

Technical Support

If you have any questions, our technical support team is happy to assist you. You can create a support request by visiting

Cypress Technical Support

If you are in the United States, you can talk to our technical support team by calling our toll-free number: +1-800-541-4736.

You can also use the following support resources if you need quick assistance.

Self-help

 Local sales office locations www.cypress.com

Document No.: 001-96841 Rev. ** 21

Getting Started With EZ-BLE™ PRoC™ Module

My First EZ-BLE PRoC Module Design

This section provides you with the step-by-step process for building a simple design with EZ-BLE PRoC Module using PSoC

Creator. We will use a previous example project completed for the PRoC BLE device and reconfigure it to work with the EZ-

BLE PRoC Module.

About the Design

This design demonstrates the “Find Me” profile operation using the BLE Component in PSoC Creator. The example uses the

"Find Me" target profile and operates as a BLE server that can communicate to a BLE Client (Smart Phone or PC). It can operate with another device that uses the "Find Me" locator profile and acts as a BLE client. The "Find Me" target profile uses an instance of the "Immediate Alert Service" to display alerts when the locater device sends them.

When in discovery mode, the ‘Find Me’ Target remains visible for BLE clients. The device switches to Deep-Sleep mode between BLE connection intervals.

For this design, the BLE configuration in Table 4 is used.

Table 4. BLE Design Configuration

Requirement Value

GAP Role

Profile Role

GATT Role

GAP Peripheral Device

Find Me

GATT Server

Find Me Characteristic 8-bit Alert Level

Bluetooth Low Energy Advertisement Timing

Advertise with fast advertisement configuration for 30 seconds

Fast advertising interval of 20ms

Go to low power mode on advertisement timeout

Advertisement Packet

Connection Parameters

Appearance and Immediate Alert Service UUID in Advertisement packet

Local name in Scan response packet

Connection interval = 7.5 ms

Slave latency = 0

Supervisory timeout = 10 seconds

GAP Settings

Device name = Find Me Target

Company ID of device address = 0x00A050

No authentication or encryption

This design uses GPIOs for three LEDs to indicate different states, a button switch for wake-up from Deep Sleep, and a BLE subsystem to enable the ‘Find Me’ profile through the BLE protocol. The schematic for the design from PSoC Creator is shown

in Figure 22.

www.cypress.com

Document No.: 001-96841 Rev. ** 22

Getting Started With EZ-BLE™ PRoC™ Module

Figure 22. My First EZ-BLE PRoC Module Design

Creating your first EZ-BLE PRoC Module design involves four main steps:

1. Create the design in the PSoC Creator schematic page.

2. Write the application code to initialize and handle Bluetooth Low Energy events and take action.

3. Program the EZ-BLE PRoC Module on the BLE Pioneer Kit.

4. Test your design using the CySmart PC application or mobile app.

Create the Design

This section takes you on a step-by-step guided tour of the design process. It starts with creating an empty project and guides you through hardware and firmware design entry. You can skip this section if you simply wish to try the example project provided with this application note without going through the build process.

1. Install PSoC Creator 3.1 SP2 or higher on your PC from the webpage PSoC Creator home page . After installation, a registration page for Keil license will be shown. This can be ignored for EZ-BLE PRoC

Module.

2. Start PSoC Creator, and choose File > New >

Project

, as Figure 23 shows.

Figure 23. Creating a New Project www.cypress.com

Document No.: 001-96841 Rev. ** 23

Getting Started With EZ-BLE™ PRoC™ Module

3. Choose the project template PRoC BLE Design, and give the project a name such as “My_First_Project,” as shown in

Figure 24 . Choose an appropriate location for your new project.

Figure 24. Naming the New Project and Device Selector Guide Location

4. Once in the Device Selector Guide, scroll down and locate the CYBLE-022001-00 part number (Device Selector Guide

location is shown in Figure 24 ).

Figure 25. Device Selector Guide www.cypress.com

Document No.: 001-96841 Rev. ** 24

Getting Started With EZ-BLE™ PRoC™ Module

5. The EZ-BLE PRoC Module CYBLE-022001-00 is then shown in the “Device” location after selection from the Device

Selector Guide. Click OK to start the project.

Figure 26. Launching the Device Selector

6. Creating a new project generates a project folder with a baseline set of files. You can view these files in the Workspace

Explorer

window, as shown in Figure 27.

Open the project schematic file TopDesign.cysch

by double-clicking it.

Figure 27. Opening Top Design Schematic www.cypress.com

Document No.: 001-96841 Rev. ** 25

7. You can see pre-populated Components in the schematic as Figure 28 shows.

Figure 28. Pre-populated Components

Getting Started With EZ-BLE™ PRoC™ Module

8. Disable/enable the Components per your design . For this design, right-click on each of the components as follows and

enable/disable components/features as Figure 29 shows:

 Disable ADC_SAR_Seq_1 and ADC_In from the BATTERY MONITOR section

In the GPIO BUTTONS section, disable all buttons except SW1

In the TIMER section, disable TCPWM_1, Clock_1, and ISR_1

Disable Capsense_1, from TOUCH PAD section.

 Disable SCB_1 and SCB_2 from the Serial Interfaces section (I2S_1 should already be disabled)

Instead of disabling, deleting the unused Components is also possible. These components have an option of bringing back from Component Catalog if required. www.cypress.com

Document No.: 001-96841 Rev. ** 26

Figure 29.Enable/Disable Components

Getting Started With EZ-BLE™ PRoC™ Module

9. After performing the actions in step 7, you will see the schematic as shown in Figure 22.

10. Add one more LED by selecting the following schematic and right-clicking Copy and Paste

as shown in Figure 30.

Figure 30 Adding One More LED

11. You can configure the Bluetooth Low Energy Component with the following properties by double-clicking on the

Component as shown in Figure 31.

GAP peripheral role with Find Me Target (GATT server) configuration as shown in Figure 31

Services and characteristics for Find Me profile are shown in Figure 32

and can be left to default values

Limited advertisement mode with an advertising timeout of 30 seconds and fast advertisement interval of 20 to 30 ms

as show in Figure 33

www.cypress.com

Document No.: 001-96841 Rev. ** 27

Getting Started With EZ-BLE™ PRoC™ Module

GAP Device Name set to ‘Find Me Target’ and Appearance set to ‘Generic

Keyring’ as shown in Figure 36

GAP security set to least security configuration with no authentication or encryption as shown in Figure 37

Figure 31. Bluetooth Low Energy Component General Configuration

Figure 32. Bluetooth Low Energy Component Profiles Configuration www.cypress.com

Document No.: 001-96841 Rev. ** 28

Getting Started With EZ-BLE™ PRoC™ Module

Figure 33. Bluetooth Low Energy Component GAP Advertisement Settings

Figure 34. Bluetooth Low Energy Component GAP Advertisement Packet www.cypress.com

Document No.: 001-96841 Rev. ** 29

Getting Started With EZ-BLE™ PRoC™ Module

Figure 35. Bluetooth Low Energy Component GAP Scan Response Packet

Figure 36. Bluetooth Low Energy Component GAP General Settings www.cypress.com

Figure 37. Bluetooth Low Energy Component GAP Security Settings

Document No.: 001-96841 Rev. ** 30

Getting Started With EZ-BLE™ PRoC™ Module

12. Double-click on LED1 and change the name to ‘Advertising_LED’ for LED1 as shown in Figure 38 . Similarly rename the

other two LEDs as ‘Disconnect_LED’ and ‘Alert_LED’. Configure the LED as Strong drive mode.

Figure 38. Renaming a Pin Component

13. Double-click on SW1 and change the name to Wakeup_SW. Configure the pin as interrupt as shown in Figure 39 and

Figure 40.

Figure 39. Digital Input Pin Configuration www.cypress.com

Document No.: 001-96841 Rev. ** 31

Getting Started With EZ-BLE™ PRoC™ Module

Figure 40. Digital Input Pin Interrupt Configuration

14. Drag and drop an ‘Interrupt’ Component from the Component Catalog. Change the name to ‘Wakeup_Interrupt’ and wire it

to the Wakeup_SW pin’s “irq” output as Figure 41

, Figure 42, and Figure 43 show.

Figure 41. Location of the Interrupt Component www.cypress.com

Document No.: 001-96841 Rev. ** 32

Getting Started With EZ-BLE™ PRoC™ Module

Figure 42. Renaming the Interrupt Component

Figure 43 Wiring the Interrupt and Pin Component www.cypress.com

Document No.: 001-96841 Rev. ** 33

Getting Started With EZ-BLE™ PRoC™ Module

15. To assign pins to the LEDs and button, open the file My_First_Project.cydwr

(Design-Wide Resource file) from

“Workspace Explorer” and click the Pins tab. You can use this tab to select the device pins for the outputs

(Advertising_LED, Disconnect_LED, and Alert_LED) and Wakeup_SW for input as Figure 44 shows. The following pin

assignment is made with respect to the CY8CKIT-042 BLE pioneer kit and the CYBLE-022001-EVAL board connections.

The LEDs on the CY8CKIT-042 BLE baseboard are mapped to P3[6] (green), P3[7] (blue), and P2[6] (red) on the Pioneer kit baseboard. These baseboard connections correspond to connections P3[6] (green), P3[7] (blue), and P3[4] (red) of the

CYBLE-022001-EVAL module. The LEDs are Active low. Wakeup_SW is mapped to P2[7] of the Pioneer Kit baseboard,

which is P3[5] of the CYBLE-022001-EVAL module. Refer to CYBLE-022001-EVAL Connections to CY8CKIT-042-BLE for

details on the EZ-BLE PRoC Module Evaluation board connections.

Figure 44.Pin Selection

16. Select Generate Application from the Build menu.

Notice in the Workspace Explorer window that PSoC Creator automatically generates source code files for the Bluetooth Low Energy, Clock, and Digital Output/Input Pin Components,

as Figure 45 shows.

Figure 45. Generated Source Files www.cypress.com

Document No.: 001-96841 Rev. ** 34

Getting Started With EZ-BLE™ PRoC™ Module

Write the Application Code

The main.c

file in the workspace has a template for the main program function. The following main firmware blocks are required for designing any BLE standard profile applications using PSoC Creator:

System initialization

 Bluetooth Low Energy stack event handler

 Bluetooth Low Energy service-specific event handler

Main loop and low power implementation

This section discusses details of these blocks with respect to the design configured in the previous section.

S ys tem In itializ a tion

When the EZ-BLE PRoC Module is reset or wakes up from the hibernate mode, the firmware needs to perform initialization,

which includes platform initialization, enabling global interrupts, and initializing/starting the BLE Component. Figure 46 shows

the flowchart for system initialization.

As a part of the BLE Component initialization, you must pass the event handler function that will be called to receive events

from the BLE stack. The BLE stack event handler shown in Figure 49 is registered as part of the BLE initialization. If the BLE

Component initializes successfully, the firmware registers the event handler that will be called to receive IAS events and switches control to the main loop thread.

Figure 47 shows the firmware source code for system initialization.

Figure 46. System Initialization Flowchart

Reset

Platform Initialization

- BLE Init

- Register Stack Event

Handler

BLE-Init

Success?

Y

Register IAS Event

Handler

N Error Handling

Main Processing

Thread www.cypress.com

Document No.: 001-96841 Rev. ** 35

Getting Started With EZ-BLE™ PRoC™ Module

Figure 47. System Initialization Firmware

CYBLE_API_RESULT_T apiResult;

CYBLE_STATE_T bleState;

/* Enable Global Interrupts */

CyGlobalIntEnable;

/* Start the BLE component and register a stack callback routine */

apiResult = CyBle_Start(StackEventHandler);

if

(apiResult != CYBLE_ERROR_OK)

{

/* BLE stack initialization failed, check

your configuration */

CYASSERT(0);

}

/* Register service specific callback routine for IAS */

CyBle_IasRegisterAttrCallback(IasEventHandler);

BLE Stack E vent Handl er

The BLE stack within the BLE Component generates a list of events to provide the BLE interface status and data to the application firmware through the BLE stack event handler registered during the CyBle_Start API call. The event handler must handle basic events from the stack and configure the stack with the application information to successfully establish and maintain the BLE link. For the ‘Find Me’ application that you are creating, the BLE stack event handler must process all the

events described in Table 5 .

The flow chart and the firmware for handling the BLE stack events are shown in Figure 48 and

Figure 49.

Table 5. Bluetooth Low Energy Stack Events

BLE Stack Event Name

CYBLE_EVT_STACK_ON

Event Description

Bluetooth Low Energy firmware stack within the BLE Component initialized successfully

CYBLE_EVT_GAP_DEVICE_DISCONNECTED Bluetooth Low Energy link is disconnected from the peer device

CYBLE_EVT_GAP_DEVICE_CONNECTED

CYBLE_EVT_TIMEOUT

Bluetooth Low Energy link is established with the peer device

Bluetooth Low Energy stack generic timeout event

Event Handler Action

Start Advertisement and reflect advertisement state on the LEDs

Start re-advertisement and reflect advertisement state on the LEDs

Update the Bluetooth Low

Energy link state on the LEDs

Configure the device in hibernate mode if you received an advertisement timeout event www.cypress.com

Document No.: 001-96841 Rev. ** 36

Getting Started With EZ-BLE™ PRoC™ Module

Figure 48. Bluetooth Low Energy Stack Event Handler Flow Chart

Stack ON or device disconnected?

N

Device connected?

N

Advertising timeout?

N

Return from stack event handler

Y

Y

Y Start Advertising

Retrieve Connection

Handle

Go to Hibernate www.cypress.com

Document No.: 001-96841 Rev. ** 37

Getting Started With EZ-BLE™ PRoC™ Module

Figure 49. Bluetooth Low Energy Stack Event Handler Firmware

#define LED_ON (0u)

#define LED_OFF (1u) extern

CYBLE_GAPP_DISC_PARAM_T cyBle_discoveryParam;

extern

CYBLE_GAPP_DISC_MODE_INFO_T cyBle_discoveryModeInfo;

void StackEventHandler( uint32 event, void * eventParam)

{ switch (event)

{ case CYBLE_EVT_STACK_ON: case CYBLE_EVT_GAP_DEVICE_DISCONNECTED:

/* Start BLE advertisement for 30 seconds and update link

* status on LEDs */

CyBle_GappStartAdvertisement();

Advertising_LED_Write(LED_ON);

Disconnect_LED_Write(LED_ON);

Alert_LED_Write(LED_OFF) break ; case CYBLE_EVT_GAP_DEVICE_CONNECTED:

/* BLE link is established */

Advertising_LED_Write(LED_OFF);

Disconnect_LED_Write(LED_OFF); break ; case

CYBLE_EVT_TIMEOUT:

if

(*(

uint8

*) eventParam == CYBLE_GAP_ADV_MODE_TO)

{

/* Advertisement event timed out, go to low power

* mode (Hibernate mode) and wait for an external

* user event to wake up the device again */

Advertising_LED_Write(LED_OFF);

Disconnect_LED_Write(LED_OFF);

Alert_LED_Write(LED_OFF);

Wakeup_SW_ClearInterrupt();

Wakeup_Interrupt_ClearPending();

Wakeup_Interrupt_Start();

CySysPmHibernate();

}

break

;

default

:

}

}

break

;

www.cypress.com

Document No.: 001-96841 Rev. ** 38

Getting Started With EZ-BLE™ PRoC™ Module

Bluetoo th Low Ener g y Ser vice Speci fic E ve nt Handle r

The BLE Component also generates events corresponding to each of the services supported by your design through the service event handler that was registered in the initialization section of the code (IasEventHandler in this example). For the

‘Find Me’ application that you are creating, the BLE Component will generate Immediate Alert Service (IAS) events that will let

the application know if the ‘Alert Level’ characteristic has been updated with a new value. Figure 50

and Figure 51 show the

flow chart and firmware for handling BLE IAS events.

Figure 50. Bluetooth Low Energy IAS Event Handler Flowchart

Alert Level

Updated

Y

Update the global variable

“ alertLevel”

N

Return from IAS Event

Handler www.cypress.com

Document No.: 001-96841 Rev. ** 39

Getting Started With EZ-BLE™ PRoC™ Module

Figure 51. Bluetooth Low Energy IAS Event Handler Firmware

#define NO_ALERT (0u)

#define MILD_ALERT (1u)

#define HIGH_ALERT (2u)

#define BLINK_TIMEOUT (100u)

#define LED_NO_ALERT (200u)

#define LED_MILD_ALERT (100u)

#define LED_HIGH_ALERT (0u) uint8 alertLevel; void

IasEventHandler(

uint32

event,

void

* eventParam)

{

/* Alert Level Characteristic write event */

if

(event == CYBLE_EVT_IASS_WRITE_CHAR_CMD)

{

/* Data structure that is returned as eventParam */

CYBLE_IAS_CHAR_VALUE_T *charValue =

(CYBLE_IAS_CHAR_VALUE_T *)eventParam;

/* Extract Alert Level value from the data structure */

alertLevel = *((charValue->value->val));

}

}

M ain Loop and Low Pow er Operati on

The main loop firmware in your design must periodically service the BLE stack processing event and configure the BLESS

block and the EZ-BLE PRoC Module system into the Low Power mode between connection intervals. Figure 52 and Figure 53

show the main loop flowchart and firmware. www.cypress.com

Document No.: 001-96841 Rev. ** 40

Figure 52. Main Loop Flowchart

Process BLE Events

Device

Connected ?

Y

Alert Level Updated

N

N

Y

N

Process the LED status

Getting Started With EZ-BLE™ PRoC™ Module

BLE Idle ?

Y

Go to deep sleep mode

Go to Hibernate

Figure 53. Firmware Main Loop for

(;;)

{

/* Single API call to service all the BLE stack events. Must be

* called at least once in a BLE connection interval */

CyBle_ProcessEvents();

if

(CYBLE_STATE_CONNECTED == CyBle_GetState())

{

static uint8

blinkTimeout = BLINK_TIMEOUT;

/* Update Alert LED status */

switch

(alertLevel)

{

case

NO_ALERT:

Alert_LED_Write(LED_OFF);

break

;

www.cypress.com

Document No.: 001-96841 Rev. ** 41

Getting Started With EZ-BLE™ PRoC™ Module case

MILD_ALERT:

if

(--blinkTimeout == 0)

{

Alert_LED_Write(Alert_LED_Read() ^ 0x01);

blinkTimeout = BLINK_TIMEOUT;

}

break

;

case

HIGH_ALERT:

Alert_LED_Write(LED_ON);

break

;

default

:

break

;

}

bleState = CyBle_GetState();

if

(bleState != CYBLE_STATE_STOPPED &&

bleState != CYBLE_STATE_INITIALIZING)

{

/* Configure BLESS in DeepSleep mode */

CyBle_EnterLPM(CYBLE_BLESS_DEEPSLEEP);

/* Configure PRoC BLE system in sleep mode */

CySysPmSleep();

/* BLE link layer timing interrupt will wake up the system */

}

}

}

}

Buildin g and Gene ratin g Hex F i le

Compile and Build the project by choosing Build > Build My_First_Project

as shown in Figure 54.

Figure 54 Compiling the Project www.cypress.com

Document No.: 001-96841 Rev. ** 42

Getting Started With EZ-BLE™ PRoC™ Module

Program the Device

This section shows how to program the device. If you are using a development kit with a built-in programmer, connect the kit board to your computer using the USB cable. For other kits, refer to the kit user guide.

If you are developing on your own hardware, you need a hardware debugger, for example, a Cypress CY8CKIT-

002 MiniProg3 .

1. Select the PSoC Creator menu item Debug > Select

Debug Target

, as Figure 55 shows.

Figure 55. Selecting Debug Target

3. Choose the Debug > Program to program the device

with the project, as Figure 57 shows.

Figure 57. Programming the Device

2. In the Select Debug Target dialog box, click Port

Acquire , and then click Connect , as

Figure 56

shows. Click OK to close the dialog box.

Figure 56. Connecting to a Device

4. You can view the programming status on the

PSoC Creator status bar (lower-left corner of the

window), as Figure 58 shows,

Figure 58. Programming Status www.cypress.com

Document No.: 001-96841 Rev. ** 43

Getting Started With EZ-BLE™ PRoC™ Module

My First EZ-BLE PRoC Module Design – Shortcut

Download the example project from AN94020 – Getting Started with PRoC BLE and follow these steps to quickly generate the example project described in the previous pages.

1. Download the AN94020.zip

package from the AN94020 web page.

2. Extract the contents to a destination directory on your PC.

3. Locate My_First_Project.cywrk

(PSoC Creator Workspace) and open it with PSoC Creator 3.1 SP2 or newer.

4. Right-click the project name and select Device Selector

, as shown in Figure 59.

Figure 59. Device Selector Option in the Example Project

5. Locate CYBLE-022001-00 from the Device Selector

, as shown in Figure 25,

and select OK . You will see that the part number associated with your project will change to display the CYBLE-022001-00 part number.

6. Double-click My_First_Project.cydwr

in the Workspace Explorer

, as shown in Figure 60.

Figure 60. Selecting My_First_Project.cydwr www.cypress.com

Document No.: 001-96841 Rev. ** 44

Getting Started With EZ-BLE™ PRoC™ Module

7. When the pin assignment table is displayed, you will notice that two of the connections have been unassigned. This is due to the limited I/O supported on the EZ-BLE PRoC Module. Both ‘Disconnect_LED’ and ‘Wakeup_SW’ will be shown as unassigned.

8. To complete the assignments, assign P3[4] to ‘Disconnect_LED’ and P3[5] to ‘Wakeup_SW’. These connections can be determined through checking the CY8CKIT-042-BLE and CYBLE-022001-EVAL schematics.

9. Build the application as shown in Figure 54 .

10. Program the CYBLE-022001-EVAL as shown in Figure 57.

11. Proceed to the next section to test your design. www.cypress.com

Document No.: 001-96841 Rev. ** 45

Getting Started With EZ-BLE™ PRoC™ Module

Test Your Design

This section describes how to test your BLE design using the CySmart PC application and BLE Pioneer Kit or BLE Pioneer Kit and mobile apps. The setup for testing your design using the BLE Pioneer Kit is shown in

Figure 61 .

Figure 61. Pioneer Kit and CySmart Bluetooth Low Energy Setup

BLE Connection With CySmart PC App

Host PC Application

CySmart BLE Host Emulator

BLE Connection with CySmart iOS / Android App

BLE

Central

Device

Host PC

USB UART

S

U

B

Power

LED

(

USB Program

3 .

3

LDO

V

Debug

PSoC 5 LP )

/

Status

LED

BLE

Central

Device

PRoC Smart

Module

EZ-BLE PRoC

Module Peripheral

Optionally power through

USB

Coin cell powered

Using the C yS mar t P C applicatio n

1. Connect the BLE USB dongle to your Windows machine. Wait for the driver installation to complete.

2. Launch the CySmart PC application by right-clicking on BLE Component > Launch CySmart in the project as shown in

Figure 62 ; it should automatically detect the BLE USB dongle. If not, click the

Refresh button in the Select BLE Dongle

Target window. Click Connect

as shown in Figure 63 .

www.cypress.com

Document No.: 001-96841 Rev. ** 46

Getting Started With EZ-BLE™ PRoC™ Module

Figure 62. Launching CySmart Application.

Figure 63. CySmart BLE Dongle Selection

3. Select the Configure Master Settings

menu item and restore the values to their default settings, as shown in Figure 64.

www.cypress.com

Document No.: 001-96841 Rev. ** 47

Getting Started With EZ-BLE™ PRoC™ Module

Figure 64. CySmart Master Settings Configuration

4. Press the reset or SW1 button on the BLE Pioneer Kit to start the BLE advertisements from your design.

5. In the CySmart application, click the Start Scan button. Your device (BLE Peripheral) name should appear in the

‘Discovered devices’ list.

6. Click Stop Scan and then click Connect to establish a BLE connection between the CySmart tool and your device, as

shown in Figure 65 .

Figure 65. Connect with CySmart PC Application www.cypress.com

Document No.: 001-96841 Rev. ** 48

Getting Started With EZ-BLE™ PRoC™ Module

7. Once connected, discover all the attributes on your design from the CySmart application, as shown in Figure 66

Figure 66. Discover Attributes

8.

Select the ‘Alert Level’ characteristic and write a value of 0, 1, or 2 to Alert Level characteristic under the IAS as Figure 67

shows. Observe that the state of the LED on your device change based on your Alert Level characteristic configuration.

Fi g ure 67. Alert Notification www.cypress.com

Document No.: 001-96841 Rev. ** 49

Getting Started With EZ-BLE™ PRoC™ Module

Using M obi le Apps

Similar to the CySmart PC application, yo u can use the CySmart iOS or Android app to establish a BLEconnection with your design and perform read or write operations on different BLEservice characteristics as follows.

1. Turn ON the Bluetooth on your iOS or Android device

2. Launch the CySmart application

3. Press the reset or SW1 button on the BLE Pioneer Kit to start the BLE advertisements from your design

4. Your device will automatically appear in the CySmart app scan screen. Select your device to establish a BLE connection

5. Select the ‘Find Me’ profile from the carousel view

6. Select one of the ‘Alert Level’ values in the ‘Find Me’ profile screen and observe the state of the LED on your device change based on your selection.

Figure 68 shows a step-by-step configuration screenshot of the CySmart mobile app

.

Figure 68. Testing with CySmart Mobile App www.cypress.com

Document No.: 001-96841 Rev. ** 50

Summary

This application note explored the basics of BLE protocol and the EZ-BLE PRoC Module solution, architecture, and development tools. The EZ-BLE PRoC Module is a fully integrated BLE solution that allows rapid development and production release for customer applications. The core of the EZ-BLE PRoC Module is the PRoC BLE chip, a programmable embedded system-on-chip, integrating BLE radio, configurable analog and digital peripheral functions, memory, and an ARM Cortex-M0 microcontroller. The EZ-

BLE PRoC Module is an ideal fit for customers seeking a qualified and certified solution in a small form-factor.

Related Application Notes

AN91445 – Antenna Design Guide

AN94020 – Getting Started with PRoC

®

BLE

AN91267 – Getting Started with PSoC

®

4 BLE

AN95089 – PSoC® 4/PRoC™ BLE Crystal Oscillator

Selection and Tuning Techniques

Getting Started With EZ-BLE™ PRoC™ Module

About the Author

Name:

Title:

David Solda (DSO)

Business Unit Director

Background: David Solda has a BS in Computer

Engineering, a BS in Mathematics, and an MBA from Santa Clara University,

California. www.cypress.com

Document No.: 001-96841 Rev. ** 51

Getting Started With EZ-BLE™ PRoC™ Module

Appendix A: EZ-BLE PRoC Module Features

Table 6 summarizes the features and capabilities of the EZ-BLE PRoC Module from Cypress.

Table 6. EZ-BLE PRoC Module Features and Capabilities

Device Family

Features CYBLE-022001-00

BLE Subsystem

CPU

Flash Memory

SRAM

GPIOs

CapSense

CapSense Gestures

ADC

Opamps

Comparators

Current DACs

BLE radio and link-layer hardware blocks with BLE 4.1- compatible protocol stack

24 -MHz ARM Cortex-M0 CPU with single-cycle multiply

128 KB

16 KB

Up to 16

Up to 13 sensors

Not Supported

12-bit, 1 Msps SAR ADC with sequencer

None

None

One 7-bit, and one 8-bit

Power Supply Range 1.9 V to 5.5 V

Low-Power Modes Deep-Sleep mode at 1.3 µA

Hibernate mode at 150 nA

Stop mode at 60 nA

Serial Communication 2 independent serial communication blocks (SCBs) with programmable I 2 C, SPI, UART, or I 2 S

4 Timer Counter Pulse-

Width Modulator

(TCPWM)

Universal Digital

Blocks (UDBs)

Additional Digital

Peripherals (I 2 S,

PWM)

Clocks

None

None

Power Supply

Monitoring

3-MHz to 24 -MHz IMO

32-kHz ILO

Power-on reset (POR)

Brown-out detection (BOD)

Low-voltage detection (LVD)

10 mm × 10 mm × 1.80 mm SMT Module Module Size Package

Integrated Crystal

Oscillators

24-MHz ECO

32-kHz WCO

integrated on module integrated on module

Chip antenna (Johanson Technology Inc. – part number 2450AT18B100) Antenna Type www.cypress.com

Document No.: 001-96841 Rev. ** 52

Getting Started With EZ-BLE™ PRoC™ Module

Appendix B: Cypress Terms of Art

This section lists the most commonly used terms that you might hear while working with Cypress’s PSoC family of devices.

PSoC – PSoC is a programmable, embedded design platform that includes a CPU, such as the 32-bit ARM ® Cortex ® -M0, with both analog and digital programmable blocks. It accelerates embedded system design with reliable, easy-to-use solutions, such as touch sensing and enables low-power designs.

PSoC 4 BLE – A PSoC 4 IC with an integrated BLE radio that includes a royalty-free BLE protocol stack compatible with the Bluetooth 4.1 specification.

PSoC Creator – PSoC 3, PSoC 4, and PSoC 5LP Integrated Design Environment (IDE) software that installs on your PC and allows concurrent hardware and firmware design of PSoC systems, or hardware design followed by export to other popular

IDEs.

Components – Free embedded ICs represented by an icon in PSoC Creator software. These are used to integrate multiple

ICs and system interfaces into one PSoC Component that are inherently connected to the MCU via the main system bus. For example, the BLE Component creates Bluetooth Smart products in minutes. Similarly, you can use the Programmable Analog

Components for sensors.

Component Configuration Tools – Simple graphical user interfaces in PSoC Creator that embedded in each Component. It is used to customize the Component parameters and is accessed by right-clicking a Component.

PSoC Programmer – PSoC Programmer is a flexible, integrated programming application for programming PSoC devices.

PSoC Programmer is integrated with PSoC Creator to program PSoC 3, PSoC 4, PRoC, and PSoC 5LP designs.

MiniProg3 – A programming hardware for development purposes that is used to program PSoC devices on your custom board or PSoC development kits that do not support a built-in programmer. www.cypress.com

Document No.: 001-96841 Rev. ** 53

Getting Started With EZ-BLE™ PRoC™ Module

Figure 69. Code Examples in PSoC Creator

Appendix C: Code Examples

PSoC Creator includes a large number of code example projects. These

projects are available from the PSoC Creator Start Page, as Figure 69

shows.

Example projects can speed up your design process by starting you off with a complete design, instead of a blank page. The example projects also show how PSoC Creator Components can be used for various

applications. Code examples and datasheets are included, as Figure 70

shows.

In the Find Example Project

dialog shown in Figure 70 , you have several

options:

Filter for examples based on architecture or device family. For EZ-

BLE PRoC Module, use the PRoC BLE filter. Most of the PRoC BLE example projects can reconfigure to work with the EZ-BLE PRoC

Module.

Select from the menu of examples offered based on the Filter

Options . There are more than 20 BLE example projects for you to get

started, as shown in Figure 70 .

Review the datasheet for the selection (on the Documentation tab)

 Review the code example for the selection. You can copy and paste code from this window to your project, which can help speed up code development.

 Or create a new project (and a new workspace if needed) based on the selection. This can speed up your design process by starting you off with a complete basic design. You can then adapt that design to your application.

Figure 70. Code Example Projects with Sample Code www.cypress.com

Document No.: 001-96841 Rev. ** 54

Getting Started With EZ-BLE™ PRoC™ Module

Appendix D: Regulatory information:

FCC:

FCC NOTICE:

The device CYBLE-022001-00, including the antenna 2450AT18B100 from Johanson technology, complies with Part 15 of the FCC Rules. The device meets the requirements for modular transmitter approval as detailed in FCC public Notice DA00-1407.transmitter Operation is subject to the following two conditions: (1) This device may not cause harmful interference, and (2) This device must accept any interference received, including interference that may cause undesired operation.

CAUTION

The FCC requires the user to be notified that any changes or modifications made to this device that are not expressly approved by Cypress Semiconductor may void the user's authority to operate the equipment.

This equipment has been tested and found to comply with the limits for a Class B digital device, pursuant to Part 15 of the FCC Rules. These limits are designed to provide reasonable protection against harmful interference in a residential installation. This equipment generates uses and can radiate radio frequency energy and, if not installed and used in accordance with the instructions, may cause harmful interference to radio communications. However, there is no guarantee that interference will not occur in a particular installation. If this equipment does cause harmful interference to radio or television reception, which can be determined by turning the equipment off and on, the user is encouraged to try to correct the interference by one or more of the following measures:

 Reorient or relocate the receiving antenna.

Increase the separation between the equipment and receiver.

 Connect the equipment into an outlet on a circuit different from that to which the receiver is connected.

Consult the dealer or an experienced radio/TV technician for help

LABELING REQUIREMENTS

The Original Equipment Manufacturer (OEM) must ensure that FCC labelling requirements are met. This includes a clearly visible label on the outside of the OEM enclosure specifying the appropriate Cypress Semiconductor FCC identifier for this product as well as the FCC Notice above. The FCC identifier is FCC ID: WAP2001 .

In any case the end product must be labeled exterior with "Contains FCC ID: WAP2001" www.cypress.com

Document No.: 001-96841 Rev. ** 55

Getting Started With EZ-BLE™ PRoC™ Module

ANTENNA WARNING

This device is tested with a standard SMA connector and with the antennas listed below. When integrated in the OEMs product, these fixed antennas require installation preventing end-users from replacing them with non-approved antennas. Any antenna not in the following table must be tested to comply with FCC Section 15.203 for unique antenna connectors and Section

15.247 for emissions.

Table 7: Antenna used in the module

Manufacturer

Johanson

Technologies

Part Number

2450AT18B100

Frequency Band

2.4 GHz

Antenna Type

Chip

Gain

+0.5 dBi

RF EXPOSURE

To comply with FCC RF Exposure requirements, the Original Equipment Manufacturer (OEM) must ensure to install the approved antenna in the previous.

The preceding statement must be included as a CAUTION statement in manuals, for products operating with the approved antennas in the previous table, to alert users on FCC RF Exposure compliance.

Any notification to the end user of installation or removal instructions about the integrated radio module is not allowed.

The radiated output power of CYBLE-022001-00 with the chip antenna mounted (FCC ID:

WAP2001) is far below the FCC radio frequency exposure limits. Nevertheless, use CYBLE-

022001-00 in such a manner that minimizes the potential for human contact during normal operation.

End users may not be provided with the module installation instructions. OEM integrators and end users must be provided with transmitter operating conditions for satisfying RF exposure compliance.

INDUSTRY CANADA CERTIFICATION

CYBLE-022001-00 is licensed to meet the regulatory requirements of Industry Canada (IC),

License: IC: 7922A-2001

Manufacturers of mobile, fixed or portable devices incorporating this module are advised to clarify any regulatory questions and ensure compliance for SAR and/or RF exposure limits.

Users can obtain Canadian information on RF exposure and compliance from www.ic.gc.ca.

This device has been designed to operate with the antennas listed in table 7 above, having a maximum gain of 0.5 dBi. Antennas not included in this list or having a gain greater than 0.5 dBi are strictly prohibited for use with this device. The required antenna impedance is 50 ohms. The www.cypress.com

Document No.: 001-96841 Rev. ** 56

Getting Started With EZ-BLE™ PRoC™ Module antenna used for this transmitter must not be co-located or operating in conjunction with any other antenna or transmitter.

IC NOTICE

The device CYBLE-022001-00 including the antenna 2450AT18B100 from Johanson technology, complies with Canada RSS-GEN Rules. The device meets the requirements for modular transmitter approval as detailed in RSS-GEN. Operation is subject to the following two conditions: (1) This device may not cause harmful interference, and (2) This device must accept any interference received, including interference that may cause undesired operation.

LABELING REQUIREMENTS

The Original Equipment Manufacturer (OEM) must ensure that IC labelling requirements are met. This includes a clearly visible label on the outside of the OEM enclosure specifying the appropriate Cypress Semiconductor IC identifier for this product as well as the IC Notice above.

The IC identifier is 7922A-2001 . In any case, the end product must be labeled in its exterior with

"Contains IC: 7922A-2001 "

EUROPEAN R&TTE DECLARATION OF CONFORMITY

Hereby, Cypress Semiconductor declares that the Bluetooth module CYBLE-022001-00 complies with the essential requirements and other relevant provisions of Directive 1999/5/EC. As a result of the conformity assessment procedure described in Annex III of the Directive 1999/5/EC, the end-customer equipment should be labeled as follows:

All versions of the CYBLE-022001-00 in the specified reference design can be used in the following countries: Austria, Belgium, Cyprus, Czech Republic, Denmark, Estonia, Finland, France, Germany,

Greece, Hungary, Ireland, Italy, Latvia, Lithuania, Luxembourg, Malta, Poland, Portugal, Slovakia,

Slovenia, Spain, Sweden, The Netherlands, the United Kingdom, Switzerland, and Norway. www.cypress.com

Document No.: 001-96841 Rev. ** 57

Getting Started With EZ-BLE™ PRoC™ Module

Document History

Document Title: AN96841 – Getting Started With EZ-BLE™ PRoC™ Module

Document Number: 001-96841

Revision ECN Submission Date

** 4715534

Orig. of

Change

DSO 04/08/2015 New application note

Description of Change www.cypress.com

Document No.: 001-96841 Rev. ** 58

Getting Started With EZ-BLE™ PRoC™ Module

Worldwide Sales and Design Support

Cypress maintains a worldwide network of offices, solution centers, manufacturer’s representatives, and distributors. To find the office closest to you, visit us at Cypress Locations .

Products PSoC

®

Solutions

Automotive

Clocks & Buffers

Interface

Lighting & Power Control cypress.com/go/automotive cypress.com/go/clocks cypress.com/go/interface cypress.com/go/powerpsoc cypress.com/go/plc cypress.com/go/memory psoc.cypress.com/solutions

PSoC 1 | PSoC 3 | PSoC 4 | PSoC 5LP

Cypress Developer Community

Community | Forums | Blogs | Video | Training

Memory

PSoC

Touch Sensing

USB Controllers

Wireless/RF cypress.com/go/psoc cypress.com/go/touch cypress.com/go/usb cypress.com/go/wireless

Technical Support

cypress.com/go/support

CapSense and PSoC are registered trademarks and PSOC Creator and SmartSense are trademarks of Cypress Semiconductor Corp. All other trademarks or registered trademarks referenced herein are the property of their respective owners.

Cypress Semiconductor

198 Champion Court

San Jose, CA 95134-1709

Phone : 408-943-2600

Fax : 408-943-4730

Website : www.cypress.com

© Cypress Semiconductor Corporation, 2015. The information contained herein is subject to change without notice. Cypress Semiconductor

Corporation assumes no responsibility for the use of any circuitry other than circuitry embodied in a Cypress product. Nor does it convey or imply any license under patent or other rights. Cypress products are not warranted nor intended to be used for medical, life support, life saving, critical control or safety applications, unless pursuant to an express written agreement with Cypress. Furthermore, Cypress does not authorize its products for use as critical Components in life-support systems where a malfunction or failure may reasonably be expected to result in significant injury to the user. The inclusion of Cypress products in life-support systems application implies that the manufacturer assumes all risk of such use and in doing so indemnifies

Cypress against all charges.

This Source Code (software and/or firmware) is owned by Cypress Semiconductor Corporation (Cypress) and is protected by and subject to worldwide patent protection (United States and foreign), United States copyright laws and international treaty provisions. Cypress hereby grants to licensee a personal, non-exclusive, non-transferable license to copy, use, modify, create derivative works of, and compile the Cypress Source Code and derivative works for the sole purpose of creating custom software and or firmware in support of licensee product to be used only in conjunction with a Cypress integrated circuit as specified in the applicable agreement. Any reproduction, modification, translation, compilation, or representation of this Source

Code except as specified above is prohibited without the express written permission of Cypress.

Disclaimer: CYPRESS MAKES NO WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, WITH REGARD TO THIS MATERIAL, INCLUDING, BUT

NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. Cypress reserves the right to make changes without further notice to the materials described herein. Cypress does not assume any liability arising out of the application or use of any product or circuit described herein. Cypress does not authorize its products for use as critical Components in life-support systems where a malfunction or failure may reasonably be expected to result in significant injury to the user. The inclusion of Cypress’ product in a life-support systems application implies that the manufacturer assumes all risk of such use and in doing so indemnifies Cypress against all charges.

Use may be limited by and subject to the applicable Cypress software license agreement. www.cypress.com

Document No.: 001-96841 Rev. ** 59

advertisement

Related manuals