Please enable JavaScript to view this website.

Skip to main content

Parse Types

Common

Parse Type IDNameDescriptionNotesSupports Byte SwappingSupports Signed
1IntegerParser expects to receive a HEX string. The HEX string is converted to an integer. If the input cannot be converted to an integer the original value read off of the tool is saved to the database.YesYes
2u16 Array – ChartParser expects to receive a HEX string. The parser will split the hex string into 2 byte chunks, convert those values to integers and return an array of integer values. The order of values is preserved throughout the parsing process. These integer values are then matched by index with the array of labels in the “Data Labels” field of the memory map.These values are displayed in a Bar Chart format in QuickLink. Since the data is stored as an ordered array of values, other data consumers can choose other options for display of the data.YesYes
4TimestampParser expects to receive a HEX string. HEX string is converted to an integer, multiplied by 1000 and saved to database as an ISO 8601 string.Displayed as a human readable date string.Yes
5u16 Array – TableParser expects to receive a HEX string. The parser will split the hex string into 2 byte chunks, convert those values to integers and return an array of integer values. The order of values is preserved throughout the parsing process. These integer values are then matched by index with the array of labels in the “Data Labels” field of the memory map.These values are displayed in a table format in QuickLink. Since the data is stored as an ordered array of values, other data consumers can choose other options for display of the data.YesYes
7u32 Array – ChartParser expects to receive a HEX string. The parser will split the hex string into 4 byte chunks, convert those values to integers and return an array of integer values. The order of values is preserved throughout the parsing process. These integer values are then matched by index with the array of labels in the “Data Labels” field of the memory map.These values are displayed in a Bar Chart format in QuickLink. Since the data is stored as an ordered array of values, other data consumers can choose other options for display of the data.YesYes
14M18 Battery Cell BalanceThis parse type should be applied to the Cell Voltages memory location. The parser will divide the data from the pack into an array of voltages and determine the min and max voltage. It will then calculate the delta between the min and max values. If the delta is greater than the "comparator_value" the pack is out of balance. For cell voltage calculations the "comparator_value" is set to 100.
15Two Dimensional Bar Chart (High/Low)Parser expects to receive a HEX string. Hex string is split into 1 byte chunks. The order of values is preserved throughout the parsing process. Each byte is converted to an integer and saved in the database.Histogram data that is displayed as a chart with each x-axis label/category having both a High and Low value.Yes
16HEX to ASCIIHEX string is converted to ASCII value.Displayed as string.
17BooleanParser expects to receive a HEX string. The HEX string is converted to an integer. If the integer value is equal to 1 the parser will save the value as True. Otherwise it will be saved as False. If the input cannot be converted to an integer the original value read off of the tool is saved to the databaseDisplayed in QuickLink as True or False.
18Enumeration Dictionary – IntegerHEX string is converted to an integer. That integer is then used as a key into the Enumeration Dictionary associated with that memory address. The final value saved in the database will be the dictionary value (as a string) for the supplied key. Requires “enumeration_dictionary_uuid” column to reference an enumeration dictionary. More information on Enumeration DictionariesDisplayed as string.Yes
19Enumeration Dictionary - BITFIELDHEX value read off of the tools needs to be converted to binary. Each ON bit in the resulting binary representation needs to be evaluated to a HEX string without the other ON bits impacting the final value. Each resulting hex value is the key in a key/value lookup. The final value saved in the database will be the dictionary value (as a string) for the supplied key. Requires “enumeration_dictionary_uuid” column to reference an enumeration dictionary. More Information on Enumeration Dictionaries
20MX - Present ConditionsA block of data which is optionally byte swapped and parsed as either a binary value or a decimal value.
21MX - Group 1 DataA block of data which is keyed by byte position with the following fields: Status, State Compatibility, DL, Min Cell, Max Cell, Output Current, Stack Voltage, Terminal Voltage, Temperature, FG Status, State of Charge, Remaining Capacity, Generic Conditions
222 Byte By 2 ByteThis parse type was initially developed for recording pairs of a product id and a count associated with that product id. The HEX value read off of the tool is divided into 2 byte chunks. For each set of 2 chunks, the first chunk is left as its HEX value. The second 2 bytes is parsed as an unsigned integer.Data is displayed in a table where column 1 is the first 2 bytes as a HEX value and column 2 is the integer count.Yes
23HEX StringParser expects to receive a HEX string. The string is saved to the database as it is received, unless Is Byte Swapped is set to true, in which case the string is byte swapped prior to insertion into the database.
245 Byte By 2 ByteThis parse type is similar to "2 Byte By 2 Byte", but was developed for recording pairs of a MPBID and a count associated with that MPBID. The HEX value read off of the tool is divided into 7 byte chunks. The 1st five bytes of the chunk is left as a HEX value. The last 2 bytes are parsed as an unsigned integer.Data is displayed in a table where column 1 is the first 5 bytes as a HEX value and column 2 is the integer count.Yes
25Raw DataData with this parse type is not mutated during parsing and is stored in the database exactly as it was pulled off of the tool.
26UCB DataA UCB data block comprising multiple child blocks representing individual data points. This block is read from the tool as a single unit and transmitted to the cloud as the same. It is then parsed based on the child element definitions in the Memory Map and stored individually for later access. See field definitions PARSE_OFFSET_ADDRESS, PARSE_SEGMENT_LENGTH, and PARENT_FIELD fields for details on using this parse type.Including this data type in a Memory Map requires also defining all the child elements for the block which must add up to the same length as defined for the UCB block using the PARSE_SEGMENT_LENGTH field. For example if this block is defined as 100 bytes of data, you must also define child elements PARSE_SEGMENT_LENGTH field sum length also equals 100 bytes. For an example memory map with a properly configured UCB field and child field, see the mock tool memory map FF01 v7
28Q7.8 Fixed Point NumberA Q7.8 fixed point number is a signed 16-bit integer with a 1 bit sign, 7 bit integer, and 8 bits of fractional precision. The value is stored in the database as a decimal number. See Texas Instrument Version for more detailsSamples: 0x7FFF = 127.99609375, 0x8001 = -127.99609375, 0xFF7F w/ byte swap = 127.99609375, 0x0180 w/ byte swap = -127.99609375YesImplied
29Single Precision Floating Point NumberA single precision floating point number is a 32-bit number with 24 bits of precision. The value is stored in the database as a decimal number.Samples: 0x4048f5c3 = 3.140000104904175, 0xc3f54840 w/ byte swap = 3.140000104904175YesImplied
30Double Precision Floating Point NumberA double precision floating point number is a 64-bit number with 53 bits of precision. The value is stored in the database as a decimal number.Samples: 0x40091EB860000000 = 3.140000104904175, 0x00000060B81E0940 w/ byte swap = 3.140000104904175YesImplied
31Q8.7 Fixed Point NumberA Q8.7 fixed point number is a signed 16-bit integer with a 1 bit sign, 8 bit integer, and 7 bits of fractional precision. The value is stored in the database as a decimal number. See Texas Instrument Version for more detailsSamples: 0x7FFF = 255.9921875, 0x8001 = -255.9921875, 0xFF7F w/ byte swap = 255.9921875, 0x0180 w/ byte swap = -255.9921875YesImplied
32u8 Array - ChartParser expects to receive a HEX string. The parser will split the hex string into 1 byte chunks, convert those values to integers and return an array of integer values. The order of values is preserved throughout the parsing process.These values are displayed in a Bar Chart format in QuickLink. Since the data is stored as an ordered array of values, other data consumers can choose other options for display of the data.NoYes
33Multidimensional DatasetParser expects to receive a HEX string. The parser will split the raw HEX string data by parsing it into segments based on predefined labels and sub_labels. It calculates field lengths to divide the data into segments, iterating through each combination to extract corresponding integer values. See field definitions PARSED_DATA_LABELS and PARSED_DATA_SUB_LABELS fields for details on using this parse type.Sample: 0x03070415 PARSED_DATA_LABELS: "A, B" PARSED_DATA_SUB_LABELS: "<1, >1" Result: [A][<1] = 3, [A][>1] = 7, [B][<1] = 4, [B][>1] = 21Yes
34Fixed Point (Dynamic)Fixed point numbers parsed using the defined Q Notation configuration (QN.M)Sample: 0x00018000 with config of Q15.16 parses as 1.5. 0xF1 with config of Q3.4 parses as -0.9375YesYes
35Fixed Point Array (Dynamic)An array of fixed point numbers parsed using the defined Q Notation configuration (QN.M)Sample: 0x00018000123456780003243F with config of Q15.16 parses as [1.5, 4660.3377685546875, 3.1415863037109375]YesYes
36Float ArrayAn array of single precision floating point (32bit) numbersSample: 0x4048F5C340F8FFFF parses as [3.140000104904175, 7.78125]YesImplied

MX Batteries

Parse Type IDNameDescriptionNotes
9MX – FETCMIDX – IndexParser expects to receive a HEX string. Hex string is converted to an integer. This field is required for proper display of MX Events in the circular buffer.
10MX EVENTS – SYS TICK CIRCULAR BUFFERParser expects to receive a HEX string. The parser will split the hex string into 4 byte chunks, convert those values to integers and return an array of integer values.Displayed within Events UI Requires FETCMIDX for proper display.
11MX EVENTS – u32 Array w/ IndexParser expects to receive a HEX string. The parser will split the hex string into 4 byte chunks, convert those values to integers and return an array of integer values.Displayed within Events UI Requires FETCMIDX for proper display.
12MX EVENTS – POSIX CLOCK CIRCULAR BUFFERParser expects to receive a HEX string. The parser will split the hex string into 8 byte chunks, convert those values to timestamps and return an array of timestamp values.Displayed within Events UI Requires FETCMIDX for proper display.
13MX EVENTS – STATE TRANSITIONSParser expects to receive a HEX string. The parser will split the hex string into 2 byte chunks, convert those values to integers. Integer values will be used to identify the correct state transition:

0 = UNINITIALIZED
1 = INTERNAL ERROR
2 = SLEEP
3 = IDLE
4 = CHARGING
5 = DISCHARGING
6 = MANUFACTURING
Displayed within Events UI Requires FETCMIDX for proper display.

MX Super Charger

Parse Type IDNameDescriptionNotes
27MX SuperCharger EventsThis event type is specific to the MX Super Chargers. The Super Charger stores an array of events, each being comprised of the following ordered data points; Event Index, Power Cycle Number, Time Since Power On, Faults, and Warnings. The Faults and Warnings fields themselves are a list of zero or more enumerations of predefined faults and warning codes.

Faults (bit value: enumeration):0 : OUTPUT_VOLTAGE_UNEXPECTED
4: OUTPUT_CURRENT_UNEXPECTED
5: OUTPUT_CURRENT_UNDER_TOLERANCE
6: OUTPUT_CURRENT_OVER_TOLERANCE
8: CHARGE_FET_SHORTED
9: UNABLE_TO_EQUALIZE_OUTPUT_VOLTAGE
10: OUTPUT_POWER_SUPPLY_SEQUENCING_ERROR
24: HEATSINK_TEMPERATURE_SENSOR_DAMAGED
25: POWER_ELECTRONICS_FAN_FAILURE
28: MX2_FOUNDATION_ASSERT
29: UNSUPPORTED_DEVICE
30: ABSOLUTE_MAXIMUM_OUTPUT_CURRENT_EXCEEDED
31: BATTERY_MAXIMUM_OUTPUT_VOLTAGE_EXCEEDED

Warnings (bit value: enumeration):

0: CHARGER_LOCKED
8: PACK_OUT_OF_TEMP
9: BATTERY_FAN_FAILURE
24: POWER_ELECTRONICS_COLD
25: POWER_ELECTRONICS_HOT
26: CHARGER_OUT_OF_TEMP
Data for this parse type is only viewable within QuickLink Web.