Provision Your Module
This step shows you how to provision an ACK module as a virtual product via ACK managed services. You use the ACK Module Utility CLI tool to manually provision individual modules or ACK development kits. For general information about module provisioning, see the Module Life Cycle.
- The Module Utility CLI version 22.214.171.124 or later.
- Complete the Module Utility CLI Quick Start.
Step 1: Download the configuration file for you product
To download the configuration file for your product
- Log in to developer.amazon.com, if you aren't already logged in.
- Go to the ACK console products page.
- Click on the product that you would like to provision the module as.
In the upper-right, click Download Provisioning File. This will save a zip file to your computer's default download location. After unzipping, you will find a ProvisioningInfo_[devicetypeid].conf file, which has three values that should not be modified:
deviceType– A unique identifier that represents your virtual product. When you create a virtual product in the ACK console, a unique device type is created.
simpleSetupId– The Wifi Simple Setup ID used to register the product with Alexa via Amazon's Wifi Simple Setup service. For more information about Wifi Simple Setup, see Wifi Simple Setup.
ztsKey– The Zero-Touch Setup key used to register the product with Alexa via Amazon's Wifi Simple Setup service.
Step 2: Determine the serial port that corresponds to the module
First, connect the ACK hardware development board debug port to your computer. If you are using a Development Kit, see connect the development board to your computer.
To provision the module, you need to specify the serial port that corresponds to the module. Use the Module Utility
listportscommand to list the serial ports and their connection status.
Step 3: Use the Module Utility CLI to provision the ACK module
To provision the module, use the
provision command which moves the module state from module provisioned to product provisioned.
provisioncommand, and specify the port that corresponds to the module and the location of the provisioning configuration file that you downloaded from the ACK console product page.
Enter the following code into the terminal:
$ java -jar <path-to>/ackmoduleutility.jar provision -p <serial-port> --provisionconfigfile <path-to>/ProvisioningInfo.conf
If the module is already provisioned as a product, you'll see a message like
The module is already provisioned as product AZCQX0BWIKW8F. Reprovision? Y/N. In this case, choose Y to reprovision the module.
An LWA sign in page opens in your web browser. Sign in to your Amazon developer account, and select Allow to grant the Alexa Connect Kit Device Provisioner permission to read ACK device certificates.Important: If you have multiple Amazon developer accounts, be sure to sign in with the account credentials that are associated with your ACK virtual product.
When the provisioning process is successful, you'll see a
Device provisioning successfulmessage in your terminal window.
The following output appears:
java -jar ackmoduleutility.jar provision -p /dev/tty.usbserial-XXXXXX --provisionconfigfile /Users/<username>/Downloads/ProvisioningInfo.conf Device provisioning beginning for device type AZCQXXXXXXXX... Setting device information Authorization is required. Your web browser should open the "Login with Amazon" page to the following link, please login with your Amazon developer credentials associated with device type AZCQXXXXXXXX. https://devicesigner.amazon.com/v1/authn?state=eBMxweDVK4bTojmFeHcXsQ-o2Oa1gelBSNOL9oSau6tIVWTrcpLGGvIbUKaY0AoNGE Waiting for you to login using "Login with Amazon" | Login detected, sending request for device certificate to the ACK service... Device certificate request was successful and device certificate has been provided to ACK module utility. Device provisioning continuing... Device provisioning successful