CodeWarrior for Microcontrollers V10.2 has been released and is available for download from the Freescale MCU website!
In my view the V10.2 is a big step forward. Nothing is perfect, nor is V10.2. But V10.2 is so much better compared to the V10.1 release. Yes, indeed continuous improvements. Here is why…..
I installed the V10.2 beta since it had been available back in October 2011. Using it showed many performance and usability improvements. Yes, there is always a risk using a beta version. In case things would have not worked out well, I kept the V10.1 as backup installed. It gave me the ability to compare the two versions easily, and reduced the potential risk.
I used 10.2 beta for my own projects, plus in an embedded programming class with more than 30 students. I know what you think now. Yes, it is unfair to impose beta version tools on innocent students which have tight deadlines (so have I!). Students have to deliver projects and assignments on hard deadlines, how does this differ from real projects in real life? So I offered a free t-shirt for any real bug found. No, no, not for bugs found in their own code, but for bugs found CodeWarrior! The result: a total of 4 t-shirts in 13 beta weeks! You think this is a lot? Really not. Imagine a crowd of students hammering on development tools, motivated by nice free t-shirt? Don’t ask me for my estimated t-shirt count if I would have offered the same using the previous release 😉
I have switched my projects from the 10.2 beta to the final 10.2, and things are still there and working :-).
If you are CodeWarrior for MCU10.1 (or even 10.0), here are some points I think are compelling reasons to upgrade. I’m using a 4 years old notebook (Windows 7 32bit (dual core, 1.6 GHz, 3 GB RAM). Well, that reminds me that I should ask for a bit more powerful machine. 😉
- IDE launch speed: On MCU10.1 it takes me about 20 seconds to launch eclipse with one of my workspace. Same thing on 10.2 takes about 15 seconds. That does not make a big difference, as usually I keep the IDE open for many days, but it is an indication that the eclipse IDE speed has been improved.
- Compilation speed: MCU10.2 comes with parallel build support. A project with 91 source files takes me around 140 seconds to build on 10.1. With 10.2 the same thing only needs around 52 seconds. I general I see a speed improvement with a factor of about 2.
- Improved Stability: compared to 10.1 the 10.2 release is much more stable. In the 5 months beta test period, I had not a single IDE crash on my machine. Remember the 4 t-shirts.
- CDE: The Processor Expert component wizard (named now Component Development Environment) is implemented in Java, running inside the eclipse framework. The ‘classic’ Component Wizard is still present in the layout.
- Device Support: This is of course only interesting for you if you are using one of the newly supported families. Support has been added for Kinetis Cortex M4F (M4 with floating point unit) and many S08, ColdFire, PX and Qorivva cores. There is now support for the DSC (Digital Signal Controllers) and the S12Z (this is not the S12, but a different core) family of devices.
- Eclipse Framework: MCU10.2 is based on eclipse Helios. Finally it gives me the block selection feature in the editor! Freescale has added useful extensions to eclipse and CDT, with the support for sub-projects as a highlight. Scripting and command line support has been extended, and you can do project modifications and builds using a console/shell, e.g. from a DOS prompt.
- Debugger: The target tasks and debug launches have extended logging to the Console View. This makes it easier to find a connection problem. The Registers View does not unfold between stepping any more, and it is possible to have the register details view in offline mode. Interrupt support (or disabling interrupts while stepping) has been greatly improved and extended. I do not need to be in a debugging session to inspect the registers any more. Working with OSBDM and OSJTAG is more stable and faster. I do not need a project for flashing a file to a device any more (it works without a project).
- Run Control and Trace: It has extended trace and profiling support for ColdFire and Kinetis, including support for the P&E TraceLink and P&E Universal Multilink FX (I will need to get my hands on them). Support for the OSBDM/OJTAG which can be found on the Tower boards comes with a new and improved firmware. It is now possible as well to debug the Kinetis LP (low power) and VLP (very low power) modes, which is very neat.
- Improved Version Control Support: I’m using Processor Expert with SVN a lot, and this has been greatly improved (no need to have the *.g_c and *.g_x Processor Expert in the repository). The debugger target task and connection files are stored as files inside the project, so you can easily manage them with a VCS.
As always, nothing is perfect:
- Installer size: Because of additional cores and device support, the installation image size (and as such the file size to download) has been increased. I wish 10.3 will come with a more modular installation concept allowing you to download/install only what I need.
- Helios vs. Indigo: Indigo was released June 22nd 2011, too late for 10.2 beta, and so for the 10.2 release. On the other side the usage of a stable Helios for 10.2 has contributed to the CodeWarrior stability which is a good thing. But looking forward to the next eclipse version.
- Licensing: 10.2 uses an updated license key. As a registered owner with current support you should get this at no additional costs as outlined here. If the free special edition is good enough, then things are even easier as it comes with a special edition license for free.
- Debugging: target tasks, ‘remote systems’, launch configuration and system configuration are still not easy to master and confusing at the beginning. For a new user, these things need to be easier to use.
- As said, nothing is perfect. But I can give feedback in this post by Jim Trudeau.
In summary: Migration from 10.1 to 10.2 was painless for me, and I’m using 10.2 for all my projects now. The sum of improvements makes it a much better development tool. I wish what is in 10.2, would have been already in 10.0 or in 10.1. But as well for my software: it matures over time….
I’m looking forward to the next iteration of CodeWarrior. And I expect a t-shirt count of zero for my next university class :-).
Happy Coding! 🙂