MCUXpresso IDE 10.2.1

NXP has just released the 10.2.1 update of their flagship Eclipse based IDE. While the number increase from 10.2.0 to 10.2.1 indicates a minor release, there are a several things which make me move over to that new release.

MCUXpresso IDE 10.2.1 build 795

MCUXpresso IDE 10.2.1 build 795

For a detailed change list, see https://community.nxp.com/community/mcuxpresso/mcuxpresso-ide/blog/2018/07/27/mcuxpresso-ide-v1021-now-available. Below are a few items from it which I think are worth special mention.

💡 No need to uninstall the previous version(s). Make sure you *always* install it into a new folder. Never ‘overinstall’ a new Eclipse IDE over an existing one: bad and strange things might happen!

Terminate Behaviour

Using the LinkServer (aka LPC-Link2) debug connection, I can choose what shall happen if I do ‘terminate’ (red square/stop button) of the debug session:

Terminate behavior

Terminate behavior

FreeRTOS Plugins

The FreeRTOS plugins have been updated to v1.0.6 (20180731518) which fixes a few problems. For example the ‘pause’ button works in the case I restart the debug session properly, so I can ‘unpause’ the view.

Pause Button

Pause Button

Additionally it fixes issues with FreeRTOS heap recognition reported in the community forum. The MCUXpresso IDE now describes how the heap scheme is determined:

  1. The value of the configFRTOS_MEMORY_SCHEME in the FreeRTOSDebugConfig structure (as described in Required Source Code Changes)
  2. Else, the value of the user-defined variable freeRTOSMemoryScheme
  3. Else from the details contained in the available FreeRTOS heap related variables ( ucHeap, xHeapStructSize and heapSTRUCT_SIZE).

The console log is now showing how the heap memory type has been identified:

FreeRTOS Log entries

FreeRTOS Log entries

Make sure you include freertos_tasks_c_additions.h by setting

#define configINCLUDE_FREERTOS_TASK_C_ADDITIONS_H 1

in FreeRTOSConfig.h and verify that the proper heap type is set in that structure:

FreeRTOS Memory Scheme

FreeRTOS Memory Scheme

 

PRIMASK, BASEPRI, FAULTMASK and CONTROL

With a Linkserver connection, I can now change the ARM core pseudo registers. This is especially useful during debugging for example to enable/disable interrupts:

PRIMASK Editing

PRIMASK Editing to disable interrupts

i.MX RT Flash Drivers

The LinkServer debugger connection is using JEDEC SFDP information. The IDE includes examples of i.MX RT 1020 and 1050 flash programming projects which can be used as a starting point for custom boards with FLASH memory which does not include JEDEC SFDP information.

i.MX Flash Driver Examples

i.MX Flash Driver Examples

Debug Perspective

The approach described in “Using a Custom Debug Perspective in Eclipse” is now working again with the new IDE:

Debug Perspective

Debug Perspective

Summary

While this is a minor update, it comes with several good improvements and enhancements worthwhile for me. I started to use that version instead of 10.2.1 for my projects, and that is going fine so far. Otherwise I’ll keep you posted 😉

Happy MCUXpressing 🙂

Links

Advertisements

8 thoughts on “MCUXpresso IDE 10.2.1

      • I have noticed that those of us that teach in technology do not get the summer off unless we do not wish to update and have our students stay out on the leading edge. Have some great weekends as your photos show.

        Like

  1. Pingback: First Steps with the NXP i.MX RT1020 EVK Board | MCU on Eclipse

  2. Pingback: MCUXpresso IDE V10.1.0 with i.MX RT1052 Crossover Processor | MCU on Eclipse

  3. Pingback: Tutorial: Catching Rogue Memory Accesses with Eclipse and GDB Watchpoints | MCU on Eclipse

  4. Pingback: Tutorial: Catching Rogue Memory Accesses with ARM Watchpoint Comparators and Instruction Trace | MCU on Eclipse

What do you think?

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.