[{"data":1,"prerenderedAt":105},["ShallowReactive",2],{"docs-nav":3,"doc:user-guide":56},[4,12,30,42,50],{"title":5,"items":6},"Getting Started",[7,10],{"path":8,"title":9},"\u002Fdocs\u002Finstallation","Installation",{"path":11,"title":5},"\u002Fdocs\u002Fgetting-started",{"title":13,"items":14},"User Documentation",[15,18,21,24,27],{"path":16,"title":17},"\u002Fdocs\u002Fuser-guide","User Guide",{"path":19,"title":20},"\u002Fdocs\u002Fsupported-ecu-formats","Supported ECU Formats",{"path":22,"title":23},"\u002Fdocs\u002Funit-conversion","Unit Conversion",{"path":25,"title":26},"\u002Fdocs\u002Ffield-normalization","Field Normalization",{"path":28,"title":29},"\u002Fdocs\u002Ftuning-table-generators","Tuning Table Generators",{"title":31,"items":32},"Support",[33,36,39],{"path":34,"title":35},"\u002Fdocs\u002Ftroubleshooting","Troubleshooting",{"path":37,"title":38},"\u002Fdocs\u002Ffaq","Frequently Asked Questions",{"path":40,"title":41},"\u002Fdocs\u002Fprivacy","Privacy & Analytics",{"title":43,"items":44},"Development",[45,47],{"path":46,"title":43},"\u002Fdocs\u002Fdevelopment",{"path":48,"title":49},"\u002Fdocs\u002Fcontributing","Contributing",{"title":51,"items":52},"Legal",[53],{"path":54,"title":55},"\u002Fdocs\u002Flegal","Legal Notices",{"slug":57,"name":58,"title":17,"html":59,"toc":60,"editUrl":103,"sourceUrl":104},"user-guide","User-Guide","\u003Cp>This comprehensive guide covers all features and functionality of UltraLog v2.0.\u003C\u002Fp>\n\u003Ch2 id=\"table-of-contents\">Table of Contents\u003C\u002Fh2>\n\u003Cul>\n\u003Cli>\u003Ca href=\"#interface-overview\">Interface Overview\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"#loading-files\">Loading Files\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"#channel-selection\">Channel Selection\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"#chart-interaction\">Chart Interaction\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"#timeline-and-playback\">Timeline and Playback\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"#tools-panel\">Tools Panel\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"#settings-panel\">Settings Panel\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"#computed-channels\">Computed Channels\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"#exporting\">Exporting\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"#accessibility-features\">Accessibility Features\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"#keyboard-shortcuts\">Keyboard Shortcuts\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Chr>\n\u003Ch2 id=\"interface-overview\">Interface Overview\u003C\u002Fh2>\n\u003Ch3 id=\"main-window-layout\">Main Window Layout\u003C\u002Fh3>\n\u003Cp>UltraLog v2.0 features a redesigned VS Code-style interface with an activity bar on the far left side:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>┌─────────────────────────────────────────────────────────────────┐\n│  [Tab 1] [Tab 2] [Tab 3]                            [Tab Bar]   │\n├─┬────────┬──────────────────────────────────┬───────────────────┤\n│A│        │                                  │                   │\n│C│ PANEL  │                                  │                   │\n│T│        │                                  │                   │\n│I│ FILES  │          CHART AREA              │                   │\n│V│   OR   │                                  │                   │\n│I│CHANNELS│                                  │                   │\n│T│   OR   │                                  │                   │\n│Y│ TOOLS  │                                  │                   │\n│ │   OR   │                                  │                   │\n│B│SETTINGS│                                  │                   │\n│A│        │                                  │                   │\n│R│        │                                  │                   │\n├─┴────────┴──────────────────────────────────┴───────────────────┤\n│  [▶] [⏸] [⏹]  [1.0x ▼]  ═══════○═══════════  00:15.234 \u002F 02:30  │\n└─────────────────────────────────────────────────────────────────┘\n                          [Timeline Controls]\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch3 id=\"activity-bar-left-edge\">Activity Bar (Left Edge)\u003C\u002Fh3>\n\u003Cp>The activity bar contains four icons that switch between different panels:\u003C\u002Fp>\n\u003Ctable>\n\u003Cthead>\n\u003Ctr>\n\u003Cth>Icon\u003C\u002Fth>\n\u003Cth>Panel\u003C\u002Fth>\n\u003Cth>Purpose\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\u003Ctr>\n\u003Ctd>📁 Folder\u003C\u002Ftd>\n\u003Ctd>\u003Cstrong>Files\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>File list, drop zone, loaded files management\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>📋 List\u003C\u002Ftd>\n\u003Ctd>\u003Cstrong>Channels\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>Channel selection, search, selected channel cards\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>🔧 Wrench\u003C\u002Ftd>\n\u003Ctd>\u003Cstrong>Tools\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>Scatter plot, histogram, and analysis tools\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>⚙️ Gear\u003C\u002Ftd>\n\u003Ctd>\u003Cstrong>Settings\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>All application settings\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\u003C\u002Ftable>\n\u003Cp>Click an icon to open that panel. Click it again to close the panel.\u003C\u002Fp>\n\u003Ch3 id=\"tab-bar-top\">Tab Bar (Top)\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Switch between multiple open log files\u003C\u002Fli>\n\u003Cli>Each tab shows the filename\u003C\u002Fli>\n\u003Cli>Close tabs with the × button\u003C\u002Fli>\n\u003Cli>Each tab maintains its own channel selections and view state\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3 id=\"chart-area-center\">Chart Area (Center)\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Main data visualization area\u003C\u002Fli>\n\u003Cli>Displays selected channels as time-series graphs\u003C\u002Fli>\n\u003Cli>Shows cursor with current time position\u003C\u002Fli>\n\u003Cli>Legend with channel info and values\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3 id=\"timeline-controls-bottom\">Timeline Controls (Bottom)\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Playback buttons (Play, Pause, Stop)\u003C\u002Fli>\n\u003Cli>Speed selector\u003C\u002Fli>\n\u003Cli>Timeline scrubber\u003C\u002Fli>\n\u003Cli>Time display and manual input\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Chr>\n\u003Ch2 id=\"loading-files\">Loading Files\u003C\u002Fh2>\n\u003Ch3 id=\"supported-file-types\">Supported File Types\u003C\u002Fh3>\n\u003Ctable>\n\u003Cthead>\n\u003Ctr>\n\u003Cth>Extension\u003C\u002Fth>\n\u003Cth>Format\u003C\u002Fth>\n\u003Cth>ECU System\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\u003Ctr>\n\u003Ctd>\u003Ccode>.csv\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>CSV text files\u003C\u002Ftd>\n\u003Ctd>Haltech, ECUMaster, RomRaider, MegaSquirt, Woolich Racing Tuned\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>.log\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>Standard log files\u003C\u002Ftd>\n\u003Ctd>Various\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>.txt\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>Text-based log files\u003C\u002Ftd>\n\u003Ctd>Various\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>.mlg\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>MegaLogViewer binary\u003C\u002Ftd>\n\u003Ctd>Speeduino\u002FrusEFI\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>.xrk\u003C\u002Fcode>, \u003Ccode>.drk\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>AiM binary format\u003C\u002Ftd>\n\u003Ctd>AiM data loggers\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>.llg\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>Link log format\u003C\u002Ftd>\n\u003Ctd>Link ECU\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>.lg1\u003C\u002Fcode>, \u003Ccode>.lg2\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>Emerald binary format\u003C\u002Ftd>\n\u003Ctd>Emerald ECU (both files required)\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\u003C\u002Ftable>\n\u003Ch3 id=\"loading-methods\">Loading Methods\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>Method 1: Activity Bar\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Col>\n\u003Cli>Click the \u003Cstrong>Files\u003C\u002Fstrong> icon (📁) in the activity bar\u003C\u002Fli>\n\u003Cli>Click the \u003Cstrong>&quot;Select a file&quot;\u003C\u002Fstrong> button\u003C\u002Fli>\n\u003Cli>Navigate to your log file\u003C\u002Fli>\n\u003Cli>Click \u003Cstrong>Open\u003C\u002Fstrong>\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>\u003Cstrong>Method 2: Drag and Drop\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Col>\n\u003Cli>Drag one or more files from your file manager\u003C\u002Fli>\n\u003Cli>Drop them anywhere on the UltraLog window\u003C\u002Fli>\n\u003Cli>Files load automatically\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch3 id=\"multi-file-support\">Multi-File Support\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Each file opens in its own tab\u003C\u002Fli>\n\u003Cli>Click tabs to switch between files\u003C\u002Fli>\n\u003Cli>Close tabs with the × button\u003C\u002Fli>\n\u003Cli>Duplicate files are automatically detected and rejected\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3 id=\"file-information\">File Information\u003C\u002Fh3>\n\u003Cp>After loading, the Files panel shows:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>File name\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>\u003Cstrong>ECU type\u003C\u002Fstrong> (Haltech, ECUMaster, Speeduino, AiM, Link, Emerald, MegaSquirt, Woolich, etc.)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Channel count\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Duration\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Delete button\u003C\u002Fstrong> to remove the file\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Chr>\n\u003Ch2 id=\"channel-selection\">Channel Selection\u003C\u002Fh2>\n\u003Ch3 id=\"accessing-the-channels-panel\">Accessing the Channels Panel\u003C\u002Fh3>\n\u003Cp>Click the \u003Cstrong>Channels\u003C\u002Fstrong> icon (📋) in the activity bar to open the Channels panel.\u003C\u002Fp>\n\u003Ch3 id=\"panel-layout\">Panel Layout\u003C\u002Fh3>\n\u003Cp>The Channels panel contains:\u003C\u002Fp>\n\u003Col>\n\u003Cli>\u003Cstrong>Search box\u003C\u002Fstrong> - Filter channels by name\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Available channels list\u003C\u002Fstrong> - All channels from the loaded file\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Selected channel cards\u003C\u002Fstrong> - Currently displayed channels with color indicators\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch3 id=\"selecting-channels\">Selecting Channels\u003C\u002Fh3>\n\u003Col>\n\u003Cli>Use the search box to filter channels (e.g., type &quot;rpm&quot; or &quot;afr&quot;)\u003C\u002Fli>\n\u003Cli>Click a channel name to add it to the chart\u003C\u002Fli>\n\u003Cli>The channel appears as a card in the &quot;Selected Channels&quot; section\u003C\u002Fli>\n\u003Cli>Click the channel card or name again to remove it\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>\u003Cstrong>Limit:\u003C\u002Fstrong> Maximum of 10 channels can be displayed simultaneously.\u003C\u002Fp>\n\u003Ch3 id=\"channel-cards\">Channel Cards\u003C\u002Fh3>\n\u003Cp>Each selected channel shows:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Color indicator\u003C\u002Fstrong> - Matches the line on the chart\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Channel name\u003C\u002Fstrong> - May be normalized if Field Normalization is enabled\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Current value\u003C\u002Fstrong> - Value at cursor position with units\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Remove button\u003C\u002Fstrong> (×) - Deselect the channel\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3 id=\"channel-colors\">Channel Colors\u003C\u002Fh3>\n\u003Cp>Channels are assigned colors from a palette:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Standard:\u003C\u002Fstrong> Blue, Orange, Green, Red, Purple, Brown, Pink, Gray, Yellow, Cyan\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Colorblind Mode:\u003C\u002Fstrong> Black, Orange, Sky Blue, Bluish Green, Yellow, Blue, Vermillion, Reddish Purple\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Chr>\n\u003Ch2 id=\"chart-interaction\">Chart Interaction\u003C\u002Fh2>\n\u003Ch3 id=\"the-chart-display\">The Chart Display\u003C\u002Fh3>\n\u003Cp>The main chart shows:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Y-axis:\u003C\u002Fstrong> Normalized values (0-1 scale)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>X-axis:\u003C\u002Fstrong> Time in seconds\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Lines:\u003C\u002Fstrong> One colored line per selected channel\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Cursor:\u003C\u002Fstrong> Vertical line showing current position\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Legend:\u003C\u002Fstrong> Channel info with min\u002Fmax\u002Fcurrent values\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3 id=\"normalized-display\">Normalized Display\u003C\u002Fh3>\n\u003Cp>All channels are displayed normalized to a 0-1 range:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Why?\u003C\u002Fstrong> Allows comparing channels with vastly different scales\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Example:\u003C\u002Fstrong> RPM (0-8000) and Lambda (0.7-1.3) can be compared visually\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Original values\u003C\u002Fstrong> are shown in the legend with proper units\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3 id=\"mouse-controls\">Mouse Controls\u003C\u002Fh3>\n\u003Ctable>\n\u003Cthead>\n\u003Ctr>\n\u003Cth>Action\u003C\u002Fth>\n\u003Cth>Result\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\u003Ctr>\n\u003Ctd>\u003Cstrong>Click\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>Move cursor to clicked position\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Cstrong>Scroll\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>Zoom in\u002Fout on time axis\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Cstrong>Drag\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>Pan the view left\u002Fright\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Cstrong>Double-click\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>Reset zoom to fit all data\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\u003C\u002Ftable>\n\u003Ch3 id=\"legend-information\">Legend Information\u003C\u002Fh3>\n\u003Cp>For each selected channel, the legend displays:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>■ Channel Name    Min: 0.00    Max: 100.00    Current: 45.67 units\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cul>\n\u003Cli>\u003Cstrong>Color indicator\u003C\u002Fstrong> - Matches the line on the chart\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Channel name\u003C\u002Fstrong> - May be normalized if Field Normalization is enabled\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Min\u002FMax\u003C\u002Fstrong> - Peak values across the entire log\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Current\u003C\u002Fstrong> - Value at cursor position with unit symbol\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Chr>\n\u003Ch2 id=\"timeline-and-playback\">Timeline and Playback\u003C\u002Fh2>\n\u003Ch3 id=\"timeline-controls\">Timeline Controls\u003C\u002Fh3>\n\u003Cp>Located at the bottom of the window:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[▶] [⏸] [⏹]  [1.0x ▼]  ═══════○═══════════  00:15.234 \u002F 02:30.000\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch3 id=\"playback-buttons\">Playback Buttons\u003C\u002Fh3>\n\u003Ctable>\n\u003Cthead>\n\u003Ctr>\n\u003Cth>Button\u003C\u002Fth>\n\u003Cth>Action\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\u003Ctr>\n\u003Ctd>▶ Play\u003C\u002Ftd>\n\u003Ctd>Start\u002Fresume playback\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>⏸ Pause\u003C\u002Ftd>\n\u003Ctd>Pause at current position\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>⏹ Stop\u003C\u002Ftd>\n\u003Ctd>Stop and reset to beginning\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\u003C\u002Ftable>\n\u003Cp>\u003Cstrong>Keyboard shortcut:\u003C\u002Fstrong> Press \u003Ccode>Space\u003C\u002Fcode> to Play\u002FPause\u003C\u002Fp>\n\u003Ch3 id=\"playback-speed\">Playback Speed\u003C\u002Fh3>\n\u003Cp>Available speeds:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>0.25x (quarter speed)\u003C\u002Fli>\n\u003Cli>0.5x (half speed)\u003C\u002Fli>\n\u003Cli>1.0x (real-time)\u003C\u002Fli>\n\u003Cli>2.0x (double speed)\u003C\u002Fli>\n\u003Cli>4.0x (4x speed)\u003C\u002Fli>\n\u003Cli>8.0x (8x speed)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3 id=\"timeline-scrubber\">Timeline Scrubber\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Cstrong>Click\u003C\u002Fstrong> anywhere on the timeline to jump to that time\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Drag\u003C\u002Fstrong> the handle to scrub through the data\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3 id=\"time-display\">Time Display\u003C\u002Fh3>\n\u003Cp>Shows \u003Ccode>current time \u002F total duration\u003C\u002Fcode> in seconds\u003C\u002Fp>\n\u003Ch3 id=\"manual-time-input\">Manual Time Input\u003C\u002Fh3>\n\u003Cp>Click on the time display to type a specific time in seconds.\u003C\u002Fp>\n\u003Ch3 id=\"cursor-tracking-mode\">Cursor Tracking Mode\u003C\u002Fh3>\n\u003Cp>When enabled (Settings → Display → Cursor Tracking):\u003C\u002Fp>\n\u003Cul>\n\u003Cli>The chart automatically scrolls to keep the cursor centered\u003C\u002Fli>\n\u003Cli>Useful when scrubbing through long logs\u003C\u002Fli>\n\u003Cli>The view window adjusts dynamically\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Chr>\n\u003Ch2 id=\"tools-panel\">Tools Panel\u003C\u002Fh2>\n\u003Ch3 id=\"accessing-tools\">Accessing Tools\u003C\u002Fh3>\n\u003Cp>Click the \u003Cstrong>Tools\u003C\u002Fstrong> icon (🔧) in the activity bar to open the Tools panel.\u003C\u002Fp>\n\u003Ch3 id=\"available-tools\">Available Tools\u003C\u002Fh3>\n\u003Cp>The tool switcher at the top of the main window has five tools:\u003C\u002Fp>\n\u003Col>\n\u003Cli>\u003Cstrong>Log Viewer\u003C\u002Fstrong> (\u003Ccode>Ctrl\u002FCmd + 1\u003C\u002Fcode>)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Scatter Plots\u003C\u002Fstrong> (\u003Ccode>Ctrl\u002FCmd + 2\u003C\u002Fcode>)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Histogram\u003C\u002Fstrong> (\u003Ccode>Ctrl\u002FCmd + 3\u003C\u002Fcode>)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Lambda Delay\u003C\u002Fstrong> (\u003Ccode>Ctrl\u002FCmd + 4\u003C\u002Fcode>) — see \u003Ca href=\"\u002Fdocs\u002Ftuning-table-generators\">Tuning Table Generators\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Accel Enrichment\u003C\u002Fstrong> (\u003Ccode>Ctrl\u002FCmd + 5\u003C\u002Fcode>) — see \u003Ca href=\"\u002Fdocs\u002Ftuning-table-generators\">Tuning Table Generators\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>The Tools panel also opens the \u003Cstrong>Analysis\u003C\u002Fstrong> window and lists the table generators with their current status.\u003C\u002Fp>\n\u003Chr>\n\u003Ch3 id=\"scatter-plot-tool\">Scatter Plot Tool\u003C\u002Fh3>\n\u003Cp>The scatter plot visualizes the relationship between two channels.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>How to use:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Col>\n\u003Cli>Open Tools panel → Select &quot;Scatter Plot&quot;\u003C\u002Fli>\n\u003Cli>Select \u003Cstrong>X-axis channel\u003C\u002Fstrong> from the dropdown\u003C\u002Fli>\n\u003Cli>Select \u003Cstrong>Y-axis channel\u003C\u002Fstrong> from the dropdown\u003C\u002Fli>\n\u003Cli>Data points are plotted showing the correlation\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>\u003Cstrong>Features:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Real-time updates as you scrub through data\u003C\u002Fli>\n\u003Cli>Zoom and pan controls\u003C\u002Fli>\n\u003Cli>Cursor tracking shows current position\u003C\u002Fli>\n\u003Cli>Points colored to match timeline\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Use cases:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>AFR vs MAP\u003C\u002Fstrong> - See how AFR changes with manifold pressure\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Ignition vs RPM\u003C\u002Fstrong> - Visualize timing curve\u003C\u002Fli>\n\u003Cli>\u003Cstrong>TPS vs Load\u003C\u002Fstrong> - Check throttle-to-load relationship\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Coolant Temp vs AFR\u003C\u002Fstrong> - Check cold-start enrichment\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Interpreting Results:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Linear pattern\u003C\u002Fstrong> - Direct correlation between channels\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Scattered points\u003C\u002Fstrong> - No strong relationship\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Clusters\u003C\u002Fstrong> - Distinct operating conditions\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Outliers\u003C\u002Fstrong> - Potential tuning issues or sensor problems\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Chr>\n\u003Ch3 id=\"histogram-tool\">Histogram Tool\u003C\u002Fh3>\n\u003Cp>The histogram creates 2D heatmap visualizations for analyzing channel distributions.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>How to use:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Col>\n\u003Cli>Open Tools panel → Select &quot;Histogram&quot;\u003C\u002Fli>\n\u003Cli>Select \u003Cstrong>X-axis channel\u003C\u002Fstrong> from the dropdown\u003C\u002Fli>\n\u003Cli>Select \u003Cstrong>Y-axis channel\u003C\u002Fstrong> from the dropdown\u003C\u002Fli>\n\u003Cli>Optionally select \u003Cstrong>Z-axis channel\u003C\u002Fstrong> for color coding\u003C\u002Fli>\n\u003Cli>Choose \u003Cstrong>grid size\u003C\u002Fstrong>: 10x10, 16x16, 20x20, or 25x25\u003C\u002Fli>\n\u003Cli>Toggle between \u003Cstrong>&quot;Hit Count&quot;\u003C\u002Fstrong> and \u003Cstrong>&quot;Average Z-Value&quot;\u003C\u002Fstrong> modes\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>\u003Cstrong>Modes:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Hit Count\u003C\u002Fstrong> - Shows how many data samples fall into each grid cell (heat intensity)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Average Z-Value\u003C\u002Fstrong> - Colors cells by the average value of the Z-axis channel\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Features:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Heat gradient from \u003Cstrong>blue (low)\u003C\u002Fstrong> to \u003Cstrong>red (high)\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Cell statistics\u003C\u002Fstrong> on hover\u002Fclick\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Cursor position tracking\u003C\u002Fstrong> during playback\u003C\u002Fli>\n\u003Cli>Analyze data distributions and correlations\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Use cases:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>RPM vs TPS heatmap\u003C\u002Fstrong> - Visualize where you spend time driving\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Boost vs RPM colored by AFR\u003C\u002Fstrong> - See AFR distribution across the boost\u002FRPM map\u003C\u002Fli>\n\u003Cli>\u003Cstrong>MAP vs Timing\u003C\u002Fstrong> - Identify timing patterns across load ranges\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Chr>\n\u003Ch3 id=\"table-generators\">Table Generators\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>Lambda Delay\u003C\u002Fstrong> and \u003Cstrong>Accel Enrichment\u003C\u002Fstrong> mine your logs for events and build tuning tables binned by RPM × load or RPM × throttle rate, with per-cell sample counts and confidence, an event inspector, and CSV, clipboard, PNG and PDF export. Setup lives in the Tool Properties panel; the table fills the center panel. They are covered on their own page: \u003Ca href=\"\u002Fdocs\u002Ftuning-table-generators\">Tuning Table Generators\u003C\u002Fa>.\u003C\u002Fp>\n\u003Chr>\n\u003Ch3 id=\"analysis-tools\">Analysis Tools\u003C\u002Fh3>\n\u003Cp>The Analysis panel provides built-in signal processing and statistical analysis.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>How to use:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Col>\n\u003Cli>Open Tools panel → Select &quot;Analysis&quot;\u003C\u002Fli>\n\u003Cli>Choose a \u003Cstrong>category\u003C\u002Fstrong>: Filters, Statistics, AFR, or Derived\u003C\u002Fli>\n\u003Cli>Select an \u003Cstrong>analysis tool\u003C\u002Fstrong> from that category\u003C\u002Fli>\n\u003Cli>Configure \u003Cstrong>parameters\u003C\u002Fstrong> (varies by tool)\u003C\u002Fli>\n\u003Cli>Click \u003Cstrong>&quot;Run Analysis&quot;\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>Optionally \u003Cstrong>save results as computed channels\u003C\u002Fstrong>\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>\u003Cstrong>Categories:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Ch4 id=\"filters\">Filters\u003C\u002Fh4>\n\u003Cp>Signal processing tools to smooth or process data:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Moving Average\u003C\u002Fstrong> - Smooth noisy signals\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Kalman Filter\u003C\u002Fstrong> - Advanced signal filtering\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Low-pass Filter\u003C\u002Fstrong> - Remove high-frequency noise\u003C\u002Fli>\n\u003Cli>\u003Cstrong>High-pass Filter\u003C\u002Fstrong> - Remove low-frequency trends\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4 id=\"statistics\">Statistics\u003C\u002Fh4>\n\u003Cp>Calculate statistical measures:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Min\u002FMax\u003C\u002Fstrong> - Find minimum and maximum values\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Percentiles\u003C\u002Fstrong> - Calculate 25th, 50th, 75th, 95th, 99th percentiles\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Standard Deviation\u003C\u002Fstrong> - Measure data variability\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Variance\u003C\u002Fstrong> - Statistical variance\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Mean\u002FAverage\u003C\u002Fstrong> - Average value over range\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4 id=\"afr-air-fuel-ratio\">AFR (Air-Fuel Ratio)\u003C\u002Fh4>\n\u003Cp>Specialized AFR analysis tools:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>AFR Target Comparison\u003C\u002Fstrong> - Compare actual AFR to target AFR\u003C\u002Fli>\n\u003Cli>\u003Cstrong>AFR Deviation\u003C\u002Fstrong> - Calculate deviation from stoichiometric\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Lambda Analysis\u003C\u002Fstrong> - Lambda-specific calculations\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4 id=\"derived\">Derived\u003C\u002Fh4>\n\u003Cp>Calculate new channels from existing data:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Rate of Change\u003C\u002Fstrong> - Calculate derivatives\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Integration\u003C\u002Fstrong> - Integrate values over time\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Acceleration\u003C\u002Fstrong> - Calculate acceleration from speed\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Power Calculation\u003C\u002Fstrong> - Estimate power from torque and RPM\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Saving Results:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>After running an analysis, you can:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Preview results\u003C\u002Fstrong> in the analysis panel\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Save as computed channel\u003C\u002Fstrong> to add to your channel list\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Export data\u003C\u002Fstrong> (coming soon)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Chr>\n\u003Ch2 id=\"settings-panel\">Settings Panel\u003C\u002Fh2>\n\u003Ch3 id=\"accessing-settings\">Accessing Settings\u003C\u002Fh3>\n\u003Cp>Click the \u003Cstrong>Settings\u003C\u002Fstrong> icon (⚙️) in the activity bar to open the Settings panel.\u003C\u002Fp>\n\u003Ch3 id=\"settings-categories\">Settings Categories\u003C\u002Fh3>\n\u003Cp>The Settings panel consolidates all application settings in one place:\u003C\u002Fp>\n\u003Col>\n\u003Cli>\u003Cstrong>Units\u003C\u002Fstrong> - Unit preferences for measurements\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Display\u003C\u002Fstrong> - Visual settings and accessibility\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Language\u003C\u002Fstrong> - Interface language selection\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Computed Channels\u003C\u002Fstrong> - Manage computed channel library\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Chr>\n\u003Ch3 id=\"units-settings\">Units Settings\u003C\u002Fh3>\n\u003Cp>Configure display units for 8 measurement categories. Changes apply immediately to all displayed values.\u003C\u002Fp>\n\u003Ctable>\n\u003Cthead>\n\u003Ctr>\n\u003Cth>Category\u003C\u002Fth>\n\u003Cth>Options\u003C\u002Fth>\n\u003Cth>Default\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\u003Ctr>\n\u003Ctd>\u003Cstrong>Temperature\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>Kelvin, Celsius, Fahrenheit\u003C\u002Ftd>\n\u003Ctd>Celsius\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Cstrong>Pressure\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>kPa, PSI, Bar\u003C\u002Ftd>\n\u003Ctd>kPa\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Cstrong>Speed\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>km\u002Fh, mph\u003C\u002Ftd>\n\u003Ctd>km\u002Fh\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Cstrong>Distance\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>km, miles\u003C\u002Ftd>\n\u003Ctd>km\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Cstrong>Fuel Economy\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>L\u002F100km, MPG\u003C\u002Ftd>\n\u003Ctd>L\u002F100km\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Cstrong>Volume\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>Liters, Gallons\u003C\u002Ftd>\n\u003Ctd>Liters\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Cstrong>Flow Rate\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>L\u002Fmin, GPM\u003C\u002Ftd>\n\u003Ctd>L\u002Fmin\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Cstrong>Acceleration\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>m\u002Fs², g\u003C\u002Ftd>\n\u003Ctd>m\u002Fs²\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\u003C\u002Ftable>\n\u003Cp>\u003Cstrong>Note:\u003C\u002Fstrong> Unit conversion is display-only. Your original data is never modified.\u003C\u002Fp>\n\u003Chr>\n\u003Ch3 id=\"display-settings\">Display Settings\u003C\u002Fh3>\n\u003Cp>Visual settings and accessibility options.\u003C\u002Fp>\n\u003Ch4 id=\"colorblind-mode\">Colorblind Mode\u003C\u002Fh4>\n\u003Cp>Toggle: \u003Cstrong>On\u002FOff\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Uses Wong&#39;s optimized 8-color palette\u003C\u002Fli>\n\u003Cli>Designed for deuteranopia, protanopia, and tritanopia\u003C\u002Fli>\n\u003Cli>Colors: Black, Orange, Sky Blue, Bluish Green, Yellow, Blue, Vermillion, Reddish Purple\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4 id=\"font-size\">Font Size\u003C\u002Fh4>\n\u003Cp>Options: \u003Cstrong>S (Small), M (Medium), L (Large), XL (Extra Large)\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Scales all UI text for improved readability\u003C\u002Fli>\n\u003Cli>Default: M (Medium)\u003C\u002Fli>\n\u003Cli>Settings persist across sessions\u003C\u002Fli>\n\u003Cli>Useful for high-DPI displays or accessibility needs\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4 id=\"cursor-tracking\">Cursor Tracking\u003C\u002Fh4>\n\u003Cp>Toggle: \u003Cstrong>On\u002FOff\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>When enabled, chart automatically scrolls to keep cursor centered\u003C\u002Fli>\n\u003Cli>Useful for scrubbing through long logs\u003C\u002Fli>\n\u003Cli>Default: Off\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4 id=\"field-normalization\">Field Normalization\u003C\u002Fh4>\n\u003Cp>Toggle: \u003Cstrong>On\u002FOff\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Maps ECU-specific channel names to standardized names\u003C\u002Fli>\n\u003Cli>Example: &quot;Act_AFR&quot;, &quot;AFR1&quot;, &quot;Aft&quot; all become &quot;AFR&quot;\u003C\u002Fli>\n\u003Cli>Helps compare data across different ECU systems\u003C\u002Fli>\n\u003Cli>Default: Off\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4 id=\"normalization-editor\">Normalization Editor\u003C\u002Fh4>\n\u003Cp>Button: \u003Cstrong>Open Normalization Editor\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Create custom field name mappings:\u003C\u002Fp>\n\u003Col>\n\u003Cli>Click &quot;Open Normalization Editor&quot;\u003C\u002Fli>\n\u003Cli>Enter \u003Cstrong>source name\u003C\u002Fstrong> (ECU-specific)\u003C\u002Fli>\n\u003Cli>Enter \u003Cstrong>target name\u003C\u002Fstrong> (standardized)\u003C\u002Fli>\n\u003Cli>Click \u003Cstrong>Add\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>Mappings apply immediately\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>\u003Cstrong>Note:\u003C\u002Fstrong> Custom mappings are stored in memory and reset when the application closes. Persistent custom mappings are planned for a future release.\u003C\u002Fp>\n\u003Chr>\n\u003Ch3 id=\"language-settings\">Language Settings\u003C\u002Fh3>\n\u003Cp>Configure the interface language for UltraLog.\u003C\u002Fp>\n\u003Ch4 id=\"language-selection\">Language Selection\u003C\u002Fh4>\n\u003Cp>Dropdown: \u003Cstrong>Select Language\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>UltraLog supports 15 languages:\u003C\u002Fp>\n\u003Ctable>\n\u003Cthead>\n\u003Ctr>\n\u003Cth>Language\u003C\u002Fth>\n\u003Cth>Native Name\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\u003Ctr>\n\u003Ctd>\u003Cstrong>English\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>English\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Cstrong>Spanish\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>Español\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Cstrong>German\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>Deutsch\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Cstrong>French\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>Français\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Cstrong>Italian\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>Italiano\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Cstrong>Portuguese (Brazil)\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>Português (Brasil)\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Cstrong>Portuguese (Portugal)\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>Português (Portugal)\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Cstrong>Chinese (Simplified)\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>简体中文\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Cstrong>Japanese\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>日本語\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Cstrong>Hindi\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>हिन्दी\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Cstrong>Arabic\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>العربية\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Cstrong>Bengali\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>বাংলা\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Cstrong>Russian\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>Русский\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Cstrong>Urdu\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>اردو\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Cstrong>Indonesian\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>Bahasa Indonesia\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\u003C\u002Ftable>\n\u003Cp>\u003Cstrong>Features:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>UI text and menus update immediately when language is changed\u003C\u002Fli>\n\u003Cli>Language preference persists across application restarts\u003C\u002Fli>\n\u003Cli>All core UI elements are translated\u003C\u002Fli>\n\u003Cli>Default: English\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Note:\u003C\u002Fstrong> Channel names and data from log files remain in their original language - only the UltraLog interface is translated.\u003C\u002Fp>\n\u003Chr>\n\u003Ch3 id=\"computed-channels-settings\">Computed Channels Settings\u003C\u002Fh3>\n\u003Cp>Button: \u003Cstrong>Open Computed Channels Manager\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Manage your library of computed channel templates. See \u003Ca href=\"#computed-channels\">Computed Channels\u003C\u002Fa> section below for full details.\u003C\u002Fp>\n\u003Chr>\n\u003Ch2 id=\"computed-channels\">Computed Channels\u003C\u002Fh2>\n\u003Cp>Computed channels (also called virtual or math channels) allow you to create custom data channels from mathematical formulas.\u003C\u002Fp>\n\u003Ch3 id=\"opening-the-manager\">Opening the Manager\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>Settings panel → Computed Channels → &quot;Open Computed Channels Manager&quot;\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Ch3 id=\"creating-a-formula\">Creating a Formula\u003C\u002Fh3>\n\u003Col>\n\u003Cli>Click \u003Cstrong>&quot;+ New Channel&quot;\u003C\u002Fstrong> in the Computed Channels window\u003C\u002Fli>\n\u003Cli>Fill in the form:\u003Cul>\n\u003Cli>\u003Cstrong>Name:\u003C\u002Fstrong> Display name (e.g., &quot;Boost Delta&quot;)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Formula:\u003C\u002Fstrong> Mathematical expression (e.g., \u003Ccode>MAP - &quot;Barometric Pressure&quot;\u003C\u002Fcode>)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Unit:\u003C\u002Fstrong> Display unit (e.g., &quot;kPa&quot;, &quot;%&quot;, &quot;deg&quot;)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Description:\u003C\u002Fstrong> Optional notes\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>Click \u003Cstrong>&quot;Save&quot;\u003C\u002Fstrong>\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch3 id=\"formula-syntax\">Formula Syntax\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>Operators:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Arithmetic: \u003Ccode>+\u003C\u002Fcode>, \u003Ccode>-\u003C\u002Fcode>, \u003Ccode>*\u003C\u002Fcode>, \u003Ccode>\u002F\u003C\u002Fcode>, \u003Ccode>^\u003C\u002Fcode> (power)\u003C\u002Fli>\n\u003Cli>Parentheses: \u003Ccode>(\u003C\u002Fcode>, \u003Ccode>)\u003C\u002Fcode> for grouping\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Functions:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Trigonometry: \u003Ccode>sin\u003C\u002Fcode>, \u003Ccode>cos\u003C\u002Fcode>, \u003Ccode>tan\u003C\u002Fcode>, \u003Ccode>asin\u003C\u002Fcode>, \u003Ccode>acos\u003C\u002Fcode>, \u003Ccode>atan\u003C\u002Fcode>, \u003Ccode>atan2\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Hyperbolic: \u003Ccode>sinh\u003C\u002Fcode>, \u003Ccode>cosh\u003C\u002Fcode>, \u003Ccode>tanh\u003C\u002Fcode>, \u003Ccode>asinh\u003C\u002Fcode>, \u003Ccode>acosh\u003C\u002Fcode>, \u003Ccode>atanh\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Math: \u003Ccode>sqrt\u003C\u002Fcode>, \u003Ccode>abs\u003C\u002Fcode>, \u003Ccode>exp\u003C\u002Fcode>, \u003Ccode>ln\u003C\u002Fcode>, \u003Ccode>log\u003C\u002Fcode>, \u003Ccode>log2\u003C\u002Fcode>, \u003Ccode>log10\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Rounding: \u003Ccode>floor\u003C\u002Fcode>, \u003Ccode>ceil\u003C\u002Fcode>, \u003Ccode>round\u003C\u002Fcode>, \u003Ccode>trunc\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Comparison: \u003Ccode>max\u003C\u002Fcode>, \u003Ccode>min\u003C\u002Fcode>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Constants:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ccode>pi\u003C\u002Fcode> - Pi (3.14159...)\u003C\u002Fli>\n\u003Cli>\u003Ccode>e\u003C\u002Fcode> - Euler&#39;s number (2.71828...)\u003C\u002Fli>\n\u003Cli>\u003Ccode>tau\u003C\u002Fcode> - Tau (2π)\u003C\u002Fli>\n\u003Cli>\u003Ccode>phi\u003C\u002Fcode> - Golden ratio (1.61803...)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Channel References:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Simple names:\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-text\">RPM\nTPS\nMAP\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Names with spaces (use quotes):\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-text\">&quot;Manifold Pressure&quot;\n&quot;Coolant Temp&quot;\n&quot;Engine Speed&quot;\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u003Cstrong>Time-Shifting:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Reference past or future values:\u003C\u002Fp>\n\u003Cp>Index-based (by sample count):\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-text\">RPM[-1]           Previous sample\nRPM[-2]           Two samples ago\nRPM[+1]           Next sample\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Time-based (in seconds):\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-text\">Boost@-0.5s       Value 0.5 seconds ago\nAFR@-0.1s         Value 100ms ago\nTPS@+0.2s         Value 0.2 seconds in the future\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch3 id=\"example-formulas\">Example Formulas\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>Simple Arithmetic:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-text\">RPM * 0.5\nHalf the RPM value\n\nTPS \u002F 100\nConvert TPS from percent to decimal\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u003Cstrong>Channel Combination:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-text\">&quot;Manifold Pressure&quot; - &quot;Barometric Pressure&quot;\nCalculate gauge pressure\n\nmax(AFR1, AFR2)\nMaximum of two AFR sensors\n\n(AFR1 + AFR2) \u002F 2\nAverage AFR from two sensors\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u003Cstrong>Rate of Change:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-text\">RPM - RPM[-1]\nRPM change per sample\n\n(Boost - Boost[-10]) \u002F 0.1\nBoost rate of change (assuming 10Hz logging)\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u003Cstrong>Time-Shifted Calculations:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-text\">(Boost@-0.5s - Boost) \u002F 0.5\nBoost rate over last 0.5 seconds\n\nRPM - &quot;Engine Speed&quot;[-5]\nRPM difference from 5 samples ago\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u003Cstrong>Complex Math:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-text\">sqrt(TPS * MAP \u002F 100)\nComplex calculation\n\nabs(&quot;Coolant Temp&quot; - 90)\nTemperature deviation from 90°C\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch3 id=\"using-computed-channels\">Using Computed Channels\u003C\u002Fh3>\n\u003Col>\n\u003Cli>Create and save a formula in the library\u003C\u002Fli>\n\u003Cli>Click \u003Cstrong>&quot;Apply to File&quot;\u003C\u002Fstrong> next to the formula\u003C\u002Fli>\n\u003Cli>The computed channel appears in your channel list (Channels panel)\u003C\u002Fli>\n\u003Cli>Select it like any other channel to visualize\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch3 id=\"library-management\">Library Management\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>Persistence:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Templates are saved automatically to disk\u003C\u002Fli>\n\u003Cli>Persist across application restarts\u003C\u002Fli>\n\u003Cli>Stored in JSON format:\u003Cul>\n\u003Cli>Linux: \u003Ccode>~\u002F.config\u002Fultralog\u002Fcomputed_channels.json\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>macOS: \u003Ccode>~\u002FLibrary\u002FApplication Support\u002FUltraLog\u002Fcomputed_channels.json\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Windows: \u003Ccode>%APPDATA%\\UltraLog\\computed_channels.json\u003C\u002Fcode>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Editing:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Click \u003Cstrong>&quot;Edit&quot;\u003C\u002Fstrong> on any template to modify\u003C\u002Fli>\n\u003Cli>Changes are saved immediately\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Deleting:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Click \u003Cstrong>&quot;Delete&quot;\u003C\u002Fstrong> on any template to remove\u003C\u002Fli>\n\u003Cli>Deletion is permanent but can be recreated\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Reusability:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>One template can be applied to multiple log files\u003C\u002Fli>\n\u003Cli>Formulas automatically adapt to available channels in each file\u003C\u002Fli>\n\u003Cli>If a referenced channel doesn&#39;t exist, you&#39;ll see an error\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3 id=\"validation\">Validation\u003C\u002Fh3>\n\u003Cp>UltraLog validates formulas before saving:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Checks for syntax errors\u003C\u002Fli>\n\u003Cli>Verifies all referenced channels exist\u003C\u002Fli>\n\u003Cli>Tests evaluation with sample data\u003C\u002Fli>\n\u003Cli>Shows helpful error messages\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Chr>\n\u003Ch2 id=\"exporting\">Exporting\u003C\u002Fh2>\n\u003Ch3 id=\"png-export\">PNG Export\u003C\u002Fh3>\n\u003Cp>Save the current chart view as a PNG image:\u003C\u002Fp>\n\u003Col>\n\u003Cli>\u003Cstrong>File menu → Export → PNG\u003C\u002Fstrong> (or \u003Ccode>Ctrl\u002FCmd + E\u003C\u002Fcode>)\u003C\u002Fli>\n\u003Cli>Choose save location\u003C\u002Fli>\n\u003Cli>Enter filename\u003C\u002Fli>\n\u003Cli>Click Save\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>The exported image includes:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Current chart view (with zoom\u002Fpan state)\u003C\u002Fli>\n\u003Cli>Legend with channel information\u003C\u002Fli>\n\u003Cli>Time axis labels\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3 id=\"pdf-export\">PDF Export\u003C\u002Fh3>\n\u003Cp>Generate a PDF document of your chart:\u003C\u002Fp>\n\u003Col>\n\u003Cli>\u003Cstrong>File menu → Export → PDF\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>Choose save location\u003C\u002Fli>\n\u003Cli>Enter filename\u003C\u002Fli>\n\u003Cli>Click Save\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Chr>\n\u003Ch2 id=\"accessibility-features\">Accessibility Features\u003C\u002Fh2>\n\u003Ch3 id=\"colorblind-mode-1\">Colorblind Mode\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>Location:\u003C\u002Fstrong> Settings panel → Display → Colorblind Mode\u003C\u002Fp>\n\u003Cp>Uses Wong&#39;s optimized palette designed for:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Deuteranopia (red-green colorblindness)\u003C\u002Fli>\n\u003Cli>Protanopia (red colorblindness)\u003C\u002Fli>\n\u003Cli>Tritanopia (blue-yellow colorblindness)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Colorblind Palette Colors:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Col>\n\u003Cli>Black\u003C\u002Fli>\n\u003Cli>Orange\u003C\u002Fli>\n\u003Cli>Sky Blue\u003C\u002Fli>\n\u003Cli>Bluish Green\u003C\u002Fli>\n\u003Cli>Yellow\u003C\u002Fli>\n\u003Cli>Blue\u003C\u002Fli>\n\u003Cli>Vermillion\u003C\u002Fli>\n\u003Cli>Reddish Purple\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch3 id=\"font-scaling\">Font Scaling\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>Location:\u003C\u002Fstrong> Settings panel → Display → Font Size\u003C\u002Fp>\n\u003Cp>Four sizes available:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>S (Small)\u003C\u002Fstrong> - Compact UI for small screens\u003C\u002Fli>\n\u003Cli>\u003Cstrong>M (Medium)\u003C\u002Fstrong> - Default size, good for most displays\u003C\u002Fli>\n\u003Cli>\u003Cstrong>L (Large)\u003C\u002Fstrong> - Larger text for readability\u003C\u002Fli>\n\u003Cli>\u003Cstrong>XL (Extra Large)\u003C\u002Fstrong> - Maximum size for accessibility or high-DPI displays\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Font size setting persists across sessions.\u003C\u002Fp>\n\u003Ch3 id=\"custom-font\">Custom Font\u003C\u002Fh3>\n\u003Cp>UltraLog uses the \u003Cstrong>Outfit\u003C\u002Fstrong> typeface for:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Clear readability\u003C\u002Fli>\n\u003Cli>Consistent appearance across platforms\u003C\u002Fli>\n\u003Cli>Good distinction between similar characters\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3 id=\"toast-notifications\">Toast Notifications\u003C\u002Fh3>\n\u003Cp>Non-intrusive notifications appear for:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>File load success\u002Ffailure\u003C\u002Fli>\n\u003Cli>Export completion\u003C\u002Fli>\n\u003Cli>Errors and warnings\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Chr>\n\u003Ch2 id=\"keyboard-shortcuts\">Keyboard Shortcuts\u003C\u002Fh2>\n\u003Ch3 id=\"global-shortcuts\">Global Shortcuts\u003C\u002Fh3>\n\u003Ctable>\n\u003Cthead>\n\u003Ctr>\n\u003Cth>Shortcut\u003C\u002Fth>\n\u003Cth>Action\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\u003Ctr>\n\u003Ctd>\u003Ccode>Ctrl\u002FCmd + O\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>Open file\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>Ctrl\u002FCmd + W\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>Close current tab\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>Ctrl\u002FCmd + E\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>Export PNG\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>Ctrl\u002FCmd + 1\u003C\u002Fcode> … \u003Ccode>5\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>Switch tool (Log Viewer, Scatter Plots, Histogram, Lambda Delay, Accel Enrichment)\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\u003C\u002Ftable>\n\u003Ch3 id=\"playback-shortcuts\">Playback Shortcuts\u003C\u002Fh3>\n\u003Ctable>\n\u003Cthead>\n\u003Ctr>\n\u003Cth>Shortcut\u003C\u002Fth>\n\u003Cth>Action\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\u003Ctr>\n\u003Ctd>\u003Ccode>Space\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>Play\u002FPause toggle\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Ccode>Escape\u003C\u002Fcode>\u003C\u002Ftd>\n\u003Ctd>Stop playback\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\u003C\u002Ftable>\n\u003Chr>\n\u003Ch2 id=\"tips-and-best-practices\">Tips and Best Practices\u003C\u002Fh2>\n\u003Ch3 id=\"performance\">Performance\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>UltraLog handles large files well, but loading may take a few seconds for 50MB+ files\u003C\u002Fli>\n\u003Cli>Use release builds for best performance\u003C\u002Fli>\n\u003Cli>Close unused tabs to free memory\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3 id=\"analysis-workflow\">Analysis Workflow\u003C\u002Fh3>\n\u003Col>\n\u003Cli>\u003Cstrong>Start wide\u003C\u002Fstrong> - Load the full log and play through at 1x\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Identify areas of interest\u003C\u002Fstrong> - Note any anomalies or events\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Zoom in\u003C\u002Fstrong> - Use scroll to zoom on specific areas\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Compare channels\u003C\u002Fstrong> - Add related channels to identify correlations\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Use tools\u003C\u002Fstrong> - Scatter plot and histogram for deeper analysis\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Document\u003C\u002Fstrong> - Export charts for records or sharing\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch3 id=\"channel-selection-1\">Channel Selection\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Start with essential channels: RPM, AFR, MAP, TPS\u003C\u002Fli>\n\u003Cli>Add diagnostic channels as needed\u003C\u002Fli>\n\u003Cli>Remove channels you&#39;re not currently analyzing\u003C\u002Fli>\n\u003Cli>Use search to quickly find specific channels\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Chr>\n\u003Ch2 id=\"next-steps\">Next Steps\u003C\u002Fh2>\n\u003Cul>\n\u003Cli>\u003Ca href=\"\u002Fdocs\u002Fsupported-ecu-formats\">Supported ECU Formats\u003C\u002Fa> - Detailed ECU format information\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"\u002Fdocs\u002Funit-conversion\">Unit Conversion\u003C\u002Fa> - Complete unit reference\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"\u002Fdocs\u002Ftroubleshooting\">Troubleshooting\u003C\u002Fa> - Common issues and solutions\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"\u002Fdocs\u002Ffaq\">FAQ\u003C\u002Fa> - Frequently asked questions\u003C\u002Fli>\n\u003C\u002Ful>\n",[61,64,67,70,73,76,79,82,85,88,91,94,97,100],{"id":62,"text":63},"table-of-contents","Table of Contents",{"id":65,"text":66},"interface-overview","Interface Overview",{"id":68,"text":69},"loading-files","Loading Files",{"id":71,"text":72},"channel-selection","Channel Selection",{"id":74,"text":75},"chart-interaction","Chart Interaction",{"id":77,"text":78},"timeline-and-playback","Timeline and Playback",{"id":80,"text":81},"tools-panel","Tools Panel",{"id":83,"text":84},"settings-panel","Settings Panel",{"id":86,"text":87},"computed-channels","Computed Channels",{"id":89,"text":90},"exporting","Exporting",{"id":92,"text":93},"accessibility-features","Accessibility Features",{"id":95,"text":96},"keyboard-shortcuts","Keyboard Shortcuts",{"id":98,"text":99},"tips-and-best-practices","Tips and Best Practices",{"id":101,"text":102},"next-steps","Next Steps","https:\u002F\u002Fgithub.com\u002FClassicMiniDIY\u002FUltraLog\u002Fwiki\u002FUser-Guide\u002F_edit","https:\u002F\u002Fgithub.com\u002FClassicMiniDIY\u002FUltraLog\u002Fwiki\u002FUser-Guide",1792894561082]