Break-thru: Reading ACD ECU with EcuFlash
lol for those looking to pay for this upgrade, I compiled all the options available to the US here - https://www.evolutionm.net/forums/ev...t9as-read.html - is it possible to mimic these set ups using ecuflash?
Maybe the ralliart one would work for that ?
Sorry ,,,back OT I just read through the MMC paper posted above and it looks like we want the ACD open to turn better. But it also says that 30:70 was the target for mechanical viscous centre diff . Anyways for Tarmac setting we might have autox, street and track mode looks like the timing of opening would be related to the steering angle, so the maps for that might be the place to start. by that i mean a smaller angle than stock to modify the open acd time? would that sound right ?
Here's another article with some information that's more race-related
http://www.btrprep.com/street-and-tr...hi-evo-s-faq-s
And some real good stuff in the technical manual (starts on page 2-12 of the manual, or 57 of the display window):
http://www.scribd.com/doc/21248071/m...chnical-manual
http://www.btrprep.com/street-and-tr...hi-evo-s-faq-s
And some real good stuff in the technical manual (starts on page 2-12 of the manual, or 57 of the display window):
http://www.scribd.com/doc/21248071/m...chnical-manual
Last edited by eag36; Feb 24, 2010 at 07:51 PM.
After looking at the Technical Manual, it appears that the x-axis for Table Main and Table C is most likely Steering Angle.
A optical wheel is used, with three outputs. I think they time the difference between leading edges of the waveforms. Zero difference would be steering wheel neutral, and a large time difference would be the steering wheel turned a lot.
Some real world data will be needed to find the scaling, as I have no idea what the frequency of the waveforms and the ecu timer is.
Definition Update
Main -> Steering Angle x Vehicle Speed
Table A -> Throttle Position x Vehicle Speed
Table B -> Front/Rear Speed Difference x Vehicle Speed
Table C -> Steering Angle x Vehicle Speed
Just need to find what .1, .2, .3 correspond to, Snow, Gravel, Tarmac.
And the definition will be fairly complete.
A optical wheel is used, with three outputs. I think they time the difference between leading edges of the waveforms. Zero difference would be steering wheel neutral, and a large time difference would be the steering wheel turned a lot.
Some real world data will be needed to find the scaling, as I have no idea what the frequency of the waveforms and the ecu timer is.
Definition Update
Main -> Steering Angle x Vehicle Speed
Table A -> Throttle Position x Vehicle Speed
Table B -> Front/Rear Speed Difference x Vehicle Speed
Table C -> Steering Angle x Vehicle Speed
Just need to find what .1, .2, .3 correspond to, Snow, Gravel, Tarmac.
And the definition will be fairly complete.
thinking for the big map:
<scaling name="Percent_AYC" units="Outside Wheel Torque %" toexpr="x/2.56" frexpr="x*2.56" format="%.0f" min="0" max="100" inc="0.39" storagetype="uint8" endian="big"/>
<scaling name="SteeringAngle_ACD" units="degrees" toexpr="x" frexpr="x" format="%.1f" min="0" max="512" inc="1" storagetype="uint16" endian="big"/>
<scaling name="VehicleSpeed_ACD" units="kph" toexpr="x/58.77" frexpr="x*58.77" format="%.1f" min="0" max="510" inc="1" storagetype="uint16" endian="big"/>
<table name="AYC PROPORTIONING Map - % Torque" category="AYC Maps" address="12171" type="3D" scaling="Percent_AYC">
<table name="Steering Angle" address="12158" type="X Axis" elements="9" scaling="SteeringAngle_ACD"/>
<table name="Speed" address="120ba" type="Y Axis" elements="36" scaling="VehicleSpeed_ACD"/>
</table>
<scaling name="Percent_AYC" units="Outside Wheel Torque %" toexpr="x/2.56" frexpr="x*2.56" format="%.0f" min="0" max="100" inc="0.39" storagetype="uint8" endian="big"/>
<scaling name="SteeringAngle_ACD" units="degrees" toexpr="x" frexpr="x" format="%.1f" min="0" max="512" inc="1" storagetype="uint16" endian="big"/>
<scaling name="VehicleSpeed_ACD" units="kph" toexpr="x/58.77" frexpr="x*58.77" format="%.1f" min="0" max="510" inc="1" storagetype="uint16" endian="big"/>
<table name="AYC PROPORTIONING Map - % Torque" category="AYC Maps" address="12171" type="3D" scaling="Percent_AYC">
<table name="Steering Angle" address="12158" type="X Axis" elements="9" scaling="SteeringAngle_ACD"/>
<table name="Speed" address="120ba" type="Y Axis" elements="36" scaling="VehicleSpeed_ACD"/>
</table>
If i find some time, i can log a car to see exactly the reading for the steering wheel when to keep it neutral and a reading for one full turn, half turn, left and right.
Also for throttle possition, to see exactly where it reads 0 and where it reads 100.
Sabin
Also for throttle possition, to see exactly where it reads 0 and where it reads 100.
Sabin
Feedback Control Section
Target Body Posture - Actual Body Posture = Output Setting
where Target Body Posture is calculated from Steering Wheel Angle & Vehicle Speed (table A or C?) and Actual Body posture is calculated from wheel speeds (Table B?)
Feed Forward Control Section
calculated from Longitudinal G & Throttle Sensor
The Feed Forward Control is then combined with the Output Setting to give you the output to the ACD (after an interrupt from the parking brake)

The only part that doesn't seem to be present so far is the longitudinal G-Sensor input. Does it not appear to be used in the code? It looks like you could simulate the input from the g-sensor by varying the voltage from 2.5v (0G) to 1.5v or 3.5v (+/- 1G) to see if that has an affect on any of the values.
Last edited by eag36; Feb 25, 2010 at 10:05 AM. Reason: Added the diagram
I will post an update when something is really finished.
I just got an email from somebody at Tactrix and told me that they will finish the correct writing of the MH7203FA processor in a month or two. Until then, unfortunately we cannot do so much.
I think that if is nice to see also a AYC bin. I wait to take the Evo 9 from the paint-shop and i will be able to read it myself. But if somebody is faster, please post the bin also.
As you know, EvoScan is not ready yet for this ACD ECU. I got a message from Hamish 2 weeks ago and he told that it will be ready next day, but that next day didn't comed until now. I will keep you posted in this matter also.
For the moment, me and my friend Acamus, started to figure out a way to make our own reading/writing device based on the MH_bootmode, simillar with the SH_bootmode from Subaru. But this is pretty hard and time consuming.
In the mean time, we wait for Ceddy to finish the understanding of the whole file.
I started scooping around to find other ACDs to see how different people tuned this ECU, looking for different utilization.
I just got an email from somebody at Tactrix and told me that they will finish the correct writing of the MH7203FA processor in a month or two. Until then, unfortunately we cannot do so much.
I think that if is nice to see also a AYC bin. I wait to take the Evo 9 from the paint-shop and i will be able to read it myself. But if somebody is faster, please post the bin also.
As you know, EvoScan is not ready yet for this ACD ECU. I got a message from Hamish 2 weeks ago and he told that it will be ready next day, but that next day didn't comed until now. I will keep you posted in this matter also.
For the moment, me and my friend Acamus, started to figure out a way to make our own reading/writing device based on the MH_bootmode, simillar with the SH_bootmode from Subaru. But this is pretty hard and time consuming.
In the mean time, we wait for Ceddy to finish the understanding of the whole file.
I started scooping around to find other ACDs to see how different people tuned this ECU, looking for different utilization.
Evolved Member
Joined: Mar 2008
Posts: 730
Likes: 3
From: Lattitude 48.38°, Longitude 17.58°, Altitude 146m = Slovakia, for common dude
Hamish lately compiled some ACD descrption here. Maybe some of you that are in posession of the ACD ecu could also post non JDM PCB pictures.
Managed to read a JDM Evo7 ACD+AYC controller today, yay!
Was not able to read either of the two Evo6 AYC controllers though, bummer.
I popped the lid and found the micro is a Motorola chip, so I guess the Evo6 AYC is not going to be reflashable.
Was not able to read either of the two Evo6 AYC controllers though, bummer.
I popped the lid and found the micro is a Motorola chip, so I guess the Evo6 AYC is not going to be reflashable.
Last edited by merlin.oz; Feb 27, 2010 at 10:39 PM.
There are a lot of chances to be very hard to rewrite it. But it worth a look.
OK, read the ACD+AYC ECU from my AUDM Evo9 this morning.
ID is 401404, and the maps look the same as in the Evo8 401403.
The ECU part number is MN168749, from a 2005 Evo9.
Sabin, I was thinking about the Evo6 controller and dont think it worth the effort to hack into. If Evo6 owners want better control I think it would be better to re-wire for a Evo7 or later controller. The only major change would be to replace the pressure switch with the pressure sensor. The G sensors, wheel sensors and steering sensors are all in there already.
Has anyone had any updates from Colby on the re-flashing?
ID is 401404, and the maps look the same as in the Evo8 401403.
The ECU part number is MN168749, from a 2005 Evo9.
Sabin, I was thinking about the Evo6 controller and dont think it worth the effort to hack into. If Evo6 owners want better control I think it would be better to re-wire for a Evo7 or later controller. The only major change would be to replace the pressure switch with the pressure sensor. The G sensors, wheel sensors and steering sensors are all in there already.
Has anyone had any updates from Colby on the re-flashing?







