PEmicro Blog

PROG Update: "QO" (Queue Object Data) Command Replaces "SS" Command

by Steve McGrath on Feb 28, 2023

Historically, PEmicro's PROG has limited the user to specifying one object file at a time to be programmed. But users occasionally encounter situations where they would want to program their bootloader, application, and some additional security settings, all at the same time. Such a configuration was possible using PROG, but quite cumbersome. So PEmicro has implemented a solution that allows programming of multiple object files using a single “PM” and “VM”. This solution is the new “QO” (Queue Object Data) command, which replaces the legacy "SS" command.

Read more...

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

by Keith McNeil and Takao Yamada on 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...

Multilink/Cyclone Debug with STM32CubeIDE from STMicroelectronics

by Zahar Raskin on Jan 09, 2020

STM32CubeIDE from STMicroelectronics is an Eclipse-based enablement platform which supports development and debugging of code on STM32 ARM microprocessors. PEmicro hardware interfaces: Multilink and Cyclone can be leveraged for advanced debug capabilities via an Eclipse GDB plugin that is freely available for installation into any Eclipse IDE from PEmicro update site (https://www.pemicro.com/eclipse/updates). This blog demonstrates the steps needed to install and configure PEmicro Multilink and Cyclone debug support in STM32CubeIDE to the point of launching a debug session.

WORKAROUND for newer STM32CUBE IDEs with CDT version 10.6 and greater

The workaround is to disable the CDT update site. In STM32CubeIDE, go to Help->Install New Software -> Manage...

In the "Preferences" dialog, uncheck the checkbox next to CDT:

Then install the PEMICRO plugin.

Read more...

Flash Secure/Unsecure Support for Silicon Labs Gecko Devices with Time-Sensitive AAPs

by Mika Ichiki-Welches on Mar 25, 2019

PEmicro considers the privacy of its customers' intellectual property to be of utmost importance. Silicon Labs' 32-bit devices feature an Authentication Access Port (AAP) as part of their security features, and for some of these devices, a debugger may have a limited time to access this port when communicating with an unsecured device. With that in mind, recent PROG software (v6.94) and Cyclone firmware (v10.04) releases now provide support to secure, unsecure, and mass-erase Silicon Labs devices with these debug time-sensitivities, which can help users keep their valuable data safe.

Read more...

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

by Zahar Raskin on 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

by Nick DeLeon & Keith McNeil on 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...

High-Speed Programming For Power Architecture MPC5xxx/SPC5xxx Devices

by Takao Yamada on 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...

PEmicro Supports Development of Freescale's OpenSDA Freedom Platform

Sep 21, 2012

Freedom boardBOSTON – Sept. 21, 2012 - With the recent launch of Freescale's Freedom platform for Kinetis KL25 microcontrollers, P&E Microcomputer Systems Inc., a leading developer of third-party tools for Freescale microcontrollers, is pleased to announce that it is hosting an OpenSDA resource page to provide device drivers, firmware updates, and additional information to users of the FRDM-KL25Z evaluation board. OpenSDA is the open standard which the Freedom platform uses to enable USB-based serial and debug communications. P&E's OpenSDA resource page is available at pemicro.com/opensda.

P&E is a key OpenSDA partner who developed much of the software which resides on the Freedom board, including mass storage and debug applications. The mass storage device (MSD) is a bootloader which allows programming and other applications to be loaded quickly. P&E's debug application provides JTAG/SWD debug and virtual serial interfaces and is broadly supported by several popular toolchains, including Freescale's CodeWarrior and software by IAR and Keil.

PEmicro Hardware Interface Drivers Version 11 - Windows 8 and OpenSDA Support Added

Aug 27, 2012

BOSTON – Aug. 27, 2012 - P&E Microcomputer Systems has announced the release of its latest Hardware Interface Drivers, v.11. The updated drivers include preliminary support for the upcoming Windows 8 operating system, as well as support for OpenSDA hardware. P&E maintains a resource page for OpenSDA firmware and drivers at pemicro.com/opensda.

P&E's latest Hardware Interface Drivers may be downloaded at:

pemicro.com/downloads/download_file.cfm?download_id=301.

PEmicro Announces Support For Freescale S12ZVM Device Family

Feb 28, 2012

BOSTON – Feb. 28th, 2012 - P&E Microcomputer Systems Inc., an industry trendsetter in hardware and software development tools for Freescale microcontrollers, is introducing a series of hardware and software development tools that support Freescale’s new S12ZVM device family. This support includes a sub-$1000 trace interface, low-cost development interfaces, debug and programming software, and production programming equipment.

Read more...

PEmicro Software Now Supported Under Windows 7 / Windows 64-bit OSes

Dec 28, 2009

P&E is pleased to announce that 64-bit Windows support has arrived, including support for Windows 7. P&E software has been upgraded to work under Windows 7 (and other Windows 64-bit operating systems) by using the latest version of our drivers - P&E Hardware Interface Drivers 10. There is no need to worry about P&E software compatibility if you're migrating to a Windows 64-bit OS at home or in the office. 

Read more...

Understanding the Base Address

Mar 04, 2009

PEmicro’s PROG programming software will sometimes prompt the user to enter a “Base Address”. In this article, we discuss what the base address is and why it exists.

On most 8-bit and 16-bit processors, the internal flash/eeprom is located at fixed address locations. If this is the case, the associated programming algorithm will NOT prompt the user for a base address, since the address is fixed and already known.

On 32-bit processors and any systems using external flash, the address of the flash may be configured to reside anywhere within the processor’s address space. The developer will decide on an appropriate memory map early in the design process.

For these situations where the flash can be relocated, the PROG software will always move the flash so that it begins at address 0.  However, the developer may not have an object file that matches this new memory mapping. To account for this, the “Base Address” (specified by the user) is subtracted from all addresses in the object file prior to programming.

Below is an example of how the developer’s memory map may differ from the one in PROG. Although the external flash is located at different addresses, it refers to the same physical memory. Here, the user would specify a base address of FFC00000.

The base address should always be the starting address of flash in the developer’s memory map, and not the “first” address where data exists (although in most cases they are the same!)

Free Download: Object File Conversion with OBJCOPY

Jan 14, 2009

When you need to convert between object file formats, download one of P&E's free, C language development kits.  These kits include a full GNU compiler toolchain, including Binutils OBJCOPY.

Download PKGPPCNEXUS Starter Edition
http://www.pemicro.com/downloads/download_file.cfm?download_id=194

Download PKGCFZ_PRO Starter Edition
http://www.pemicro.com/downloads/download_file.cfm?download_id=180

P&E's ICD In-circuit Debugger and PROG Flash Programmer software, included with the Starter Editions, natively supports several object file formats, including s-record and ELF.  Soon, P&E software will natively support Intel Hexadecimal files.

After installing one of the Starter Editions, run OBJCOPY from the Windows command-line.  The program is located in the gnuin subdirectory within the installation directory.  View the help screen for OBJCOPY from the command-line by typing  "powerpc-eabispe-objcopy" or "m68k-elf-objcopy".  You will see a list of all program options.  To determine which formats are available with OBJCOPY, take note of the final lines of the help screen.  You will use these format names, BFD names, when running OBJCOPY.

To convert a file, use the  "-O" option followed by the name of the desired output format.  The input format may be specified with the "-I" option, though this is often unnecessary.   For example, to convert the object data in a COFF file "file1.coff" to an s-record file "file1.srec":

m68k-elf-objcopy -I coff-m68k -O srec file1.coff file1.srec

or

powerpc-eabispe-objcopy -I aixcoff-rs6000 -O srec file1.coff file1.srec

If you are looking for greater control of file conversion, look at the options on the OBJCOPY help screen.  For example, with powerpc-eabispe-objcopy you may specify s-record length, force S3 records, and manipulate the linker sections in object files.