PEmicro Blog

Comparison of the Classic Automated Control Package and the Cyclone Control SDK

Nov 19, 2019

Note: The Classic Automated Control Package is no longer available, neither in its paid nor free editions, as it was tied to the legacy V1 license model. Information on updating to the current Cyclone models, which include free automation and control features for one or more Cyclones, is available on the Legacy Harware Transition page.

PEmicro's Classic Automated Control Package is an older product that enables users to to control and automate the production process with PEmicro's legacy Cyclones (Cyclone PRO, Cyclone MAX, Cyclone for Renesas, Cyclone for ARM devices, Cyclone for STMicro). PEmicro most recent control package is the Cyclone Control Suite, which is included with all next generation touchscreen Cyclones (Cyclone LC and Cyclone FX). Like the Classic Automated Control Package, the newer Cyclone Control Suite also includes an SDK (called the Cyclone Control SDK).

Those who use the Classic Automated Control Package but are upgrading to a Cyclone LC or Cyclone FX programmer might have questions about the new Cyclone Control SDK, such as: 

  • What are the differences between the two SDKs?
  • Can the classic SDK be used with the new Cyclones?

This blog post will address these questions and provide a brief comparison of the Classic Automated Control Package and Cyclone Control Suite, with the goal of simplifying the transition from the old SDK to the new SDK.

API Calls and Library Files

The Cyclone Control SDK and the Classic Automated Control Package have two different sets of API calls and DLLs:

  • The Cyclone Control SDK API is known as the "new API", and the DLL is named cycloneControlSDK.DLL.
  • The Classic Automated Control Package is known as the "classic API", and the DLL is named cyclone_control.DLL.

Users have the choice to use either API for their application. Both APIs provide standard capability to delete images, load images, and execute images. However, PEmicro recommends using the new API with the next generation touchscreen Cyclones for more advanced capabilities. 

API Versions

The classic API offered three different license versions (Basic, Professional, and Enterprise). The free Basic version provided a limited API that could control one legacy Cyclone storing one image. The Professional version could be deployed to one PC (single user) and could control up to 3 Cyclones. The Enterprise version could be deployed to up to five PCs (single user) and could control up to 100 Cyclones. 

The new API has just one version that activates advanced SDK features and is licensed to the Cyclone unit only. These features can be added to the Cyclone LC with the purchase of the Advanced Control Suite Upgrade License. The Cyclone FX already includes the advanced features license. 

Limitations When Using the Classic Control SDK 

To use the classic API, you can use cyclone_control.DLL (Version 5.89) or rename cycloneControlSDK.DLL to cyclone_control.DLL. The classic API supports the Cyclone LC and Cyclone FX, however the user will not be able to take advantage of some of the features in these new Cyclones. 

The limitations are as follows:  

  • The Classic SDK cannot erase a specific image that is stored on the Cyclone's memory. If you erase an image, all images need to be erased at once.
  • External SDHC memory on the touchscreen Cyclones is not supported with the Classic SDK. 
  • Cyclone, Image, and Network Properties are not supported with the Classic SDK. 
  • Multiple errors and error descriptions are not supported with the Classic SDK.
  • The Classic SDK also does not support some special features.

Comparison of API Calls

Each SDK has its own API, but many of the calls have very similar functionality (albeit with a slightly different name). Below is a table comparing the sets of APIs. Please refer to the Cyclone user manual for a complete description of the exact functionality and parameters of each function.

Automated Control Package
Cyclone Control SDK
DLL File Name
cyclone_control.dll
cycloneControlSDK.dll
DLL Loading / Unloading Calls
load_dll
loadLibrary
unload_dll
unloadLibrary
Port Enumeration Calls
enumerate_all_ports
enumerateAllPorts
close_all_ports
disconnectFromAllCyclones
Connection Calls
connect_to_cyclonepromax
connectToCyclone
disconnect_from_cyclonepromax

Programming Control Calls
START_execute_all_commands
startImageExecution
START_dynamic_program_bytes
startDynamicDataProgram
check_STARTED_cyclonepromax_status
checkCycloneExecutionStatus
dynamic_read_bytes
dynamicReadBytes

getNumberOfErrors
get_last_error_code
getErrorCode
get_last_error_addr
getLastErrorAddr

getDescriptionOfErrorCode
Image Configuration and Maintenance Calls
get_image_description
getImageDescription
compare_image_with_file
compareImageInCycloneWithFile

eraseCycloneImage
erase_all_cyclone_images
formatCycloneMemorySpace
add_image_to_cyclone
addCycloneImage
update_image_with_file

count_cyclonepromax_images
countCycloneImages
set_cyclonepromax_media_type

Miscellaneous Calls
get_firmware_version
getFirmwareVersion

getPropertyValue

setPropertyValue

getPropertyList

cycloneSpecialFeatures


Users with additional questions or concerns about the Classic Automated Control Package or Cyclone Control Suite can contact us at technical-info@pemicro.com

Tags related to this Blog Post

Cyclone     Cyclone FX     ARM     NXP     Production Programming     Automated Control