Project Description
A simple logging framework for Windows CE that will capture the output of RETAILMSG macros from drivers and applications. It is very useful for accessing debug output from drivers on a system where you have no access to the default debug serial port, since it will automatically capture the output in a file. It is using standard CeLog functionality to do so, but I have added the configuration necessary to use CeLog in this way, as well as some tools to view the binary data from CeLog directly on the device.

I have written a blog post about this tool, see more details on bogong.dk.

Project Details
This zip-file contains the source code for the CeLog utility. The tool can be build in two different ways.
  • To build the tool with Platform Builder and include the output in a Windows CE OS image, just drop the CeLog folder into your 3rdparty folder (usually c:\wince600\3rdparty) and then select CeLog in the catalog view of your OS design.
  • To build the tool stand-alone with Visual Studio 2008, just open the solution file which you will find inside the CeLog folder. Note that you will need to add your own SDK to the solution before you can build (unless you happen be using the exact same SDK as I am)

Any comments, suggestions, bug reports, or patches are very welcome. Please use the discussion forum or contact me directly.

The project contains
  • A Platform Builder catalog item that will include the CeLog event tracking module in your OS image.
  • Configuration of CeLog to make it capture only debug messages (RETAILMSG) output from drivers and applications and save these to a binary file on the disk.
  • A command line utility that will print the data from CeLog files in human readable form.
  • A webserver plugin that will display the data from CeLog files in human readable form.

Example of output of command line utility
Windows CE DumpLog 0.1 (Compile time: May 27 2011 11:00:01)
Copyright (C) 2009 by Bogong (www.bogong.dk)

Dumping celog file: celog.clg
00:00:02.461.338: PID=00400002 TID=00D60002: I2C ioexp: ETH reset toggle bus 8, uAddr 0x74, reg 2, ByteCnt 2, uValue0 0x00, uValue1 0x01
00:00:02.563.764: PID=00400002 TID=00D60002: UfnPdd_ContextSetup: Allocated DMA TX Region PA 0x83400000 VA 0xD0B10000 Size 0x400
00:00:02.571.313: PID=00400002 TID=00D60002: UfnPdd_ContextSetup: Allocated DMA RX Region PA 0x83400400 VA 0xD0B20400 Size 0x400

Last edited Jun 13, 2011 at 3:16 PM by arl, version 5

Comments

No comments yet.