ModusToolbox Installation Guide

This guide provides instructions for installing the ModusToolbox tools package, version 2.3.0. This is a set of tools that enable you to integrate Cypress devices into your existing development methodology. Refer to the Release Notes for details about what is included. Refer to earlier revisions of this guide for instructions to install previous versions of ModusToolbox tools packages.

System Requirements

The ModusToolbox software consumes approximately 2 GB of disk space. Like most modern software, it requires both free disk space and memory to run effectively. We recommend a system configuration with a PassMark CPU score > 2000 (, at least 25 GB of free disk space, and 8 GB of RAM. The product will operate with fewer resources; however, performance may be degraded.

ModusToolbox software is not supported on 32-bit operating systems. It has been tested on the following:

  • Windows 7 64-bit / Windows 10 64-bit

  • macOS Mojave / Catalina / Big Sur running on Intel processors.

  • Ubuntu Linux 18.04 LTS / 20.04 LTS

Uninstall Beta Versions

If you installed any Beta release of ModusToolbox 2.3, you need to uninstall it before installing this production release. To uninstall any Beta release:

  • Windows: The current release installer will prompt you to uninstall a previous version 2.3 installation. You can also use the Windows Control Panel.

  • Linux: Go to the directory where you extracted the tar.gz installer. Delete the docs_2.3, tools_2.3, and ide_2.3 directories, as well as EULA 2.3 text file from the “ModusToolbox” directory.

  • macOS: The current release installer contains a check box to uninstall a previous version 2.3 installation.


If you plan to use the Eclipse IDE for ModusToolbox included with the installation, be aware that uninstalling the ModusToolbox software does not remove any Eclipse IDE workspaces you may have previously created. You should manually delete these workspaces or move them to another location. See also Step 3: Run the Eclipse IDE for more details about workspaces.

Step 1: Download the Software

Go to the Cypress ModusToolbox website ( and download the appropriate software for your platform:

  • Windows: ModusToolbox_2.3.0.<build>-windows-install.exe

  • Linux: ModusToolbox_2.3.0.<build>-linux-install.tar.gz

  • macOS: ModusToolbox_2.3.0.<build>-macos-install.pkg

ModusToolbox Patches

Ensure you are downloading the core version “2.3.0” of the ModusToolbox tools package. There may be patch versions also available, but they will not work without the appropriate core version first installed. Also, patch version “2.2.1” will not work with core version “2.3.0,” for example, because it is a patch for core version “2.2.0.”


ModusToolbox software requires the following Unix packages (with minimum versions) to work properly. On Windows, these are provided by the installer program. For macOS and Linux, you must install these packages as appropriate:

  • cmp (v2.8.1) git (2.17.0)

  • make (v3.81)

  • mktemp (v8.25) perl (v5.18.2)

  • python (v3.7)

  • perl (v5.18.2)

  • python (v3.7)

Some versions of Ubuntu Linux do not include ‘make’ by default. Use the following command to install it:

sudo apt-get install make

Step 2: Install ModusToolbox Software


Do not use spaces in the installation directory name. Various tools, such as Make, do not support spaces. Also, do not use common illegal characters, such as:



If your user home directory contains spaces, see Installing with Spaces in User Home Directory.

Installing in non-default Location

If you install ModusToolbox in a non-default location, you will need to set the environment variable

CY_TOOLS_PATHS to point to the <install_path>/ModusToolbox/tools_2.3 directory, or set that variable in each Makefile. You must use forward slashes in the variable’s path, even in Windows. Refer to the “Product Versioning” section in the ModusToolbox User Guide.

Installing with Previous Versions

ModusToolbox version 2.3 installs alongside previous versions of the software (version 1.1, 2.0, 2.1, etc.); therefore, all versions can be used independently. However, be aware that various programs including the Eclipse IDE and the build system will detect and use the most current version of the “tools” directory by default. For example, if you have both versions 2.3 and 2.2 installed, and if you launch the Project Creator from the Eclipse IDE for version 2.2, it will open the version from the “tools_2.3” directory instead of the “tools_2.2” directory.

To control this behavior, use the environment variable CY_TOOLS_PATHS as described in the “Product Versioning” section in the ModusToolbox User Guide. This variable applies to all versions of ModusToolbox, so you will have to update it as you work with different versions.


Run the ModusToolbox_2.3.0.<build>-windows-install.exe installer program and follow the prompts to install for the current user only or for all users of the same machine. For more information, see the Default Versus Advanced Windows Installation section later in this document.


By default, ModusToolbox is installed here:



If you have not installed ModusToolbox software previously, you may be prompted to restart your computer due to installation of Microsoft Visual C++ redistributable files.


Extract the ModusToolbox_2.3.0.<build>-linux-install.tar.gz file to your <user_home> directory. The extraction process will create a “ModusToolbox” directory there, if there is not one there already.

After extracting, you must run the following scripts before running ModusToolbox software on your machine:

  • OpenOCD:<user_home>/ModusToolbox/tools_2.3/openocd/udev_rules/

  • WICED Bluetooth Boards:<user_home>/ModusToolbox/tools_2.3/driver_media/

  • Firmware Loader:<user_home>/ModusToolbox/tools_2.3/fw-loader/udev_rules/

  • Post-Install Script:<user_home>/ModusToolbox/tools_2.3/modus-shell/postinstall

For Ubuntu 18.xx, you must install an additional “libusb-0.1-4” package, using the following command:

$ sudo apt-get install libusb-0.1-4

For Ubuntu 20.xx, you must install an additional “libncurses5” package, using the following command:

$ sudo apt-get install libncurses5


Double-click the downloaded ModusToolbox_2.3.0.<build>-osx-install.pkg file and follow the wizard.

The ModusToolbox software will be installed under the Applications folder in the volume you select in the wizard.


The ModusToolbox package installer installs the WICED USB driver for use with ModusToolbox on macOS versions prior to Catalina. It may pop up a “System Extension Blocked” dialog. In this case, go to Security Preference and click Allow for the driver to be installed.

In order for ModusToolbox to work correctly on macOS, you must install an additional Xcode package from the Mac App Store if you don’t already have it installed. You can also install it using the following command in a terminal window:

xcode-select –-install

Step 3: Run the Eclipse IDE

The ModusToolbox software includes an optional Eclipse IDE. To run the IDE:

  • Windows: The installer provides an option to run the Eclipse IDE on the final step. You can also select the Eclipse IDE for ModusToolbox 2.3 item from the Windows Start menu.

  • Linux: Navigate to <user_home>/ModusToolbox/ide_2.3/eclipse and run ModusToolbox.

  • macOS: Run

When the Eclipse IDE runs for the first time, a dialog opens to specify the Workspace location. The default location for the workspace is: <user_home>/mtw.


Be aware that the default Eclipse IDE workspace location (<user_home>/mtw) is the same for all versions of ModusToolbox software. If you plan to use more than one version, you must specify different workspace names for each one. Enter the workspace location and name and click Launch to open the IDE.



If you change the workspace location or name, do not use spaces or illegal characters anywhere in the path.


If your user home directory contains spaces, see Installing with Spaces in User Home Directory.

After the IDE opens for the first time, the Cypress End User License Agreement (EULA) displays.


Read the EULA and click Accept to proceed. If you click Decline, the IDE will close.

Next Steps

Refer to the ModusToolbox User Guide for a description of the software and instructions to get started. You can also refer to the ModusToolbox 101 Training available on GitHub.

If you plan to use the Eclipse IDE included with the ModusToolbox software, refer to these documents, which are also available from the Eclipse IDE Help menu:

Default Versus Advanced Windows Installation

The ModusToolbox installer for Windows provides options to install for the current user or for all users of the same computer. Depending on if you have administration privileges or not, you may be asked to enter a password.


If you select “Install for all users” and then later select install for the current user, the Windows “Apps & features” setting will list only one instance of ModusToolbox 2.3. Use the uninstaller to point to the type of installation (All Users or Current User), depending on the order they were installed. To see all installations, navigate to Control Panel > Programs and Features.

  1. After selecting the installation type, follow the prompts to accept the license agreement and select the installation path.

  2. On the Select Installation Type, choose “Default Installation” or “Advanced Installation.”


  • The default option installs the tools and drivers needed by ModusToolbox.

  • The advanced option allows you to deselect pre-requisite software and drivers that are already installed.

  1. After continuing with the installation steps and the post-installation process, the following dialog will display if you specified a non-default installation directory as a reminder to set an environment variable.


Installing with Spaces in User Home Directory

The ModusToolbox installer tries to install in your user home directory by default. However, it prevents you from installing into a directory that contains spaces.


If possible, create a new user account and user home directory that doesn’t contain spaces. If you cannot create a new user home directory without spaces, then you must perform some extra manual installation steps.


Even though this process is shown for Windows, these steps apply in general to macOS and Linux as well.

Step 1: Install at a custom path.

  1. Select an alternate installation path that does not include spaces. For example:


    Any path without spaces will work.

  2. After installation is complete, create a directory to store your workspaces. For example:


    You can choose any path as long as it doesn’t contain spaces.

  3. Also, create a hidden “dot” directory named “.modustoolbox” to store the cache, offline content, and manifest.loc file discussed later in this section. For example:


Step 2: Create a variable to specify the path to Tools.

Because you are installing ModusToolbox into a non-default location, you need to specify the path to your “tools” directory using an Environment Variable. Open the Environment Variables dialog, and create a new System or User Variable, depending on your installation type (current user or all users). For example:

CY_TOOLS_PATHS = C:/Cypress/ModusToolbox/tools_2.3



Use a Windows-style path (not Cygwin-style, like /cygdrive/c/). Also, use forward slashes.

Step 3: Configure Eclipse Workspace

If using the Eclipse IDE, and not using the CY_TOOLS_PATHS Environment Variable, you must specify a path to the workspace that does not include spaces. For example:



Step 4: Create a variable to specify the path to cache.

The ModusToolbox make system clones all the repos needed for your project, directly into your project. So the resulting project is self-contained. It uses cache to speed up the clone operations. Normally, the make system would create and use cache directory at:


You need to fix this for the new install location for ModusToolbox by changing the location where the make system keeps the cache. Create a new System or User Variable, depending on your installation type (current user or all users). For example:

CY_GETLIBS_CACHE_PATH = C:/Cypress/.modustoolbox/cache/



Use a Windows-style path (not Cygwin-style, like /cygdrive/c/). Also, use forward slashes.

Alternately, you can disable the caching. The downside is that this will slow down the clone operation and overall project creation, as well as the library update experience. To disable the cache, create a User Variable:


Step 5: Specify the custom path to use for Offline Content and manifest.loc.

Although you may not use these features, dependencies require that you set them up while installing the software.

Offline Content Path

Specify the non-default location to the “offline” directory with an Environment Variable. For example:

CY_GETLIBS_OFFLINE_PATH = C:/Cypress/.modustoolbox/offline/


Likewise, create an Environment Variable to specify the non-default location of the manifest.loc file. For example:

CyManifestLocOverride = C:/Cypress/.modustoolbox/manifest.loc