You are here

ModusToolbox® Software Environment | Cypress Semiconductor

ModusToolbox® Software Environment

ModusToolbox Software Environment

ModusToolbox is a set of multi-platform development tools and a comprehensive suite of GitHub-hosted firmware libraries. Together, they enable an immersive development experience for customers creating converged MCU and Wireless systems.

The firmware libraries comprise easily customizable Board Support Packages (BSP) for Infineon MCUs and Bluetooth SoC (20xxx) kits, a comprehensive set of middleware libraries - enabling industry-leading features such as CapSense®, Bluetooth Low Energy and Mesh, and the lowest-power, most reliable Wi-Fi on the market - plus an impressive set of thoroughly tested and amazingly helpful code example applications.

IoT Solutions

ModusToolbox is rapidly establishing itself as the most adaptable development system for IoT and includes carefully packaged solutions to support the popular ecosystems and cloud management tools in use today.

  • Arm Pelion Cloud Management and Mbed OS
  • Amazon Web Services (AWS) IoT and FreeRTOS SDK
  • Infineon AnyCloud IoT

Openness and Simplicity

Almost all firmware is provided as Apache® 2.0-licensed source code and is exhaustively tested with GNU Arm Embedded v9, Arm Compiler 6, and IAR C/C++ Compiler v8. Our make-based flow is easy to understand and supports command-line builds as well as IDE-based development with Microsoft Visual Studio Code, IAR Embedded Workbench, Arm MDK, and an Eclipse-based IDE with specialized ModusToolbox plugins. Our device and middleware configuration tools generate simple C code that just gets compiled into your application without error-prone format conversion or mysterious merge utilities.

World-Class Software and Ecosystem Partners

Modern embedded applications are more complicated than ever, and we recognize that world-class software for much of the functionality you need is already available. Why reinvent it? We aggressively target the best third-party software, such as Mbed TLS, TF-M from TrustedFirmware.org and Segger emWin, and integrate it into our ModusToolbox ecosystem to ensure the highest reliability and a painless user experience.

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

For code examples, please visit the ModusToolbox GitHub Repository.

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

Learn about Infineon Tools

New in AnyCloud 1.2

Support for CYW4373

The Wi-Fi Host Driver (WHD) has been updated with support for another Wi-Fi/Bluetooth combo device, the CYW4373. This device features a dual band (2.4GHz and 5GHz) IEEE 802.11a/b/g/n/ac MAC/baseband/radio and Bluetooth 5.0 support. It’s an exciting new addition to our range of supported devices in ModusToolbox, bringing 802.11ac performance, range and reliability.

HomeKit ADK and Multicast DNS

The multicast DNS (mDNS) protocol is a zero-configuration (no manual set-up) service. It resolves hostnames to IP addresses within small networks that do not include a local name server. AnyCloud features a full integration with HomeKit 4.1, using the Bonjour-conforming mDNS to enable easy configuration of smart-home appliance networks with the MFi 3.0 and MFi 2.0c authentication chips. Contact Infineon Customer Care for more information about HomeKit.

New Default Mbed TLS and lwIP Configuration

The default configuration of these libraries has been optimized for resource-constrained applications, resulting in significant (~60kB) savings in flash memory consumption. It is now possible to run Wi-Fi applications on smaller PSoC 6 devices (512kB flash) without having to hand-tune the configuration/options files.

New in AWS IoT Core

PSoC 64 Standard Secure Kit Qualification

The PSoC 64 Standard Secure microcontroller is now qualified for FreeRTOS. PSoC 64 incorporates open-sourced Trusted Firmware-M embedded security, is Platform Security Architecture (PSA) Certified Level 1, and is now FreeRTOS qualified for secure device management with AWS IoT Core.

ISO-certified secure provisioning services for the PSoC 64 are offered by Arrow Electronics, enabling OEMs to securely deploy IoT applications at scale.

You can take advantage of FreeRTOS features and benefits using the PSoC 64 Standard Secure AWS Wi-Fi Bluetooth Pioneer Kit.

New in Mbed OS

Mbed OS v6 Updates

The new Mbed OS 6 deprecates several API classes and functions that are used by Infineon middleware and Code Examples (those hosted on the cypresssemiconductorco repo rather than ARMmbed). The Infineon software has now been updated and Mbed OS 6 is fully supported for production development.

New in ModusToolbox 2.2

The 2.2 release of ModusToolbox adds support for shared libraries, GUI improvements to the Project Creator tool, enhanced access to on-chip analog routing, programmer/debugger updates and a new version of the GNU C Compiler.

Shared Library Management

We heard from our users that creating and updating projects was just a bit too time-consuming, so we have implemented a library sharing mechanism that lets projects share commonly used content without having to fetch all the source code from github every time. It really speeds up project creation and can make new libraries available to multiple projects in a single step. Check out the Library Manager User Guide to learn how our examples utilize the new flow and how you can optimize the time you spend setting up applications.

The changes to the tools are completely backward-compatible, of course, and the old flow remains fully supported. You can update ModusToolbox and continue working on your current projects and even create new ones (by cloning previous versions of the GitHub project) with no change to the user experience or functionality.

Project Creator GUI Update

Now that ModusToolbox supports multiple projects accessing a shared set of libraries, we added the ability to create multiple application projects in one step. Now you do not need to repeatedly pick the BSP, choose the application, enter the name and create the project. You just pick the BSP, once, then check and name every example you want to use.

Selecting Multiple Projects in Project Creator

Improved Routing Options for SAR ADC

The Device Configurator has been updated to increase the routing options to the SAR block. In addition to the SAR port pins you can now connect to other analog resources such as the OPAMPs and CTDAC. Whether you just need a controllable voltage source, a signal buffer, or are looking to build an on-chip amplifier, the Analog Routing Viewer/Editor gives you access to the famous PSoC flexibility and enables unparalleled design integration.

Analog Routing Viewer/Editor

Programming and Debugging Improvements

The KitProg3 firmware, used in the MiniProg programmer and on-board debugger chips (PSoC 5LP), has been updated (v2.10) to improve bulk endpoint handling, which increases the throughput of data across an I2C or SPI bridge. In addition, OpenOCD (v4.1) has been updated to pick up the latest fixes and improvements.

GNU Compiler Update

ModusToolbox now ships with v9.3.1 of the GNU compiler and all code examples and libraries have been validated to ensure they build and run with the new toolchain.

The IAR (v8) and Arm (v6) C Compilers remain fully supported.

ModusToolbox® 2.2 Documentation
This page provides brief descriptions and links to various types of documentation included as part the ModusToolbox software.
For ModusToolbox version 2.1 documentation, please click here.
Getting Started Documents
This section contains general documents to install and use ModusToolbox software, as well as use the provided Eclipse IDE.
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 This document lists and describes features for this release of ModusToolbox. It also includes known issues and workarounds and important design impacts you should know.
ModusToolbox User Guide This document provides an overall user guide for ModusToolbox GUI and CLI tools, including getting started and exporting to various IDEs, including Visual Studio Code, IAR Embedded Workbench, and Keil µVision.
Eclipse IDE for ModusToolbox Quick Start Guide This is a short step-by-step guide specifically for using the Eclipse-based IDE to create and build applications for ModusToolbox.
Eclipse IDE for ModusToolbox User Guide This guide also focuses on the Eclipse IDE, covering more details about the IDE and software features.
Eclipse Survival Guide This document is also online only. It offers tips on using the Eclipse environment.
Configurator and Tool Documents
These documents are located in the "tools" directory in each individual configurator and tool "docs" subfolder.
Name Description
Project Creator Guide Covers how to use the stand-alone tool to create projects for ModusToolbox.
Library Manager User Guide Covers how to add/remove BSPs and libraries for your ModusToolbox project.
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.
Segment LCD Configurator Guide Covers how to configure LCDs and generate code 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.
USB Configurator Guide Covers how to design a USB Full Speed device by configuring the descriptors needed for your application.
Device Firmware Update Host Guide Covers how to use the Device Firmware Update Host Tool to communicate with a PSoC 6 MCU with a programmed application and perform various actions, such as program new data, verify, and erase.

IoT Solutions

ModusToolbox is rapidly establishing itself as the most adaptable development system for IoT and includes carefully packaged solutions to support the popular ecosystems and cloud management tools in use today. Infineon’s commitment to working with the best partners extends to IoT development platforms like Mbed™ OS and Amazon FreeRTOS™. We are active contributors to these communities and support cloud-based application development with comprehensive board support packages, unique firmware libraries, and technical support for our users. ModusToolbox enables three IoT solutions today.

  • Arm Pelion Cloud Management and Mbed OS
  • Amazon Web Services (AWS) IoT and FreeRTOS SDK
  • Infineon AnyCloud IoT

Arm Pelion Cloud Management and Mbed OS

Arm 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 os.mbed.com/teams/Cypress, where you will find information about the supported and Mbed-enabled kits plus links to download and install the Mbed CLI.

Amazon Web Services (AWS) IoT and FreeRTOS SDK

Amazon FreeRTOS

FreeRTOS has been extended by Amazon into a market-leading real-time operating system (RTOS) for microcontrollers, built with an emphasis on reliability and ease of use. It includes a kernel and a growing set of libraries that provide connectivity, security, and over-the-air (OTA) updates.

PSoC 6 is fully integrated into FreeRTOS, using libraries and examples from the ModusToolbox GitHub repos. Together, this enables the creation of highly secure, low power products that connect seamlessly to AWS cloud services like AWS IoT Core.

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

Infineon AnyCloud IoT

A fascinating aspect of the growth of IoT is that as fast as the number and type of edge devices is growing, so is the number and type of ways of managing them all. Only you know the best way to keep your wireless products secure and up to date. Infineon AnyCloud is a development solution for IoT applications that is not tied to a specific cloud provider or management tool. It provides the core functionality – connectivity, security, firmware upgrade support, and application layer protocols like MQTT – but is flexible so you can modify or extend it to match your needs. AnyCloud leverages the ModusToolbox Project Creator and Library Manager tools to help you get started with the basics and leaves you free to optimize the application any way you please.

AnyCloud Connectivity libraries in the Library Manager

PSoC 6 MCUs

ModusToolbox supports PSoC 6 with a set of fantastic set of tools for setting up peripherals and complementing your projects with world-class middleware. The cypresssemiconductorco GitHub repos include BSPs for all the Cypress kits, libraries for popular functionality like CapSense and emWin, and a comprehensive array of example applications to get you started.

Your Compiler, Your IDE

Regardless of the target device or the type of application you are creating, you have control over the way you want to work. PSoC 6 applications have a very simple build recipe that is controlled by the ubiquitous make utility. There are no proprietary tools or merge steps involved, and so using IDEs such as IAR’s Embedded Workbench (EW-ARM) or Arm’s Microcontroller Development Kit (MDK) requires very little effort when setting up your project. All firmware is thoroughly tested with the GNU Arm Embedded, IAR C/C++, and Arm compilers, and so your IDE choice never compromises reliability or usability.

Flexible Project Management Tools

The Project Creator and Library Manager tools make the job of setting up a project, for any IDE, extremely simple and error-free. Project Creator takes your chosen BSP and presents a set of starter example projects that support it. Make your choices and it pulls in all the firmware required to build the application. When you decide to add more functionality to the design, the Library Manager presents all middleware that is compatible with the BSP and you just choose the functionality you need. It even lets you change the target BSP so you can test out your project on any number of devices and boards.

Project Creator

Easy Device and Middleware Configuration

ModusToolbox is all about making life easier for PSoC developers. We have an easy-to-use HAL firmware API that makes it quick and easy to do the things that every embedded application needs; set up a UART for printf(), start a timer, toggle an LED, and so on. Sometimes you need to get into the more advanced features of a peripheral and, with our unique configurator technology, that’s not difficult either.

You can start with the Device Configurator for the core set of peripherals like clocks, pins, TCPWMs, and SCBs. There are also the CapSense, Smart I/O™ and QSPI Configurators that are dedicated to helping you quickly unleash the famous PSoC device features. Each one generates simple C code that is really easy to understand and use.

Device Configurator

We also give you application-level configurators, such as the Bluetooth, Segment LCD, and USB tools. The tools generate the glue between the hardware and the libraries that provide higher-level functionality than the HAL and peripheral configurators. There is no easier way to set up your BLE profiles and services, USB descriptors and end points, and to map LCD segments to pins than with our uniquely powerful an intuitive middleware configurators.

BT Configurator

BT SDK (Bluetooth)

The BT SDK contains everything you need to build applications for the following dual mode (BR + EDR + BLE) Bluetooth 5.0 core spec compliant solutions: CYW20706, CYW20719B2, CYW20721B2, CYW20735B1, CYW20819, CYW20820, and CYW89820. 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 beacons, trackers, smart watches, audio devices (headsets, speakers), hid devices (remotes, mice, keyboard), medical devices, and home automation platforms. The SDK includes the following:

  • Bluetooth firmware
  • Platform and board support packages
  • Utilities including BTSpy trace, Manufacturing Bluetooth test tool, Client Control, and Mesh Client control
  • Peer apps for OTA and Mesh
  • A rich set of WICED™ connectivity APIs that allow for simplified programming of BT/BLE connectivity
  • Various sample applications that serve as examples of how to utilize the BT/BLE APIs
  • More complex code examples that utilize various APIs and middleware to create a more complete solution

Bluetooth Documentation

BT SDK Documentation for the WICED Bluetooth devices are available on the Cypress semiconductor github: https://cypresssemiconductorco.github.io/btsdk-docs/BT-SDK/index.html

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