|
Software Tuning Discuss all software tuning topics. |
![]() |
|
Thread Tools | Search this Thread |
![]() |
#1 |
Senior Member
Join Date: Jul 2013
Drives: Toyota 86
Location: Gold Coast, Australia
Posts: 311
Thanks: 44
Thanked 358 Times in 142 Posts
Mentioned: 60 Post(s)
Tagged: 0 Thread(s)
|
Knock Sensor Control Logic
Following @Td-d's work on the ROMraider forums here:
http://www.romraider.com/forum/viewt...hp?f=40&t=8615 I had a look at the A01G ROM with ScoobyROM. Knock sensor calibration table was easy to find using Td-d's ScoobyROM method, unpicking the knock control logic is quite difficult. There is also a table that looks like it uses FLKC table offset as an input - possibly a threshold. All highly experimental. Welcome any input into deciphering the knock logic. Code:
<table name="Knock Sensor Calibration" storageaddress="11DF48"> <table type="Y Axis" storageaddress="11DDEC" /> </table> <table name="Knock Threshold" storageaddress="11612C"> <table type="Y Axis" storageaddress="1160A0" /> </table> <table type="2D" name="Knock Sensor Calibration" category="Ignition Timing - Knock Control" storagetype="uint16" endian="big" sizey="87" userlevel="4"> <scaling units="ECU value" expression="x-32" to_byte="x+32" format="0" fineincrement=".5" coarseincrement="10" /> <table type="Y Axis" name="Knock Sensor" storagetype="float" endian="little"> <scaling units="volts" expression="x" to_byte="x" format="0.0000" fineincrement=".01" coarseincrement=".1" /> </table> <description>Knock sensor calibration</description> </table> <table type="2D" name="Knock Threshold" category="Ignition Timing - Knock Control" storagetype="float" endian="little" sizey="35" userlevel="5"> <scaling units="ECU value" expression="x" to_byte="x" format="0.0000" fineincrement=".5" coarseincrement="10" /> <table type="Y Axis" name="FLKC Offset" storagetype="float" endian="little"> <scaling units="Offset" expression="x" to_byte="x" format="0" fineincrement="1" coarseincrement="1" /> </table> <description>?? Knock threshold by FLKC offset </description> </table> |
![]() |
![]() |
The Following 3 Users Say Thank You to ztan For This Useful Post: |
![]() |
#2 |
Senior Member
Join Date: Oct 2012
Drives: UK GT86
Location: UK
Posts: 3,040
Thanks: 185
Thanked 1,631 Times in 1,112 Posts
Mentioned: 155 Post(s)
Tagged: 1 Thread(s)
|
The stuff that would be really handy to have are the per cylinder thredholds with the appropriate logging parameters.
I doubt that anyone will change the sensor cal. How does the lower one work?
__________________
.: Stealth 86 :.
Abbey Motorsport/K47 Tuned Sprintex 210 Supercharger Kodename 47 DJ: Soundcloud / Instagram / Facebook |
![]() |
![]() |
![]() |
#3 |
Banned
Join Date: Sep 2013
Drives: 2013 GBS BRZ Limited
Location: Colorado
Posts: 1,925
Thanks: 627
Thanked 1,445 Times in 711 Posts
Mentioned: 41 Post(s)
Tagged: 0 Thread(s)
|
Just FYI (stumbled across this while learning romraider):
http://www.romraider.com/forum/topic1840.html http://www.romraider.com/RomRaider/H...ndKnockControl http://forums.nasioc.com/forums/show....php?t=1433675 I apologize if you have already found this. |
![]() |
![]() |
![]() |
#4 |
Senior Member
Join Date: Dec 2012
Drives: FR-S Whiteout
Location: California
Posts: 2,863
Thanks: 1,808
Thanked 790 Times in 611 Posts
Mentioned: 42 Post(s)
Tagged: 0 Thread(s)
|
Nice! (subbed)
__________________
Intent > Content
cowardice is the mother of cruelty. |
![]() |
![]() |
![]() |
#5 |
Senior Member
Join Date: Jul 2013
Drives: Toyota 86
Location: Gold Coast, Australia
Posts: 311
Thanks: 44
Thanked 358 Times in 142 Posts
Mentioned: 60 Post(s)
Tagged: 0 Thread(s)
|
No real idea, but the value that gets passed to the 2D table is the FLKC cell offset - this reads 0-4 in the first RPM range as load increases, then 5-9 in the next RPM range... 35 values in all for 5 load ranges and 7 RPM ranges.
I played around with reformatting the table to the following, which makes me suspect that this is a table defining knock threshold or sensitivity per FLKC cell. The logic is very complex and I am nowhere close to unravelling it: Code:
<table type="3D" name="Knock Threshold" category="Ignition Timing - Knock Control" storagetype="float" endian="little" sizex="5" sizey="7" userlevel="4"> <scaling units="ECU value" expression="x" to_byte="x" format="0.000" fineincrement=".2" coarseincrement="1" /> <table type="Static X Axis" name="" sizex="5"> <data>FLKC Load Range 1</data> <data>FLKC Load Range 2</data> <data>FLKC Load Range 3</data> <data>FLKC Load Range 4</data> <data>FLKC Load Range 5</data> </table> <table type="Static Y Axis" name="" sizey="7"> <data>FLKC RPM Range 1</data> <data>FLKC RPM Range 2</data> <data>FLKC RPM Range 3</data> <data>FLKC RPM Range 4</data> <data>FLKC RPM Range 5</data> <data>FLKC RPM Range 6</data> <data>FLKC RPM Range 7</data> </table> </table> |
![]() |
![]() |
![]() |
#6 |
Banned
Join Date: Dec 2013
Drives: FT86
Location: Australia
Posts: 7,998
Thanks: 1,035
Thanked 4,988 Times in 2,982 Posts
Mentioned: 598 Post(s)
Tagged: 2 Thread(s)
|
could it be something like this table in romraider learning view, buy i suppose it would be in ram as its learned values ?
|
![]() |
![]() |
![]() |
#7 |
Senior Member
Join Date: Apr 2019
Drives: 86 GT
Location: Malaysia
Posts: 359
Thanks: 230
Thanked 210 Times in 107 Posts
Mentioned: 2 Post(s)
Tagged: 0 Thread(s)
|
Hi @callisto - any idea if these FLKC values are stored anywhere in RAM?
__________________
DIY stuff at Compelica Works
|
![]() |
![]() |
![]() |
#8 | |
Member
Join Date: Nov 2021
Drives: 2019 Subaru BRZ
Location: NA
Posts: 51
Thanks: 28
Thanked 35 Times in 20 Posts
Mentioned: 4 Post(s)
Tagged: 0 Thread(s)
|
Quote:
That’s an excellent question, it’ll take a bit to find out but I’m certain they’re in there, that tool is reading them. (Note to self, read every ztan post.) |
|
![]() |
![]() |
![]() |
#9 | |
Senior Member
Join Date: Apr 2019
Drives: 86 GT
Location: Malaysia
Posts: 359
Thanks: 230
Thanked 210 Times in 107 Posts
Mentioned: 2 Post(s)
Tagged: 0 Thread(s)
|
Quote:
Never thought of this, but not sure how IAM/FLKC persists when the car is turned off... does that mean the ECU and the RAM is kept in a low power state? @AussieBRZ ? @ztan has a lot at his disposal as well, it was him who worked on the pre-facelift flex-fuel tunes I believe.
__________________
DIY stuff at Compelica Works
Last edited by Compelica; 04-15-2024 at 02:43 AM. |
|
![]() |
![]() |
![]() |
#10 |
Member
Join Date: Nov 2021
Drives: 2019 Subaru BRZ
Location: NA
Posts: 51
Thanks: 28
Thanked 35 Times in 20 Posts
Mentioned: 4 Post(s)
Tagged: 0 Thread(s)
|
Aha, I recognize that memory address, I've been looking into this previously.
S10C/FFF815E0, K00G/FFF810B4 - there are 35 pairs of (A, B) floats, stored in the order A1 B1 A2 B2 A3 B3 etc. The FLKC values you see in datalogs derive from the A-side. Yes, the ECU RAM is kept alive by the battery, which is why pulling the battery or fuse resets the ECU. There's an EEPROM storing VVT learned values, which I want to look into more someday. (Also: S10C/FFF816F8 is the start of a series of unsigned shorts that is storing what is likely FLKC counters of some sort. That's where my research left off, so I don't have any details for this yet.) |
![]() |
![]() |
The Following User Says Thank You to callisto For This Useful Post: | Compelica (07-04-2024) |
|
|
![]() |
|
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
Secondary O2 sensor needed for Cruise control? | DJCarbine | Engine, Exhaust, Transmission | 31 | 04-10-2015 08:49 PM |
install cruise control coz for me roll connector / steering sensor fail | aagun | Issues | Warranty | Recalls / TSB | 15 | 11-14-2013 09:29 AM |
Active Knock sensor | Fat Spider | Engine, Exhaust, Transmission | 13 | 07-14-2013 08:37 PM |