The following diagnostic is based on “Windows CE OS”
Why do you need embedded diagnostics?
1. To check integrity of the system after product is shipped
2. To check if the system is built correctly (in the case of hardware/software board bring-up)
3. during the “system service”, after sales support
4. Many others.
Methods of diagnosing
1. Boot loader level
2. OS level or System/CE version supported (such as CE Tool Kit)
1. Boot Loader based diags:
This diags will help/eliminate dependency of OS loading. You can early problem fixing of the hardware/software issue.
This will alos help in board bring-up. The work is in collabaration with hardware/software/OS wing.
This is something like self check of peripherals, RAM, ROM in the typical windows/Linux booting 🙂
a. You need to tap the bootload area
b. create a partition memory.
c. Additional memory allocation to suit what you are testing.
d. You can make this as standalone for testing time, during the board bring-up.
e. Also you can build something like PC self check
f. Keep in mind to keep minimum check required , so that it would not impact boot time
Some of the diags:
c. Memory area
e. Serial/Parallel port connectivity
h. Display check
i. Key board check
j. LED check
k. LCD check
The boot loader diags may not be exhaustive one’s. You may need to initial set-up, just enough to support the functions of the above.
Also after doing this diags, the state the device may not be in correct state. It is better to re-boot the device, rather than jumping to OS section.
2. OS based diags/test software:
You can use commercial/MS specific test tool kit and add your own test cases into it.
[Written based on work done in 2001 in Mobile windows CE firm] @Jan 1st 2009