Check out µTasker FAQs and other tit-bits here.
Check out µTasker FAQs and other tit-bits here.
Check out µTasker FAQs and other tit-bits here.
Check out µTasker FAQs and other tit-bits here.
Check out µTasker FAQs and other tit-bits here.
Check out µTasker FAQs and other tit-bits here.
Check out µTasker FAQs and other tit-bits here.
Check out µTasker FAQs and other tit-bits here.

There are always questions, and questions are to be answered. And many questions have been answered before so why not profit from this information, which we have organised into useful categories. Whether it is to do with the development environment, simulator, compiler, µTasker code itself or developing your own application with it, you may well find some tips which will help you reach your goals faster.

I have some difficulties when using the Express Edition of Visual Studio 2005. Header files can not be found or libraries are missing!!
The Express Edition has to be 'manipulated' a bit until it works properly with the Microsoft Platform SDK. Make sure that you have also downloaded and installed the SDK since this is necessary (it is however quite a big download of over 1G!!). Then follow the details here: http://msdn.microsoft.com/vstudio/express/visualc/usingpsdk/default.aspx

You will probably find that it all works then. I have also used the Express version since there have sometimes been some difficulties to get it up and running and I wanted to see what it was all about. It does work very well once one gets over the first hurdle...it has some nice features helping achieve good code (eg. Run-time stack integrity checking).

Here are a couple of other notes:
1. Often there is an error that 'windows.h' can not be found. The solution to this is to search where it is on your PC (somewhere like c:/programs/VisualStudio/SDK/inc) and add this include path to the C/C++ compiler properties, and also to the resource properties.
2. Sometimes there is also a missing library. This can be solved by adding a linker include path - something like this (c:/programs/VisualStudio/SDK/lib).
3. When the project is compiled there may be several warning about depreciated functions (_open, strcpy). Simply ignore these and DO NOT set the depreciate setting as suggested by the warning since the NIC interface will not work correctly. Ignoring the warnings ensures that the project works fine. In µTasker releases from V1.2.008 the use of the library routines which VS2005 doesn't like have been made compiler dependent so then no warning should be seen any more.

Additional information added 9.3.2007: If you get through the compiling and added the library path to the linker and suddenly you get 34 unresolved symbols due to standard Windows calls like SendMessageA, Rectangle, CreateSolidBrush etc. then there is one more thing to do. [It is strange that this problem only started in February 2007 (perhaps there is a slightly new version which is downloaded?) but at least it can be easily solved.]

Open up the Additional Options and in the Linker folder paste the following command line (from the original VS uTasker project) under "Project Properties", overwriting anything that is already there:

/OUT:".\Debug/uTaskerV1-3.exe" /INCREMENTAL:NO /NOLOGO /LIBPATH:".\..\..\..\WinSim\WpdPack_3_1\WpdPack\Lib" /DEBUG /PDB:".\Debug/uTaskerV1-3.pdb" /SUBSYSTEM:WINDOWS /MACHINE:X86 odbc32.lib odbccp32.lib wpcap.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib

This will sort it out (but don't ask me why the project loses it...)

I know it takes a little effort to get VS2005 Express edition working but it will be worth the effort!!
I can't compile the project! When I try, I get a bunch of compiler errors due to undeclared identifiers [like PTG0, ADPU, LNKLED etc. etc.]
There are two possible causes for this problem.

First check that you have indeed extracted the project correctly. The project is delivered in two parts; a general part containing the generic code for the operating system, stack, file system and other such stuff and a hardware specific part for the processor which you are using. If you are using the project for more than one target there will be a hardware part for each target.

If you try to compile the general part alone it will give such errors because it will be missing the defines for the hardware accesses it needs. So check that you have decompressed both necessary parts. Check also that you have 'merged' the general and hardware specific parts - this is easy to do if the instructions are followed exactly - see the original ReadMe.txt which you will have received with the project. Basically the 'merge' is simply extracting the hardware files into the project directory (which will overwrite a few dummy files) and NOT to its own separate directory.

If you have already done this correctly, then it will be because the project has not been set up correctly for the target which you are using. The project is set up by default for the M9S12NE64 (pre-processor define _HW_NE64) and will try to compile for this target. Now, if you have a different hardware packet it will not understand the hardware accesses and also give such errors. Simply set the pre-processor define (you find it in the VisualStudio project settings under compiler C/C++ settings where its default is WIN32;_DEBUG;_WINDOWS;_HW_NE64;ETHEREAL. Simply overwrite _HW_NE64 to the target you are using. The value required is defined in the tutorial to the target (such as _HW_SAM7X, M553X, etc.).

Once these two steps have been completed successfully there will be no more error messages and you can get down to seeing the µTasker in action!!
My VisualStudio project complains about missing wpcap.dll when I try to run the project
The simulator requires also WinPCap installed (get it from http://www.winpcap.org) which is an industry-standard tool for link-layer network access in Windows environments. It is also required to be installed in order for the network sniffer Ethereal to run (see the µTasker tutorial for your target for details of its interaction capabilities with the simulator).

Therefore it is just as well to install Ethereal before getting started since it is a great tool, which you will never want to be with out again!
Ethereal (now called Wireshark) is open source and can be obtained free from https://www.wireshark.org/ - see also the discussion about it in the µTasker tutorial)."
The FTP server is not working correctly on the SAM7X board compiled with IAR compiler
If you use the 4.20A compiler version (as I do) everything should work fine. If you are using the IAR 4.40A compiler then this happens...

The reason is probably a bug in the newer compiler version and it causes a µTasker string compare routine (uStrEquiv() in the file ip_utils.c) to fail. I analysed the assember code that it generated to the following while comparison:

while (ucReference = *ucMatch++) {

and it looks as though it is doing the compare to zero with the incremented pointer and not with the value set to ucReference.

To get around this in µTasker versions prior to V1.2.008 (where the work around has been utilised) the routine can be modified to perform the pointer increment within the while body and then FTP works again...Sorry about this but I have yet to work with a cross-compiler which makes no errors...

A replacement routine can be found here uStrEquiv()

I have been using the DEMO9S12NE64 with the pre-installed serial monitor. Now I have my own boards but the chips have no monitor - how can I program them?. Do I need a BDM?
It is correct that new MC9S12NE64 devices are delivered in a blank state. The serial monitor program which is pre-installed in the DEMO9S12NE64 is not there and so it is not possible to program and debug them over the serial interface.

It is necessary to program the devices using a BDM (Background Debug Module). However since the serial monitor (which occupies 2k of FLASH between the range 0xf800 and 0xffff) is a very good utility to enable programming and debugging via a normal serial port (which is useful in the field and can even be used by end customers to upgrade software themselves without special tools) it is often a good idea to program it as standard.

For this reason we have developed software and a guide to turning a DEMO9S12NE64 into a powerful BDM programming tool. The guide and software are available free. Have fun upgrading your old DEMO9S12NE64 by adding a simple 3-wire BDM cable. Get the guide and the necessary software kit here: Guide to converting a DEMO9S12NE64 into a LAN based BDM programming tool for the MC9S12NE64
I have added more code to my Codewarrior NE64 project (version V1.2.006) and now the target crashes when accessing the FLASH file system. Have I done something wrong?
This can happen due to a missing pragma in this version...

The reason is that there is a certain routine controlling accesses to the FLASH file system residing in the page 0x3d. As your project grows it becomes possible that this routine gets linked into the memory range 0x8000..0xbfff (page 0x3c). This then causes the problem since this routine switches the page to access the file system and switches itself out of the memory map. This results in a crash!

Fortunately the solution is simple. Open the file ne64.c and add the following pragma to the file just before the routine fnDoFlash(). This forces this critical routine to be linked at the start of memory and so avoids it from getting put into the unfortunate memory range as described above.
#ifdef _CODE_WARRIOR
  #pragma CODE_SEG FILE_ROUTINE                                          // force CODEWARRIOR compiler to put this routine at the start of code
#endif

This should do the trick!


Most FAQs are now answered directly in the dedicated µTasker forum - do check this out!!


Check out µTasker FAQs and other tit-bits here.
Check out µTasker FAQs and other tit-bits here.
Check out µTasker FAQs and other tit-bits here.
Check out µTasker FAQs and other tit-bits here.
Check out µTasker FAQs and other tit-bits here.
Check out µTasker FAQs and other tit-bits here.
Check out µTasker FAQs and other tit-bits here.
Check out µTasker FAQs and other tit-bits here.
Check out µTasker FAQs and other tit-bits here.
Check out µTasker FAQs and other tit-bits here.
Check out µTasker FAQs and other tit-bits here.
Check out µTasker FAQs and other tit-bits here.
Check out µTasker FAQs and other tit-bits here.
Check out µTasker FAQs and other tit-bits here.