[{"data":1,"prerenderedAt":8},["ShallowReactive",2],{"ecu:locomotive":3},{"slug":4,"wikiHtml":5,"adapter":6,"channels":7},"locomotive","\u003Cul>\n\u003Cli>\u003Cstrong>File type:\u003C\u002Fstrong> CSV exports from a locomotive datalogger\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Supported devices:\u003C\u002Fstrong> Locomotive control\u002Fmonitoring systems that export a \u003Ccode>TimeStamp:\u003C\u002Fcode>\u002F\u003Ccode>Customer:\u003C\u002Fcode>\u002F\u003Ccode>UnitNumber:\u003C\u002Fcode> metadata header followed by day-of-week-prefixed data rows\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Features:\u003C\u002Fstrong> Wall-clock timestamp parsing, metadata extraction (customer, unit number, software version), parallel row parsing for large logs\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch2>Supported File Format\u003C\u002Fh2>\n\u003Cp>Locomotive logs start with five metadata lines, a blank line, then a comma-delimited header row, followed by data rows that begin with a day-of-week abbreviation:\u003C\u002Fp>\n\u003Cpre>\u003Ccode class=\"language-text\">TimeStamp: Sat Nov 15 19:00:03 2025\nCustomer: VLi\nUnitNumber: 6194\nSoftwarePartNumber: 16085\nSoftwareVersion: 33.21.04\n\nTimeStamp, CPMRst, Rc_tfnd, AB Mode, ASRstSt, ..., Eng RPM, ..., Batt V, ...\nSat Nov 15 19:00:03 2025, 1, 1, 1, 2, ..., 2907, ..., 64.0000000000, ...\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch2>How to Export\u003C\u002Fh2>\n\u003Cp>Export the session log as CSV from your locomotive datalogger software, then load the resulting \u003Ccode>.csv\u003C\u002Fcode> file directly into UltraLog.\u003C\u002Fp>\n\u003Ch2>Supported Data\u003C\u002Fh2>\n\u003Cul>\n\u003Cli>Hundreds of locomotive control and diagnostic channels: engine RPM, battery voltage, traction motor and alternator status, brake and throttle position, cab signal states, and fault\u002Fstatus flags across the locomotive&#39;s control systems\u003C\u002Fli>\n\u003Cli>Exact channel set depends on the datalogger configuration and locomotive model\u003C\u002Fli>\n\u003Cli>Channels carry no unit metadata in the source file, so all values display unitless\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch2>Metadata\u003C\u002Fh2>\n\u003Cp>Locomotive logs carry session metadata in their first five lines, which UltraLog reads into log metadata rather than treating as channels: \u003Ccode>TimeStamp\u003C\u002Fcode>, \u003Ccode>Customer\u003C\u002Fcode>, \u003Ccode>UnitNumber\u003C\u002Fcode>, \u003Ccode>SoftwarePartNumber\u003C\u002Fcode>, and \u003Ccode>SoftwareVersion\u003C\u002Fcode>.\u003C\u002Fp>\n\u003Ch2>Timestamp Handling\u003C\u002Fh2>\n\u003Cp>Each data row starts with a full wall-clock timestamp (e.g. \u003Ccode>Sat Nov 15 19:00:03 2025\u003C\u002Fcode>), not an elapsed-time column. UltraLog parses this \u003Ccode>&lt;weekday&gt; &lt;month&gt; &lt;day&gt; &lt;HH:MM:SS&gt; &lt;year&gt;\u003C\u002Fcode> format, converts it to seconds, and normalizes the first sample to \u003Ccode>t = 0\u003C\u002Fcode>.\u003C\u002Fp>\n",null,[],1792894560358]