PEmicro Blog

Limited-Time Promotion: 50% Discount. Upgrade V1 Licenses to V2 Licenses.

Aug 19, 2024

Over the years many customers have requested that PEmicro should instead use node-licensing for its flexibility and utility. We listened and the V2 Hardware License was born. The V2 Hardware License is activated once and stored inside the Multilink or Cyclone. This allows the user to take the hardware with them to any computer and share the hardware and software with colleagues. It's no longer necessary to activate per user and per computer. 

Read more...

PEmicro Debug and Programming Tools Support NXP's MCX C-Series Devices

Jul 26, 2024

PEmicro's development and production tools have added support for NXP's MCX C-Series microcontrollers. The MCX C-Series features Arm® Cortex®-M0+ and is designed to be both efficient and cost-effective, Because of this the devices are ideal for general-purpose applications. They suit a wide array of use cases, and feature USB and segment LCD options. They are intended to provide flexible and scalable memory and packages.

Read more...

Cyclone Control SDK: Automated Flash Programming with Rust

Jul 01, 2024

The Cyclone Control SDK is a software development kit with a comprehensive API that allows developers to seamlessly integrate Cyclone LC and Cyclone FX programmers into their applications. They can manipulate SAP images, launch SAP images, retrieve programming results, and update settings. This blog post demonstrates the use of the SDK in a Rust application.

Read more...

Generating a Programming Image/Job From The Command-Line

Apr 15, 2024

Users who are managing production programming may have to work with a large number of stand-alone programming (SAP) image files, and may face the need to continually regenerate these images with new binaries, which can pose problems. PEMicro's Cyclone Control Suite offers a powerful yet flexible set of utilities to automate control of the Cyclones on the production line and help address this type of issue. This article describes how to fully automate the process of generating stand-alone programming (SAP) image files to remove the chance of errors that could occur when the process is done manually.

Read more...

How to Configure WiFi Communications for Cyclone FX Programmers

Apr 09, 2024

PEmicro includes WiFi communications with its flagship Cyclone FX stand-alone programmers, so in addition to USB, Serial, and Ethernet connectivity, the Cyclone FX can also be controlled wirelessly over a WiFi network. This simplifies cabling requirements and allows untethered debug/program of targets. The WiFi feature is available in the latest versions of PEmicro software and is supported by Cyclone FX Rev. C and higher.

Read more...

PEmicro adds iMXRT11xx and LPC55Sxx PRINCE to Secure Boot Utility

Apr 09, 2024

PEmicro's Secure Boot Utility is now updated to support NXP's iMXRT11xx devices and PRINCE encryption for LPC55Sxx devices. The Secure Boot Utility greatly simplifies the steps needed to enable security on NXP's iMX and LPC55Sxx processors, including certificate generation, signing of the user application, and setting the necessary non-volatile security settings in flash memory.

Read more...

Guide for Users Transitioning From Legacy Hardware

Mar 05, 2024

As technology evolves over time, PEmicro occasionally retires hardware and software products and classifies them as Legacy items, which are no longer sold or actively supported. When this happens there will almost always be a newer product available as a replacement part, accompanied by a substantial grace period that gives customers time to plan and adapt as necessary. PEmicro tries to make the transition to newer products as painless as possible, so our new products are often drop-in replacements with few additional updates required.

Read more...

PEmicro Adds Support for .BIN Data Files to Programming Tools

Dec 20, 2023

PEmicro has announced support for binary (.BIN) data files for its popular Cyclone stand-alone programmers and PROG & CPROG flash programming software. Previously users would need to convert this type of file to the .S19 format using a free utility. This new support for binary files comes in the form of the "QB" command, which together with the "QO" command highlights a new queue-based approach towards programming data files. 

Read more...

Combining Multiple Data Files for Programming via Queuing

Dec 20, 2023

PEmicro's PROG and CPROG flash programming software supports binary (.BIN) data files. This support is implemented by using the "QB" command, which together with the "QO" command constitutes a queue-based approach in PROG/CPROG software that allows the user to combine multiple data files. This article will help the user understand this approach, and how to use the "QO" and "QB" commands, and their counterpart. "CQ" (Clear Queue).

Read more...

Cyclone Programming: Adding Unique Data to be Programmed Into Each Target Device

Nov 03, 2023

Cyclone production programming images are comprehensive archives containing all the essential information required to program a set of data into a target device. This information encompasses application binaries, programming algorithms, configuration settings, serialization specifics, programming instructions, and more. These archives are encrypted and designed to resist corruption. Utilizing these programming images offers an efficient and dependable method for programming a substantial amount of identical data into multiple target devices.

However, there are scenarios where, in addition to the static data within the programming image, there's a need to program unique data specific to each individual target. PEmicro refers to target-specific data in general as "Dynamic Data". There is a type of Dynamic Data, called "Overlay Data", that the user can provide when programming is launched which is uniquely programmed into each target. In such cases, the user initiates the programming process on a Cyclone (or a set of Cyclones) through the Cyclone Control Console or Cyclone Control SDK. As part of this launch command, dynamic data for each target is provided, enabling the programming of targets with a combination of the static image data and the overlay data. In this blog post, we will demonstrate how to effectively use Overlay Data in the programming process for both the Console and SDK.

Read more...

User-Specific Image Encryption and Count/Date Usage Restrictions

Sep 14, 2023

PEmicro's ProCryption Security feature on Cyclone programmers allows for easy-to-use custom encryption of programming images as well as control over how and when programming images are used. By taking advantage of these security features a user can send their programming images electronically with the confidence that their valuable IP will remain safe and only usable on their own Cyclone programmers. It is also possible to control how many times an image is programmed and when, such that unwarranted programming does not occur.  When used along with our PECloud service, it allows for remote supervision and control of your IP. Once implemented, these security measures are also easy to maintain.  

With ProCryption Security, Cyclone users can:

  1. Create RSA/AES encrypted programming images (eSAP images) that use their own uniquely generated ImageKey(s). These programming images may only be used on Cyclones that are pre-configured with the same ImageKey(s). 
  2. Restrict the use of programming images by programming count and date range. 
Read more...

Cloud Setup

Aug 23, 2023

This blog post walks through the setup to be able to use cloud-connected programming jobs with Cyclone Programmers.

In order to create a cloud connected programming job, the user's local software needs to be connected to their Virtual Factory in PEcloud. This allows job information, and optionally the job binary, to be uploaded to the PEcloud during creation.

For a Cyclone to be able to execute the job, the Cyclone needs to be provisioned to the same PEcloud Virtual Factory.  This gives the Cyclone access to the Job information. Additionally, if the job binary is delivered through the PEcloud, the Cyclone needs to be pre-loaded with a copy of the PEImageKey used to encrypt the job. 

Steps to using cloud-connected programming jobs:

  1. Link PEmicro Cyclone Software to the user’s PEcloud account (To allow job creation).
  2. Provision Cyclones to the user’s Virtual Factory in PEcloud (To allow job execution/download).  
  3. Pre-load the user's PEImageKey(s) to the Cyclones (To allow job decryption/execution). 
Read more...

PEcloud Launches: A Cloud-Based, Production Programming Management Platform

Apr 20, 2023

PEmicro has announced the launch of PEcloud, a cutting-edge platform that offers unparalleled control and visibility into users' production programming Jobs which run worldwide on Cyclone programmers.

Previously the Cyclone used only SAP (Stand-Alone Programming) Images. Now Cloud-Connected Jobs are a new type of programming image that use a secure connection from the Cyclone to the PEcloud platform to provide additional control, features, and visibility to the user. PEcloud users manage these Jobs in their own Virtual Factories (VFs). Each VF space can be organized as the user sees fit in order to connect specific Cyclones, programming Jobs, and PEcloud users together logistically. Users can upload programming Jobs to PEcloud, which provides an easy-to-use online interface to manage workflow. Or a Job can also be loaded onto a local Cyclone without use of the cloud, but the cloud can still be used to monitor and manage it. 

PEcloud allows for unprecedented visibility of, and control over, programming operations. Jobs being used in manufacturing can be paused, deleted, or updated. Programming logs for Jobs can be viewed, and unique device and dynamic programming data can be inspected. Serial numbers, programming count restrictions, and shared dynamic data are managed across all Cyclones running a Job. This system reduces distribution overhead and minimizes the risk of errors while increasing security.

Read more...

An Overview of PEcloud

Apr 20, 2023

PEmicro has launched PEcloud, a cloud-based production programming Platform for the management of remote production.  Along with PEcloud, an updated version of the Image Creation utility has been released that now has the ability to generate PEcloud connected programming images (Jobs).

PEcloud gives the user a secure delivery method to send programming images to remote Cyclones, enhanced control over their IP being programmed, as well as insight into the production programming process.  It is designed with security in mind, so no matter where in the world the production programming is done, from generation of the programming image on the PC to deployment to PEcloud to downloading onto the Cyclone Production Programmer, customer Firmware IP remains safe. 

Read more...

The Difference Between SAP Images and Job Images

Apr 20, 2023

PEmicro has launched PEcloud, a cloud-based production programming Platform, along with an updated version of the Cyclone Image Creation utility.  In addition to Stand-Alone Programming (SAP) images, the Image creation utility now has the ability to generate Cloud-Connected programming images (Jobs).   

SAP images and Job images have a lot in common in terms of their base functionality, but the cloud-connected programming Jobs offer some really expanded capabilities that set them apart. 

Read more...

The Magic of SAPOBJ

Apr 20, 2023

PEmicro Cyclone programmers are sophisticated production programming tools that use programming images generated in PEmicro’s Image Creation Utility. An image combines an algorithm, binaries, and a programming script which could include  erase, program and verify of their binaries, as well as more complicated scripts along with other features like serial numbers, dynamic data, or running test commands and saving data for programming.  

Image Creation Utility offers the ability to save an intermediate non-executable object file, SAPOBj, that stores all the content together in a single object. Later, the user can generate a programming image which wraps encryption or programming restrictions around this archived SAPOBJ.  This is useful when users want to create identical programming files for production but that use different encryption or programming restrictions.   

Read more...

NXP: Secure Boot Programming for NXP LPC55Sxx Processors

Jun 14, 2022

PEmicro's Secure Boot Utility is now updated to support NXP's LPC55Sxx processors. The LPC55Sxx secure boot feature is a key component in protecting embedded devices as security threats increase both in volume and complexity. PEmicro’s Secure Boot Utility is a graphical user interface which configures Secure Boot for applications running on LPC55Sxx devices and sets device security features to inhibit copying or misuse.  Functionality includes signing applications, generating keys and certificates, setting security options, and running a security analysis of all settings.

The Secure Boot Utility automates building secure boot binary files and is used in the process of generating encrypted secure boot programming images for manufacturing.  The goal is to make sure the user's application data is secure in both the manufacturing stage and when devices are deployed in the field. The tool includes a security analyzer which grades the user's security choices based on how secure it will leave the device after programming.

The Secure Boot Utility is integrated into the Cyclone production programming software and included with the PROGARM programming software.

Read more...

Diagnostic Mode for External SPI Flash Memory

May 09, 2022

PEmicro supports external flash connected to an MCU via the SPI and Address/Data bus interfaces. When performing this type of programming, the algorithm needs to be set up specifically for our programmers to be able to communicate with the flash via the MCU. What must be configured depends on which external bus interface has been chosen for the connection. When using the Address/Data bus, the user will need to configure the external address, data, and bus control pins of the MCU. In the case of the SPI bus, the user will need to configure GPIO pins connected to the external SPI device properly. The modifications are made in the header of the algorithm file. PEmicro's PROGACMP software, as of version 8.84, has an SPI Diagnostic mode that provides the user with a new method to easily test the GPIO configuration in order to help troubleshoot programming issues.

Read more...

Errata for USB Multilink Universal Rev. E

Mar 29, 2022

The following is an errata sheet which concerns a potential issue with some versions of USB Multilink Universal Rev. E, including how to determine if the user has the affected product, the specifics of the issue at hand, and what the current solutions are. 

Summary: Reset signal (pin 4) on Port C does not toggle. This can potentially cause debug entry problems for the following NXP processor families: HCS08, HC(S)12(X), S12Z, ColdFire+ V1, and ColdFire V1. However, many of these processors do not require the reset signal for debugging and will not be affected by this errata. The HC(S)12(X) and S12Z processors are expected to be the most impacted.

Affected products: This errata affects part number USB-ML-UNIVERSAL Rev E with date code 1121.

Read more...

Updated "GO" Command Enables Improved Control of MCU Reset Type

Feb 25, 2022

PEmicro has improved user reset capabilities after a flash programming sequence. With the updated implementation of the ‘GO’ command (available with most ARM Cortex processors) in both PEmicro's Cyclone and PROGACMP (v8.76 and up) software-based programming solutions, the user is able to specify the use of a software or hardware reset to reset the MCU. 

Read more...

RS08 Adapter Available for Multilink Universal Rev. E

Feb 14, 2022

PEmicro's Multilink Universal (part# USB-ML-UNIVERSAL) recently changed from Rev D. to Rev. E. As part of this update, Multilink Universal Rev. E or later will require an adapter when communicating with NXP's RS08 devices.

The RS08 connection otherwise remains the same, and uses the same 6-pin pinout described in the Multilink Universal technical summary.

Read more...

Launch Cyclone Programming Via The 10-pin Control Port (With a Raspberry Pi Example)

Jan 19, 2022

PEmicro Cyclones feature "Cyclone Programming Control Port" functionality via the 10-pin expansion I/O interface on the Cyclone, which allows external signal control of programming operations. The Cyclone Programming Control Port may be used to launch programming as well as read the IDLE/BUSY state of the cyclone and the SUCCESS/ERROR result of the last programming operation. The port I/O operates from 1.6v-5.5v. These signals can be interfaced to by ATE (Automated Test Equipment), external buttons / LEDs, microcontrollers, etc. 

Read more...

Cyclone Incorporates Automated Run Tests Prior to Final Application Programming

Jan 19, 2022

As part of the production programming process, Cyclone FX programmers have the ability to program and run a series of custom test applications in the target processor before final programming is allowed to occur. These custom test applications are written by the end user and include any functionality desired including test and calibration of the target system. The custom test applications indicate to the Cyclone through the debug interface whether they were successful or not and also optionally return generated data to the Cyclone for use later in the programming process. If all of the custom test applications pass, the final application is programmed into the target. This advanced control/automation feature is exclusive to the Cyclone FX programmer model. 

Read more...

PEmicro Announces Development Tool Support for NXP’s New S32K3 Automotive MCU Family

Nov 16, 2021

PEmicro, an NXP® Semiconductors Gold Partner, has announced a range of development tool support for the S32K3 Automotive MCU family for next generation body, zone, and domain control applications. Tightly integrated with NXP’s evaluation boards and S32 Design Studio IDE, PEmicro tools provide a powerful platform for the evaluation, development, and production programming stages of the product cycle.

Read more...

NXP: Using PEmicro Tools to Enable S32K3xx Secure Debug Support

Nov 16, 2021

NXP's scalable S32K3xx device family features an advanced secure debug mechanism, and is based on secret keys to protect user applications throughout the development phase. PEmicro debug tools, which are deeply integrated with NXP’s S32 Design Studio and other IDEs, include Python scripts to enable and use the secure debug feature. This article will walk the user through that process.

Read more...

NXP: Overview: OS-Aware Debug Support for Azure RTOS ThreadX in GDB Server, MCUXpresso, etc.

Oct 13, 2021

Version 5.1.4 of PEmicro's GDB Server for ARM devices, is required to support for Azure RTOS ThreadX. The user does not have to do anything to set it up; the GDB server will automatically detect the presence, type, and configuration of an OS by the querying the application's symbol table for identifying characteristics. Using these discovered symbols, the debugger can traverse the kernel's internal data structures to enumerate the available threads and their corresponding execution context. This information is then used to dynamically populate the Eclipse views as the user navigates between the threads. 

Read more...

PEmicro Legacy Hardware Support Notice (In Effect As of 1 Oct. 2021)

Oct 01, 2021

Beginning October 1, 2021 the latest versions of PEmicro software will only be tested against and designed to work with the following PEmicro hardware interfaces:

MULTILINK DEBUG PROBES (2015+)

  • USB ML Universal, Rev. C or later
  • USB ML Universal FX, Rev. B or later
  • USB ML ACP

CYCLONE PROGRAMMERS (2016+)

  • Cyclone LC Universal
  • Cyclone LC ARM
  • Cyclone FX Universal
  • Cyclone FX ARM
Read more...

Update to ICD & PKG Software Licensing

Jul 23, 2021

PEmicro is changing its licensing for ICD and PKG software, in the same manner as we previously updated PROG software. Effective today, July 23, 2021, the license that activates ICD and PKG will reside on a Cyclone or Multilink debug probe rather than in the software itself. The user who activates the software will choose a Cyclone or Multilink on which to permanently install the license. This allows that hardware interface to work with ICD and PKG on any machine where a supported version of the software is installed.

Note that the ICD and PKG software itself is unchanged, it is only the licensing which has been updated.

Read more...

Cyclone Programming Demo of NXP's New i.MX RT1170 Devices

Feb 25, 2021

PEmicro offers launch day support of many NXP devices. NXP has now released the i.MX RT1170 series of crossover devices, which are fast, efficient, secure devices ideal for IoT, automotive, and industrial applications.

For this important MCU launch, PEmicro put together a  demonstration of how quickly and easily the user can create and load a programming image, and program an i.MX RT1176 device, using a Cyclone programmer.

Read more...

Cyclone Control SDK: Automated Flash Programming with Visual Basic .NET

Dec 02, 2020

PEmicro has released a Visual Basic .NET 2019 example utilizing the Cyclone Control SDK API.

The Cyclone Control SDK API allows developers to integrate the Cyclone LC and Cyclone FX into their applications. Using the API calls, you can control multiple Cyclones in stand alone programming operations and to read/update Cyclone settings.

The example project can be downloaded from our Github repository

Cyclone Control SDK also includes example applications for GCCMicrosoft Visual CMicrosoft Visual C#, Delphi/FPC, Labview, Rust, and Python.

Learn more about how you can use the Cyclone Control Suite to automate your production.

NXP: Using PEmicro's Secure Boot Utility for NXP's i.MX RT10xx/RT11xx

Nov 02, 2020

NXP’s i.MX RT10xx and RT11xx devices come with an advanced set of security features which provide a sophisticated level of protection for devices in the field. PEmicro’s Secure Boot Utility is a graphical user interface which configures Secure Boot for applications running on these devices and sets device security features to inhibit copying or misuse.  Functionality includes signing and encrypting applications, generating keys and certificates, setting security fuses, and running a security analysis of all settings.

The Secure Boot Utility automates building secure boot binary files and is used in the process of generating encrypted secure boot programming images for manufacturing.  The goal is to make sure the user's application data is secure in both the manufacturing stage and when devices are deployed in the field. The tool includes a security analyzer which grades the user's security choices based on how secure it will leave the device after programming.

The Secure Boot Utility is integrated into the Cyclone production programming software and included with the PROGARM programming software.

Read more...

NXP: Production Programming NXP i.MX RT10xx/RT11xx devices with Secure Boot

Nov 02, 2020

PEmicro's Cyclone production programmers make programming NXP i.MX RT10xx and RT11xx devices with Secure Boot enabled extremely easy and secure. The Secure Boot Utility, which comes with the programmer, handles application signing, encryption, as well as the details of security fuse configuration and locking for these specific devices. The programmer supports an extremely fast Secure JTAG connection to the target i.MX device.  

PEmicro's Production Programming Images are heavily encoded, and optionally cryptographically secureso the user’s firmware files, encryption keys, fuse settings, and passwords are safely protected from the moment the image is generated through the manufacturing process. Programming images can be restricted for use on specific cyclones, with specified date ranges and programming counts.

Learn about i.MX security features as well as see a demonstration of creating a secure i.MX RT10xx/RT11xx programming image.

Read more...

NXP: Multilink/Cyclone Debug with NXP's S32 Design Studio for ARM IDE

Aug 27, 2020

NXP 's S32 Design Studio for ARM provides a comprehensive enablement platform for ARM development with full integration of PEmicro’s GDB Server for ARM devices. This provides advanced debug capabilities via PEmicro’s Multilink, Cyclone, and embedded OpenSDA debug interfaces.

Read more...

Cyclone Control SDK: Automated Flash Programming with Python

Aug 18, 2020

The Cyclone Control SDK is a software development kit with a comprehensive API that allows developers to seamlessly integrate Cyclone LC and Cyclone FX programmers into their applications. They can manipulate SAP images, launch SAP images, retrieve programming results, and update settings. This blog post demonstrates the use of the SDK in a Python application.

Read more...

Verify SAP Image Integrity Via Checksum with Cyclone Programmers

Jul 17, 2020

PEmicro’s software can calculate a checksum to help verify the data integrity of a SAP (Stand-Alone Programming) or eSAP (encrypted Stand-Alone Programming) image file. This checksum is a 32-bit hexadecimal number such as 0x0123ABCD. This number is unique to the SAP file, which is created by the user via the Image Creation Utility. If there are any differences (algorithms, object files, paths to these files, scripts, settings, description, name of the SAP files, or path of the SAP files) in how two SAP images are built, their checksums will also be different. The checksum should be recorded for a SAP image once it has been validated and becomes a golden file that is used for production. 

Read more...

Verify a Programmed Device via Checksum

Jun 30, 2020

The most common mechanism for verifying a programmed device is via the Verify Module command which verifies programmed memory against object files on a byte-by-byte basis. PEmicro also has several verification mechanisms which use Checksums/CRCs.

The Verify Checksum (VC) command automatically calculates checksum values for all flash memory ranges in a user's object files. The programmer then runs an algorithm to calculate checksums for these device regions and compares it to the ones calculated from the object file. The advantage of this method is that it is faster than byte by byte verification when the debug connection is slow.

The Verify Module CRC to Value (VV) command calculates a checksum for the entire device and compares it to a value provided by the user. This is often used as an addition step after byte by byte verification to check the state of the entire flash (even unprogrammed regions). 

Read more...

PEmicro Discusses Cyclone Programmer Security in Embedded Online Conference Presentation

May 19, 2020

The Embedded Online Conference is a virtual conference for Embedded Systems, DSP, Machine Learning and FPGA Engineers, which is taking place on Weds. May 20 & Thurs. May 21, 2020. PEmicro is offering a presentation that describes the security measures that are used on Cyclone programmers to protect valuable IP. PEmicro president Kevin Perreault discusses Cyclone cryptography, restrictions on programming images, the ease with which a user can implement these security features, and more. Watch the presentation on the Show Floor page.

Read more...

SD Card Security for Cyclone Programming

May 13, 2020

External memory, in the form of SD Cards, has proven to be very useful for some users as a physical way to distribute programming images to Cyclone programmers. This can be a convenient way to deliver images in scenarios where the Cyclone is not connected to the internet or a PC. 

In order to be used with a Cyclone, SD Cards are first formatted and encrypted at the sector level using industry standard AES encryption. The SD Card AES keys used are a blend of different information, and encryption happens in such a way that each SDCard is uniquely encrypted; only a Cyclone programmer has the knowledge to decrypt it. This means that any Cyclone FX can read the data inside the SD Card, which allows the SD Card to be moved around to different Cyclone FX units while also inhibiting a user from being able to copy the images.

Read more...

Update to PROG Software Licensing

Apr 25, 2020

PEmicro is changing its licensing for PROG software. Effective Monday, April 27, 2020 the license that activates PROG will reside on a Multilink debug probe rather than in the software itself. The user who activates the software will choose a Multilink on which to permanently install the license. This allows that Multilink to work with PROG on any machine where a supported version of the software is installed.

Note that the PROG software itself is unchanged, it is only the licensing which has been updated.

Read more...

Cypress, NXP: Custom Clock Trimming/Calibration During Programming

Nov 21, 2019

Many MCU devices come with an uncalibrated internal clock which can have a center frequency which varies substantially from device to device.  Manufacturing tolerances generally guarantee that a processor’s clock speed is accurate within a wide percentage. Trimming the clock can allow users to calibrate the clocks to within a fairly accurate percentage (often within 0.2%). PEmicro hardware supports the process for auto-calculating and programming the trim values into many different Arm, RS08, HCS08, and ColdFire devices. 

Read more...

Multilink/Cyclone Debug with NXP's S32 Design Studio for Power IDE

Sep 17, 2019

The "S32 Design Studio for Power IDE" from NXP provides a comprehensive enablement platform for Power Architecture with full integration of PEmicro’s GDB Server for Power Devices. This provides advanced debug capabilities via PEmicro’s Multilink, Cyclone, and embedded OpenSDA debug interfaces.

Read more...

Cyclone Tutorial: Generation of a Stand-Alone Programming Image

Aug 29, 2019

Note: The Cyclone Image Creation Utility has changed in significant ways since the creation of this video, although the settings concepts that are discussed remain helpful. We hope to create an updated video soon.

PEmicro's Cyclone stand-alone programmers use Stand-Alone Programming (SAP) images that are created by the user to in-system program a target. This video provides an overview of what constitutes a programming image and demonstrates how to set up a basic SAP image using the Cyclone Image Creation Utility.

Topics covered during setup include:

  • Target Power & Voltage Settings
  • Communication Settings
  • SAP image protection, including RSA/AES encryption that will only allow your SAP image to be decrypted on specific Cyclones 
Read more...

A Step by Step Example of Using Image Encryption and Usage Restrictions

Jul 09, 2019

This article features a step-by-step example of a company that wants to use the ProCryption Security features of custom encryption and image limitations to: 

  • Secure their programming images/IP from their own source computers all the way to their own Cyclone programmers at an external manufacturer
  • Limit production programming to occur only in a specific date range
  • Generate their own custom Encryption Keys and provision Cyclones with them
Read more...

Cyclone Control SDK: Automated Flash Programming with C#

Jun 27, 2019

The Cyclone Control SDK is a software development kit with a comprehensive API that allows custom applications to control multiple Cyclones in stand alone programming operations and to read/update Cyclone settings. This blog post demonstrates the use of the SDK in the Microsoft Visual C# language. 

NOTE: The examples in this blog are shown in Microsoft Visual C#. The Cyclone Control SDK includes interface code and demo applications for GCC, Microsoft Visual C, Microsoft Visual C#, Delphi/FPC, Labview, Python, Rust, and Microsoft Visual Basic.

Read more...

Exception Catching Support in NXP's MCUXpresso IDE

May 22, 2019

ARMv7-M devices have the ability to halt when specified exceptions occur. If exception catching is enabled, the processor will halt when a user's code hits the corresponding fault handler. Exception catching serves as an aid to development by alerting users in real-time about exceptions that occur in their code.

When installed in NXP's MCUXpresso IDE, PEmicro's GDB Server plug-ins from v3.96 onward include options for exception catching, and return information about the exceptions that have occurred.

Read more...

Using Automatically Counting Serial Numbers Managed on the Cyclone

Jan 22, 2019

PEmicro's Cyclone programmers are able to internally store and track serial numbers though the use of a unique serial number ID. This increased sophistication allows Stand-Alone Programming (SAP) images stored on a Cyclone to share serial numbers that reference the same unique serial number ID. There are several cases where this is very useful. The first is when a user may want to update their firmware for a product to a new version but the serial number to have persistence.  The user may also have different products that need to be programmed with different firmware, but still want have those products draw from the same serialization sequence.  

Read more...

NXP: Real-Time SWO Debug and Power Measurement Support in NXP's MCUXpresso

Dec 11, 2018

PEmicro's Multillink debug probes feature real-time SWO data capture as well as power consumption monitoring in NXP's MCUXpresso. SWO data capture includes high speed printf() output from running code, R/W accesses to memory and variables, interrupt execution, and more. The power consumption monitoring of the Multilink FX model runs up to 250KSamples/S with a current detection range of 1mA to over 200mA. 

Read more...

PEmicro Multilinks/Cyclones Debug With Powerful New SWO Tools

Oct 17, 2018

PEmicro has added powerful SWO debug support to its plug-in for Eclipse-based ARM IDEs. Users previously had to step through code or use breakpoints and halt the device in an attempt to find bugs in their code. This would only provide insight into activity at one point in time. With SWO debug, the user can now take advantage of real-time insight into what’s going on in their device using SWO power, variables, and printf features. Once the device is stopped, they are able to get a broad insight into various events that occurred during execution, via ITM Trace. PEmicro’s SWO plug-in is available for Windows, Linux (Ubuntu), and Mac OS.

Read more...

Cyclone Programmers Overview Video

Oct 11, 2018

PEmicro has designed our Cyclone LC programmers, and more advanced Cyclone FX programmers, to be helpful tools for for a broad range of production programming situations. In this video Edison Tam, one of PEmicro's senior design engineers, provides a quick and useful overview of these Cyclone programmers that will help those interested in production programming understand the Cyclone features, as well as how these features can provide specific benefits to a project or production line that save the user time and money. He demonstrates a typical configuration and use case for manual programming, as well as an overview of the control and automation features available with the Cyclone Control Suite.

Read more...

Cyclone Control SDK: Automated Flash Programming with LabVIEW®

Oct 08, 2018

April 2021 - We've updated this blog post with more information about gang operation.

PEmicro is excited to announce the release of a library of LabVIEW VI components as well as a sample project as part of the Cyclone Control Suite. This new feature facilitates easy integration of Cyclone stand-alone programmers into production applications developed in LabVIEW®. 

Read more...

Multilink Trade-in Program

Aug 01, 2018

PEmicro has been offering debug probes for over 20 years. Our latest models, the Multilink and the Multilink FX, have become two of our most popular products, with tens of thousands of units sold worldwide. With so many Multilinks in use, PEmicro felt that it made sense to create a program that enables customers to turn in old/broken units for a discount when purchasing new hardware, or when upgrading from a basic to a high-speed model. Therefore PEmicro is pleased to introduce the Multilink Trade-in Program.

Read more...

IAR: How to use PEMicro's Multilink and Cyclone Interfaces with IAR Embedded Workbench for ARM

Jun 27, 2018

PEmicro's run control and FLASH programming support is fully integrated into IAR’s Embedded Workbench for ARM microcontrollers. This provides debug capabilities via PEmicro's Multilink, Cyclone and embedded OpenSDA debug interfaces, which support a broad range of ARM devices from NXP, STMicroelectronics, Atmel, Cypress, Infineon, Silicon Labs and many others. For complete list of ARM devices that PEMicro supports, please visit the following page: http://www.pemicro.com/arm/.

Read more...

Good Corporate Citizenship

Jun 06, 2018

PEmicro takes its responsibility as a corporate citizen seriously, both as it relates to our products and our footprint as a company. RoHS, CE, Conflict Minerals and other certifications and programs help us to make sure our products live up to our own and industry standards. We believe environmental compliance is an essential part of doing business and strive to meet regulations and certifications that make the world a safer and healthier place for all.

Read more...

How to use PEMicro's Multilink and Cyclone Interfaces with Keil's MDK-ARM IDE

Apr 13, 2018

PEmicro's run control and FLASH programming support is fully integrated into ARM's MDK-ARM Keil uVision Integrated Development Environment v5.25 for ARM microcontrollers. This provides debug capabilities via PEmicro's Multilink, Cyclone and embedded OpenSDA debug interfaces for a broad range of ARM devices from NXP, STMicroelectronics, Atmel, Cypress, Infineon, Silicon Labs and many others. For complete list of ARM devices that PEMicro supports, please visit the following page: http://www.pemicro.com/arm/.

Read more...

Cyclone Control Suite: Cyclone Control Console

Dec 05, 2017

The Cyclone Control Console is a powerful command-line application that allows simultaneous control of one or more Cyclones. Programming images can be added/removed, settings read/set, programming operations launched, and dynamic data programmed. The command-line application displays comprehensive status messages and also returns an error code indicating success or failure. The application can be launched from a script, a console, or another application. It is one of the three main components of the Cyclone Control Suite including : the Cyclone Control Console, the Cyclone Control GUI, and the Cyclone Control SDK.

Read more...

Overview: Cyclone Control and Automation

Oct 18, 2017

PEmicro's Cyclones all include a powerful set of automated control software, the Cyclone Control Suite, which support PC based control of these popular Cyclone LC and Cyclone FX stand-alone programmers.

The suite provides comprehensive control of one or more Cyclones from the PC via the following components: the Cyclone Control GUI application, the Cyclone Control Console application, and via custom PC applications built using the Cyclone Control SDK. Ways to control the Cyclone include programming launch, recovering results, managing images resident on a Cyclone, adding unique programming data for each target, as well as recovering descriptive errors.

Read more...

Cyclone Control SDK: Automated Flash Programming with C

Oct 18, 2017

PEmicro’s product line of Cyclone stand-alone programmers provides a fast, robust, and automated solution for production-scale programming of microprocessors. However, production facilities may desire an even higher level of automation than the single-button touch capability that is offered by the Cyclone. PEmicro offers several means of automating control, including a console application, Ethernet/Serial protocol communications, or the SDK included in PEmicro's new Cyclone Control Suite. In this article, we discuss using the SDK to automate programmer control and the levels of flexibility and scalability that it offers our customers.

NOTE: This example is shown in C. The Cyclone Control SDK interface code and demo applications are included for GCC, LabView, Microsoft Visual C, Microsoft Visual C#, Delphi/FPC, Python, Rust, and Microsoft Visual Basic.

Read more...

Using the Cyclone Control GUI To Load Images Onto Cyclones, And More

Oct 18, 2017

Note: This blog post was updated in July 2019 with new information regarding Cyclone image encryption (part of the ProCryption Security feature).

As part of the Cyclone Control Suite, PEmicro includes a graphical application called the Cyclone Control GUI that allows the user to add and remove images, access Cyclone settings, read Programming Image properties and statistics, and remote access a Cyclone's display. It also provides the user with tools to manage ImageKeys (for encrypted images), serial files, and optional Cyclone licenses.

Read more...

PEmicro Introduces Cyclone Trade-In Program

Oct 18, 2017

PEmicro is pleased to introduce our Cyclone Trade-in Program which is a simple upgrade path to trade-in an old or non-functional Cyclone unit for a discount on a new Cyclone LC or Cyclone FX programmer.

Read more...

Debug Tools: Overview of PEMicro's Multilink Debug Probes

May 17, 2017

PEmicro offers three USB Multilink debug probes, each with different features or device support. In this video, Edison Tam offers a brief overview of our Multilinks to help users decide which Multilink would be best suited to their project.

Read more...

NXP: NXP's MCUXpresso IDE Debug With Fully Integrated PEmicro GDB Server

Apr 06, 2017

NXP's MCUXpresso Integrated Development Environment for LPC and Kinetis microcontrollers features full integration with PEmicro’s GDB Server. This provides advanced debug capabilities via PEmicro’s Multilink, Cyclone, and embedded OpenSDA debug interfaces including: hardware breakpoints, watchpoints, real-time variables, semihosting, FreeRTOS awareness, the ability to attach to a running target, the ability to provide target power, remote debug, and more.

Read more...

View Variables While Code is Running in PEmicro's GDB Eclipse Plug-In

Mar 02, 2017

PEmicro’s GDB Server Plug-in for ARM devices features the ability to view variables and memory while a target ARM device is running. This Eclipse plugin can be installed in any Eclipse-based IDE and supports the debug of ARM microcontrollers via PEmicro’s Multilink, Cyclone, and OpenSDA debug hardware. The “Real Time Expressions” view, which is part of the plugin, is similar to the normal expressions view, except that it works while the part is running.

Read more...

High-Speed Programming For Power Architecture MPC5xxx/SPC5xxx Devices

Jan 24, 2017

PEmicro has just released pipelined programming algorithms for a variety of Power Architecture devices. These new pipelined algorithms can be huge time-savers for those who program Power Architecture devices either in development or on their manufacturing lines, as they result in 50% to 100% faster programming times than using non-pipelined algorithms.

Read more...

Choosing the Correct Programming Algorithm

Jan 06, 2009

When using PEmicro's PROG family of programming software, it's necessary to specify the correct programming algorithm to match your hardware setup. Because PEmicro provides thousands of different programming algorithms this can seem like a duanting task. In this article we discuss how to quickly determine the programming algorithm that correctly matches a specific hardware setup.

Read more...

Recommended SAP Sequence for Targets with Trim

Nov 04, 2008

This tip concerns PEmicro's Cyclone automated programmers. We've noticed that on rare occasions some users have observed that although a "PT" (program trim) command has been specified in the SAP programming sequence, the trim value is not programmed. By working closely with Cyclone users, we've discovered that the issue is not that the Cyclone receives the command and fails to program the trim value to the target, but rather the PT operation was accidentally pre-empted by the user. How could this happen if the operation is configured in the Cyclone and all a user needs to do is wait for the operations to finish?

Read more...

Save Data From Erase Module Using Preserve Range

Oct 10, 2008

The Erase Module function of PEmicro programming algorithms generally erases all data in a flash module. Sometimes a user may not wish to fully erase the flash. On algorithms which support selective erase functions (like Erase Object Ranges or Erase Range), those mechanisms can be used instead to only erase the regions desired. On algorithms which only support Erase Module, the algorithm itself can be modified to preserve certain ranges of flash memory. Before erasing the flash, the programmer looks at the ranges to be preserved, saves it, and reprograms it automatically after the Flash/EEPROM has been erased. Some settings in some flashes (like timing TRIM parameters) are automatically preserved.

Read more...

Programming Paged Flash for HC(S)12(X) Microcontrollers

Oct 09, 2008

The HC(S)12(X) microcontroller family uses a paged flash architecture to expand its addressable memory beyond the standard 64KB (or $0000 to $FFFF). Microcontrollers with this feature treat a 16KB block of memory from $8000 to $BFFF as a memory window.  This window allows multiple 16KB blocks to be switched into and out of program memory.  An 8-bit program page register (PPAGE) tells the microcontroller which block to read.

Read more...