MLQ code duplication & docs
This commit is contained in:
parent
b00cc377af
commit
d0d484ac16
|
@ -20,7 +20,7 @@ size_t LogField::writeHeader(char* buffer) const {
|
||||||
// Offset 0, length 1 = type
|
// Offset 0, length 1 = type
|
||||||
buffer[0] = static_cast<char>(m_type);
|
buffer[0] = static_cast<char>(m_type);
|
||||||
|
|
||||||
// Offset 0, length 34 = name
|
// Offset 1, length 34 = name
|
||||||
strncpy(&buffer[1], m_name, 34);
|
strncpy(&buffer[1], m_name, 34);
|
||||||
|
|
||||||
// Offset 35, length 10 = units
|
// Offset 35, length 10 = units
|
||||||
|
@ -40,7 +40,7 @@ size_t LogField::writeHeader(char* buffer) const {
|
||||||
buffer[54] = m_digits;
|
buffer[54] = m_digits;
|
||||||
|
|
||||||
// Total size = 55
|
// Total size = 55
|
||||||
return 55;
|
return MLQ_FIELD_HEADER_SIZE;
|
||||||
}
|
}
|
||||||
|
|
||||||
size_t LogField::writeData(char* buffer) const {
|
size_t LogField::writeData(char* buffer) const {
|
||||||
|
|
|
@ -1436,6 +1436,10 @@ end_struct
|
||||||
#define GAUGE_NAME_TIME "Time"
|
#define GAUGE_NAME_TIME "Time"
|
||||||
#define GAUGE_NAME_RPM "RPM"
|
#define GAUGE_NAME_RPM "RPM"
|
||||||
#define GAUGE_NAME_CLT "CLT"
|
#define GAUGE_NAME_CLT "CLT"
|
||||||
|
#define GAUGE_NAME_IAT "IAT"
|
||||||
|
#define GAUGE_NAME_TPS "TPS"
|
||||||
|
#define GAUGE_NAME_MAP "MAP"
|
||||||
|
#define GAUGE_NAME_MAF "MAF"
|
||||||
#define GAUGE_NAME_ENGINE_LOAD "Engine Load"
|
#define GAUGE_NAME_ENGINE_LOAD "Engine Load"
|
||||||
#define GAUGE_NAME_CPU_TEMP "CPU Temperature"
|
#define GAUGE_NAME_CPU_TEMP "CPU Temperature"
|
||||||
#define GAUGE_NAME_ETB_TARGET "ETB position target"
|
#define GAUGE_NAME_ETB_TARGET "ETB position target"
|
||||||
|
|
|
@ -21,18 +21,18 @@ public enum Sensor {
|
||||||
*/
|
*/
|
||||||
|
|
||||||
// RPM, vss
|
// RPM, vss
|
||||||
RPM("RPM", SensorCategory.SENSOR_INPUTS, FieldType.UINT16, 4, 1, 0, 8000, "/min"),
|
RPM(GAUGE_NAME_RPM, SensorCategory.SENSOR_INPUTS, FieldType.UINT16, 4, 1, 0, 8000, "RPM"),
|
||||||
SPEED2RPM("SpeedToRpm", SensorCategory.SENSOR_INPUTS, FieldType.INT16, 6, 1.0 / PACK_MULT_PERCENT, 0, 5, "RPM/kph"),
|
SPEED2RPM("SpeedToRpm", SensorCategory.SENSOR_INPUTS, FieldType.INT16, 6, 1.0 / PACK_MULT_PERCENT, 0, 5, "RPM/kph"),
|
||||||
VSS("VSS", SensorCategory.OPERATIONS, FieldType.UINT8, 8, 1, 0, 150, "kph"),
|
VSS(GAUGE_NAME_VVS, SensorCategory.OPERATIONS, FieldType.UINT8, 8, 1, 0, 150, "kph"),
|
||||||
|
|
||||||
// Temperatures
|
// Temperatures
|
||||||
INT_TEMP("MCU Temp", SensorCategory.OPERATIONS, FieldType.INT8, 10, 1, 0, 5, "C"),
|
INT_TEMP(GAUGE_NAME_CPU_TEMP, SensorCategory.OPERATIONS, FieldType.INT8, 10, 1, 0, 5, "C"),
|
||||||
CLT("Coolant", SensorCategory.SENSOR_INPUTS, FieldType.INT16, 12, 1.0 / PACK_MULT_TEMPERATURE, -40, 150, "C"),
|
CLT(GAUGE_NAME_CLT, SensorCategory.SENSOR_INPUTS, FieldType.INT16, 12, 1.0 / PACK_MULT_TEMPERATURE, -40, 150, "deg C"),
|
||||||
IAT("IAT", SensorCategory.SENSOR_INPUTS, FieldType.INT16, 14, 1.0 / PACK_MULT_TEMPERATURE, -40, 150, "C"),
|
IAT("IAT", SensorCategory.SENSOR_INPUTS, FieldType.INT16, 14, 1.0 / PACK_MULT_TEMPERATURE, -40, 150, "deg C"),
|
||||||
|
|
||||||
// throttle, pedal
|
// throttle, pedal
|
||||||
TPS("TPS", SensorCategory.SENSOR_INPUTS, FieldType.INT16, 20, 1.0 / PACK_MULT_PERCENT, 0, 100, "%"), // throttle position sensor
|
TPS("TPS", SensorCategory.SENSOR_INPUTS, FieldType.INT16, 20, 1.0 / PACK_MULT_PERCENT, 0, 100, "%"), // throttle position sensor
|
||||||
PPS("Throttle Pedal", SensorCategory.SENSOR_INPUTS, FieldType.INT16, 22, 1.0 / PACK_MULT_PERCENT, 0, 100, "%"), // pedal position sensor
|
PPS(GAUGE_NAME_THROTTLE_PEDAL, SensorCategory.SENSOR_INPUTS, FieldType.INT16, 22, 1.0 / PACK_MULT_PERCENT, 0, 100, "%"), // pedal position sensor
|
||||||
|
|
||||||
// air flow/mass measurement
|
// air flow/mass measurement
|
||||||
MAF("MAF", SensorCategory.SENSOR_INPUTS, FieldType.UINT16, 26, 1.0 / PACK_MULT_VOLTAGE, 0, 5, "Volts"),
|
MAF("MAF", SensorCategory.SENSOR_INPUTS, FieldType.UINT16, 26, 1.0 / PACK_MULT_VOLTAGE, 0, 5, "Volts"),
|
||||||
|
@ -40,7 +40,7 @@ public enum Sensor {
|
||||||
|
|
||||||
AFR("A/F ratio", SensorCategory.SENSOR_INPUTS, FieldType.UINT16, 34, 1.0 / PACK_MULT_AFR, 10, 20, "afr"),
|
AFR("A/F ratio", SensorCategory.SENSOR_INPUTS, FieldType.UINT16, 34, 1.0 / PACK_MULT_AFR, 10, 20, "afr"),
|
||||||
|
|
||||||
VBATT("VBatt", SensorCategory.SENSOR_INPUTS, FieldType.UINT16, 38, 1.0 / PACK_MULT_VOLTAGE, 4, 18, "Volts"),
|
VBATT(GAUGE_NAME_VBAT, SensorCategory.SENSOR_INPUTS, FieldType.UINT16, 38, 1.0 / PACK_MULT_VOLTAGE, 4, 18, "Volts"),
|
||||||
oilPressure("Oil Pressure", SensorCategory.SENSOR_INPUTS, FieldType.INT16, 40, 1.0 / PACK_MULT_PRESSURE, 0, 5, "X"),
|
oilPressure("Oil Pressure", SensorCategory.SENSOR_INPUTS, FieldType.INT16, 40, 1.0 / PACK_MULT_PRESSURE, 0, 5, "X"),
|
||||||
vvtPosition("vvt position", SensorCategory.SENSOR_INPUTS, FieldType.INT16, 42, 1.0 / PACK_MULT_ANGLE, 0, 5, "deg"),
|
vvtPosition("vvt position", SensorCategory.SENSOR_INPUTS, FieldType.INT16, 42, 1.0 / PACK_MULT_ANGLE, 0, 5, "deg"),
|
||||||
|
|
||||||
|
@ -86,9 +86,9 @@ public enum Sensor {
|
||||||
// Knock
|
// Knock
|
||||||
|
|
||||||
// Mode, firmware, protocol, run time
|
// Mode, firmware, protocol, run time
|
||||||
TIME_SECONDS("uptime", SensorCategory.OPERATIONS, FieldType.INT, 112, 0, 5),
|
TIME_SECONDS(GAUGE_NAME_TIME, SensorCategory.OPERATIONS, FieldType.INT, 112, 1, 0, 5, ""),
|
||||||
engineMode("mode", SensorCategory.OPERATIONS, FieldType.INT, 116, 0, 5),
|
engineMode("mode", SensorCategory.OPERATIONS, FieldType.INT, 116, 0, 5),
|
||||||
FIRMWARE_VERSION("FW version", SensorCategory.OPERATIONS, FieldType.INT, 120),
|
FIRMWARE_VERSION(GAUGE_NAME_VERSION, SensorCategory.OPERATIONS, FieldType.INT, 120, 1, 0, 100, "version_f"),
|
||||||
TS_CONFIG_VERSION(".ini version", SensorCategory.OPERATIONS, FieldType.INT, 124),
|
TS_CONFIG_VERSION(".ini version", SensorCategory.OPERATIONS, FieldType.INT, 124),
|
||||||
|
|
||||||
engineMakeCodeNameCrc16("engine crc16", SensorCategory.STATUS, FieldType.INT16, 134, 0, 5),
|
engineMakeCodeNameCrc16("engine crc16", SensorCategory.STATUS, FieldType.INT16, 134, 0, 5),
|
||||||
|
|
|
@ -5,8 +5,8 @@ See also
|
||||||
** all numbers are big-engian **
|
** all numbers are big-engian **
|
||||||
|
|
||||||
File format:
|
File format:
|
||||||
Header
|
Header (size 22 bytes)
|
||||||
Fields
|
Fields (size number_of_fields * 55)
|
||||||
Text (1st+2nd lines of the text log)
|
Text (1st+2nd lines of the text log)
|
||||||
Records
|
Records
|
||||||
|
|
||||||
|
@ -14,7 +14,7 @@ Header format:
|
||||||
0000h = magic (6 bytes) = "MLVLG\0" { 4dh 4ch 56h 4ch 47h 00h }
|
0000h = magic (6 bytes) = "MLVLG\0" { 4dh 4ch 56h 4ch 47h 00h }
|
||||||
0006h = version (2 bytes) = 0x0001
|
0006h = version (2 bytes) = 0x0001
|
||||||
0008h = unix_timestamp (4 bytes)
|
0008h = unix_timestamp (4 bytes)
|
||||||
000ch = offset_to_text (2 bytes)
|
000ch = offset_to_text (2 bytes) = number_of_fields * 55
|
||||||
000eh = reserved? (zeroes) (2 bytes)
|
000eh = reserved? (zeroes) (2 bytes)
|
||||||
0010h = offset_to_data (2 bytes)
|
0010h = offset_to_data (2 bytes)
|
||||||
0012h = (record_size - 5)? (2 bytes)
|
0012h = (record_size - 5)? (2 bytes)
|
||||||
|
|
Loading…
Reference in New Issue