Latest Release

Current version: 1.0.1

ViperData is free software — however I have invested a considerable amount of time and my own resources ($$$) to develop this application. If you like it and found it useful, please donate to help further development.

What is ViperData?

ViperData is an advanced datalog review and analysis tool for datalogs recorded, saved or exported in “CSV” (comma separated values) format. Many aftermarket engine management tools or dataloggers record in this format. Unfortunately most do not have sophisticated, intuitive or easy to use datalog viewing and analysis tools. Many have resorted to using Excel to view these datalogs, and I have found that to be a very clunky and slow method to review datalogs. When searching for tools to fill this gap, I have not found an easy to use as well as sophisticated tool for the job. ViperData aims to not only to fill the gap, but add advanced capabilities — it is in continual development and more features are being added.

What can ViperData do for you?

At the very core — ViperData can create sophisticated and intvd1eractive graphs to review CSV format datalogs. You can zoom, scroll and click anywhere on the graph to view recorded data in a graphical and easy to review format. The graphs you display are completely configuration with the data you wish to display. These displays can be saved as “templates” for future use on any other datalogs that have the same sensor data — saving you the trouble of having to vd2configure the graph display for every datalog you wish to view.

Several pre-configured templates for some common EMS datalogs are included — with the possibilities being endless.vd3

The ability for advanced analysis via graphs such as dual plot XY scatter charts is also available — again, graphical, easy to use and configurable. The feature set is being expanded as the application is further developed.

User Guide (how do I use this thing?)

After opening the application you drag and drop the the CSV datalog (typically .csv file extension) onto an empty spot on the window. If it is a valid CSV you will get a prompt asking you to select a valid time column (a valid time or frame sensor). Although any sensor can be selected, it is highly recommended to use a valid linear time column — you can also select no time column at all. You can open multiple datalogs, or you can drop a new datalog on an existing graph plot to open that datalog in that graph plot and apply that plot configuration to it.

Something to keep in mind — your configuration for the datalog is always saved, so the next time you open the datalog your last graph configuration is automatically applied!

To add sensors to graph plots — right click the graph and select the sensor. Up to 4 sensors per graph plot.

Sensor conversions are available by Shift + Right clicking a graph plot. You can also chose to make a specific sensor plot bolt on that graph.

To zoom into a section of the graph — hold down the Right mouse button and drag a selection area. You can also zoom in or out slowly by pushing Control and Plus or Control and the Minus keys on the main keyboard (not number pad). Add the Shift key to that combination to zoom in with big steps.

To zoom back out completely, use Graphs->Zoom To Full (Control+F shortcut).

To export a zoomed in view, use Graphs->Export View.

To save a graph plot configuration as a new template, chose Graphs->Graphs to Template and you will be prompted to name the new template.

You can manage templates in the Templates->Manage menu. All sensors that have been detected to date are available to be used in template design.

The Graphs->Sensvd4ors menu opens a window that lets you configure sensors — the text to display, the minimum and maximum values on the Y scale on graph plots, the decimal precision and display color.

The Windows->Sensor Conversions menu is a similar option that lets you configure the scale and precision of Sensor conversions.


- Keep a history of selected time columns -- logs that contain said time column and no other config yet will automatically find the 
 appropriate column.
- Redraw Scatter Form only after resize ends -- speeds up resize on HUGE data plots (hundreds of thousands of points).
- Delete button in the Templates editor now functions.
- Allow graphing two scatter plots on the Scatter form.
- MDI Interface: file open events will open a new child graph window.
- Sensor Replay window to allow for viewing of *all* sensors near the selected spot on the graph (currently active graph child form)
- Bug fix: validate time column in saved file xml config.
- Bug fix: save graph window config on close.
- Scatter plots are now part of the MDI interface and live on past the closing of the graph form that spawned it (allows you to continue to view scatter data).
- To avoid clutter, sensors on the sensor edit form only display the sensors contained in the active graph form that spawned the Sensor edit form.
- Added the ability to limit the scatter chart based on an expression against another sensor.
- Added the ability to export the current view of a graph (ie, you zoom in, and export the zoomed view).
- Datalog settings are now saved to a database to avoid file system clutter.
- Fixed an issue where zooming and scrolling would break when the time axis had a non linear break in it.
- Keyboard zooming: Use Control and + or - on main keyboard. Do Control and shift to do big steps (with + and -).
- As long as you have a valid time column, your track line stays between template updates, zooming and scrolling.
- Sensor conversions for common items.
- Initial release.


ViperData is free software — no support is expressed or implied. The interface is intuitive and easy to use.

If you find a CSV you cannot open (“invalid format” error) — compress it (ZIP format is fine) and submit it to with “ViperData” in the subject and I will see about adding support (some dataloggers add unusual formatting to the datalogs).

If you have feature requests or ideas, they are welcome — email the same address with “ViperData” in the subject.