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
- Open two projects in BitEdit
- Open Connected Dumps from the Debug/PRO ribbon section
- Each pane loads one of the open projects. Use Swap to switch which project is source and which is destination
- Set the byte offset between the two firmwares (see below)
- 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:
| Shortcut | Action |
|---|---|
| M | Jump to next diff zone |
| N | Jump 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:
| Mode | Behavior |
|---|---|
| Absolute | Overwrites destination cells with source values |
| Delta | Applies the difference between source current and source original to destination |
| Percent | Applies 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.
| Shortcut | Action |
|---|---|
| Ctrl+T | Transfer 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.
Navigating Untransferred Maps
After transferring some maps, use these shortcuts to jump between maps that still need to be transferred:
| Shortcut | Action |
|---|---|
| Ctrl+PageDown | Jump to next untransferred map |
| Ctrl+PageUp | Jump 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.
Auto-Sync Search
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:
- Position the caret on (or select) a distinctive data region in the source pane
- Click Search in the auto-sync section of the toolbar
- Navigate through results with the Next / Previous buttons
- 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:
- Open both projects and launch Connected Dumps
- Find the offset — use auto-sync search or manually align known landmarks with shift-scroll
- Transfer aligned maps — use "Perfectly aligned maps" to batch-import all maps that haven't moved
- Review remaining maps — use Ctrl+PageDown to jump through untransferred maps
- Transfer maps one by one — verify each map's alignment visually, then press Ctrl+T to transfer
- Transfer modified values — switch to cross-pane diff mode, navigate diffs with M/N, and use cell transfer to copy changed values
- Verify — scroll through both panes to confirm all expected data has been migrated
Keyboard Reference
| Key | Function |
|---|---|
| M | Next diff zone |
| N | Previous diff zone |
| Ctrl+T | Transfer map (current scope) |
| Ctrl+PageDown | Next untransferred map |
| Ctrl+PageUp | Previous untransferred map |
| Shift+Scroll | Adjust offset (source pane only) |
| Ctrl+U | Restore original values |
| Ctrl+Z | Undo |
| Ctrl+Y / Ctrl+Shift+Z | Redo |
| Ctrl+G | Go to address |
| PageUp / PageDown | Previous / next zone |
| Ctrl+1 | Byte format |
| Ctrl+2 | Word format |
| Ctrl+3 | Double-word format |
| Ctrl+4 | Toggle signed/unsigned |
| Ctrl+5 | Toggle 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.