Skip to content

Quick Start Guide for Basic Programming Operations

Cyclone MultiChannel programmers use compiled programming image files to program target devices. This guide walks the user through setting up and programming a simple programming image with the Cyclone by completing the following steps.

1) Installing the Cyclone software
2) Setting up the Cyclone hardware
3) Creating a stand-alone programming image
4) Deploying the image to a Cyclone
5) Launching Cyclone programming

This guide is intended as a convenient supplement to the Cyclone MultiChannel User Manual, which contains in-depth information about the topics covered here and much more.

Note

There have been significant changes in the image creation and deployment process, including a revised Cyclone Image Creation Utility, and the addition of a new Build & Deploy Utility to the previous workflow. Users who are familiar with previous versions of the Image Creation Utility should be sure to note these changes.

Installing the Cyclone Software

First, the Cyclone software should be installed on the user’s PC. It is located on the Resources & Downloads tab on the pemicro.com Cyclone MultiChannel Programmer product page. The tab may resemble this:

cyclone_software_mac-linux

For macOS/Linux, the .TGZ file is also located on the Resources & Downloads tab.

Once the software is downloaded, the user should install it on their PC. If Cyclone software is already installed on the PC, it is recommended that the old installation be removed before the user installs the latest software.

Setting Up the Cyclone Hardware

  1. Connect Cyclone to a PC (for programming image setup)

    Connect the Cyclone programmer to the PC via USB or Ethernet. Cables for these options are included with the Cyclone.

    MultiChannel Communications

  2. Connect Cyclone to target

    A ribbon cable should be connected from the appropriate Cyclone pins/header to the header for your target device. Ribbon cables are provided with the Cyclone. The user may wish to consult the 50-Pin Side Connector section.

    MultiChannel Target Connection

  3. Plug in power to the Cyclone

    A power supply is provided with the contents. Plug the barrel connector into the power jack on the side of the Cyclone, next to the Ethernet port.

    MultiChannel Power In

    On power-up, the user may need to agree to a firmware update on the Cyclone unit.

Creating A Programming Image

A programming image is the result of preprocessing the programming algorithms, data to be programmed, programming options, and scripted programming commands into a compiled file that is ready to program the target. This image can then be loaded onto the Cyclone and used to program, without need for the Cyclone to be connected to a PC.

The Cyclone Image Creation Utility, shown below, allows the user to configure and save programming images. A simple programming image can be created in 6 steps:

  1. Run Cyclone Image Creation Utility
  2. Select Device
  3. Set Up Programming Sequence
  4. Add Basic Programming Commands
  5. Configure Additional Settings
  6. Enter The Build Description

ICUInitialScreenBlank

The following instructions walk the user through each of these steps:

  1. Run Cyclone Image Creation Utility (ARM devices)

    CreateImage.exe is in the “ImageCreation” folder, in the location where the Cyclone software was installed. For an in-depth description of the Cyclone Image Creation Utility, see Cyclone Image Creation Utility.

    Note

    For non-ARM devices the user should instead run CreateImageClassic.exe. This utility is not documented separately as it is extremely similar to CreateImage.exe, just organized differently. Please follow the same concepts and procedures as below.

  2. Select Device

    Select New Device is used to choose the target device, and then the specific device or architecture.

    ICUSelectDevice

  3. Programming Sequence Setup

    The user should double-click on CM in the Programming Sequence window to choose the appropriate Algorithm for the target device. They can navigate to the algorithm using the dialog provided.

    ICUChooseModule

    Based on the algorithm that was selected, additional commands will be made available in the box of programming commands on the left.

    The user should then double-click on the QO command to add an Object File to the Queue.

    ICUQOCommand

  4. Adding Basic Programming Commands

    The user should then add other basic programming commands, using the list of commands on the left side of the Programming Sequence area. The arrow and buttons allow the user to add, remove, and re-sequence the commands, in the box on the right. As an example, some basic commands might be

    a. Erase (if needed)
    b. Program
    c. Verify (if needed)
    

    ICUAddProgrammingCommands

    Note

    Launch Script Wizard can also be used to quickly complete Steps 3 and 4 (not available for NXP i.MX devices).

  5. Power & Communication Settings

    Click into the Power and Communications tab (to the right of the Image Script tab). Here the user should then specify any other settings that the programming image should contain, if applicable, in order to program correctly, such as:

    a. Communication SWD vs JTAG
    b. Shift frequency
    c. Target Power and Voltage Settings ("MultiChannel Programmers Only" Area)*
    d. Reset Signal Settings
    e. Trim Control
    

    *There is a separate target power and voltage settings area for Cyclone MultiChannel programmers; see the figure below.

    ICUBuildDescription

  6. Enter The Build Description

    The user must enter a description of this Build in the Build Description field before proceeding. They may hit the Build Image & Deploy button to proceed.

    ICUBuildDescription

Deploying The Image To A Cyclone

When the user hits the Build Image & Deploy button the Image Deployment Manager will launch. If the user has completed the basic configuration of the image they can move on to the Deploy phase, which allows additional configuration and then deployment of the Image.

  1. Launch the Image Deployment Manager

    As mentioned above, to complete basic configuration and then build and deploy the programming image, click the “Build Image & Deploy” button in the lower right corner of the Image Creation Utility. This launches the Image Deployment Manager.

  2. Select Build/Deploy Method

    For the purposes of this Quick Start Guide, in the Image Binary Deployment Details section of the Deploy tab, select “Deploy Image to Cyclone now via USB/Ethernet/WiFi.” The options in the other sections here are beyond the scope of this guide and are explained in later chapters of the user manual.

  3. Add Image Description

    The Image Description box should be populated by the Build Description text that was entered previously. The user may alter it if they wish to give the Image a different name.

  4. Deploy image to Cyclone

    For this quick start guide we will save the programming image to the Cyclone’s internal memory. The user may hit the Deploy Image to Cyclone Button. This will launch the Cyclone Control GUI which will deploy the programming image to the user’s Cyclone.

    ICUDeployImageToCyclone

  5. Connect to a Cyclone

    The top section of the Cyclone Control GUI displays a drop-down box which should contain any Cyclones that are detected.

    GUIConnect

    Select your Cyclone from the list and click Connect. If your Cyclone is not displayed in the drop-down list, please make sure that you have correctly followed the instructions above to connect your Cyclone, and make sure that the Cyclone is powered on. Use the button on the left to refresh the display.

  6. Complete Deployment (Store Image)

    Once connected to the Cyclone, the Images tab of the Cyclone Control GUI displays any images currently stored in the Cyclone’s memory. The image that the user is saving will be displayed at the bottom of the list and highlighted in blue text, with a Status that reads “Ready to Store”.

    GUIImageUpdateBefore

    Click the button that says “Click to Apply Changes and Exit.” Congrats! If no errors occur, the Cyclone Control GUI will close and the image will be successfully stored on the Cyclone, ready to be programmed.

Selecting Image and Active Channels

Before programming, the user should set the channel(s) that they wish to use to program to Active status and configure which image will be programmed on each channel. This can be done with the Cyclone Control GUI, Console, or SDK. For example, interactive control is available via the Channels Tab of the GUI.

Cyclone Control Console Example

This command for the Cyclone Control Console sets channels 11, 12, 13, and 14 as the Active channels on the Cyclone connected via USB1 and selects the image named "RedImage" as the image to use in these channels.

cyclonecontrolconsole -cyclone=USB1 -setactivechannels=11,12,13,14 -selectimage=RedImage

More information about the GUI (Channels Tab), Console, and SDK is available in the Automated Control chapter.

Launching Cyclone Programming

There are two ways to launch programming.

  1. Cyclone Control Console (command-line utility) - The user writes a script that specifies parameters and initiates programming using the command line. More information is available in Cyclone Control Console.

  2. SDK - The SDK is a software library that is used in conjunction with the user’s own code. The user writes a custom application that uses this library of functions to launch programming. More information is available in Cyclone Control SDK.

    The “Success” or “Error” LED for the Active channel(s) will illuminate to let the user know the programming result.