M3.3.1 motronic (413 and 506) tuning and XDF update?

Discuss Bosch (Porsche, BMW, Volvo, etc) tuning topics here. Request definitions, discuss parameters, etc.

Moderators: robertisaar, dex

Hairyscreech
Posts: 196
Joined: Tue Jun 20, 2017 3:19 am

Post by Hairyscreech » Sun Nov 26, 2017 9:33 am

Regarding the ignition timing - What do you have for your conversion factor?

You wont be able to use the 6 cylinder conversion factor as it is based on the distance before TDC cylinder 1 that the missing 2 teeth are.

Which is why it is X-60*.75 The -60 is the number of degrees before TDC that the missing teeth are on the M3.3.1 6 cylinder crank trigger. I am not sold on the conversion though unless someone has confirmed with a timing light.
I am not 100% sure where the *.75 came from, I would have to check back.

Edit to update - Found this in my old info file:

bosch 60-2 trigger wheels - 4 data points per tooth, 60 teeth counting both leading and trailing edge = 120 edges.
so 120 edges * 4 datas points means 480 points per rotation.
360/480 = 0.75 deg per data point.

Cut out is offset by 45 degrees, thus offset by 60 data points. (45/0.75=60)

Factor for ignition is then (0x/60)*0.75
Last edited by Hairyscreech on Sun Nov 26, 2017 3:32 pm, edited 1 time in total.

olafu
Posts: 140
Joined: Tue Jul 26, 2016 12:35 pm
Location: Finland

Post by olafu » Sun Nov 26, 2017 10:44 am

That's some last information for 413/506:
- Explanation for weird looking ignition dwell table - that's actually timing table for primary current switching on before desired ignition event, and same x*0.75 conversion works with it.

So, simply, if you want to calculate new dwell table for different coils, correct formula seems to be (this includes all, no need to conversion): Actual RPM divided by 125 and then multiplied by desired dwell in milliseconds.
DWELL_TABLE_VALUE = RPM / 125 * primary_ms
And different direction: primary_ms = DWELL_TABLE_VALUE * 125 / RPM.

- Injector timing tables: conversion factor seems to be about or exactly 3.
Some tests:

TABLE_VALUE = 200 - Injection pulse ends at 90 ATDC (firing cycle)
TABLE_VALUE = 233 - Injection pulse ends at TDC (firing cycle)
TABLE_VALUE = 255 - Injection pulse ends at 67.5 BTDC (firing cycle)

Those things must to be check with running engine... But .. Why they aren't right? :)

Hairyscreech
Posts: 196
Joined: Tue Jun 20, 2017 3:19 am

Post by Hairyscreech » Sun Nov 26, 2017 11:27 am

Having 4 very big problems with the car at the moment and not being able to solve these issues is preventing the use of the car.

1.
Can someone explain how the "acceleration enrichment" table works?

The biggest problem I have is that the fueling is all over the place on acceleration.
Currently I have a fuel table that starts around 95 and goes up to 135, sloped up with RPM and load, it is completely compensating for a terrible acceleration enrichment.
If I try to bring the table back towards a flat table then my AFR on acceleration falls towards stoich or lean. That along with the car bogging down and falling to 11/10:1 when I try to pull away some times means its a bit of a dog right now.
I have tried to fix this by upping the fueling in the acceleration enrichment table but cannot make it work, it just responds crazy.
We drove about adding 5% at a time to the RH side of the table to increase the fueling at higher throttle openings with virtually no change.
I even just went out and upped the last 4 columns to 120, 100, 80, 50 down the whole column and the damn thing was so lean as to be nearly undrivable. :roll:

A massive slope to the fuel table is not how they are supposed to be, none of the stock BINs have this ramp up so there is some way to correct this without mapping acceleration enrichment in.

2.
The bogging I mentioned above. Sometimes when pulling away or accelerating from a low speed I get a terrible bog down that has me feathering the throttle to keep it moving. It is like when you snap the throttle open to quick on a 2 stroke bike and it dies before surging.
I have been trying to record the behavior by recording the screen while tracing and displaying the wide band but I cannot get a reliable result.
Its inconsistent and I cannot see a true cause.

3.
Warm up enrichment.
I cannot find a proper warmup enrichment making the first 2 miles of driving pretty hard work, the fuel ratio wants to go over 16:1 until the engine is warm.

4.
Idle surging when rolling to a stop.
If I take it out of gear or coast to a stop with the clutch in I get awful idle surging, hunting badly between 500 and 1200rpm with the AFR jumping between 12:1 and 16:1. Again not sure of the cause here.

Any ideas anyone?
Driving me a bit mad this last couple of weeks as the car is useless until I can sort these things out.
Pretty much feeling that until we can actually reverse engineer the code I'm not going to be able to make this work on the M20.
With out any ability to data log what is a pretty complex system this is feeling like a bit of a waste of time that would be better spent fitting an aftermarket system. :x

olafu
Posts: 140
Joined: Tue Jul 26, 2016 12:35 pm
Location: Finland

Post by olafu » Sun Nov 26, 2017 12:16 pm

Hairyscreech wrote:Having 4 very big problems with the..
- "Acceleration enrichment table" feels to me it is not actually acceleration enrichment, but it affects to it. I did some tests at last summer, and IMO it's not for it or it is very tricky to use to adjust accleration enrichment.

- There is one or few post start enrichment or ignition maps. They are in use about 1-2 minutes from start, and then they will drop off. I will dig that maps from my notes. I don't remember is they only for ignition, but there can be many more this like maps for fuel and ignition.

- That idle surging problem you can propably fix (or hide :lol:) by slightly rising that idle valve flow table values in idle conditions.

Hairyscreech
Posts: 196
Joined: Tue Jun 20, 2017 3:19 am

Post by Hairyscreech » Sun Nov 26, 2017 12:49 pm

olafu wrote:
Hairyscreech wrote:Having 4 very big problems with the..
- "Acceleration enrichment table" feels to me it is not actually acceleration enrichment, but it affects to it. I did some tests at last summer, and IMO it's not for it or it is very tricky to use to adjust accleration enrichment.

- There is one or few post start enrichment or ignition maps. They are in use about 1-2 minutes from start, and then they will drop off. I will dig that maps from my notes. I don't remember is they only for ignition, but there can be many more this like maps for fuel and ignition.

- That idle surging problem you can propably fix (or hide :lol:) by slightly rising that idle valve flow table values in idle conditions.
- I think your right, that table is not acceleration enrichment as conventionally used. I think it might actually be like an extra fuel pulse on snap throttle.
Probably designed to solve that exact bog I mentioned on a 2 stroke.
If someone were to snatch the throttle then a glut of fuel is needed to match before any true acceleration enrichment can kick in.
I think that is why it is only TPS based.

- Thanks, would be a big help, I have found several maps in the code that we know are active from your checking a while back, they have a similar shape to the accel enrichment map and I can't help but feel one of those is a more likely candidate for the real enrichment.
I am wondering if some of them may be the warmup enrichment.

- I was wondering if the ICV map may be the answer, I am not sure if the ICV is too open and thus the RPM jumps up, the ECU shuts the ICV and thus the RPM drop and the AFR surges.
Or if the issue is visa-versa and the AFR surge is causing the RPM surge.
Guess there is only one way to find out.

I can post some video of the same fueling maps running with different values in that enrichment table if you want, however I think its next to useless for truly seeing the behavior other than it doesn't work as we expect.

Greenday694
Posts: 26
Joined: Sat Sep 16, 2017 3:35 am
Location: New jersey

Post by Greenday694 » Sun Nov 26, 2017 2:11 pm

I have been following This Thread religiously. And I'm currently in the process of building a 3 liter M50 Stroker motor for my car low compression to be used with my M122h supercharger. But in the meantime I'm experimenting with my old Engine with over 250,000 on it.
Took me a little while to get the hang of how to use those four O2 sensor Maps. But I did it.
Off and on I've been experiencing the same off Idle slight throttle acceleration deceleration back to Jumping idle and AFR all over the place problems as Hairyscreech.
Some of the things I've noticed is that part throttle map plays a big part in acceleration. Not just the acceleration enrichment table. Both of them Vanos on and off.
I haven't managed to get the acceleration enrichment to work perfectly. And could not figure out why. Then I remembered some of the standalones that I've used and piggyback units. They use to separate settings. One is usually the amount of fuel based on throttle position the other is length of time that enrichment is on. And a couple of them also had a delay that can be set as well. Don't believe that last one applies here but the amount of fuel and for how long might have something to do with this acceleration bogging hesitating problem.
in Failure there can be lessons . in perseverance there can be results.

Hairyscreech
Posts: 196
Joined: Tue Jun 20, 2017 3:19 am

Post by Hairyscreech » Sun Nov 26, 2017 3:27 pm

I a bit of a bid to keep my enthusiasm up I have decided to set up a dropbox to house all of the tuning stuff I have you can get access to pretty much everything I have on these ECUs here and I will try to keep things updated and add stuff when I can.

If anyone has any useful stuff they want to stick in here then let me know and we can work out a way to get it in there.

Please be aware there are a lot of BINs I have been playing about with making changes to tune the M20 over a long period of time.
Anything with a date at the start of the file name is an experiment of some kind and cannot be ensured to work.

There are a couple of E30 BINs that I have that are not in there, mainly out of respect to the people that provided them. I am happy to discuss what was done in those BINs but not give them out without checking first.

Main thing is there is lterraly everything I have been able to find over the last ~3 years on these ECUs. Hopefully it may help someone find something new.

Anyway - Link is here.
https://www.dropbox.com/sh/9bhg4mjk7nxy ... GCoWa?dl=0


Also I have been thinking about the data logging difficulties this ECU gives us.
Would there be interest is starting up a project to use an arduino Mega2560 to record some of the signals and put them out in a format that tunerpro could log?
It's something I thought up earlier tonight and know just how useful it could be but I don't have the knowledge to completely take it on by myself. My arduino and electronics starts and ends with my 3d printer at the moment so we would have to get some helpful people onboard with this.
Maybe we can round up some of the M3, 911 or VW guys as this would also allow them to data log like an OBD2 car?
Arduinos are super cheap now and more than capable of recording the handful of signals that would be needed to make this work.
It could be an easy open source cure all for logging old motronics of all kinds.
I looked to see if there was anything similar already available but failed to find anything.

Evil
Posts: 133
Joined: Tue Jul 18, 2017 12:53 pm
Location: France

Post by Evil » Mon Nov 27, 2017 7:45 am

I'm seriously reflecting about acceleration enrichment too.
Like you said Hairyscreech, the "accel enrichment" table we all use seems to have no effect or just a little; setting all the table to 255 (I tried also 254) makes no noticeable change.

Fot the influence of PT fuel table on accel: on the files you shared (thanks a lot for that, it's a gold mine of infos), I have seen that main fuel tables acts AFTER transitions corrections and ECT corrections. If it's the case it means that the main tables can decrease effect from others... It's just an assumption, but maybe there is something to do with that? I personnaly noticed the same thing since a higher setting in the PT fuel table leads to a better transition. Certainly due to a lower "desired AFR" but the effect is sufficiently noticeable for making me think it's not the only reason.

There must be more than one map to control accel enrichment, maybe it would be interesting to take a look at an Euro M3 bin, since the intake is different with ITB and bigger cams, which must lead to quite different accel enrichment settings.

I remember that in the M3.8 damos there is a "table" for wall film definition:
Image
Just before you can see a 256x1 table for Hot film voltage linearisation (like our MAF transfer table I think?)

Further in the file there is some tables for accel enrichement and other similar stuffs:

Image

Which location seems to be just before ignition tables.

So... I dont know if there are similarities between our motronics and the M3.8, but maybe this can help?

Hairyscreech
Posts: 196
Joined: Tue Jun 20, 2017 3:19 am

Post by Hairyscreech » Mon Nov 27, 2017 8:04 am

First off, you are all welcome to the information dumped in that dropbox.
It is all built on the freely available knowledge already on the web so without people providing the initial information for free that stuff would not exist.
Projects like these can only ever progress through freedom of information and knowledge and in a time where our governments and corporations want to do everything they can to shut down the freedom of information its cathartic to be able to throw some free information of my own into the void. 8)

The M3.8 damos is in there as it uses the same 80196 processor that we have in ours and as far as I can tell it is just another Series 3 motronic.
I hope/think that some of what is there will lead us to things in the M3.3.1.
The tables carry the same format, it should have a table of tables, and I think the code is fitted up in the same way with the 4 data sections.

I have meant to dump a BIN in the same way I have the others to see if we can learn something about the structure from a BIN that has a DAMOS.
Soon might be the time to do that.

Evil
Posts: 133
Joined: Tue Jul 18, 2017 12:53 pm
Location: France

Post by Evil » Mon Nov 27, 2017 1:49 pm

olafu wrote:
0xE3BC 6x6 Rpm x ECT which is named "Idle Valve Airflow" in the Excel file ;
I think that is only a some kind base position of idle valve at different engine speeds and temperatures. Ecu reads it always when engine is running. I was used that to correct idle problems (stalling, "pumping" and so on) when using different camshafts what has poor vacuum at idle.

I think it is also used to reduce excess vacuum from intake manifold in overrun conditions. High vacuum causes oil passing in to the combustion chambers and leads higher rate to burning oil and so rises HC emissions.

In MAF fault mode (Alpha-N) there is correction for LOAD by actual idle valve position/duty cycle. I'm not find that factor/map yet, but there must be one.
On my 403 this one is traced everytime EXCEPT on overrun fuel cut. I will try to set this table to 0 since my idle valve is electrically connected but not to the ITBs .I will see if it has any effect :D

The other table "overrun deccel fuel" is only traced in overrun.

olafu
Posts: 140
Joined: Tue Jul 26, 2016 12:35 pm
Location: Finland

Post by olafu » Mon Nov 27, 2017 2:53 pm

Evil wrote:On my 403 this one is traced everytime EXCEPT on overrun fuel cut...
Tested - again - and no tracing in overrun. IAC valve gets different duty cycle from somewhere else in overrun. :oops:

EDIT:But this 4x6 (0xE3F0 - decel/overrun fuel) seems to be overrun idle valve position table. Its traced at overrun and idle valve duty cycle changes when edit that table. I didn't see anything changes in fuelling by edit that table...

Mykk
Posts: 99
Joined: Sat Sep 05, 2015 8:28 am

Post by Mykk » Mon Nov 27, 2017 5:40 pm

The 404 DME has the same two tables. Both 5x5. Perhaps seeing them together could shine some light on their relation:

Image

Evil
Posts: 133
Joined: Tue Jul 18, 2017 12:53 pm
Location: France

Post by Evil » Mon Nov 27, 2017 5:51 pm

olafu wrote:
Evil wrote:On my 403 this one is traced everytime EXCEPT on overrun fuel cut...
Tested - again - and no tracing in overrun. IAC valve gets different duty cycle from somewhere else in overrun. :oops:

EDIT:But this 4x6 (0xE3F0 - decel/overrun fuel) seems to be overrun idle valve position table. Its traced at overrun and idle valve duty cycle changes when edit that table. I didn't see anything changes in fuelling by edit that table...
That was what I thought since their tracing are complementary, thanks for the confirmation! I will try in a couple hours when leaving work with these 2 tables set to 0 to see if there is any change (I think I have minor perturbations in my AFRs at cruising because the DME thinks some air passes throug the valve whereas it's not the case).

EDIT: is it like the canister valve, 255 = closed, or is it 0=closed?

olafu
Posts: 140
Joined: Tue Jul 26, 2016 12:35 pm
Location: Finland

Post by olafu » Mon Nov 27, 2017 8:34 pm

No, 0 = Closed, 255 = Open. But actual dutycycle doesn't go to 0 or full 100..

Evil
Posts: 133
Joined: Tue Jul 18, 2017 12:53 pm
Location: France

Post by Evil » Mon Nov 27, 2017 8:46 pm

Here are the results: (I run E85 but my gauge is on gas scale)

-With the whole 2 tables set at 255: AFR goes VERY rich. I was at 9.6 at all states/throttle positions, which is the limit of my gauge... So maybe it was lower than that.

-With the whole 2 tables set to 5: AFR goes lean, between 16/18, sometimes more, with some misfires.

Didn't test other values for the moment, maybe the ones I tested where too extremes and exceed some min/max thresolds for idle valves positions? Maybe the fact I run alpha/N (no MAF) has something to do with these results, changing idle valve position while she's not "functional" means I have to re-tune the VE table? (it could make sense at low throttle openings but not as much at high openings...)

I will try with less extremes values and see what it does... :roll:

Evil
Posts: 133
Joined: Tue Jul 18, 2017 12:53 pm
Location: France

Post by Evil » Mon Nov 27, 2017 8:47 pm

olafu wrote:No, 0 = Closed, 255 = Open. But actual dutycycle doesn't go to 0 or full 100..
Ok, thanks for the precision :D

olafu
Posts: 140
Joined: Tue Jul 26, 2016 12:35 pm
Location: Finland

Post by olafu » Mon Nov 27, 2017 10:34 pm

Evil wrote:...Maybe the fact I run alpha/N (no MAF) has something to do with these results, changing idle valve position while she's not "functional" means I have to re-tune the VE table? (it could make sense at low throttle openings but not as much at high openings...)

I will try with less extremes values and see what it does... :roll:
Idle valve position affects to "LOAD" in 413 and 506 , when MAF signal is faulty or missing. I think in 403 it does same..

MAF signal was used in those last tests, so LOAD doesn't change and fuel remains same.

Hairyscreech
Posts: 196
Joined: Tue Jun 20, 2017 3:19 am

Post by Hairyscreech » Tue Nov 28, 2017 12:44 am

Beware of putting in 0xFF or 0xFD as both seem to cause a bit of a fuss in the processor. One is the code for reset and the other is the code for NOP, they shouldnt be interpreted as code due to their location but both seem to be a problem in some tables. If in doubt just go for 0xFE as that seems to be the max safe value in all cases.

0xFF in the lambda tables caused some issues but 0xFE and below were ok.

I took a look at a M3 3l M3.3 BIN last night and it is very similar. Finding the table of tables took minutes and then it was easy to correct for the missing 32k of BIN (only 32k had been pulled off the chip).

Not had time to ID any of the tables yet but will try over the next few days but it looks like the table IDs are the same on the Euro M3 as the other M3.3 ECUs. Could be an advantage if there is a well documented Euro M3 BIN out there somewhere. (also they are in the dropbox, just beware that the BIN needs offsetting by 0x8000).

Going to try to snatch a look at the M3.8 BIN that matches that DAMOS soon as I can, if we get really lucky (and I mean really) then some of the table IDs may match or I may be able to match them up to the M3.3 ones.

Mykk
Posts: 99
Joined: Sat Sep 05, 2015 8:28 am

Post by Mykk » Tue Nov 28, 2017 4:25 am

Hairyscreech wrote:
bosch 60-2 trigger wheels - 4 data points per tooth, 60 teeth counting both leading and trailing edge = 120 edges.
so 120 edges * 4 datas points means 480 points per rotation.
360/480 = 0.75 deg per data point.

Cut out is offset by 45 degrees, thus offset by 60 data points. (45/0.75=60)

Factor for ignition is then (0x/60)*0.75[/b]
Photo of my M60B40 crank trigger. TDC and 45° BTDC of cyl #1 are marked by manufacturer.

Image

It appears I've got 11 teeth, 22 edges, 88 data points between TDC and the cut out.

When I use an online crank degree / damper calc and a digital caliper, when I measure the leading edge of first tooth after cut out from TDC it lands around 60 degrees, or 102mm away from TDC.

If I understand the above calc I should be using... 60/.75=80 so total calc would be (x-80)*.75...However by counting teeth it's 86 or 88 data points. (x-88)*.75 Which gives some scary low ignition advance values in the tables with some yielding negative numbers or ATDC.

Hairyscreech
Posts: 196
Joined: Tue Jun 20, 2017 3:19 am

Post by Hairyscreech » Tue Nov 28, 2017 10:55 am

Your right you need to adjust your ignition if the missing teeth are at 60 degrees.

What your missing there is that the *0.75 is assuming all 60 teeth are present.

You only need to do 60*.75

However you really need to pop the pulley on the engine, put it to TDC, mark the tooth inline with the rank sensor when the piston is at TDC and then count the number of teeth to the missing teeth.

The marking is only on there to line up with a mark scribed on the block for assembly. It cannot be assumed that marking will align with the crank sensor when the engine is at TDC. (which is all we care about, the number of teeth that pass the crank sensor between the missing teeth and TDC).

Hairyscreech
Posts: 196
Joined: Tue Jun 20, 2017 3:19 am

Post by Hairyscreech » Tue Nov 28, 2017 11:03 am

Also I found a DAMOS for the M3.8.1 used on the NA VR6.

It is about as close to a DAMOS for this ECU as we are going to get.

I will switch the 1.8T DAMOS on the sheet out for this one as I think this one will be more helpful.

I also discovered I have a 4gb map pack and a large pack of DAMOS files for VAG cars.... :roll:


Edit -

Olafu - I feel you are correct about that ignition dwell table, I have done a few calculations and added it to the master XDF in the dropbox with a tiny explanation.
The fastest charge times on there is 0.0027 seconds, not unreasonable for a charge at 7000 rpm or 16v.
Last edited by Hairyscreech on Tue Nov 28, 2017 5:09 pm, edited 1 time in total.

Evil
Posts: 133
Joined: Tue Jul 18, 2017 12:53 pm
Location: France

Post by Evil » Tue Nov 28, 2017 3:00 pm

olafu wrote:Idle valve position affects to "LOAD" in 413 and 506 , when MAF signal is faulty or missing. I think in 403 it does same..

MAF signal was used in those last tests, so LOAD doesn't change and fuel remains same.
It certainly does (and it would make sense) in 403 too. This must be the explanation of those AFR variations.
Hairyscreech wrote:Beware of putting in 0xFF or 0xFD as both seem to cause a bit of a fuss in the processor. One is the code for reset and the other is the code for NOP, they shouldnt be interpreted as code due to their location but both seem to be a problem in some tables. If in doubt just go for 0xFE as that seems to be the max safe value in all cases.

0xFF in the lambda tables caused some issues but 0xFE and below were ok.
I remember that you said that before in this thread or another, didn't remember at the moment :lol:

When I will have time I will re-try to set the first table to 0 and adjust the VE table .
It coould be useful to know where the load correction for idle valve position is.

Hairyscreech
Posts: 196
Joined: Tue Jun 20, 2017 3:19 am

Post by Hairyscreech » Wed Nov 29, 2017 5:35 am

Updated the sheet by removing all the duplicates from the M3.81 Damos.
I highlighted a couple of things in there as well, the enrichment maps and the injectors constant.
All single bit values have been made light grey in the size column to make it easier to find tables.
Update in the dropbox now.

Evil
Posts: 133
Joined: Tue Jul 18, 2017 12:53 pm
Location: France

Post by Evil » Wed Nov 29, 2017 8:50 am

Found something just after the MAF transfer table in the 413:

Image

It's followed in the code by some FF FF , maybe are they part of it?
It's in 16bit LoHi like for the MAF.
I have the same thing in my 403 but in 16x1 and with lower values, the curve is a little more linear too.

It looks like the linearisation of temperature sensors but inverted...

Mykk
Posts: 99
Joined: Sat Sep 05, 2015 8:28 am

Post by Mykk » Wed Nov 29, 2017 3:09 pm

In my 404 just beyond the MAF table I have what I assumed were 32x1 8bit tables, like 4 or 5 of them. I know one of them is the TPS transfer map. The others I couldn't figure out.

Actually that whole section between the MAF and the first axis identifier & header'd table is a bit of a mistery. The Ostrich 2.0 can't seem to cell hit trace accurately on transfer function maps.

Hairyscreech
Posts: 196
Joined: Tue Jun 20, 2017 3:19 am

Post by Hairyscreech » Wed Nov 29, 2017 3:23 pm

I think your 404 "TPS Function" is from 0xC530 to 0xC55E.

0->DA instead of 0-FF.

Which makes me wonder why the difference?

I do know the 540 throttle body is large enough to flow a fuel injector sideways so maybe that's why?

What is the TPS function actually used for? When I tried it it was not actually traced?
Is it reserved for the limp map?

Mykk
Posts: 99
Joined: Sat Sep 05, 2015 8:28 am

Post by Mykk » Wed Nov 29, 2017 3:45 pm

Hairyscreech wrote:What is the TPS function actually used for? When I tried it it was not actually traced?
Is it reserved for the limp map?
One would think it's because it's the only means of Load the computer has because there is no MAP sensor.

I can tell you in factory tuning, the automatic and manual transmissions have slightly different TPS transfer function map values.

Evil
Posts: 133
Joined: Tue Jul 18, 2017 12:53 pm
Location: France

Post by Evil » Wed Nov 29, 2017 4:59 pm

I think we can certainly say that in normal operation, TPS signal is used for Idle/PT and PT/switch, and as axis descriptor for the limp mode alpha/n table and for a 10x1 table in E45C. (same thing on 403)
Values in the tables in D6E6 and D6F8 are min/max throttle position for Vanos activation, if I had a good understanding of what I have seen in this thread :lol:

I think that the descriptor D6 is some kind of variation rate of TPS signal, used on tables D768 "acceleration enrichment?" and D86D. (strange thing is that in the 403 there is 4 tables with this descriptor...)

@MYKK:
In 404 you have the exact same thing I was talking about for the 413, Starting in C4A8, 56bytes, 16bit LoHi giving a 28x1 table (so for the 413 it must be 28x1 too whith taking the FF FF FF... following the table I shown.)

Hairyscreech
Posts: 196
Joined: Tue Jun 20, 2017 3:19 am

Post by Hairyscreech » Thu Nov 30, 2017 5:19 am

Vanos tables are actually max and min load. I assume it is that way as the ideal switching points are more related to airflow/airspeed in the inlet ports than throttle position.

I think D6 might be rate of TPS change.
If you make small movements to the throttle then you stay in the LH side but big rapid changes see it go to the RH side.
I'm not 100% sure but I think the D6 axis is the voltage increase over X time.

This is why I think it is actually a snap throttle compensation and not an acceleration enrichment.

From the M3.81 DAMOS the actual acceleration enrichment will be a 2d table not a 3d. I think it may be one of the unknown table IDs down near the bottom of the map section?

Agree that the TPS transfer function is needed for the ECU to get an throttle area/angle curve and for the Limp map, what I mean is that IIRC the MAF transfer function is traced all the time but if I try to trace the TPS function it does not show any tracing?
I was curious to put a scale to it so set up INPA to watch the TPS voltage while tracing the TPS function map in tunerpro.
Maybe I did something wrong when I tested but I could not get any trace up.
:?:

Will take a look at those other curves later tonight, if they are similar but inverse of the NTC temperature sensors are there any sensors with a positive coefficient on these engines?

Evil
Posts: 133
Joined: Tue Jul 18, 2017 12:53 pm
Location: France

Post by Evil » Thu Nov 30, 2017 6:28 am

I think D6 might be rate of TPS change.
If you make small movements to the throttle then you stay in the LH side but big rapid changes see it go to the RH side.
I'm not 100% sure but I think the D6 axis is the voltage increase over X time.
I get the same conclusion from what I see in tracing on 403.
You're probably right that it is a snap throttle compensation. I believe there must be some other tables acting with it since some conditions like ECT can have an effect on it.
From the M3.81 DAMOS the actual acceleration enrichment will be a 2d table not a 3d. I think it may be one of the unknown table IDs down near the bottom of the map section?
I would rather look at the top near the fueling tables/corrections. There's some unknown descriptors in this zone too and it would be more logical for this (these ?) table to be here. So one of these descriptors could be "engine acceleration" in rpm/s... I think that there is also one for "time after start" or something like that, and maybe for "number of rotations", for post start and warm-up corrections.
Agree that the TPS transfer function is needed for the ECU to get an throttle area/angle curve and for the Limp map, what I mean is that IIRC the MAF transfer function is traced all the time but if I try to trace the TPS function it does not show any tracing?
I was curious to put a scale to it so set up INPA to watch the TPS voltage while tracing the TPS function map in tunerpro.
Maybe I did something wrong when I tested but I could not get any trace up.
I also have absolutely no tracing of the TPS table, in alpha/n with no MAF (so I cant try with MAF table :lol: ).
I will try with the other curve if I see any tracing.

olafu
Posts: 140
Joined: Tue Jul 26, 2016 12:35 pm
Location: Finland

Post by olafu » Thu Nov 30, 2017 11:45 am

olafu wrote:
Evil wrote:...Maybe the fact I run alpha/N (no MAF) has something to do with these results, changing idle valve position while she's not "functional" means I have to re-tune the VE table? (it could make sense at low throttle openings but not as much at high openings...)

I will try with less extremes values and see what it does... :roll:
Idle valve position affects to "LOAD" in 413 and 506 , when MAF signal is faulty or missing. I think in 403 it does same..

MAF signal was used in those last tests, so LOAD doesn't change and fuel remains same.
In case "Alpha-N" LOAD is IAC corrected. There is some latency (something taper) from fully open to fully closed condition of IAC valve. In case of high rpm and rapidly pressed throttle, there is major "correction" by IAC valve actual position, it's fully open, and correction factor is gained in small loads. IAC valve takes few moments to set it's position, so it's possible source to weird AFR:s in rapid throttle pressing. It will mess acceleration enrichment. I did some tests in simulator, but i didn't test that in a car.

Evil
Posts: 133
Joined: Tue Jul 18, 2017 12:53 pm
Location: France

Post by Evil » Thu Nov 30, 2017 12:28 pm

Yes, thats why I wanted To set the tables To 0 To "delete" the load correction that occurs with iac position changes, because my IAC has the connector still plugged but not yet To the intake circuit.

Tanks for these précisions :D

olafu
Posts: 140
Joined: Tue Jul 26, 2016 12:35 pm
Location: Finland

Post by olafu » Sat Dec 02, 2017 1:35 am

I have intensively tried to find that correction what is changing "LOAD" by IAC-valve position in "Alpha-N" mode. But without success. But i found something else:
413/623 BIN:
0xE039 and 0xE050. We know, this "E039" is some kind knock prevention table what it is controlled by intake air temperature and coolant temperature. This E050 table expands this "knock prevention" to load and rpm dependent also. They are multiplied by each other, so, if you put value "0" to either table, whole correction is off. Seems like if you put 255 to one and something to other one, that other one follows x*0.75 correction to ignition angle. In case you put lower values than 255 to that other table, the effect will be reduced.

But both tables has effect to injection pulse width also. Bigger values in those tables will increase injection pulse width. (like that we know about that IAT vs. CLT table)

Also knock control "LOAD" threshold value is combined to those. In case of "forbidden 255" in that load table leads to case those E039 and E050 tables are always in use with maximum effect. If using value 254 in that knock control load table, those E039 and E050 will be still traced, but they have no effect to ignition angle or pulse width.

With zero values in E039 or E050 there is no matter if knock control load threshold is forbidden 255.. Ignition angle will follow main ignition tables.

This thing needs more research, too much "maybes" and darkness.

Evil
Posts: 133
Joined: Tue Jul 18, 2017 12:53 pm
Location: France

Post by Evil » Sat Dec 02, 2017 4:49 am

good info!
I have the same thing in 403, sizes are the same, scalings are similar (identical for the IAT/ECT table).
Values are different on the first, but IMO just because different offsets in ignition timing formulas.
For the second tables values are relatively different but the principle seems to be the same, 3D curves are not so different in general.

There is one table in 16x1 just after these 2, could it be E050 for PT and E0A1 for WOT?

Hairyscreech
Posts: 196
Joined: Tue Jun 20, 2017 3:19 am

Post by Hairyscreech » Sat Dec 02, 2017 8:13 am

I started putting together a proper master XDF with every table and as much description as we can currently offer, thinking it might help if we have a complete reference XDF to make it easier to discuss tables.
I also have made it to be in the same order as the maps are in the BIN for obvious reasons.

I will get it into the dropbox as soon as I am done, splitting the one I am tuning with from the actual master will make it easier to use both.

olafu
Posts: 140
Joined: Tue Jul 26, 2016 12:35 pm
Location: Finland

Post by olafu » Sat Dec 02, 2017 10:50 am

Evil wrote:There is one table in 16x1 just after these 2, could it be E050 for PT and E0A1 for WOT?
Yes, similar function like E050 and it's traced only in WOT. E050 isn't traced in WOT.

Mykk
Posts: 99
Joined: Sat Sep 05, 2015 8:28 am

Post by Mykk » Sat Dec 02, 2017 12:09 pm

You guys solved that 8x8 table I was asking about earlier in the 404, it's the same one you guys are talking about here with the 16x1 table following it. Thanks for that!

olafu
Posts: 140
Joined: Tue Jul 26, 2016 12:35 pm
Location: Finland

Post by olafu » Sat Dec 02, 2017 2:19 pm

Acceleration enrichment:

Triggered from rapid or less rapid LOAD increase...

0xDC15 D0xD5 4x4: Acceleration enrichment quantity by RPM and LOAD
0xDC31 D7 4x1: Coolant temperature correction for quantity
These are multiplied by each other and determines how much is maximum enrichment. 255*255 = about 22.5ms

0xDC3B D0xD7 4x4: Acceleration enrichment fade out rate. 0 = Enrichment stucks on. Bigger values = enrichment lasts faster.

0xDC57 D0xD7 4x4: Acceleration enrichment delta LOAD attenuation/sensitivity? Bigger values = less enrichment, lower = more enrichment. 0 = unstable pulse width, acc. enrichment seems to kick in from noise.

0xD4F9 = Delta LOAD transfer function? (known earlier as a TPS transfer function, but in normal operation seems like it has nothing to do with TPS). It has significant effect to acceleration enrichment, but i think it can be global transfer function to "LOAD" change rate and shoult not be edit...

Rapid change of the TPS does not affect to the pulse width, except in MAF failure mode. (Alpha N)

olafu
Posts: 140
Joined: Tue Jul 26, 2016 12:35 pm
Location: Finland

Post by olafu » Sat Dec 02, 2017 2:48 pm

Hairyscreech wrote:I think D6 might be rate of TPS change...
D6 follows LOAD. I think D6 and D5 are LOAD, but with and without some correction.. Must to do more tests... I did one "dummy" table and changed it's descriptor between D5 and D6. Seems like they are exactly same or very close, when i viewed they with tracing.

Mykk
Posts: 99
Joined: Sat Sep 05, 2015 8:28 am

Post by Mykk » Sat Dec 02, 2017 3:10 pm

Acceleration enrichment tables, nice find! Good job. Thank you.

Evil
Posts: 133
Joined: Tue Jul 18, 2017 12:53 pm
Location: France

Post by Evil » Sat Dec 02, 2017 8:33 pm

Again, everything is the same in 403. Secrets of the Motronics are falling :D
That's some very good stuff you found here!!
Rapid change of the TPS does not affect to the pulse width, except in MAF failure mode. (Alpha N)
Can you tell a little more about that? If I understand correctly, could we say that MAF signal is used for LOAD variations in normal operation, and in limp mode that's variation of value in Alpha N table so undirectly TPS signal? Sorry if I misunderstood :P

Could you also tell how modifications on D4F9 table does act on accel enrichment? If it's not too soon to talk about that

olafu
Posts: 140
Joined: Tue Jul 26, 2016 12:35 pm
Location: Finland

Post by olafu » Sun Dec 03, 2017 12:01 am

D4F9 : Zero values = acceleration enrichment is very low.
Filling this table to same value, seems like 100 there is no matter how fast load inreases, enrichment is always same. Zero values provides some minor enrichment, 255 in start of table = full enrichment immediatelly when adding load very slightly.

This is traced, when load is increasing..

But as i said, i think, acceleration enrichment sholud not be tune with this, because there can be something else what uses this MAP.


MAF OFF:

If MAF signal is faulty, and ECU reads load from DBB2 D0xCC, there is no enrichment, if load does not increase (DBB2 filled with fixed falue).

There is also TPS correction for load in E45C, but i don't know what is it.
- EDIT- No, it's not direct LOAD correction. IAC valve position changes, when changing this table, and so it effects to LOAD, because load is IAC position corrected :lol: :roll:

Evil
Posts: 133
Joined: Tue Jul 18, 2017 12:53 pm
Location: France

Post by Evil » Sun Dec 03, 2017 4:23 am

Ok thanks for the precision!
All the tests you can do are very helpful, we can really know what happens.

I did some quick tests when coming back from work (I will speak with 413 tables numbers for more comprehensivity)
O2 disabled to be sure there was no compensation from regulation, I added approximatively 100 to DC31 and between 50-80 to DC15.
Result is a MASSIVE amount of enrichment, AFR goes all the way down to 9.6 at each throttle pressing at all RPM :shock: :lol: and then goes back to its normal value after 4-5s.
This mean we have really big possibilities for setting accel enrichment.

Throttle Tip-in is waaaaaaaay better, the "lean spike" is almost disappear and throttle response is way better.

I have set voluntarily big changes to see if the setting range was sufficient, here is the proof that it's the case! :lol:
Now I will work by setting DC15 first (I think I will have to reduce accel enrichment duration too with DC3B), and see what it does.
That was the big point to solve for my ITB set up, that made my day !! :lol:

olafu
Posts: 140
Joined: Tue Jul 26, 2016 12:35 pm
Location: Finland

Post by olafu » Sun Dec 03, 2017 4:30 am

D5 vs D6:

Seems like:
D6 is "raw" load signal, it can vary from 0 to 255H (0..12.75 ms)
D5 is load signal, but it has RPM dependent "clamp" by 0xD752 4x1 table.
If i put 255 to this table, D5 and D6 is exactly same. Stock 623BIN has D5 "LOAD" limited/cutted to 10.00ms. No idea, but i guess:

There is vacuum in intake manifold at part load. Then, suddenly floored gas pedal, this vacuum will be filled by air, and MAF meters all of that air. There is huge "load spike" and excess fuel, because ECU converts it to a "load". So, if we cut these spikes off, by limiting value to biggest engine dependent real value, there is more easier to control fuel in rapid throttle position changes...

This load clamp is in use also in "alpha-n". With "255" in this cut table, load will follow directly that 0xDBB2 D0xCC table. Up to the full "255" / 12.75ms.

This 0xD768: (Earlier known as "acceleration enrichment") This is actually "damper" for D5 to follow D6. If i put "1" in every cells in D768, D5 will follow D6 with large latency. This latency can be adjusted by changing values in this table. So, that clears why that table has been thought to acceleration enrichment. It has big effect to acc. enrcihment, but it should not be tune with this.
This damping works in both directions. To increase AND decrease load.

Evil
Posts: 133
Joined: Tue Jul 18, 2017 12:53 pm
Location: France

Post by Evil » Sun Dec 03, 2017 4:59 am

I agree with opinion about that.
On 403 all values for clamp are 200, but like you said it must be very engine dependant and the VANOS must be the reason of these differences.

olafu
Posts: 140
Joined: Tue Jul 26, 2016 12:35 pm
Location: Finland

Post by olafu » Sun Dec 03, 2017 5:13 am

200 is 10ms in load. But 623 has "200" only at max. rpms.

That 0xD768 "latency" or "damper" is one thing what i would try to adjust, if i had ITB setup, or throttle valve size is changed. There is practically no delay when ITB:s are pressed from closed to WOT, so there is no need to use so much damping, as with regular plenum manifold and single throttle body.
With M50 plenum and stock throttle body, it has some delay to fill vacuum, and this table is propably here, to modelling air flow through throttle body.

Mykk
Posts: 99
Joined: Sat Sep 05, 2015 8:28 am

Post by Mykk » Sun Dec 03, 2017 7:52 am

I am so very thankful for these discoveries. About to go experiment with my 404, hopefully clean up a few transitional quirks.

If I may make a suggestion as to what to experiment with next; how about timers? Start up timers, etc.

Evil
Posts: 133
Joined: Tue Jul 18, 2017 12:53 pm
Location: France

Post by Evil » Sun Dec 03, 2017 8:32 am

olafu wrote:200 is 10ms in load. But 623 has "200" only at max. rpms.

That 0xD768 "latency" or "damper" is one thing what i would try to adjust, if i had ITB setup, or throttle valve size is changed. There is practically no delay when ITB:s are pressed from closed to WOT, so there is no need to use so much damping, as with regular plenum manifold and single throttle body.
With M50 plenum and stock throttle body, it has some delay to fill vacuum, and this table is propably here, to modelling air flow through throttle body.

You're totally right!
Hi have set this table To 255 few monts ago because this was the only table we knew which was accel enrichment related. I'll see if it needs any changes but I think the more direct it is, the better it is especially at low load/low rpm

Mykk
Posts: 99
Joined: Sat Sep 05, 2015 8:28 am

Post by Mykk » Sun Dec 03, 2017 2:18 pm

I've just set the Load Clamp table and the Latency table to 255 in my 404, throttle response has improved. Which adds to the fun factor of the drive :-)

It seems my idle is smoother too

Evil
Posts: 133
Joined: Tue Jul 18, 2017 12:53 pm
Location: France

Post by Evil » Mon Dec 04, 2017 12:36 pm

I have play a litle with DC15/DC31/DC3B: (With clamps and damper table set to 255)

Have raise DC31 a lot to have a "general" higher enrichment, then "finer" tune with DC3B.
Then played with DC3B to extend or reduce lenght of enrichment (I had to reduce for the most part of it, it explains why my AFRs where going very lean then very rich before)

Now I'm able to make AFR a little richer for 1 or 2s when pressing throttle.
A little too long at some moments (mostly at mid load /mid RPM) but didn't have much time to work on it.

Throttle tip-in from overrun make still a slight lean spike (can goes up to 14-15 for a target at 13,5) but I think the cause is more overrun fueling than accel enrichment.. Will try to play with ICV position in overrun table to see if I can solve it.

Very, VERY happy with all that, I begin to see what throttle response means with ITB :lol:

Post Reply