This tutorial was extracted from Erich Styger blog http://mcuoneclipse.wordpress.com with his agreement.
You probably know this already: I’m a fan of Eclipse, Processor Expert and the Freedom board. As for tool chains I use CodeWarrior for MCU10.x (Eclipse based, 64 KByte free limit) and IAR (16 KByte limit) with the Processor Expert Driver Suite.
And I have added a new Eclipse based solution: Red Suite 5 from Code Red Technologies. They released a new Red Suite 5 (v5.2.2 build 2108) which caught my attention when reading the release notes:
- Eclipse Juno SR2: New Eclipse Look & Feel
- Added integration for Processor Expert
- Non-expiring 128k (!!!) limit when used with the Freescale FRDM boards
With me doing more and more projects with ARM Cortex cores, it has the advantage that there is huge ecosystem around these cores, with many choices. One of it is Code Red Technologies with their Eclipse based Red Suite 5 product line. I knew that product as I used the free edition for NXP (LPCXpresso).
I’m showing here my steps to get up and running with Red Suite 5 for the FRDM-KL25Z board and Processor Expert.
Setup Red Suite 5
Red Suite 5 Full Edition is available from this page. The download is less than 400 MByte. Then I run the setup:
For the drivers I only select the Code Red Debug drivers:
Installation is very fast: it only takes about 5 minutes to install. And the disk space needed is reasonable too: less than 800 MBytes.
Uninstalling is done with the unins000.exe located in the installation folder. And it is super fast: it takes less than 30 seconds!
Product Activation
I need to register and activate the product first, which gives a 60 days evaluation period. To ask an evaluation license, use this menu:
I received the activation code by email, which I had to enter into the ‘Activate license…’ menu from above.
Processor Expert Plugins
Next step is to download and install the Eclipse Processor Expert plugins. They are available from the Processor Expert Driver Suite page (http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=PE_DRIVER_SUITE):
“Processor Expert Driver Suite” is the ‘standalone’ version of Processor Expert. Same as I use in Eclipse based CodeWarrior. But the ‘Driver Suite’ can be either integrated into a non-CodeWarrior Eclipse version, or used as ‘standalone’ version e.g. with IAR.
Here I select the ‘Download’ tab: from here I need two files (I need to register with Freescale to download the files):
- Microcontroller Driver Suite v10.0 plug-in for existing Eclipse 3.7 (Indigo) installations
- PExDrv 10.0 Update 1.0.0 (Indigo and Juno)
Don’t be confused that the first download says ‘Indigo’, while Red Suite 5 is using ‘Juno’. The first download is for Indigo, but can be installed in Juno too. But it needs the second download which then adds proper support for Juno. So I need to download and install both!
Microcontroller Driver Suite/Processor Expert (Indigo)
First, I download the “Microcontroller Driver Suite v10.0 plug-in for existing Eclipse 3.7 (Indigo) installations” file (around 140 MByte):
Then I unzip that archive to a folder on my hard disk.
The archive has a PDF with detailed installation instructions I will follow below.
First, I need to install the Freescale Eclipse Updater. In Red Suite 5, I select the menu Help > Install New Software, then press ‘Add’, followed by ‘Archive’. I Archive I select the com.freescale.eclipse.3.7.updater.custom.updatesite.zip I just have unzipped:
Then I select the package and press Next to install it:
This should only take a few seconds, followed by a restart of Red Suite 5.
Next, to install the Processor Expert plugin itself. Same thing as above, but this time I browse for the com.freescale.eclipse3.7.pexdrv10_0.updatesite.zip archive:
I select the package(s) and then press next:
This needs about 5 minutes to install, followed by a restart of Red Suite 5.
Processor Expert Upate to Juno
As Red Suite 5 is Juno, we need to install yet another update, the “PExDrv 10.0 Update 1.0.0“. Without this, Processor Expert won’t work in Juno.
Again, same procedure: Menu Help > Install New Software, selecting the archive, and this time “com.freescale.eclipse3.7.pexdrv10_0.update.v1_0_0.zip“:
The installation takes a few minutes, followed by a Red Suite 5 restart.
Congratulations, you completed the installation part .
Eclipse Juno
If you know CodeWarrior Eclipse (3.7, Indigo), then Code Red Suite 5 (4.2, Juno) looks familiar. Well, familiar, but different UI look:
Apart of the new UI, there are many additional things new in Juno, described in this list.
Creating a Processor Expert Project
Code Red is using a ‘wrapper’ project around the Processor Expert project. That wrapper project has links to the Processor Expert project. That sounds odd, but is not a big deal. The advantage is that the Red Suite can do ‘its own thing’ and the integration with the Processor Expert project is more light. Technically this makes sense, but I wish it could be a tighter integration as in CodeWarrior. Again, not a big deal, but I need to be aware of it. This means as well: a project is created in two steps: first the Processor Expert project, followed by the wrapper project.
The Processor Expert project is created with the menu File > New > Processor Expert Project: Nothing special here, but as Red Suite is using gcc, the GNU C Compiler has to be selected during project creation:
‘Finish’ creates the project:
I use the menu Processor Expert > Show Views to open other views for Processor Expert.
Creating the Wrapper Project
To create a new wrapper project, I use the ‘New project…’ button in the Quickstart Panel view:
Inside the Freescale group, I select ‘Red Suite wrapper project for Processor Expert project’:
I give it a name:
Then I select the microcontroller:
IMPORTANT: select the same CPU as you have selected in the Processor Expert project. Red Suite is using this information for the debug connection and other things. Not matching the CPU type will cause issues.
Going through the next dialog, it will create the wrapper project and immediately start another wizard page asking for the Processor Expert project:
Now we have wrapper project which links to the Processor Expert project:
The wrapper project monitors the Processor Expert project. For example if I add new components and I build the code, the wrapper project gets updated:
I have not seen an option to ‘shut up’ that dialog. That would be useful.
Using MCUonEclipse Processor Expert Components
If you want to use the MCUonEclipse Processor Expert components: keep in mind that the Driver Suite uses components from a different place:
C:\ProgramData\Processor Expert\PEXDRV_PE5_3
Redlink Debug Firmware for Freedom Board
The FRDM-KL25Z needs the special Redlink debug firmware. Steps how to upgrade the firmware are explained in the Red Suite 5 Welcom Screen (see this post about OpenSDA in general):
- Power the FRDM-KL25Z with the OpenSDA debug cable and with the reset button pressed (green LED flashes)
- Copy the Redlink firmware to the Bootloader device. The firmware S19 file is inside the redsuite/bin directory:
3. Repower the board: The device should now enumerate properly:
Debugging
To debug the project, I select the wrapper project and use the ‘Debug’ button in the Quickstart Panel view:
This builds the project and launches the debugger. If I have my Freedom board plugged in, it will sho up in the connection dialog:
Pressing OK, and ta-taaaaaaa: I’m debugging my FRDM-KL25Z board:
Summary
I need to continue explore more things in Red Suite 5, but as it is Eclipse based, I felt home right away. Having another Eclipse distribution beside CodeWarrior is good news for every Eclipse-Lover, for sure. I’m only using Windows (yes, I know!), but for everyone using Linux or Mac: Red Suite 5 supports this too.
And it is excellent news for Freedom board maniacs too. Red Suite 5 offers a free 128 kByte limit for the Freedom Board. That’s why above what others offering today. As the KL25Z has 128 KByte of Flash, this means a free Eclipse based tool chain with Processor Expert for the Freedom boards with the Redlink OpenSDA debug firmware. If that’s is not cool news, what else?