Release Notes
TraceViewer – Version 2.6.0
Released 20th June 2010
Product description
TraceViewer is a tool for tracing a target device. The device can be
connected to a PC via USB connection. TraceViewer gathers the trace data
directly to the host side for further manipulation.
The TraceViewer tool can be started either by selecting the Carbide >
TraceViewer menu item or via Window > Show View > Other...
under Carbide Extensions category.
Main features
- UI for displaying traces received from the connected device.
- Search and filter traces from the view.
- Write traces to an ASCII or binary log file.
- Color and count the traces.
- Trace variable values shown in the traces.
- Activate Open System Traces (OST) from the device during run-time.
- Saving trace configurations in a file.
What's new
- New: Added max ASCII line length (10000 characters) check to prevent
possible freeze up in case of too much data.
- New: Opened log file name is shown in the TraceViewer name tab.
- Bug fix: Sometimes, other DataReader was left alive to background when
changing Data Format.
- Bug fix: TraceViewer didn't save connection settings over Carbide.c++
reboot.
- Bug fix: Reloading of the Dictionaries were not always reliable.
- Changed: Fixed some FindBugs warnings.
- Changed: TraceViewer is now released under EPL license.
Installation notes
To install the tool, do the following:
- The tool already comes in SymSEE installation of Carbide.c++
- To upgrade to newer version:
- Unzip everything inside the zip into Carbide "dropins" folder. If you
already had old TraceViewer go to "Help - About Carbide.c++ - Installation
details - TraceViewer" and click "Update...
System requirements
Basic requirements:
- Windows XP
- Carbide.c++ 2.5.0 or newer.
Additional requirements:
- Connection to a target device using USB.
Compatibility issues
Known issues
Version history
Version 2.5.3 – 9th April 2010
- New: Dropped traces notification is now added before the timestamp of the
trace.
- New: Support for formatting to length in trace parameters (e.g. "My var =
%02x").
- New: Added possibility to create shortcut keys to some TraceViewer
actions. This can be done from "Keys" preference page in Carbide.c++.
- New: Possibility to create Activation trigger so that when a specific
trace is received, activation is sent to the device.
Version 2.4.12 – 16th February 2010
- Requires Carbide.c++ 2.5.0 or newer to work!
- New: New connection preference option called "Current connection". If
this is selected, user can change the currently active connection easily
either from Remote Connection view or from a new Trim widget showing the
current connection.
- New: Support for some XTIv3 tracebox control messages.
- New: Possibility to add comments to traces when taking log file. This
will result in a separate .meta file when the log file is closed. Both
files are needed to see the comments when opening the log file again.
- New: Added "Deactivate rule" actions for line count and variable tracing
rules in Property View.
- New: Support for Ctrl+Home and Ctrl+End keys. Ctrl+Home jumps to the
first trace and Ctrl+End to the last one.
- New: Support for searching again with F3.
- Changed: Cleaned up the code.
- Bug fix: Setting trigger when in pause state sets wrong pause mode icon
to toolbar.
- Bug fix: Line count and variable tracing rules were count again even no
changes were done.
- Bug fix: Triggering didn't work with filtering on.
- Bug fix: Regression: Copying data from the view didn't work.
- Bug fix: One trace too much was copied to clipboard in some cases.
- Bug fix: Regression: Trace text was missing when there is Thread ID but
no CPU ID.
- Bug fix: Sometimes, trace offset went wrong by one which caused view to
look weird and coloring not to work properly.
- Bug fix: Sometimes, the "Traces selected X. Time difference: X" text
could not fit in to the Trim.
Version 2.3.8 – 8th December 2009
- New: Option to not to show component and group name in OST traces.
- New: API function to get trace name with component, group and trace
ID.
- New: Line count and variable tracing rules can now be added and edited
with right mouse button from Trace Property View.
- New: Option to save currently visible traces to a ASCII log file.
- New: Combined option to hide Thread ID to option to hide CPU ID from the
OST traces.
- New: Support for XTIv3 messages containing multipart OST messages inside
them.
- Changed: TraceProperties.timeFromPreviousTrace now contains milliseconds
passed from previous trace. TraceProperties.timestampString doesn't contain
that information anymore but only the actual timestamp.
- Bug fix: Drag and Drop of rules in various dialogs didn't work.
- Bug fix: Progressbar didn't advance from 0% when saving current traces to
ASCII log.
- Bug fix: CPU ID was not shown correctly on real SMP HW if it was
something else than CPU 0.
Version 2.2.17 – 13th October 2009
- Requires Carbide.c++ 2.0.4 or newer to work!
- New: Option to turn off displaying Thread ID in OST traces.
- New: Added BTrace variables into info dialog.
- New: Added new alternative client API (TraceViewerAPI2 class). The client
of the API gets notifications when connection status or connection
preferences are changed.
- New: Support for multipart BTrace traces.
- New: Color headers and data parts of multipart BTraces in info dialog.
- Changed: Reworked some help files.
- Changed: When using OST protocol, OST TraceCore protocol header is added
to outgoing messages.
- Changed: Modified older client API implementation (TraceViewerAPI class)
to not disconnect active connection in case there are currently registered
TraceViewerAPI2 using the connection.
- Bug fix: Copy to clipboard didn't always work as it should.
- Bug fix: Retake machine readable log button didn't disappear
correctly.
- Bug fix: More than one ZIP was offered for reload in certain
circumstances.
- Bug fix: It was possible to crash Filter dialog so that it didn't open
anymore.
- Bug fix: It was possible to freeze TraceViewer by opening specific ASCII
log.
- Bug fix: When connection settings are set through the API, empty selected
connection from UI.
- Bug fix: Possible extended length bytes were not read properly.
- Bug fix: Double-clicking group table in Activation dialog removed group
filtering.
- Bug fix: Connecting with no Remote Connection set will now pop up a
preferences dialog.
- Bug fix: Opening a trace information dialog when another trace
information dialog was open caused coloring of the hex string not to
work.
Version 2.1.12
- Requires Carbide.c++ 2.0.2 to work!
- New: Double-clicking a trace opens the trace location in source file
(only for OST traces).
- New: syncToTrace() and syncToTimestamp() methods open the trace location
in source file.
- New: New button to easily close and retake machine readable ASCII
log.
- New: Support for OST v0.5.
- Changed everything to Symbian Foundation compatible.
- Changed: Send deactivation message of visible component if group states
were not changed at all.
- Changed: Add event to Trace Events view when reloading changed
Dictionaries.
- Changed: Send activation messages of all selected components in
Activation dialog.
- Changed: In trace information dialog, header and data parts is now
colored with different colors.
- Bug fix: Dictionary ZIP could not be reloaded when restarting
TraceViewer.
- Bug fix: Double- or triple-clicking did not show Trim information.
- Bug fix: Canceling filtering could make view pause to wrong position.
Version 2.0.27
- Switched to own branch for Carbide 2.0.
- New: Use Remote Connections UI from Carbide.
- New: Connection Settings button in Menu bar.
- New: TraceViewer now requires Carbide.c++ Trace license to work.
- New: Use OVERWRITE activation messages. Will now only send one activation
message per component.
- New: Uses EPOCroot drive path from active project when trying to jump to
source code line.
- New: Option to write machine readable ASCII log.
- New: Trace number is now a member variable of TraceProperties class.
- New: New API functions: syncToTraceNumber, syncToTimestamp.
- New: New API functions: saveCurrentTracesToLog, openLogFile,
getDictionaryComponents.
- New: Automatically reload changed Dictionaries option.
- New: API function getDictionaryComponents() now also returns trace
list.
- Changed: Speed up clearing the view.
- Changed: TraceViewerAPI.getDictionaryComponents() doesn't return null
anymore.
- Updated: Help files.
- Bug fix: Sometimes, the view contained one trace too much.
- Bug fix: Remote Connections UI was not updated when connecting.
- Bug fix: Color rules were lost if there was Groups defined.
- Bug fix: Log dialog gave access to plain log options even when not
writing plain log.
- Bug fix: It was possible to freeze TraceViewer with simultaneous async
commands.
- Bug fix: Canceling filtering didn't work very well.
- Bug fix: Filters were not marked after switching to advanced filter
view.
- Bug fix: Thread ID was not written separately to machine readable ASCII
log.
- Bug fix: Added coprocessors went to wrong offset if TraceViewer view was
not yet initialized.
- Bug fix: TraceViewer didn't ask about changing Data Format with USB in
certain case.
- Bug fix: Variable tracing history didn't always show up correctly.
- Bug fix: API function connect() should not pop up error message.
- Bug fix: Open previously opened Dictionaries dialog offered also removed
Dictionaries.
- Bug fix: Traces are not decoded after closing and reopening
TraceViewer.
- Bug fix: Missed notification about number of selected traces if using
CTRL + A.
Version 1.0.21
- Made changes for releasing to Carbide 2.0.
- Made changes to be able to release into SymSEE.
- Made to work with TraceCommon feature.
- New: TraceViewer API functions: getTraceComponentName and
getTraceGroupName.
- New: TraceViewer can now open ZIP files containing Dictionary decode
files.
- New: TraceViewer will now show a warning icon in a toolbar if decode file
is changed after loading.
- Updated: TraceViewer help files to follow Carbide help guidelines.
- Updated: Loading of Dictionary files is now much faster.
- Updated: Added preference option to show class name and function name
before the trace text.
- Changed: Don't disable apply button from activation dialog when apply is
clicked.
- Changed: Activation dialog now shows components sorted by the name.
- Changed: Removed Configurations preference page. Importing and exporting
configuration can bow be done from File - Import / Export in Eclipse
menu.
- Changed: Changed default binary log extension from .log to .bin.
- Bug fix: Saving and loading configuration XML files did not work if
workspace path contains spaces.
- Bug fix: If loaded lots of Dictionaries, "open previous files" dialog was
too big.
- Bug fix: Confusing text "defaultActivations.xml" under the configurations
tag.
- Bug fix: Trace EventView doesn't open if there is error when loading
Dictionary.
- Bug fix: Parameters were not correctly decoded when using OST traces with
USB connection.
- Bug fix: Activation information of groups doesn't anymore disappear when
appending more decode files.
- Bug fix: Configurations in Activation dialog now shows the file path and
only allows file to be changed using the "Change file" button.
- Bug fix: Rule text was replicated from rule name when editing a old
rule.
- Bug fix: Wrong text copied to search window after clicking twice on
trace.
- Bug fix: Wrong help in search dialog.
- Bug fix: When using loadDecodeFile API function, Trace Activation dialog
was not updated.