You are here

ModusToolbox™ Software Environment | Cypress Semiconductor

ModusToolbox™ Software Environment

ModusToolbox Software Environment

ModusToolbox is a set of tools and software, distributed in Software Development Kits (SDK), that enable an immersive development experience for customers creating converged MCU and Wireless systems. To achieve this goal ModusToolbox leverages popular third-party ecosystems, such as Arm Mbed, and adds the Cypress "je ne sais quoi" of Wi-Fi, Bluetooth®, CapSense®, security, industry-leading low power and rapid peripheral configuration in easy to use form.

SDKs include all the device and board firmware along with the RTOS, stacks and middleware needed for applications running on PSoC 6 MCUs, PSoC 6 coupled with Wi-Fi/Bluetooth combo devices, and Bluetooth SoCs. Tools such as ModusToolbox IDE, an Eclipse-based Integrated Development Environment (IDE) optimized for Cypress devices, and our intuitive graphical configurators enable an IoT designer to develop innovative IoT applications efficiently and with ease.

Download ModusToolbox 1.1 for Windows®, macOS®, and Linux® now!

For code examples, please visit Cypress' GitHub Repository.


For additional information and support please visit the ModusToolbox page in the Cypress Developer Community.

ModusToolbox Software Environment

Graphical Configurator Example


Amazon FreeRTOS

Amazon FreeRTOS SDK

With ModusToolbox version 2.0 and later, support for Amazon FreeRTOS is enabled for PSoC 6. Amazon FreeRTOS is an open source operating system that extends the popular FreeRTOS kernel with software libraries that make it easy to connect IoT devices to AWS cloud services like AWS IoT Core.

For additional information and getting started instructions on using Amazon FreeRTOS with PSoC 6, please go to the ModusToolbox Amazon FreeRTOS SDK community page.


Arm Mbed SDK

Mbed SDK

Mbed OS is an open-source real-time operating system (RTOS) for the Internet of Things. PSoC 6 brings an astonishing combination of flexibility, security, ultra-low power architecture, and 150MHz compute performance to the Mbed OS ecosystem. In combination with our CYW4343W (8012.11b/g/n) and CYW43012 (802.11 ac-friendly) connectivity devices, PSoC enables concurrent Wi-Fi and Bluetooth Low Energy (BLE) operation through a single antenna. This uniquely empowers Mbed OS users to create ever more diverse and exciting applications at the edge of the IoT without the power, complexity and cost impact of multi-chip alternatives.

To get started with Mbed OS on PSoC 6, visit our team page on, where you will find information about the supported kits and links to download and install the Mbed CLI. The following kits are already Mbed-enabled.



The PSoC 6 SDK combines the ModusToolbox IDE and configurator tools with the Peripheral Driver Library (PDL) and middleware to enable the development of efficient, feature-rich PSoC 6 applications.

The configurators are a set of powerful but intuitive tools that work together to set up the following MCU features.

  • Device (clocks and pins plus digital and analog MCU peripherals)
  • CapSense
  • Bluetooth LE
  • USB
  • Smart I/O
  • QSPI (Supporting single, dual, quad and octal modes)

Each configurator generates very readable, user-modifiable firmware that uses the standard PDL API to initialize the whole device with a single function call.

Complementing the generated configuration firmware and PDL is an extensive library of Middleware, presented in the convenient ModusToolbox Middleware Selector dialog (pictured below), that provides ready to build, high quality functionality and accelerates your time-to-market.

For additional information and support please visit the PSoC 6 SDK page in the Cypress Developer Community.


Click to Enlarge


BT SDK (Bluetooth)

The BT SDK contains everything you need to build applications for the CYW20819, CYW20820 and CYW20721 ultra low power Bluetooth 5.0 SoCs. The SDK, along with the ModusToolbox IDE and configurator tools, form a powerful but easy to use toolset that helps you create amazing Bluetooth-enabled IoT solutions like smart watches, medical devices, and home automation platforms. The SDK includes the following:

  • Bluetooth Classic and Low Energy stack
  • Comprehensive set of Bluetooth protocols and BLE profiles
  • CYW902819EVB-02 kit
  • CYBT-213043-MESH kit
  • *CYW920820EVB-02 kit
  • *CYW920721B2EVK-01
  • Libraries of thermistor, PIR and ambient light sensor middleware
  • IDE-independent build system
  • Local tools including BTSpy trace and ClientControl utilities
  • Various sample applications and examples

*Limited availability. Contact Cypress sales for additional information on this kit.

For additional information and support please visit the BT SDK page in the Cypress Developer Community.


Create a New Application

It is important to get your application off to a good start, and the ModusToolbox IDE contains a comprehensive wizard that guides you through the process. You can create an application for a supported kit or evaluation board, or select custom hardware. The wizard helps set up an application that is guaranteed to build without having to set up include paths, linker scripts, and build options, or hunt around for startup code and middleware packages.

Configure a PSoC Device

PSoC is the most configurable device on the planet. The ModusToolbox IDE gives you one-click access to our new Device Configurator that makes setting up the clocks, pins, and peripherals easier than ever before.

There are also specialized Configurators to help you use amazing PSoC technology like CapSense®, Bluetooth Low Energy, and Smart I/O™.

Add in Middleware

Nobody has enough time to write every line of code in a modern application. The ModusToolbox software includes dozens of middleware packages for you to use free of charge.

Every package is fully validated and characterized so our Middleware Selector tool only shows you packages that are compatible with your selected device(s), ensuring you don't waste time with the wrong code!

Build and Debug your Application

Setting up debugger connections can be a real pain! So, the ModusToolbox software includes everything you need to make it simple. New applications are created with all the debug options that support the target device, pre-set in the launch configurations. You can select the debugger hardware, including popular tools such as the Segger J-LINK or Cypress KitProg, and perform every function imaginable: program, run, debug, attach and erase, on both single- or multi-core devices without every worrying about flash loaders or download options.

ModusToolbox™ 1.1 Documentation
ModusToolbox contains several different types of documentation. This page provides brief descriptions of these documents and links to open them.
Note: All of these links are for versions of documents included with ModusToolbox 1.1 and the associated SDKs. If you have installed newer versions of the SDKs, you must manually navigate to the newer directory versions to locate documents.
Getting Started Documents
This section contains general documents to install ModusToolbox software, use the IDE, learn tips for using ModusToolbox in Eclipse, and porting applications from other Cypress IDEs.
Name Description
ModusToolbox Installation Guide This document is available online only. It describes how to install the ModusToolbox software on Windows, Linux, and macOS.
ModusToolbox Release Notes Features and Known Issues for the ModusToolbox 1.1 release.
ModusToolbox IDE Quick Start Guide Step-by-step guide to create and build starter applications using the IDE.
ModusToolbox User Guide Guide covering more details about the ModusToolbox IDE and software features.
Eclipse Survival Guide This document is also online only. It offers tips on how the ModusToolbox IDE works in the Eclipse environment.
Running ModusToolbox from the Command Line Guide for using the command-line make for ModusToolbox applications. See also Cypress Programmer 2.1 CLI Guide.
Configurator and Tool Documents
These documents are located in the "tools" directory in each individual configurator and tool "docs" subfolder. Links below are to versions provided with Modustoolbox 1.1. If there are newer versions of the SDK installed, there may be newer versions of the configurators and tools.
Name Description
Device Configurator Guide Covers how to enable and configure platform peripherals, such as clocks and pins, as well as standard MCU peripherals. that do not require their own tool.
CapSense Configurator Guide Covers how to create and configure CapSense widgets and generate code to control the application firmware.
CapSense Tuner Guide Covers how to use the Tuner to debug your CapSense application.
QSPI Configurator Guide Covers how to open or create configuration files, configure memory slots, and generate code for your application.
USB Configurator Guide Covers how to design a USB Full Speed device by configuring the descriptors needed for your application.
Smart I/O Configurator Guide Covers how to configure the Smart I/O and generate code for your application.
Bluetooth Configurator Guide Covers how to configure Bluetooth parameters and generate code to control the application firmware.
Cypress Programmer 2.0 Documents
These documents are available online at If you installed Cypress Programmer 2.0, you can also open them from the installation directory.
Name Description
Cypress Programmer 2.0 GUI User Guide User guide for the Cypress Programmer graphical user interface.
Cypress Programmer Release Notes Provides information about supported devices and known issues.
Hardware/Kit Web Pages
These links are all related to various kits that you may use with ModusToolbox. These links are all located on the Cypress website.
CY8CKIT-062-4343W Kit
CY8CKIT-062-WiFi-BT PSoC 6 WiFi-BT Pioneer Kit
CY8CPROTO-062-4343W PSoC 6 Wi-Fi BT Prototyping kit
CYBT-213043-MESH Board
CYW920819EVB-02 Kit
CY8CKIT-062-BLE PSoC® 6 BLE Pioneer Kit
CY8CPROTO-063-BLE PSoC® 6 BLE Prototyping Kit
CYBLE-416045-02 EZ-BLE™ Creator Module
Bluetooth Documentation
These documents are located in the "libraries" directory and the links below are to versions provided with Modustoolbox 1.1. If there are newer versions of the SDK installed, there may be newer versions of these documents.
Name Description
Manufacturing Bluetooth Test Tool The Manufacturing Bluetooth Test Tool (MBT) is used to test and verify the RF performance of the Cypress SoC Bluetooth BR/EDR/LE devices.
WICED AMS Library This document describes the functionality of the WICED AMS library used in various applications.
WICED ANCS Library This document describes the functionality of the WICED ANCS library used in various applications.
WICED Application Buffer Pools This document provides a description of buffers used by the application and the upper layer stack of the WICED Bluetooth Stack.
WICED Firmware Upgrade Library This document describes the functionality of the WICED Firmware Upgrade library used in various WICED sample applications.
Hardware Debugging for WICED devices This document provides a description of hardware debugging support for ModusToolbox software and WICED devices.
WICED HCI Control Protocol This document provides information about the HCI UART control protocol.
WICED HID Device Library This document addresses the software design for the WICED HIDD library used in HIDD applications.
MeshClient and ClientControlMesh App User Guide This document provides information on how to use the MeshClient and ClientControlMesh Windows host applications to control and exercise Mesh functionality in the Mesh embedded applications provided in the SDK.
WICED Secure Over-the-Air Firmware Upgrade The Secure Over-the-Air Firmware Upgrade SDK feature uses elliptic curve cryptography to implement a secure method to upgrade the firmware of devices that are based on Bluetooth chips.
WICED XIP Application Support Guide This document explains how to use the Execute In-Place (XIP) feature on Bluetooth-based platforms.