The World's First Cloud-based Flash Programming Platform

Deploy, monitor, and manage cloud-connected production Programming Jobs across the world, securely and in real-time


Cyclone production programmers consume production programming images which contain all necessary data and instructions to flash program a target's memory. With the launch of PEcloud, PEmicro has introduced a new type of encrypted programming image called a Programming Job. Programming Jobs are programming images that use a secure connection from the Cyclone to the PEcloud platform to give additional features, control, and visibility to the user. The user manages all of their jobs in their own Virtual Factories which connects specific Cyclones, programming jobs, and users logically together.

Features of the PEcloud

Programming Job visibility and control. Anywhere

Users have unprecedented ability to create, view, replace, and stop/pause existing Programming Jobs in real-time in their Virtual Factories. Every time a programming Job executes on a Cyclone, permission is requested from PEcloud and the programming result subsequently recorded. Programming counts restrictions are enforced across Cyclones and results of programming operations can be inspected. The user can control how much of their product is produced and stop it at any time.

Automated and Secure Programming Job Delivery

Programming Jobs can optionally be delivered automatically to Cyclones in a Virtual Factory, regardless of the Cyclone's physical location, without any human intervention. Jobs become automatically available to Cyclones when created and disappear from Cyclones when deleted or stopped/paused. Job binaries are securely downloaded as needed. All programming Job binaries are encrypted with user generated and held image cryptography keys. Programming jobs can also be manually loaded to Cyclones, instead of distributed automatically, and yet are still tied to the PEcloud during operations.

Storing Programming Results and Unique Data

The PEcloud platform captures information of every programming request and device programmed. Unique data programmed to each target as well as unique data within each device being programmed can be captured. This means that serial numbers and other dynamic data can easily be correlated to exact devices by their unique hard coded identifiers. This data can be used to easily identify every authentic device produced by a company.

Shared Restrictions & Serial Numbers, Dynamic Data Servers

Programming count restrictions of a Job are enforced regardless of how many Cyclones are running the Job. Serial numbers can be shared across many Jobs and Cyclones. Jobs can be configured to request additional dynamic data for programming each target from a customer's own data servers. This allows a customer to source custom data, keys, anti-cloning fingerprints (based on the device's UIDs) for each device being programmed without having to share this data with their manufacturing partner.


The PEcloud is an innovative cloud-based production programming management platform that enables users to create their own Virtual Factories. A Virtual Factory connects together sets of programming Jobs, Cyclones, and Users so they can be managed together. From their personal computers, users are able to generate encrypted Jobs in their Virtual Factories. These Jobs are automatically delivered to Virtual Factory Cyclones, regardless of their location, reducing distribution overhead and minimizing the risk of errors while increasing security. Programming Jobs can be viewed, paused, deleted, or updated in real-time online. 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.

Cyclone programmers have always had the ability to run Programming Images which contain all the necessary programming data and instructions required to flash program a target's memory. As part of the PEcloud launch, PEmicro has launched a new type of programming image referred to as a Programming Job. Cyclone production programming Jobs have all of the functionality of production programming Images with many additional benefits derived from being connected to the PEcloud platform, including:

  1. World-wide real-time Job visibility and control
    Users can monitor PEcloud programming jobs that are in use anywhere in the world, giving them unprecedented ability to change, limit, and view the use of their programming data. Every programming job iteration run on a Cyclone is authorized by the PEcloud and the programming result is recorded. Programming jobs may be inspected, stopped/paused, or replaced at any time.
  2. Job creation and secure automatic delivery
    Users securely create new encrypted jobs from their own PC which become available to Cyclones attached to a Virtual Factory, regardless of the Cyclone's physical location. Cyclones, through the LCD or the local automated control SDK, pick from the jobs available in the Cyclone's Virtual Factory. The encrypted programming binary associated with a Job can be automatically delivered to Cyclones without the need for manual handling/loading. This reduces the risk of errors and increases security as there is no need for local handling of the Job programming binary, only the selection of the Job. Alternatively, a Job's binary can be loaded locally to the Cyclone and tracked in the PEcloud.
  3. Logging of programming results and unique data
    The PEcloud platform captures information of every programming iteration and device programmed. It can capture unique data programmed to each target as well as unique data within the device being programmed, such as the device unique identifier (UID). There is no need for the manufacturing facility to log and return programming data, this happens automatically in the PEcloud. During creation of a job, the creator decides what information to capture.
  4. Shared Serial Numbers and Restrictions
    The user creates a programming Job and makes it available to their cyclones in a Virtual Factory. It doesn't matter if the Job runs on one Cyclone or fifty. Serial numbers, programming count restrictions, and shared dynamic data are managed across all Cyclones using the Job. Serial numbers are shared across different jobs so that every target across multiple product lines, build lots, and firmware versions can be uniquely identified.
  5. Fetching of unique server based data
    Jobs can be configured to request additional data for programming from PEcloud connected servers run by the user. As an example, during a single job programming operation, the Cyclone can read the target device's UID, submit it to an external PEcloud connected server anywhere in the world, get a response with some additional dynamic data (such as a signature of the UID) and add that to the data being programmed into the target as part of the job.
  6. Programming Job Security

    Independent of the PEcloud platform, users create their own custom cryptographic image/job keys. The keys are pre-installed locally into each Cyclone they may want to access their programming jobs in the future. When the user creates programming Jobs, the same image/job key is specified as the encryption choice. The Job binary is encrypted in a way that only the Cyclones with the same key installed can decrypt and use it. The protection works regardless of how the jobs are delivered to the Cyclones. The customer holds the image/job cryptography keys independently of PEcloud.

    The Job binary contains a copy of all restrictions specified as part of Job creation including which virtual factory it is attached to, programming count restrictions and date usage restrictions. Both the cyclone and the PEcloud track programming counts for each Job.

    When Cyclones are provisioned to a specific virtual factory in the PEcloud, they are assigned a unique certificate which gives them access to that Virtual Factory. The communication channel is a secure channel through which the Cyclone requests programming permissions and Job Binary download. The permission to access a specific virtual factory, and the related secure communications channel, can be revoked as desired by the user.

About Us

With over 40 years of experience and leadership in the embedded systems space, PEmicro conceived, designed and implemented the PEcloud as a next-generation platform to tackle the challenges of an ever-more-connected world. Here are 3 of our previous accomplishments:

  • In 1980 we developed and marketed the world's first general purpose EPROM programmer.
  • PEmicro was also the world's first to develop the concept of an in-circuit simulator.
  • We also brought to market the world's first products to use background debug mode.

More than

Satisfied Customers

More than

Years of experience

Frequently Asked Questions

If you don't find what you're looking for on this FAQ, please contact us and we'll be glad to help.

  • Is there a cost to using PEcloud?

    There currently is no cost to using PEcloud. Eventually we may create a paid tier based on volume, time, or feature set.

  • PEcloud was developed by PEmicro, a renowned leader in the embedded systems industry for over 40 years. Originally created to address PEmicro's own flash programming production challenges, we soon realized its potential as an invaluable resource for our customers. With a focus on security, we built the PEcloud platform from scratch, tailoring it to meet the specific needs of our clients.

  • A Virtual Factory (VF) is a powerful feature of the PEcloud platform that allows you to group multiple resources together for a shared purpose. These resources include Cyclones, Jobs (with associated programming images), and Users. By grouping these resources into a logical space, it allows you simply specify which pieces work together.

    For example, you can create a VF for each remote physical factory and assign specific Cyclones and Jobs to each VF. This enables you to manage the programming jobs which are available to Cyclones in each factory independently. Alternatively, you might want to create a new VF for each customer, so that you can invite customers into their respective VFs to view the progress of their programming runs. You could also create separate VFs for testing and production, or combine the two.

    Cyclones don't need to be physically located in the same place to work together. You can have Cyclones in different locations all working on the same Programming Job under the same VF. Additionally, one VF can be set up to work with multiple Programming Jobs simultaneously. The Cyclones can select from a list of available jobs.

    The possibilities of how to utilize VFs are endless, but the most important thing is that a VF is a great tool for organizing and optimizing your programming processes.

  • The PEcloud works with PEmicro's Cyclone LC and Cyclone FX production programmers. These are extremely powerful and easy to use in-circuit programmers. They also have the appropriate level of cryptography support to keep your data safe. Cyclone Programmer details can be found here.

Contact Us

We're friendly human beings always willing to help and to provide the absolute best customer experience. Feel free to reach to us for any questions, requests, proposals or suggestions. We truly appreciate your time and we try to read and reply to all correspondence we get.


98 Galen Street, Watertown, MA 02472-4502