This commit is contained in:
rusefi 2022-02-13 00:09:00 -05:00
parent 0e8e5acd94
commit dbda1c4233
1 changed files with 9 additions and 4 deletions

View File

@ -17,10 +17,15 @@ void setEngineProteusBMW_N73_GDI() {
void setEngineProteusGearboxManInTheMiddle() { void setEngineProteusGearboxManInTheMiddle() {
strncpy(config->luaScript, R"( strncpy(config->luaScript, R"(
function twoBytes(data, offset, factor) function getTwoBytes(data, offset, factor)
return (data[offset + 2] * 256 + data[offset + 1]) * factor return (data[offset + 2] * 256 + data[offset + 1]) * factor
end end
function setTwoBytes(data, offset, value)
data[offset + 1] = value % 255
data[offset + 2] = (value >> 8) % 255
end
-- this controls onCanRx rate as well! -- this controls onCanRx rate as well!
setTickRate(300) setTickRate(300)
-- --
@ -103,15 +108,15 @@ function onCanRx(bus, id, dlc, data)
-- local output = string.format("%x", id) -- local output = string.format("%x", id)
if id == CAN_BMW_E90_TORQUE_1 then if id == CAN_BMW_E90_TORQUE_1 then
TORQ_AVL = 0.5 * (twoBytes(data, 1, 1) >> 4) TORQ_AVL = 0.5 * (getTwoBytes(data, 1, 1) >> 4)
TORQ_AVL_DMEE = 0.5 * (twoBytes(data, 3, 1) >> 4) TORQ_AVL_DMEE = 0.5 * (getTwoBytes(data, 3, 1) >> 4)
print('CAN_BMW_E90_TORQUE_1 TORQ_AVL=' ..TORQ_AVL ..' TORQ_AVL_DMEE=' ..TORQ_AVL_DMEE) print('CAN_BMW_E90_TORQUE_1 TORQ_AVL=' ..TORQ_AVL ..' TORQ_AVL_DMEE=' ..TORQ_AVL_DMEE)
relayToTcu(id, data) relayToTcu(id, data)
elseif id == CAN_BMW_E90_TORQUE_2 then elseif id == CAN_BMW_E90_TORQUE_2 then
printDebug('CAN_BMW_E90_TORQUE_2') printDebug('CAN_BMW_E90_TORQUE_2')
relayToTcu(id, data) relayToTcu(id, data)
elseif id == CAN_BMW_E90_RPM_THROTTLE then elseif id == CAN_BMW_E90_RPM_THROTTLE then
rpm = twoBytes(data, 4, 0.25) rpm = getTwoBytes(data, 4, 0.25)
print('CAN_BMW_E90_RPM_THROTTLE rpm=' ..rpm) print('CAN_BMW_E90_RPM_THROTTLE rpm=' ..rpm)
relayToTcu(id, data) relayToTcu(id, data)
elseif id == CAN_BMW_E90_DSC_TORQUE_DEMAND then elseif id == CAN_BMW_E90_DSC_TORQUE_DEMAND then