FlyFisherman,
I think that I've determined the root cause failure.
The application that initially causes the device to begin failing is a modified Accelerometer template that I generated with BeeKit. I enabled the Embedded Bootloader in the project. This is an SMAC application.
This program has about a dozen long character strings in an included H file. Even though it compiles without error (CodeWarrior v5.1 Special Edition), it must be overwriting some important memory location. If I download the application to the device via Test Tool, close Test Tool, re-open Test Tool, and inspect the NV_RAM structure from the device, I see that the parameters for clocks and various registers are completely corrupted. At this point the device is unusable for anything.
To get it back to a state where it can be used, I need to do the following steps.
1) Compile any small app (that works) and download it via the CodeWarrior debugger and BDM.
2) Close CodeWarrior, open Test Tool, and select the EVK_MyStarNetwork app.
3) Select the NV_RAM Info button. If you inspect the NV_RAM structure from the device, you will see that it still contains corrupted data. So, don't do that. Use the NV_RAM structure built into the MyStarNetwork app and save it to the device.
4) After the NV_RAM structure is saved to the device, it isn't yet permanent. You must continue to download the EVK_MyStartNetwork app to the device. It is now a fully functional device, again.
I spent some time last week with the local Freescale rep looking at this problem. He noticed that ALL SMAC apps generated with BeeKit that contain the embedded bootloader have some problems. With the embedded bootloader enabled, the CodeWarrior Debugger will never work - but only for SMAC templates from BeeKit.
I opened a Freescale Service Report on this issue and have been having an interesting series of responses with them. Their first response was that the BDM doesn't work with Test Tool at all, and, therefore, you are never supposed to use it. After I pointed out that the document "802.15.4/ZigBee Embedded Bootloader Reference Manual" specifically states that you can use the BDM on page 4-1, the response was changed to become, "Well, you just can't use it with any SMAC programs." I then pointed out that I had been using Test Tool and the BDM to download other S19 files that were SMAC templates with the embedded bootloader enabled. I asked for a Freescale document reference of where this limitation is documented, but I haven't heard any response to that request.
Frankly, this sounds like a patient visiting his doctor with the following complaint:
Patient: Doctor, it hurts when I eat.
Doctor: Then don't eat.
Although the original application failure was due to code that I added, I have found that even some of the SMAC demo apps that came with the Freescale CD and have the bootloader enabled in them will corrupt NV_RAM if you download them from the Test Tool. I verified this with the app "accelerometer_v3_13213_SRB_loader". Some portions of NV_RAM became corrupted, but the device was still usable.
The Freescale rep that I was working with last week was pretty convinced that this is an outright software bug in BeeKit. Unfortunately, the Freescale engineer hired to respond to my Service Report seems to be taking a different position. This is frustrating.
Regards,
Chuck