{ "forceWifi": true, "wifiSSID": "", "wifiPSWD": "", "gmtOffset": -8, // hours offset "daylightOffset": 0, // daylight saving time offset "snake": false, "eventsPerSecond": 15, //"deleteAfterUpload": false, "displayRows": 3, "displayColumns": 2, "screenHeight": 64, "noMoreEntries": true, "canSpeed": 500, "address": ["0x12", "0x05", "0x0B", "0x03", "0x1F"], // "baudAddress": ["0x12", "0x08", "0x91", "0x01", "0xE8", "0x48", "0x00", "0x2A"], // Can cause issues, if you need ~25Hz data rate set this // "baudSpeed": 125000, "forceKwp": false, "beta": true, "ecuparam": [ /*{ "header": "Engine Speed", "alias": "Eng", "unit": "RPM", "offset": 0, "length": 2, "max": 8400, "min": 700, "dec": 0, "hidden": false, "noLog": false },*/ { "header": "Engine Load", "alias": "Load", "unit": "mg/str", "offset": 6, "length": 2, "mul": 0.001, "dec": 1 }, { "header": "Mass Airflow", "unit": "kg/h", "hidden": true, "offset": 4, "length": 2, "mul": 0.25, "dec": 1 }, { "header": "TPS", "unit": "%", "max": 100, // min and max are used to set constant scale of graph used to display the data, if not defined, Gauge.S will adjust this scaling dynamically "min": 0, "length": 2, "offset": 27, "mul": 0.1, "dec": 0 // Remember about this comma when editing line below // "autoLogPoint": 60.0 // You can comment out or delete if you don't want to log on WOT. },/* { "header": "TPS Target", "unit": "%", "hidden": true, "length": 2, "offset": 31, "mul": 0.1 },*/ { "header": "Intake Air Temp", "unit": "°C", "offset": 10, "mul": 1, "add": -48, "dec": 0 }, { "header": "Coolant Temp", "unit": "°C", "offset": 11, "mul": 1, "add": -48, "dec": 0 }, { "header": "Oil Temp", "unit": "°C", "hidden": false, "offset": 12, "mul": 1, "add": -48, "dec": 0 }, { "header": "Radiator Temp", "unit": "°C", "offset": 13, "mul": 1, "add": -48, "dec": 0 }, { "header": "Exhaust Gas Temp", "unit": "°C", "hidden": false, "offset": 14, "mul": 1, "max": 1500, "dec": 0 }, { "header": "Ambient Temp", "unit": "°C", "hidden": false, "offset": 15, "add": -48, "max": 50, "dec": 0 }, { "header": "Battery Voltage", "alias": "Battery", "unit": "V", "offset": 16, "mul": 0.1 }, { "header": "Ambient Pressure", "unit": "mbar", "hidden": true, "offset": 19, "mul": 3, "add": 500, "dec": 0 }, { "header": "Rel Open Cross Sec", "unit": "%", "hidden": true, "offset": 20, "length": 2, "mul": 0.0030518, "max": 120 }, { "header": "Accel Pos 1", "unit": "%", "hidden": true, "length": 2, "offset": 23, "mul": 0.1 },/* { "header": "Accel Pos 2", "unit": "%", "hidden": true, "length": 2, "offset": 25, "mul": 0.1 },*/ { "header": "Button byte", //clutch is disengaged when value is odd (last bit) "canId": "0x329", "offset": 3, "hidden": false, "noLog": true }, { "header": "Can button", "expr": "(x >> 5)", "x": "Button byte", "hidden": false, "noLog": true }, { "header": "Cruise active", "canId": "0x545", "expr": "(x & 8)", "offset": 0, "hidden": false, "noLog": true }, { "header": "Button press", "unit": "b", "expr": "buttonPress(0, (x == 2) && !y, (x == 1) && !y, (x == 3) && !y)", //use all buttons on steering wheel "x": "Can button", // if != 0 then button is active "y": "Cruise active", "hidden": true, "noLog": true }, { "header": "Speedo", //"unit": "kph", "unit": "mph", "canId": "0x153", "offset": 1, "length": 2, //"expr": "(x >> 4 > 4)*(x >> 3) * .0625", //kph, stock tires (26.03" diameter) //"expr": "(x >> 4 > 4)*(x >> 3) * .03875", //mph, stock tires (26.03" diameter) "expr": "(x >> 4 > 4)*(x >> 4) * .0751", //mph, 245/40/17 tires (24.72" diameter with stock small tire cluster setting). .0758 might be right if small setting is for 265/30/19 (25.26" diameter) - 0.93% difference 758/751 "dec": 0, "hidden": false, "noLog": false }, { "header": "Brake", "canId": "0x153", //Also avail at 0x329 B6 Bit0 "offset": 0, "expr": "((x & 16) == 16)", "dec": 0, "hidden": false, "noLog": false },/* { "header": "DSC Active", "canId": "0x153", "offset": 0, "expr": "((x & 8) == 8)", "dec": 0, "hidden": false, "noLog": false }, { "header": "DSC OFF", "canId": "0x153", "offset": 0, "expr": "((x & 4) == 4)", "dec": 0, "hidden": false, "noLog": false },*/ { "header": "TORQ_TAR_FAST_DSC", //Total torque intervention, ASC (100-0%) "alias": "ASC Torque Int", "unit": "%", "canId": "0x153", "offset": 3, "expr": "x * 0.390625", "dec": 0, "hidden": true, "noLog": false },/* { "header": "TORQ_TAR_POS_DSC", //MSR torque INCREASE (0-100%: ign + throttle) "alias": "MSR Torque Int", "unit": "%", "canId": "0x153", "offset": 4, "expr": "x * 0.390625", "dec": 0, "max": 100, "min": 0, "hidden": false, "noLog": false }, { "header": "TORQ_TAR_SLOW_DSC", //MSR torque REDUCTION (100-0%) "alias": "Slow Torque Int", "unit": "%", "canId": "0x153", "offset": 6, "expr": "x * 0.390625", "dec": 0, "hidden": false, "noLog": false },*/ { "header": "Lateral G", "alias": "Lat G", "unit": "G", "canId": "0x1F3", "offset": 4, "length": 2, "expr": "((x >> 6) - 512) * 0.00512", // 0.00512 offset matches internal Gauge.S accelerometer "dec": 2, "min": -1.2, "max": 1.2, "hidden": false, "noLog": false },/* { "header": "DSC Yaw?", //This responds to BOTH lateral acceleration AND steering angle "alias": "Yaw?", "canId": "0x1F3", "offset": 0, "length": 2, "expr": "((((x >> 6) >= 512)*(-(x >> 6) + 512) + ((x >> 6) < 512)*((x >> 6)))*0.00391)", "hidden": false, "noLog": false },*/ { "header": "Longitudinal G", "alias": "Lon G", "unit": "G", "canId": "0x1F3", "offset": 3, "length": 2, "expr": "((((x&512)==512)*(-(x&256)-(x&128)-(x&64)-(x&32)-(x&16)-(x&8)-(x&4)-(x&2)-(x&1))-!((x&512)==512)*((x&256)+(x&128)+(x&64)+(x&32)+(x&16)+(x&8)+(x&4)+(x&2)+(x&1)-511))*0.00391)", //range of -2 - +2 G from -512 to +512 "dec": 2, "min": -1.2, "max": 1.2, "hidden": false, "noLog": false },/* { "header": "Decel?", "canId": "0x1F3", "offset": 4, "expr": "(x & 1)", "dec": 0, "hidden": false, "noLog": false },*/ { "header": "RPM", "canId": "0x316", "offset": 2, "length": 2, "expr": "x * 0.15625", "dec": 0, "hidden": false, "noLog": false }, { "header": "Oil Temp CAN", "unit": "°C", "canId": "0x545", "offset": 4, "expr": "x - 48", "dec": 0, "hidden": false, "noLog": false }, { "header": "Oil Level", "unit": "L", "canId": "0x545", "offset": 6, "expr": " x / 10 - 15.8", "dec": 1, "hidden": false, "noLog": false }, { "header": "Coolant Temp CAN", "unit": "°C", "canId": "0x329", "offset": 1, "expr": "x * .75 - 48", "dec": 1, "hidden": false, "noLog": false }, { "header": "Ambient Pressure CAN", "unit": "mbar", "canId": "0x329", "offset": 2, "expr": "x * 2 + 598", "dec": 0, "hidden": false, "noLog": false }, { "header": "TPS_VIRT_CRU_CAN", "unit": "%", "canId": "0x329", "offset": 4, "expr": "x * 0.390625", "dec": 1, "hidden": false, "noLog": false }, { "header": "TPS CAN", "unit": "%", "canId": "0x329", "offset": 5, "expr": "x * 0.390625", "dec": 1, "hidden": false, "noLog": false },/* { "header": "Theoretical Torque", //I think this is throttle intervention? Offset 1 is Torque after including what looks like all DSC interventions "alias": "Theo Torque", "unit": "%", "canId": "0x316", "offset": 7, "expr": "x * 0.390625", "max": 100, "min": 0, "hidden": false, "noLog": false },*/ { "header": "Torque", //Throttle pedal commanded "unit": "%", "canId": "0x316", "offset": 4, "expr": "x * 0.390625", "max": 100, "min": 0, "hidden": false, "noLog": false }, { "header": "Clutch", "expr": "!(x & 1)", "x": "Button byte", "dec": 0, "hidden": false, "noLog": true }, { "header": "Gear", "expr": "lutTable(\"Gear\", (y*z/x))", "x": "Speedo", "y": "RPM", "z": "Clutch", "lutTable": [ { "x": 33 , "y": 0}, { "x": 40.89 , "y": 6}, { "x": 49.26 , "y": 5}, { "x": 60.59 , "y": 4}, { "x": 82.27 , "y": 3}, { "x": 124.64 , "y": 2}, { "x": 208.38 , "y": 1}, { "x": 250 , "y": 0} ], "dec": 0, "hidden": false, "noLog": false }, { "header": "Steering Angle", //Angle: angle startbit: 0, length: 15 bit order and type: Intel LSB, unsigned, gain: 0.044 angle sign bit: bit 15 "canId": "0x1F5", "unit": "deg", "expr": "(x > 32768)*((x-32768)*.044) + (x<32768)*(-.044*x)", "offset": 0, "length": 2, "hidden": false, "noLog": false }, { "header": "AFR", "canId": "0x180", "offset": 0, "length": 2, "reverseEndianness": true, "expr": "x * 0.00147", // Resolution is .0001 Lambda/bit, stoichiometric ratio used is 14.7 "dec": 1, "max": 22, "min": 7, "hidden": false, "noLog": false }, { "header": "Total G", "alias": "Tot G", "expr": "sqrt(x*x + z*z)", "x": "Lateral G", "z": "Longitudinal G", "dec": 2, "max": 1.2, "min": 0, "hidden": false, "noLog": false }, { "header": "Ambient Temp CAN", "unit": "°C", "canId": "0x615", "offset": 3, "expr": "x", "dec": 0, "hidden": false, "noLog": false }, { "header": "Displayed Speed", "unit": "kph", "canId": "0x615", "offset": 6, "expr": "x", "dec": 0, "hidden": false, "noLog": false }, { // Reference: https://www.ms4x.net/index.php?title=CAN_Bus_ID_0x615_ICL3 "header": "Interior Night Lighting", "unit": "bool", "canId": "0x615", "offset": 1, "length": 1, // Bit 2: Interior Night Lighting - 0 off, 1 on "expr": "(x & 4) >> 2", "hidden": true, "noLog": true }, { "header": "Brightness", "expr": "setBrightness(lutTable(\"Brightness\", x))", "x": "Interior Night Lighting", "lutTable": [ { "x": 0, "y": 100 }, { "x": 1, "y": 50 } ], "hidden": true, "noLog": true }/*, { // Reference: https://www.ms4x.net/index.php?title=CAN_Bus_ID_0x613_ICL2 "header": "Fuel Level", "unit": "L", // "unit": "gal", // Change unit if going to gal "canId": "0x613", "offset": 2, "length": 1, // Bits 0-6: Fuel level measured in L // Bit 7: Fuel light status "expr": "(x & 127)", //"expr": "(x & 127) * 0.264172", // Change expr if going to gal "dec": 0, // "dec": 1, // Change dec if going to gal "hidden": false, "noLog": false }*/ ] }