In this chapter, you’ll install required software for this and all subsequent tutorials. Starting with the SiLabs CP210x drivers to communicate with the Core 2 for AWS IoT EduKit over USB, then the ESP-IDF toolchain for the on-board ESP32-D0WD microcontroller unit (MCU). You will also install Miniconda to manage your Python versions and your dependencies in isolated virtual environments to avoid conflicts. Additionally, we will download, install, and configure the AWS command line interface (CLI). This tutorial assumes that you have an AWS account.

Silicon Labs USB to UART bridge driver installation

Download and install the SiLabs CP210x drivers to enable your computer to communicate with the Core2 for AWS IoT EduKit device. The on-board CP2104 is an USB-to-UART bridge to facilitate host communication with the ESP32-D0WD microcontroller:

macOS 10.9+
macOS <= 10.8
Windows (64-bit)

Installing ESP-IDF v4.2

The M5Stack Core2 for AWS reference hardware you’re using is equipped with an Espressif ESP32-D0WD microcontroller unit (MCU). The ESP-IDF (Espressif IoT Development Framework) allows you to configure, build, and flash firmware onto an ESP32 board. In the Getting Started tutorial, you used PlatformIO to simplify compilation and flashing of the firmware on the device—which provides a GUI to the behind-the-scene calls to ESP-IDF version 4.1 and other tools. For the subsequent steps, you will use ESP-IDF version 4.2 due to enhancements to the mbedTLS library and improved integration of the secure element.

Windows (64-bit)

Installing and configuring the AWS CLI version 2

AWS CLI Installation

The AWS Command Line Interface (CLI) is a unified tool to manage your AWS services. With just one tool to download and configure, you can control multiple AWS services from the command line and automate them through scripts. To be able to configure the AWS CLI, you’ll first need to have an AWS account. Please signin or create an account first before proceeding. After you’ve signed in follow the official AWS CLI installation instructions for your OS.

AWS CLI Configuration

Once you have that installed, it is time to set it for your account and region. It’s important to keep in mind that the region you’re currently using stays consistent—for purposes of this tutorial, we are standardizing on us-west-2. Changing regions can cause other challenges in subsequent steps. To view regional service availability, reference the AWS Regional Services List for a list of services that are available.

Use the command:

aws configure

For steps on obtaining the credentials for the AWS CLI, view the quick configuration documentation. To get the AWS access key Id and AWS secret access key, you will need to give necessary permissions to your IAM user. Your inputs should look like the following:

Default region name [None]: us-west-2
Default output format [None]: json

Miniconda setup and installation

Miniconda is a bootstrap version of the full-fledge Anaconda—which simplifies package and Python virtual environment management. Many installation errors are due to incompatible Python versions (e.g. Python 2.x or 3.8.x), the python PATH variable being set to the wrong Python version, or dependency conflicts. It is strongly encouraged to always use Conda to handle your Python development environment.

Go to and download the corresponding installer for your OS. Follow the official Miniconda installation instructions and then return to this page.

macOS and Linux
Windows (64-bit)

If you close your shell or open a new shell, you’ll need to re-enter conda activate edukit to reactivate the virtual environment and source ESP-IDF’s (macOS/Linux) or export.bat (Windows) to re-add the ESP-IDF tools to your path each time.

Cloning the code repository

If you have misplaced the code repository from the Getting Started Prerequisites instructions, you can clone the repository hosted on GitHub, or download and extract the zip file. To clone:

git clone

With everything installed and configured, let’s move to the next chapter, Device Provisioning.

Report bugs Community support