Steven
uTasker is a framework for Kinetis which allows all KE, KV, KL and K parts to be used with (almost) any IDE and with a single project code (including a boot loader supporting various methods [with KBOOT compatibility for all boards] and an application framework which has been verified on all boards and in all configurations, so needs no porting or further work for industrial usage). That means that almost all Kinetis drivers are include, TCP/IP stack with many protocols, USB device stack, graphics library, MODBUS stack, file systems, plus it allows simulation in (approx.) real time to make development, debugging and maintenance as efficient as possible. IDEs that work with it are at:
http://www.utasker.com/kinetis/compilers.html
uTasker is not a part of the Freescale SW. It is a development that has been performed for HCS12, Coldfire and Kinetis parts (concentrates on certain Freescale parts) and there has been a certain amount of interraction with Freescale over the years but no direct links. The history of the project is at µTasker history. The project is supported (here, at the uTasker forum: µTasker Forum - Index or personally by email or telephone for registered users).
If you are using new Kinetis parts you MUST use KDS since CW won't support them. The K60 is on the boarder-line; if you find it works with KDS you should go for that, otherwise you will need to use CW. uTasker users don't have any issues since they can switch between the two and other IDEs without any concequences (apart from a potential learning curve to get the most out of the individual IDE debugger's capabilities if there are big differences). Since KDS and CW are however almost identical (although projects created with one can't be opened by the other) there is almost zero learning involved when moving between them.
The uTasker uses a simple co-operative scheduler which suits users who prefer to be in the bare-metal area (which is a surprisingly high percentage of companies - the biggest worry of many is that its approx. 2k of OS code is already too much overhead and added complication....). You will need to compare yourself since there are often personal preferences involved rather than real technical reasons. In any case, an OS (or simple scheduler) will usually make any project development easier, faster and more reliable. Today however one "understands" the drivers, stacks, libraries etc. as part of the "OS" and so having code that has been optimised and proven in many projects over long periods of time will usually be a better starting point that writing everything from scratch.
If your project is very simple then there is no reason to use an OS. But as soon as it gets to a point where there are more than one or two interfaces and modules needed to be maintained you will probably find it helps a great deal to use one. Also, it is possible to "successfully" build projects using many methods - including writing everything from scratch in assembler. It will certainly work but it will tend to take many times longer and be much more difficult to maintain than using a framework that has been shaped through many years of work specifically for the job (in each case the project will be "successful" but it may have taken 10x the time and effort to reach the same definition of successful). Basically if you find yourself investing more than a day or two writing and debugging code that is not specific to your actual application (that is code and functionality of the project that involves drivers, general peripherals, standard communication stacks or internal process control) then this is probably time that could have been saved by building the application on an existing framework.
Regards
Mark
Kinetis: µTasker Kinetis support
K60: µTasker Kinetis TWR-K60N512 support / µTasker Kinetis TWR-K60D100M support / µTasker Kinetis TWR-K60F120M support
For the complete "out-of-the-box" Kinetis experience and faster time to market