Skip to main content

Connected Dumps

Connected Dumps is a side-by-side comparison and migration tool for working with two firmware dumps simultaneously. It is designed for transferring calibration data — maps, axes, and raw cell values — from one ECU firmware version to another, even when addresses have shifted between versions.

Open Connected Dumps from Debug/PRO → Connected Dumps on the Ribbon.

Overview

The Connected Dumps editor displays two firmware projects side by side:

  • Source pane (top in 2D mode, left in Hex mode) — the project you are transferring data from
  • Destination pane (bottom in 2D mode, right in Hex mode) — the project you are transferring data to

A toolbar strip between the panes provides controls for offset management, data transfer, diff navigation, and view settings.

Getting Started

  1. Open two projects in BitEdit
  2. Open Connected Dumps from the Debug/PRO ribbon section
  3. Each pane loads one of the open projects. Use Swap to switch which project is source and which is destination
  4. Set the byte offset between the two firmwares (see below)
  5. Use diff navigation to find differences, then transfer maps or cell values as needed

Offset

The offset is a signed byte displacement between source and destination addresses. When the same calibration table lives at address 0x1000 in the source but 0x1200 in the destination, the offset is +0x200.

Setting the Offset

  • Manual entry — type a signed hex value directly into the offset text box (e.g., +0x200, -0x1A, 0x0)
  • Shift-scroll — hold Shift and scroll the mouse wheel in the source pane to nudge the offset up or down by one cell width. The two data plots slide past each other in real time, making it easy to visually align matching patterns
  • Auto-calculate from cursors — position the caret in the source pane on a known landmark, then position the caret in the destination pane on the same landmark. Click the auto-calculate button to compute the offset as the difference between the two caret positions. This also re-enables viewport sync

Viewport Sync

When viewport sync is enabled, scrolling one pane scrolls the other (accounting for the offset). This keeps both panes aligned as you navigate. Toggle sync with the Sync Scroll button on the toolbar.

Viewport sync is automatically re-enabled when you use auto-calculate offset.

View Modes

Connected Dumps supports two view modes, toggled with the View Mode button:

  • Hex mode — panes are side by side (left/right) with a vertical toolbar strip between them
  • 2D mode — panes are stacked (top/bottom) with a horizontal toolbar strip between them

All keyboard shortcuts and transfer operations work identically in both modes.

Diff Display

The change indicator bars on the edges of each pane can show two types of differences:

  • Local diff — differences between the current and original state of each pane's own project (the standard diff mode)
  • Cross-pane diff — differences between the source and destination dumps, accounting for offset

Switch between these modes using the Diff Display popup button on the toolbar. Cross-pane diff mode is the most useful for identifying which regions still need to be transferred.

Tolerance

Diff comparison supports tolerance to ignore minor value differences:

  • Absolute tolerance — values within ±N raw units are considered equal
  • Percentage tolerance — values within ±N% are considered equal

Set tolerance from the transfer values popup or the diff navigation popup.

Merge Proximity

When diff zones are separated by fewer bytes than the merge proximity threshold, they are merged into a single zone. This reduces navigation noise when differences are closely spaced.

Diff Navigation

Jump between cross-pane differences to quickly find regions that need attention:

ShortcutAction
MJump to next diff zone
NJump to previous diff zone

The Auto-select diff chunk option (in the diff navigation popup) automatically selects the entire diff region when you jump to it, making it ready for immediate transfer.

Cell Transfer

Cell transfer copies raw data values from the source dump to the destination dump at the corresponding offset address.

Three transfer modes are available:

ModeBehavior
AbsoluteOverwrites destination cells with source values
DeltaApplies the difference between source current and source original to destination
PercentApplies the percentage change from source to destination

Select the mode from the transfer values split button dropdown. The main button executes the transfer for the current selection or cell under the caret.

The Jump to next diff option automatically advances to the next diff zone after each transfer, enabling a rapid review-and-transfer workflow.

Map Transfer

Map transfer copies map definitions (structure, axes, format) from the source project to the destination project, adjusting addresses by the current offset.

ShortcutAction
Ctrl+TTransfer map(s) using the current scope (under caret or within selection)

Transfer Scopes

  • Map under caret — transfers the single map at the current caret position
  • Maps within selection — transfers all maps overlapping the current selection
  • All maps — transfers every map from the source project (one-time action)
  • Perfectly aligned maps — transfers only maps whose raw bytes are identical between source and destination at the offset address (one-time action). This is useful for quickly importing maps that haven't changed between firmware versions

The Auto-jump to next map option advances the caret to the next source map after each transfer.

After transferring some maps, use these shortcuts to jump between maps that still need to be transferred:

ShortcutAction
Ctrl+PageDownJump to next untransferred map
Ctrl+PageUpJump to previous untransferred map

A map is considered "transferred" when the destination project contains a map with the same name at the expected offset address.

Folder Structure

Transferred maps preserve the source project's folder hierarchy. If the source map lives inside nested folders, the same folder structure is recreated in the destination project.

The auto-sync engine helps find the correct offset when you don't know it in advance. It searches for matching byte patterns between the two dumps:

  1. Position the caret on (or select) a distinctive data region in the source pane
  2. Click Search in the auto-sync section of the toolbar
  3. Navigate through results with the Next / Previous buttons
  4. When you find the correct match, the offset is applied automatically

The search sample size controls how many bytes are compared. Larger samples are slower but more precise.

Typical Workflow

A common workflow for migrating calibration data between firmware versions:

  1. Open both projects and launch Connected Dumps
  2. Find the offset — use auto-sync search or manually align known landmarks with shift-scroll
  3. Transfer aligned maps — use "Perfectly aligned maps" to batch-import all maps that haven't moved
  4. Review remaining maps — use Ctrl+PageDown to jump through untransferred maps
  5. Transfer maps one by one — verify each map's alignment visually, then press Ctrl+T to transfer
  6. Transfer modified values — switch to cross-pane diff mode, navigate diffs with M/N, and use cell transfer to copy changed values
  7. Verify — scroll through both panes to confirm all expected data has been migrated

Keyboard Reference

KeyFunction
MNext diff zone
NPrevious diff zone
Ctrl+TTransfer map (current scope)
Ctrl+PageDownNext untransferred map
Ctrl+PageUpPrevious untransferred map
Shift+ScrollAdjust offset (source pane only)
Ctrl+URestore original values
Ctrl+ZUndo
Ctrl+Y / Ctrl+Shift+ZRedo
Ctrl+GGo to address
PageUp / PageDownPrevious / next zone
Ctrl+1Byte format
Ctrl+2Word format
Ctrl+3Double-word format
Ctrl+4Toggle signed/unsigned
Ctrl+5Toggle big-endian

Tips

  • Start with aligned maps — transferring perfectly aligned maps first saves significant time and lets you focus manual effort on maps that actually changed addresses.
  • Use shift-scroll for fine alignment — when the offset is close but not exact (e.g., off by 2 or 4 bytes due to firmware structure changes), shift-scrolling in the source pane lets you see the two plots sliding past each other until they line up.
  • Cross-pane diff after transfer — after transferring maps, switch to cross-pane diff mode to verify that no data regions were missed.
  • Tolerance for noisy data — set a small absolute tolerance (e.g., ±1 or ±2) to ignore minor calibration tweaks and focus on significant changes.
  • Undo is per-pane — each pane has its own undo stack. Ctrl+Z undoes the last change in the currently active pane.