Installing the Trust Platform Design Suite

This page shows you how to install and set up Microchip's Trust Platform Design Suite for CryptoAuthentication™. The design suite dramatically reduces the time you'll spend provisioning and using Microchip's secure elements.

trust_family.png
Click image to enlarge.

Installing the Design Suite

  1. Installing the Trust Platform Design Suite Graphical User Interface
    • Includes the Trust Platform GUI, Python and Jupyter Notebook.
  2. Cloning the Trust Platform Repository
    • The Trust Platform repository is hosted on GitHub and must be downloaded separately.
    • Includes Python packages, C projects, and use case user guides.
  3. Setting the Path to the MPLAB X IDE Installation Folder
    • Enables the GUI to re-program the CryptoAuth Trust Platform board.

After Installation

  1. Choosing the Right Trust Platform Family
  2. Starting Jupyter Notebook
    • Start Jupyter Notebook to provision the secure element.

Installing the Trust Platform Design Suite Graphical User Interface

The Trust Platform Design suite helps you with:

  • Selecting the appropriate secure element family for your use case.
  • Provisioning the secure element for your use case.
  • Prototyping your use case using C-based example projects and the CryptoAuth Trust Platform hardware prototyping kit.
  • Generating an encrypted file to share your secure element's provisioning secrets with Microchip.

The Trust Platform Design Suite includes Anaconda (Python distribution) and Jupyter Notebook (open-sourced Python-based application). Jupyter Notebook communicates with a secure element on the CryptoAuth Trust Platform development board to provision it for your specific use case. The CryptoAuth Trust Platform board includes all three Trust Platform devices: Trust&GO (pre-configured and pre-provisioned black box), TrustFLEX (pre-configured), and TrustCUSTOM (full custom). These devices are based on the ATECC608A CryptoAuthentication device.

Supported operating systems:

  • Microsoft Windows® 10 64-bit
  • macOS® Mojave 10.14.6 or newer


Supported Integrated Development Environments (for the C-based projects):

  • MPLAB® X IDE v5.25 and XC32 C compiler v2.30 or later


Supported web browsers: Google Chrome and Apple Safari


Choose your operating system from the tabs below:

1

Download and run the installer.

install_1.png
Click image to enlarge.

2

Review and accept the end-user license agreement terms. Then, select the installation type as Just Me (recommended).

install_3.png
Click image to enlarge.

3

Browse to the installation folder of your choice.

install_4a.png
Click image to enlarge.

4

Leave both Advanced Installation Option boxes unchecked.

install_5.png
Click image to enlarge.

5

Start the Trust Platform Design Suite. Click on the Windows Start icon and search for "Trust Platform V1.3.1". A message will open saying the repository is not found. You will clone the repository in the next step.

start.png
Click image to enlarge.

Cloning the Trust Platform Repository

1

Click Design Suite > Setup > Repository to clone (download) the Trust Platform Design Suite repository from GitHub, and install the Python packages.

trust_platform_3.png
Click image to enlarge.

2

Wait for this process to complete. Please be patient as this may take up to 30 minutes. You'll know it's done when you see the following message displayed:
"Python package update - Done."

trust_platform_4.png
Click image to enlarge.

Setting the Path to the MPLAB X IDE Installation Folder

If you want to re-provision the secure element after using the CryptoAuth Trust Platform board to prototype your use case, you will have to reprogram the board with factory firmware. Jupyter Notebook can do this for you if you tell it where the MPLAB X IDE lives on your computer. Select:
Design Suite > Setup > MPLAB X IDE path.

path2.png
Click image to enlarge.
Note the default path is shown (bottom image).

The CryptoAuth Trust Platform board comes pre-programmed with firmware. This firmware enables Jupyter Notebook to provision the secure element on the CryptoAuth Trust Platform board for your specific use case. Once the secure element is provisioned, you can re-program the board to prototype your use case using one of the example projects that come with the Trust Platform Design Suite.


Choosing the Right Trust Platform Family

Click the Getting Started button to open the "Start Here" webpage. This page helps you choose which Trust Platform family (Trust&GO, TrustFLEX or TrustCUSTOM) is right for your use case.

getstarted.png
Click image to enlarge.

This page is filled with useful information including:

  • Development boards (including user guides)
  • Datasheets
  • Part numbers
  • Links to webpages providing details for each family's use cases
    • Trust&GO
      • Cloud Connect Amazon
      • Cloud Connect Google
      • Cloud Connect Microsoft Azure®
      • Accessory / Disposable Asymmetric Authentication
    • TrustFLEX
      • Firmware Validation, Secure OTA
      • Secure Public Key Rotation
      • IP / Firmware Protection
      • Accessory / Disposable Symmetric Authentication
      • Accessory / Disposable Asymmetric Authentication
      • Custom Public Key Infrastructure - Amazon & Microsoft Azure
      • Cloud Connect Google - IoT

The Trust&GO and TrustFLEX family webpages include detailed transaction diagrams for each use case including Application Programming Interfaces (APIs) with links to their implementation in example code. The TrustFLEX webpage also includes the slot configuration and provisioning for each use case.


Starting Jupyter Notebook

Click the Start Jupyter button to open Jupyter Notebook in your web browser.

This is used to provision a secure element on the CryptoAuth Trust Platform board. See the user guides (in the docs folder) for detailed instructions on running Jupyter Notebook for each use case.

start_jupyter.png
Click image to enlarge.

Jupyter Notebook is an open-source web application that allows you to create documents that contain code and narrative text that can be executed in place. It provides Graphical User Interface (GUI) elements, the ability to add images, and gives the interactive look that is absent in normal code files.

The cells of the Jupyter Notebook can be used to write code or text using markdown. The code cells contain executable code and the text cells contain the explanation of the code's functionality.

assets folder:

  • CryptoAuth Trust Platform board firmware.
  • WINC1500 board firmware.

docs folder:

  • Data sheets.
  • CryptoAuth Trust Platform board user's guide.
  • Detailed use-case guides.

TrustFLEX folder:

  • Jupyter notebook packages
  • C-based projects

TrustnGO folder:

  • Jupyter notebook packages
  • C-based projects
jupyter.png
Click image to enlarge.
© 2020 Microchip Technology, Inc.
Notice: ARM and Cortex are the registered trademarks of ARM Limited in the EU and other countries.
Information contained on this site regarding device applications and the like is provided only for your convenience and may be superseded by updates. It is your responsibility to ensure that your application meets with your specifications. MICROCHIP MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY KIND WHETHER EXPRESS OR IMPLIED, WRITTEN OR ORAL, STATUTORY OR OTHERWISE, RELATED TO THE INFORMATION, INCLUDING BUT NOT LIMITED TO ITS CONDITION, QUALITY, PERFORMANCE, MERCHANTABILITY OR FITNESS FOR PURPOSE. Microchip disclaims all liability arising from this information and its use. Use of Microchip devices in life support and/or safety applications is entirely at the buyer's risk, and the buyer agrees to defend, indemnify and hold harmless Microchip from any and all damages, claims, suits, or expenses resulting from such use. No licenses are conveyed, implicitly or otherwise, under any Microchip intellectual property rights.