OBD1 8bit Low Cam RPM
This is the conversion from the "low cam" 8bit RPM values used for VTEC crossover points and in the lowcam tables.
Adapted from pgmfi.org wiki
This is the conversion from the "low cam" 8-bit RPM values used for VTEC crossover points and in the low-cam tables. It involves some modular arithmetic, so it's easier to break it up into a couple extra steps. # Y = input value, 0 to 256 # let H = floor(Y/64) ''Where floor(x) = trunc(x) = int(x) = integer part of x. Fractional part truncated. Whatever you want to call it'' # let L = Y - (H-1)64 # RPM = 1875000 * L * 2^H / 240000 You can also do it this way, using the modulo operator: # Y = input value, 0 to 256 # Q = Y div 64 ''(integer division, same as floor(Y/64) above)'' # R = Y mod 64 ''(modulus, i.e. remainder after division)'' # RPM = (2^Q)(floor(R*500/64) + 500) This turns out to be a piecewise linear scale:
EDITED COMMENT: <---- Linear scale??? yeah right!...this formula need to go back to the "drawing board". The values below shows a perfect exponential scale! I have trying this equation and it does not get exact values. Ben's equation on BRE are more accurate at least on test values...( I don't know the formula for BRE)) That's ''piecewise''-linear. Four linear ranges. It's not a smooth exponential curve. The first formula fairly closely follows the OBD1 code, while the second is a simplification which gets slightly different results with integer math. By what measure do you consider which is more accurate? See https://web.archive.org/web/http://pgmfi.org/phorum/read.php?f=13&i=3314&t=2968 for reference. --AndySloane
Credits and source
Authors Anonymous PGMFI contributor
Source Adapted from OBD1 8bit Low Cam RPM on pgmfi.org wiki. Licensed under CC BY-NC-SA 1.0.