PEmicro's PROG for ARM® Cortex™ Processors flash programmer software allows you to program/reprogram external flash devices from many ARM device manufacturers in-circuit, via one of PEmicro's compatible hardware debug interfaces. The programmer talks to the processor's Background Debug Mode through a compatible hardware interface (sold separately), which connects the parallel port or USB port of a PC to a mini-10 or mini-20 pin JTAG connector on the target system. PROG for ARM Cortex processors also includes the command-line version of the programmer software CPROGACMP. Together they are perfect for development, production line programming, or field firmware upgrades. Licensing Update The license that activates PROG now resides 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. The allows that Multilink to work with PROG on any machine where a supported version of the software is installed. No license is required to use PROG software with Cyclone programmers, as the Cyclone includes PROG software. Check our PROG Licensing blog post to see which Revisions of Multilink debug probe are supported. Note: The PROG software itself is unchanged, it is only the licensing which has been updated.
Supported Devices
PROG for ARM Cortex processors supports programming of ARM devices from several manufacturers. You may use our ARM resource page to check if your specific device is supported. The programmer comes with PEmicro's entire library of compatible programming algorithms, and we support programming of both internal and external (SPI) flash.
Features
PEmicro has a resource page describing different methodologies for programming target flash in both development and production environments:
Flash Programming Resource Page
Programmer features include:
- Program
- Verify
- Blank check
- Upload
- Display
- Erase
Prog programmers also support serialization.
Kinetis is a registered trademark of NXP Semiconductors. ARM is a registered trademark and Cortex is a trademark of ARM Limited. All other names are property of their respective owners.
System Requirements |
Windows 7/8/10
|
|
|
Compatible Hardware:
| Usage | Multilink | Multilink FX | Cyclone LC | Cyclone FX | | | - Development
- Production Programming
- Test
| - Development
- Production Programming
- Test
| Included with Hardware | | | | | Operating Modes | | | - Tethered To PC
- Stand-Alone Programming
| - Tethered To PC
- Stand-Alone Programming
| Communication | | | - Full-Speed USB 2.0
- Ethernet 10/100 baseT
- Serial Baud 115200 N81
| - High-Speed USB 2.0
- Ethernet 10/100 baseT
- Serial Baud 115200 N81
| Speed | | | | - Extremely fast: Up to 25Mb/s
| Power management | - Does not provide target power
| - Can provide 3V/5V via ribbon cable
| - Can provide 1.8-5V via ribbon cable
- automatically switch up to 24V via internal relays
| - Can provide 1.8-5V via ribbon cable
- Automatically switch up to 24V via internal relays
| Automation | - Scripted programming using CPROG* (sold separately)
| - Scripted programming using CPROG* (sold separately)
| - Cyclone Automated Control SDK (advanced features via additional license)
- Scripted programming using CPROG*
| - Advanced Cyclone Automated Control SDK
- Scripted programming using CPROG*
| Model Compatiblity | - MULTILINK_ACP
- MULTILINK_UNIVERSAL
| - MULTILINK_ACP_FX
- MULTILINK_UNIVERSAL_FX
| - CYCLONE_LC_ARM
- CYCLONE_LC_UNIV
| - CYCLONE_FX_ARM
- CYCLONE_FX_UNIV
| Extended Security Features | | | - ProCryption Security via additional license
- Anti-tamper Technology
| - ProCryption Security (RSA/AES image encryption)
- Anti-tamper Technology
- Limit programming to a date range
- Limit # of programming operations
| On-board memory | | | | | Expandable Storage | | | - SDHC port via additional license
| | *CPROG is included with Prog Software |
|
Tips
Chip Select Diagnostics for External Flash
PEmicro supports both internal flash and flash connected to an MCU via the SPI, I2C, and Address/Data bus interfaces. Programming algorithms must make assumptions about how the flash is connected to the MCU, but if these assumptions are off, the "Chip Select Diagnostics Mode" in our PROG software can help the user determine what changes may need to be made to the programming algorithm to match their device setup. Read more about how to use Diagnostics mode:
Chip Select Diagnostics for External Flash
|
Jump to: Documentation / Manuals Downloads FAQs Version info & Release Notes
|
|
|
|
Downloads |
 |
Algorithms for NXP Kinetis, External Flash
(11986 KB)
Algorithms for NXP Kinetis, External Flash (.zip) |
 |
Algorithm/Support File Directory for ARM devices, Internal Flash
(4654 KB)
Algorithm/Support File Directory for ARM devices, Internal Flash (.zip) |
 |
Algorithms for ARM devices, SPI Flash, External (NXP only)
(3117 KB)
Algorithms for ARM devices, SPI Flash, External (NXP only) |
 |
Algorithms for ARM devices, SPI Flash, External (except NXP)
(3106 KB)
Algorithms for ARM devices, SPI Flash, External (except NXP) |
|
|
|
FAQs |
 |
How do I partition my FlexNVM on the Kinetis to have Data flash and EEPROM backup flash memory? (e.g. K10DX128, K20DX256, K60FX512) |
 |
The connection assistant dialog indicates that my Multilink or Cyclone is undetected even though I have connected the hardware to my USB port. What should I do? |
 |
I am attempting to program external flash connected to my embedded processor. Either the erase, program, or show module does not work. What is the most likely source of this issue? |
 |
I cannot see PEmicro hardware interfaces under Windows 10 Anniversary addition, how do I update to latest PEmicro drivers? |
 |
How can I use CPROG to program dynamic data, such as a serial number, into my product where the number changes for each device I am programming? |
 |
When I run the command-line programmer and its path has a space in it, or run the programmer with a configuration file whose file name has a space in it, I get an error:
Error - Invalid command line parameter. ERROR 43 during script!
How do I fix this problem? |
 |
How do I activate my PEmicro software? |
 |
I launched the command-line CPROGxx flash programmer, saw a window flicker up, and then disappear. How do I know what happened? |
 |
I am interested in launching the CPROGxx command-line flash programmer from my own application, and reading the resultant error code. Is there some simple way to do this from a Windows based application? |
 |
When I load the ICD debugger or PROG programme softwarer, my Firewall software tells me it is attempting to access the internet, Why? |
 |
Can your programming software calculate and return a checksum? |
|
|
|
|
Product |
Version |
PROG-HL-ARM |
8.22 |
Release Notes:####################################################
PROGACMP v8.22.00.00
November 5, 2020
New Features or Bug Fixes
Adds Secure Boot Utility, which helps users enable secure boot on NXP i.MXRT processors
Adds support for secure JTAG on NXP i.MXRT processors
Cyclone/Cyclone FX firmware updated to 10.63
####################################################
PROGACMP v8.05
August 5 2020
Bug fixes:
Bug fixes to HW licensing utility
New Device Support:
S32K2TV
STM32L4P
STM32L4Q
Various Cypress CYBLE devices (including Cypress CYBLE-416045-02 and CYBLE-022001)
Various MIMXRT devices
ST STM32F7 option bytes
ST STM32H7 option bytes
Device Updates:
STM32F2 flash and option byte algorithms
STM32F4 flash and option byte algorithms
Improves debug mode entry for NXP CortexM33
[REDPINE] Add Erase Range Sector command to RS14100
Cypress PSoC4 CYBLE
Cypress CY8C63xx
Cypress CY8C62xx
Remove Cypress CY8C61xx folder
STM32F2 Option Bytes
Some STM32F4 Option Bytes
STM32G0 Option Bytes
STM32H7A_Bx
STM32F72x and STM32F74x Option Bytes
ST SPC572L Shadow
Silicon Labs EFR32 Blue Gecko
TI CC3220(MOD)
Duplicate STM8 algorithms removed
NXP K32Wx
NXP LPC540xx and LPC54S0xx
NXP S32K1xx
NXP Sensors
Cyclone/Cyclone FX firmware updated to 10.54
#######################################################
PROGACMP v7.95
19 May 2020
New Device Support
-TI 32xx
-STM32H7Ax/Bx
-STM32F2xx Option Bytes
-STM32F40/1x Option Bytes
-Silicon Labs EFR32MG1B/1P/1V
-Silicon Labs EFR32FG1P/1V
-NXP sensors nxp_jn5188/89
-NXP sensors nxp_qn9030/90
-NXP K32Wx nxp_k32w041/61
-Cypress CYBLE-416045
-Cypress CY8C6357LQI
####################################################
PROGACMP v7.89
12 March 2020
- USB-ML-UNIVERSAL 10.46
- USB-ML-UNIVERSAL-FX 10.46
New Device Support
- [Cypress] Traveo II
Bug Fixes
- [NXP] KE02 Program Bytes and Program Words command
- [Cypress] PSoC4 devices utilizes Erase All NVL Command
- IMXRT5xx and IMXRT6xx can now boot from external SPI
- IMXRT595S and IMXRT685S uses hard reset for vector catching
- Reset fix for K22FX512 that does not have a reset line connected
- PU command no longer tries to read a block of flash while writing another block
####################################################
PROGACMP v7.85
22 January 2020
- USB-ML-UNIVERSAL 10.42
- USB-ML-UNIVERSAL-FX 10.42
####################################################
PROGACMP v7.78
18 December 2019
New Features
- [ARM] Program User Options
New Device Support
- [STM] STML4 Option bytes
- USB-ML-UNIVERSAL firmware 10.36
- USB-ML-UNIVERSAL-FX firmware 10.36
- CYCLONE and CYCLONE FX firmware 10.41
####################################################
PROGACMP v7.69.00.00
November 4, 2019
Bug Fixes
-[NXP] LPC55xx A1 rev blank device fix
-[CYPRESS] Reset + Go fix to get Cypress devices out of debug mode
-[NXP] S32K2xx soft reset toggle
-[CYPRESS] Improved debug entry for PSoC 4 and 6 (Power toggle is now automatic for devices with no external reset pin)
-[CYPRESS] PSoC 4 Chip Protect
New Features
-[ARM] Init_none parsing to allow for initwrites in any algorithm
-[ARM] Generic Custom Trim
New Device Support
-[Cypress] CYPD317x (CCG3PA) family
- USB-ML-UNIVERSAL firmware 10.36
- USB-ML-UNIVERSAL-FX firmware 10.36
- CYCLONE and CYCLONE FX firmware 10.36
####################################################
PROGACMP v7.61.00.00
September 23, 2019
- General bug fixes and improvements
- New Device Support
Atmel SAMD2x
NXP i.MXRT11xx
NXP K32L2Bxx
NXP LPC540xx/LPC54S0xx OTP
NXP SJA11110x
ST STM32G4
ST STM32WB
TI CC13xx
####################################################
PROGACMP v7.48.00.00
July 18, 2019
Bug Fixes
[SiliconLabs] Improves debug entry and unsecure for EFR32, EFM32JG, and EFM32PG devices
[SiliconLabs] New algorithms with voltage scaling fix
Adds .sx to the file filter
[ARM] NXP LPC11xxx fixes
[ARM] Prevents device from reentering debug mode in some cases when using RE GO in your image
[ARM] LPC55xx run control fix
New Features
[ARM] Same5x User Page support
New Device Support
[ARM] Cypress PSoc 6 devices
[ARM] TI CC3200
[ARM] Atmel SAM5x/SAMD5x
[ARM] STM STM32L4xxxG and STM32L4xxxI with option bytes
- USB-ML-UNIVERSAL firmware 10.26
- USB-ML-UNIVERSAL-FX firmware 10.26
- CYCLONE and CYCLONE FX firmware 10.27
####################################################
PROGACMP v7.00.00.00
October 8, 2018
- Allows debug entry on KVx device if NMI pin is low
- Fixes PSoC5 Test Mode key and address
- General bug fixes
####################################################
PROGACMP v6.94.00.00
22 August 2018
- Updated support for Security for SiLabs and Atmel devices
- Support for Intel Extended Address HEX files
- Support for USB ML Universal REV D
- Support for USB ML Universal FX REV C
- ML FX Power up delay fix
####################################################
PROGACMP v6.71.00.00
29 December 2017
- GO command in CPROGACMP will disconnect debug signals and allows the chip to enter run mode
- Adds support for Silicon Labs EZR32
- Adds support for Infineon XMC1000 series
- Adds support for Cypress PSoC 5
####################################################
PROGACMP v6.22.00.00
16 February 2017
- Includes WinDriver 12.4 to support Windows 10 Secure boot
- CPROG now returns an exit code of 1 if the program is closed prematurely instead of 0
- USB-ML-UNIVERSAL 9.81 firmware
- USB-ML-UNIVERSAL-FX 9.72 firmware
####################################################
PROGACMP v5.74.00.00
16 June 2016
- Adds Nordic Semiconductor support for Arm Cortex devices
- Improves debug entry for Cypress PSoC 4 processors
- Adds Chip Protect command (Cypress security)
- Fixes communications problems with LPC1769
####################################################
PROGACMP v5.74.00.00
8 January
- Support for ELF/DWARF 3 and 4, and 64-bit ELF
- Includes WinDriver 12.2 to support Windows 10
####################################################
PROGACMP v5.71.00.00
23 November 2015
- Fixes communications issue with brand new Silicon Labs processors which are factory programmed with a special bootloader application
- The "GO" command now toggles the reset signal and leaves the processor running without re-entering debug mode
- Adds support for Atmel SAMC and SAMV7 processors
#####################################################
PROGACMP v5.58.00.00
9 October 2015
- Adds NXP LPC12xx flash support
- Adds ARM Cortex-M support for the following vendors: Cypress, Maxim
- Improves debug entry procedure for Atmel processors
- Adds Freescale KV5x flash support
- Changes reset delay option to apply to both rising and falling edges of reset
- Improves debug entry procedure for Freescale KEx devices by disabling NMI interrupt before soft reset
#####################################################
PROGACMP v5.43.00.00
19 June 2015
- Adds ARM Cortex-M support for the following vendors: Atmel, Infineon, NXP, Silicon Labs, STMicroelectronics, and Texas Instruments
- New 9.38 firmware for USB-ML-UNIVERSAL Rev C and USB-ML-Universal FX Rev B
- Turns off debug mode of target processors after
programming operations are complete
- Adds JTAG Daisy Chain support
#####################################################
PROGACMP v5.21.00.00
6 February 2015
- New v9.33 bootloader for USB-ML-UNIVERSAL Rev C and USB-ML-Universal FX Rev B
- New v9.33 firmware for USB-ML-UNIVERSAL Rev C and USB-ML-Universal FX Rev B
- Fixed issue where some ELF data regions were skipped during programming
#####################################################
PROGACMP v5.15.01.00
11 November 2014
- Users must now specify the exact target processor using the new Device Selection tree in the Connection Assistant (PROG) or through the :DEVICE command (CPROG).
- The higher performance pipeline algorithms are now used by default.
- Now properly detects Cortex-M0 cores instead of displaying "Unknown core"
- Fixes load error when trying to program certain IAR .out files
#####################################################
PROGACMP v5.13.02.00
24 October 2014
- Adds support for PEmicro USB-ML-UNIVERSAL-FX Rev B
- Adds support for PEmicro USB-ML-UNIVERSAL Rev C
- Adds support for Freescale Kinetis KE Series via commandline parameters
PROGACMP v5.04.0.0
02 July 2014
- Automatically retries debug communications on failure
- Command-line version (CPROGACMP) automatically unsecures the processor if it is secured
- Fixes user functions asking for unnecessary parameters
- Supports pipelined algorithms
PROGACMP v3.0.0.22
23 September 2013
- Added Tracelink firmware
|
|
|
|
|
In Stock
|
PROG-HL-ARM
|
PROG for ARM® Cortex™ processors (Hardware License) |
US$199.00
Volume Pricing...
Volume Pricing (Hide) |
Quantity |
Price |
1 |
US$199.00 |
2 to 4 |
US$199.00 |
5 to 9 |
US$169.00 |
10 to 24 |
US$139.00 |
25 or more |
Contact us |
|
|
|
|
|
|
USB Multilink Universal Debug Probe for ARM® devices and 8/16/32 bit devices |
US$199.00 |
 |
|
|
USB Multilink Universal FX High-Speed Debug Probe for ARM® devices and 8/16/32 bit devices |
US$399.00 |
 |
|
|
|