TO THE EXTENT PERMITTED BY APPLICABLE LAW, CYPRESS MAKES NO WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, WITH REGARD TO THIS DOCUMENT OR ANY SOFTWARE OR ACCOMPANYING HARDWARE, INCLUDING,
BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. No computing device can be absolutely secure. Therefore, despite security measures implemented in Cypress hardware or software products, Cypress does not assume any liability arising out of any security breach, such as unauthorized
access to or use of a Cypress product. In addition, the products described in these materials may contain design defects or
errors known as errata which may cause the product to deviate from published specifications. To the extent permitted by
applicable law, Cypress reserves the right to make changes to this document without further notice.
Cypress does not assume any liability arising out of the application or use of any product or circuit described in this document.
Any information provided in this document, including any sample design information or programming code, is provided only
for reference purposes. It is the responsibility of the user of this document to properly design, program, and test the functionality and safety of any application made of this information and any resulting product. Cypress products are not designed,
intended, or authorized for use as critical components in systems designed or intended for the operation of weapons, weapons systems, nuclear installations, life-support devices or systems, other medical devices or systems (including resuscitation
equipment and surgical implants), pollution control or hazardous substances management, or other uses where the failure of
the device or system could cause personal injury, death, or property damage ("Unintended Uses"). A critical component is
any component of a device or system whose failure to perform can be reasonably expected to cause the failure of the device
or system, or to affect its safety or effectiveness. Cypress is not liable, in whole or in part, and you shall and hereby do release
Cypress from any claim, damage, or other liability arising from or related to all Unintended Uses of Cypress products. You
shall indemnify and hold Cypress harmless from and against all claims, costs, damages, and other liabilities, including claims
for personal injury or death, arising from or related to any Un
Cypress, the Cypress logo, Spansion, the Spansion logo, and combinations thereof, WICED, PSoC, CapSense, EZ-USB, FRAM, and Traveo are trademarks or registered trademarks of Cypress in the United States and other countries. For a more
complete list of Cypress trademarks, visit cypress.com. Other names and brands may be claimed as property of their respective owners.
PSoC Designer, PSoC Creator, SmartSense, and CapSense Express are trademarks of Cypress Semiconductor Corporation.
The CY8CKIT-042 contains electrostatic discharge (ESD) sensitive
devices. Electrostatic charges readily accumulate on the human body
and any equipment, and can discharge without detection. Permanent
damage may occur on devices subjected to high-energy discharges.
Proper ESD precautions are recommended to avoid performance
degradation or loss of functionality. Store unused CY8CKIT-042
boards in the protective shipping package.
End-of-Life/Product Recycling
This kit has an end-of-life cycle five years from the date of
manufacturing mentioned on the back of the box. Contact your nearest
recycler for discarding the kit.
Regulatory Compliance
The CY8CKIT-042 PSoC® 4 Pioneer Kit is intended for use as a development platform for hardware
or software in a laboratory environment. The board is an open system design, which does not
include a shielded enclosure. Due to this reason, the board may cause interference to other
electrical or electronic devices in close proximity. In a domestic environment, this product may cause
radio interference. In such cases, the user may be required to take adequate preventive measures.
Also, this board should not be used near any medical equipment or RF devices.
Attaching additional wiring to this product or modifying the product operation from the factory default
may affect its performance and cause interference with other apparatus in the immediate vicinity. If
such interference is detected, suitable mitigating measures should be taken.
The CY8CKIT-042 as shipped from the factory has been verified to meet with requirements of CE as
a Class A product.
ESD can damage boards and associated components. Cypress recommends that the user perform
procedures only at an ESD workstation. If an ESD workstation is not available, use appropriate ESD
protection by wearing an antistatic wrist strap attached to the chassis ground (any unpainted metal
surface) on the board when handling parts.
Handling Boards
CY8CKIT-042 boards are sensitive to ESD. Hold the board only by its edges. After removing the
board from its box, place it on a grounded, static free surface. Use a conductive foam pad if
available. Do not slide board over any surface.
Thank you for your interest in the PSoC® 4 Pioneer Kit. The kit is designed as an easy-to-use and
inexpensive development kit, showcasing the unique flexibility of the PSoC 4 architecture. Designed
for flexibility, this kit offers footprint-compatibility with several third-party Arduino™ shields. This kit
has a provision to populate an extra header to support Digilent
addition, the board features a CapSense
USB programmer, a program and debug header, and USB-UART/I2C bridges. This kit supports
either 5 V or 3.3 V as power supply voltages.
The PSoC 4 Pioneer Kit is based on the PSoC 4200 device family, delivering a programmable
platform for a wide range of embedded applications. The PSoC 4 is a scalable and reconfigurable
platform architecture for a family of mixed-signal programmable embedded system controllers with
an Arm
with flexible automatic routing.
1.1Kit Contents
®
Cortex™-M0 CPU. It combines programmable and reconfigurable analog and digital blocks
®
®
slider, an RGB LED, a push button switch, an integrated
PSoC Creator is a state-of-the-art, easy-to-use integrated design environment (IDE). It introduces
revolutionary hardware and software co-design, powered by a library of pre-verified and precharacterized PSoC Components™.
With PSoC Creator, you can:
■ Drag and drop PSoC components to build a schematic of your custom design
■ Automatically place and route components and configure GPIOs
■ Develop and debug firmware using the included component APIs
PSoC Creator also enables you to tap into an entire tools ecosystem with integrated compiler chains
and production programmers for PSoC devices.
For more information, visit www.cypress.com/creator.
1.3Getting Started
This guide helps you to get acquainted with the PSoC 4 Pioneer Kit.
■ The Software Installation chapter on page 14 describes the installation of the kit software.
■ The Kit Operation chapter on page 17 explains how to program the PSoC 4 with a programmer
and debugger – either the onboard PSoC 5LP or the external MiniProg3 (CY8CKIT-002).
■ The Hardware chapter on page 27 details the hardware operation.
■ The Code Examples chapter on page 43 describes the code examples.
■ The Advanced Topics chapter on page 65 deals with topics such as building projects for
PSoC 5LP, USB-UART functionality, and USB-I2C functionality of PSoC 5LP.
■ The Appendix on page 116 provides the schematics, pin assignment, use of zero-ohm resistors,
Cypress provides a wealth of data at www.cypress.com to help you to select the right PSoC device
for your design, and to help you to quickly and effectively integrate the device into your design. For a
comprehensive list of resources, see KBA86521, How to Design with PSoC 3, PSoC 4, and
PSoC 5LP. The following is an abbreviated list for PSoC 4:
■ Overview: PSoC Portfolio, PSoC Roadmap
■ Product Selectors: PSoC 1, PSoC 3, PSoC 4, or PSoC 5LP. In addition, PSoC Creator includes
a device selection tool.
■ Datasheets: Describe and provide electrical specifications for the PSoC 4000, PSoC 4100, and
PSoC 4200 device families.
■ CapSense Design Guide: Learn how to design capacitive touch-sensing applications with the
PSoC 4 family of devices.
■ Application Notes and Code Examples: Cover a broad range of topics, from basic to advanced
level. Many of the application notes include code examples. Visit the PSoC 3/4/5 Code Examples
webpage for a list of all available PSoC Creator code examples. For accessing code examples
from within PSoC Creator – see PSoC Creator Code Examples on page 12.
■ Technical Reference Manuals (TRM): Provide detailed descriptions of the architecture and
registers in each PSoC 4 device family.
■ Development Kits:
❐ CY8CKIT-042 and CY8CKIT-040, PSoC 4 Pioneer Kits, are easy-to-use and inexpensive
development platforms. These kits include connectors for Arduino compatible shields and
Digilent Pmod daughter cards.
❐ CY8CKIT-049 is a very low-cost prototyping platform for sampling PSoC 4 devices.
❐ CY8CKIT-001 is a common development platform for all PSoC family devices.
■ The MiniProg3 device provides an interface for flash programming and debug.
■ Knowledge Base Articles (KBA): Provide design and application tips from experts on the
devices/kits. For instance, KBA93541, explains how to use CY8CKIT-049 to program another
PSoC 4.
■ For a list of trainings on PSoC Creator, visit www.cypress.com/training.
PSoC Creator includes a large number of code examples. These examples are accessible from the
PSoC Creator Start Page, as Figure 1-3 shows.
Code examples can speed up your design process by starting you off with a complete design,
instead of a blank page. They also show how PSoC Creator Components can be used for various
applications.
In the Find Code Example dialog, you have several options:
■ Filter for examples based on device family or keyword.
■ Select from the list of examples offered based on the Filter Options.
■ View the project documentation for the selection (on the Documentation tab).
■ View the code for the selection on the Sample Code tab. You can copy the code from this win-
dow and paste to your project, which can help speed up code development.
■ Create a new workspace for the code example or add to your existing workspace. 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 1-3. Code Examples in PSoC Creator
Introduction
1.4.3PSoC Creator Help
Visit the PSoC Creator home page to download the latest version of PSoC Creator. Then, launch
PSoC Creator and navigate to the following items:
■ Quick Start Guide: Choose Help > Documentation > Quick Start Guide. This guide gives you
demonstrate how to configure and use PSoC Creator Components. To access code examples
related to a specific Component, place the Component on the TopDesign schematic and rightclick on the Component. Select the Find Code Example option in the context menu that
appears.
■ System Reference Guide: Choose Help > System ReferenceGuide. This guide lists and
describes the system functions provided by PSoC Creator.
■ Component Datasheets: Right-click a Component and select Open Datasheet. Visit the
PSoC 4 Component Datasheets page for a list of all PSoC 4 Component datasheets.
If you have any questions, our technical support team is happy to assist you. You can create a support request on the Cypress Technical Support page.
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 3 at the prompt.
You can also use the following support resources if you need quick assistance.
■ Self-help.
■ Local Sales Office Locations.
1.5Documentation Conventions
Table 1-1. Document Conventions for Guides
ConventionUsage
Courier New
Italics
[Bracketed, Bold]
File > Open
Bold
Times New Roman
Text in gray boxesDescribes cautions or unique functionality of the product.
Displays file locations, user entered text, and source code:
C:\ ...cd\icc\
Displays file names and reference documentation:
Read about the sourcefile.hex file in the PSoC Creator User Guide.
Displays keyboard commands in procedures:
[Enter] or [Ctrl] [C]
Represents menu paths:
File > Open > New Project
Displays commands, menu paths, and icon names in procedures:
Click the File icon and then click Open.
Follow these steps to install the CY8CKIT-042 PSoC 4 Pioneer Kit software:
1. Download the kit software from www.cypress.com/CY8CKIT-042. The kit software is available for
download in three formats.
a. CY8CKIT-042 Kit Complete Setup: This installation package contains the files related to the
kit including PSoC Creator and PSoC Programmer. However, it does not include the Windows
Installer or Microsoft .NET framework packages. If these packages are not on your computer,
the installer directs you to download and install them from the Internet.
b. CY8CKIT-042 Kit Only: This executable file installs only the kit contents, which include kit
code examples, hardware files, and user documents. This package can be used if all the
software prerequisites (listed in step 5) are installed on your computer.
c. CY8CKIT-042 DVD ISO: This file is a complete package, stored in a DVD-ROM image format,
which you can use to create a DVD or extract using an ISO extraction program such as
WinZip
drive programs such as Virtual CloneDrive and MagicISO. This file includes all the required
software, utilities, drivers, hardware files, and user documents.
2. If you have downloaded the ISO file, mount it in a virtual drive. Extract the ISO contents if you do
not have a virtual drive to mount. Double-click cyautorun.exe in the root directory of the extracted
content or mounted ISO if "Autorun from CD/DVD" is not enabled on the computer. The
installation window will appear automatically.
Note: If you are using the "Kit Complete Setup" or "Kit Only" file, then go to step 4 for
installation.
®
or WinRAR. The file can also be mounted similar to a virtual CD/DVD using virtual
3. Click Install CY8CKIT-042 PSoC 4 Pioneer Kit to start the kit installation, as shown in
Figure 2-1.
Figure 2-1. Kit Installer Screen
4. Select the directory in which you want to install the files related to the CY8CKIT-042 PSoC 4
Pioneer Kit. Choose the directory and click Next.
5. The CY8CKIT-042 PSoC 4 Pioneer Kit installer automatically installs the required software, if it is
not present on your computer. Following are the required software:
a. PSoC Creator 4.2 or later: This software is also available at www.cypress.com/psoccreator.
b. PSoC Programmer 3.27.1 or later: This is installed as part of PSoC Creator installation
(www.cypress.com/programmer).
6. Choose the Typical, Custom, or Complete installation type (select Ty pica l if you do not know
which one to select) in the Product Installation Overview window, as shown in Figure 2-2. Click
Next after you select the installation type.
7. Read the License agreement and select I accept the terms in the license agreement to
continue with the installation. Click Next.
8. When the installation begins, a list of packages appears on the installation page. A green check
mark appears next to each package after successful installation.
9. Enter your contact information or select the Continue Without Contact Information check box.
Click Finish to complete the kit installation.
10.After the installation is complete, the kit contents are available at the following location:
Note: For Windows 7/8/8.1/10 users, the installed files and the folder are read-only. To use the
installed code examples, follow the steps outlined in the Code Examples chapter on page 43. These
steps will create an editable copy of the example in a path that you choose, so the original installed
example is not modified.
2.2Uninstall Software
The software can be uninstalled using one of the following methods:
1. Go to Start > All Programs > Cypress > Cypress Update Manager and select the Uninstall
button next to the product that needs to be uninstalled.
2. Go to Start > Control Panel > Programs and Features for Windows 7 or Add/Remove Programs for Windows XP and select the Uninstall button.
The PSoC 4 Pioneer Kit can be used to develop applications using the PSoC 4 family of devices and
the Arduino shields and Digilent Pmod daughter cards. Figure 3-1 is an image of the PSoC 4
Pioneer board with a markup of the onboard components.
The PSoC 4 Pioneer Kit connects to the PC over a USB interface. The kit enumerates as a
composite device and three separate devices appear under the Device Manager window in the
Windows operating system.
Table 3-1. PSoC 4 Pioneer Kit in Device Manager After Enumeration
PortDescription
USB Composite DeviceComposite device
Kit Operation
USB Input Device
KitProgProgrammer and debugger
KitProg USB-UARTUSB-UART bridge, which appears as the COM# port
The kit allows programming and debugging of the PSoC 4 device in two modes:
■ Using the onboard PSoC 5LP programmer and debugger
■ Using a CY8CKIT-002 MiniProg3 programmer and debugger
3.2.1Using the Onboard PSoC 5LP Programmer and Debugger
The default programming interface for the kit is a USB-based, onboard programming interface.
Before trying to program the device, PSoC Creator and PSoC Programmer must be installed. See
Install Kit Software on page 14 for information on installing the kit software.
1. To program the device, plug the USB cable into the programming USB connector J10, as shown
in Figure 3-3. The kit will enumerate as a composite device. See Pioneer Kit USB Connection on
page 18 for details.
Figure 3-3. Connect USB Cable to J10
Kit Operation
2. The onboard PSoC 5LP uses serial wire debug (SWD) to program the PSoC 4 device. See
3. The Pioneer Kit’s onboard programmer will enumerate on the PC and in the software tools as
KitProg. Load a code example in PSoC Creator (such as the examples described in the Code
Examples chapter on page 43) and initiate the build by clicking Build > Build Project or
[Shift]+[F6].
Figure 3-5. Build Project in PSoC Creator
4. After the project is built without errors and warnings, select Debug > Program or [Ctrl]+[F5] to
program the device.
Figure 3-6. Program Device from PSoC Creator
The onboard programmer supports only the RESET programming mode. When using the onboard
programmer, the board can either be powered by the USB (VBUS) or by an external source such as
an Arduino shield. If the board is already powered from another source, plugging in the USB
programmer does not damage the board.
3.2.2Using CY8CKIT-002 MiniProg3 Programmer and Debugger
The PSoC 4 on the Pioneer Kit can also be programmed using a MiniProg3 (CY8CKIT-002). To use
MiniProg3 for programming, use the J6 connector on the board, as shown in Figure 3-7.
The board can also be powered from the MiniProg3. To do this, select Tool > Options. In the
Options window, expand ProgramandDebug > Port Configuration; click MiniProg3 and select
the settings shown in Figure 3-8. Click Debug > Program to program and power the board.
Note: The CY8CKIT-002 MiniProg3 is not part of the PSoC 4 Pioneer Kit contents. It can be
purchased from the Cypress Online Store.
Figure 3-7. PSoC 4 Programming/Debugging Using MiniProg3
Note: See the Programmer User Guide for more information on programming using a MiniProg3.
3.3USB-UART Bridge
The onboard PSoC 5LP can also act as a USB-UART bridge to transfer and receive data from the
PSoC 4 device to the PC via the COM terminal software. When the USB mini-B cable is connected
to J10 of the PSoC 4 Pioneer Kit, a device named KitProg USB-UART is available under Ports
(COM & LPT) in the device manager. For more details about the USB-UART functionality, see Using
PSoC 5LP as a USB-UART Bridge on page 65.
To use the USB-UART functionality in the COM terminal software, select the corresponding COM
port as the communication port for transferring data to and from the COM terminal software.
The UART lines from PSoC 5LP are brought to the P12[6] (J8.9) and P12[7] (J8.10) pins of header
J8. This interface can be used to send or receive data from any PSoC 4 design that has a UART by
connecting the pins on header J8 to the RX and TX pins assigned in PSoC 4. The UART can be
used as an additional interface to debug designs. This bridge can also be used to interface with
other external UART-based devices. Figure 3-9 shows the connection between the RX and TX lines
of the PSoC 5LP and PSoC 4. In this example, the PSoC 4 UART has been routed to the J4 header;
the user must connect the wires between the PSoC 5LP RX and TX lines available on header J8.
The PSoC 5LP also functions as a USB-I2C bridge. The PSoC 4 communicates with the PSoC 5LP
using an I2C interface and the PSoC 5LP transfers the data over the USB to the USB-I2C software
utility on the PC, called the Bridge Control Panel (BCP).
The BCP is available as part of the PSoC Programmer installation. This software can be used to
send and receive USB-I2C data from the PSoC 5LP. When the USB mini-B cable is connected to
header J10 on the Pioneer Kit, the KitProg/<serial_number> is available under Connected I2C/SPI/RX8 Ports in the BCP.
Figure 3-10. Bridge Control Panel
Kit Operation
To use the USB_I2C functionality, select the KitProg/<serial_number> in the BCP. On successful
connection, the Connected and Powered tabs turn green.
Figure 3-11. KitProg USB-I2C Connected in Bridge Control Panel
Kit Operation
USB-I2C is implemented using the USB and I2C components of PSoC 5LP. The SCL (P12_0) and
SDA (P12_1) lines from the PSoC 5LP are connected to SCL (P3_0) and SDA (P3_1) lines of the
PSoC 4 I2C. The USB-I2C bridge currently supports I2C speed of 50 kHz, 100 kHz, 400 kHz, and
1MHz.
Refer to Using PSoC 5LP as USB-I2C Bridge on page 79 for building a project, which uses USB-I2C
Bridge functionality.
3.5Updating the Onboard Programmer Firmware
The firmware of the onboard programmer and debugger, PSoC 5LP, can be updated from PSoC
Programmer. When a new firmware is available or when the KitProg firmware is corrupt (see Error in
Firmware/Status Indication in Status LED on page 124), PSoC Programmer displays a warning
indicating that new firmware is available.
Open PSoC Programmer from Start > All Programs > Cypress > PSoC Programmer<version>.
When PSoC Programmer opens, a WARNING! window pops up saying that the programmer is
currently out of date.
Click OK to close the window. On closing the warning window, the Action and Results window
displays “Please navigate to the Utilities tab and click the Upgrade Firmware button”.
Figure 3-13. Upgrade Firmware Message in PSoC Programmer
Click the Utilities tab and click the UpgradeFirmware button. On successful upgrade, the Actionand Results window displays the firmware update message with the KitProg version.
This section provides the block-level description of the PSoC 4 Pioneer Kit.
Figure 4-3. Block Diagram
Hardware
The PSoC 4 is a new generation of programmable system-on-chip devices from Cypress for
embedded applications. It combines programmable analog, programmable digital logic,
programmable I/O, and a high-performance Arm Cortex-M0 subsystem. With the PSoC 4, you can
create the combination of peripherals required to meet the application specifications.
The PSoC 4 Pioneer Kit features an onboard PSoC 5LP, which communicates through the USB to
program and debug the PSoC 4 using serial wire debug (SWD). The PSoC 5LP also functions as a
USB-I2C bridge and USB-UART bridge.
The Pioneer Kit has an RGB LED, a status LED, and a power LED. The RGB LED is connected to
the PSoC 4 and the status LED is connected to the PSoC 5LP. For more information on the status
LED, see section A.5 Error in Firmware/Status Indication in Status LED on page 124. This kit also
includes a reset button that connects to the PSoC 4 XRES, a user button, and a five-segment
CapSense slider, which can be used to develop touch-based applications. The PSoC 4 pins are
brought out onto headers J1 to J4 on the kit to support Arduino shields. The PSoC 5LP pins are
brought out onto header J8 to enable using the onboard PSoC 5LP to develop custom applications.
The PSoC 4 Pioneer Kit can be powered from the USB Mini B, the Arduino compatible header, or an
external power supply. The input voltage is regulated by a low drop-out (LDO) regulator to 3.3 V. You
can select between VBUS (5 V) and 3.3 V by suitably plugging the jumper onto the voltage selection
header VDD.
This kit uses the PSoC 4200 family device. PSoC 4200 devices are a combination of a
microcontroller with programmable logic, high-performance analog-to-digital conversion, two
opamps with comparator mode, and commonly used fixed-function peripherals. For more
information, refer to the PSoC 4 webpage and the PSoC 4200 family datasheet.
Features
■ 32-bit MCU subsystem
❐ 48 MHz Arm Cortex-M0 CPU with single cycle multiply
❐ Up to 32 KB of flash with read accelerator
❐ Up to 4 KB of SRAM
■ Programmable analog
❐ Two opamps with reconfigurable high-drive external and high-bandwidth internal drive, com-
parator modes, and ADC input buffering capability
❐ 12-bit 1-Msps SAR ADC with differential and single-ended modes; channel sequencer with
signal averaging
❐ Two current DACs (IDACs) for general-purpose or capacitive sensing applications on any pin
❐ Two low-power comparators that operate in deep sleep
■ Programmable digital
❐ Four programmable logic blocks called universal digital blocks (UDBs), each with eight Macro-
cells and data path
❐ Cypress-provided peripheral component library, user-defined state machines, and Verilog
input
■ Low power 1.71 to 5.5 V operation
❐ 20-nA Stop mode with GPIO pin wakeup
❐ Hibernate and Deep-Sleep modes allow wakeup-time versus power trade-offs
■ Capacitive sensing
❐ Cypress Capacitive Sigma-Delta (CSD) provides best-in-class SNR (greater than 5:1) and
■ Segment LCD drive
❐ LCD drive supported on all pins (common or segment)
❐ Operates in Deep-Sleep mode with 4 bits per pin memory
■ Serial communication
❐ Two independent run-time reconfigurable serial communication blocks (SCBs) with re-config-
urable I2C, SPI, or UART functionality
■ Timing and pulse-width modulation
❐ Four 16-bit Timer/Counter Pulse-Width Modulator (TCPWM) blocks
❐ Center-aligned, Edge, and Pseudo-random modes
❐ Comparator-based triggering of Kill signals for motor drive and other high-reliability digital
logic applications
■ Up to 36 programmable GPIOs
❐ 44-pin TQFP, 40-pin QFN, and 28-pin SSOP packages
❐ Any GPIO pin can be CapSense, LCD, analog, or digital
❐ Drive modes, strengths, and slew rates are programmable
■ PSoC Creator design environment
❐ Integrated development environment (IDE) provides schematic design entry and build (with