Pages: [1]
Author Topic: Linearization of the MAP sensor  (Read 1274 times)
Witrenko
Newbie
*

Karma: +0/-0
Offline Offline

Posts: 4


« on: January 17, 2026, 12:35:04 PM »

Hello.
I want to do linearization of the MAP sensor on my car (Audi A6 C4 2.5 TDI 1996). Help me understand the disassembly of the ECU EDC1.3.1 (MCA11). Processor SAB 80C517A.
Foto 1
I know that the 2D linearization map is located at address 6B20 (I experimented).
Foto 2
I know that:
F8 first byte - always points to the beginning of the map (array)
07 second byte - Card ID (20-RPM; 41-IQ; 05-°C)
02 third byte - Card size
00-FD X axis (volts)
0C-FF Y axis (mBar)
When the IDA program analyzed the binary file
Foto 3
IDA thinks that the X-axis data is a jump to address 0x00FD
02 00 FD ljmp code_FD
This is wrong.
Because it is a jump to the middle of the function, where it is impossible to determine the multiplier, or byte shift. (and if you take into account that I am not a programmer - I have reached a dead end and do not know how the MAP sensor function works)
Can you tell me how I can do linearization, how this function works?
Thank you.
« Last Edit: January 17, 2026, 01:12:44 PM by Witrenko » Logged
prometey1982
Sr. Member
****

Karma: +72/-60
Offline Offline

Posts: 330



WWW
« Reply #1 on: January 19, 2026, 08:11:38 AM »

Pressure sensor already linear. You have to find offset and gradient for it.
Logged

Россия - Великая страна!
https://youtu.be/fup5GzIFdXk
Witrenko
Newbie
*

Karma: +0/-0
Offline Offline

Posts: 4


« Reply #2 on: January 19, 2026, 03:23:45 PM »

Pressure sensor already linear. You have to find offset and gradient for it.
How do I find the gradient and offset when there are no address jumps on the linearization map?
Logged
nyet
Administrator
Hero Member
*****

Karma: +612/-169
Offline Offline

Posts: 12345


WWW
« Reply #3 on: January 19, 2026, 06:06:46 PM »

there is no map for it. It's two 1x1 numbers. offset, scale.
Logged

ME7.1 tuning guide
ECUx Plot
ME7Sum checksum
Trim heatmap tool

Please do not ask me for tunes. I'm here to help people make their own.

Do not PM me technical questions! Please, ask all questions on the forums! Doing so will ensure the next person with the same issue gets the opportunity to learn from your ex
Witrenko
Newbie
*

Karma: +0/-0
Offline Offline

Posts: 4


« Reply #4 on: January 20, 2026, 02:29:59 PM »

there is no map for it. It's two 1x1 numbers. offset, scale.
The 2D linearization map itself is 7 bytes long, and there is no jump to or from the functions.
Can you tell me the sequence of actions to determine these bytes, thank you
Logged
nyet
Administrator
Hero Member
*****

Karma: +612/-169
Offline Offline

Posts: 12345


WWW
« Reply #5 on: January 21, 2026, 10:30:45 PM »

map lookups are NOT jump to map locations.
they are 1) load axis, map into registers 2) jump to n x m interpolation function.

scale/offset are
1) load scale contents to register, mult
2) load offset contents to register, add
Logged

ME7.1 tuning guide
ECUx Plot
ME7Sum checksum
Trim heatmap tool

Please do not ask me for tunes. I'm here to help people make their own.

Do not PM me technical questions! Please, ask all questions on the forums! Doing so will ensure the next person with the same issue gets the opportunity to learn from your ex
Witrenko
Newbie
*

Karma: +0/-0
Offline Offline

Posts: 4


« Reply #6 on: January 25, 2026, 02:58:48 PM »

map lookups are NOT jump to map locations.
they are 1) load axis, map into registers 2) jump to n x m interpolation function.

scale/offset are
1) load scale contents to register, mult
2) load offset contents to register, add
So I understood that the next byte after f8 means the address of the RAM. But the digital signal is already written to the RAM, how do I find out at what addresses the conversion from analog to digital signal of the Map sensor is done?
Logged
Pages: [1]
  Print  
 
Jump to:  

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines Page created in 1.227 seconds with 15 queries. (Pretty URLs adds 0.28s, 0q)