cedricp / ddt4all

OBD tool
GNU General Public License v3.0
1.19k stars 234 forks source link

Adaptive Cruise Control - ACC deactivated by diag #126

Closed michalzahor closed 1 year ago

michalzahor commented 5 years ago

Hi,

I'm unable to change ACC to active in ABS / ESP . [ using WinXP latest DDT4ALL version ]

Seems like data are writtencorrectly but the value is still "deactivated".

capto_capture 2019-01-02_09-17-25_pm

Is the error in the screenshot related to failed write operation ?

michalzahor commented 5 years ago

anyway, ddt4all is nice piece of sw - I was able to inhibit daylight while flasher is running, disable start/stop.

What I can not find is how to set distance where car should autolock ( want to increase distance ), also I will like functionality to autounlock ( seems like this is not possible ).

michalzahor commented 5 years ago

What is also interesting, that my car have ECUs with functionality that I haven't ordered or is not available for this koleos version at all - HFP ( handsfree parking ) module , ADP ( adjustable seats with position memory ).

michalzahor commented 5 years ago

@cedricp I've tested new functionality ( tool next to hexa )

I have found some ACC related data in ECU but I'm not able to read them.

I think I'm on the right XML file and tried with ignition on ( motor on ), ignition on ( motor off ) .

capto_capture 2019-01-11_09-10-51_am

Also tried to read ACC button present ( in EEPROM ), but the same result.

Don't know what is wrong.

cedricp commented 5 years ago

The problem here, is that you're dealing with a 29bits addressing ECU, and it's not handled. I pushed a fix to manage it, but I cannot test it, I have no 29bits ECU at home.

michalzahor commented 5 years ago

seems that doesn’t work ( same result, empty response )

Michal

On 11 Jan 2019, at 09:50, Cedric PAILLE notifications@github.com wrote:

The problem here, is that you're dealing with a 29bits addressing ECU, and it's not handled. I pushed a fix to manage it, but I cannot test it, I have no 29bits ECU at home.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or mute the thread.

cedricp commented 5 years ago

Are you sure the XML file is the good one for your ECU ? Can you share your log file ?

shrlnm commented 5 years ago

As I know there are no ECUs with 29 bits CAN id on Koleos. Cedric is right, you have chosen wrong XML

For not to post the VIN with a log, just post responses on commands 22F1A0, 22F18A, 22F194 and 22F195

michalzahor commented 5 years ago

What is proper procedure to check ECUs vs XML match ? When I did run the test ( scan ) few days before few were marked as “not perfect match” and few “like this - not suitable XML found” but the all others are ok or just unknown state ?

Will run the @shrlnm test later today.

Michal

On 11 Jan 2019, at 15:07, Cedric PAILLE notifications@github.com wrote:

Are you sure the XML file is the good one for your ECU ? Can you share your log file ?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or mute the thread.

cedricp commented 5 years ago

If the scan process cannot find the good XML, it means that there's no suitable XML file for that ECU. A "not perfect match" scan means the software version is not the good one. (but can help many times)

michalzahor commented 5 years ago

Right I forgot to rescan when I have switched from WinXP version to the newest.

I have chosen Koleos II and the result is:

capto_capture 2019-01-11_05-51-55_pm

capto_capture 2019-01-11_05-52-22_pm

Some ECUs were identified, some not perfect match , some no relevant ECU. I'm suprised that so many were not found ( too new car ? :-) ) - I see that some XLM files are from december 2018 so I believe it is one of the latest ECU XML set.

What about ECUs that seems to be raleted to koleos - they were loaded after choosing koleos, but are not on the test / sscan list. Like ABS, RaCAm, MIU, ... ?

Also TDB said "no relevant ECU found" but is working as I have to use it for ACC activation too.

michalzahor commented 5 years ago

Result to commands:

capto_capture 2019-01-11_08-39-13_pm

michalzahor commented 5 years ago

When using EMC [ not perfect match ], I was able to run DataRead about ACC - capto_capture 2019-01-11_08-41-52_pm capto_capture 2019-01-11_08-40-56_pm

EEPROM [ no screenshot ] - not present or like that.

Is it safe to use DataWrite.Acc steeringwheel..... eeprom set to present even if EMC is not perfect match ?

shrlnm commented 5 years ago

First read current value by 22217C and 22217B commands

michalzahor commented 5 years ago

22217C: 62 21 7C 00

22217B: 62 21 7B 00

Michal

On 11 Jan 2019, at 21:42, shrlnm notifications@github.com wrote:

First read current value by 22217C and 22217B commands

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/cedricp/ddt4all/issues/126#issuecomment-453650685, or mute the thread https://github.com/notifications/unsubscribe-auth/AEwYdOaHd-CtCpwuvAbTFM3b0Ezixd3wks5vCPdMgaJpZM4ZnLTw.

shrlnm commented 5 years ago

Ок, now you may try to change values by 2E217Cxx and 2E217Bxx on your own risk. Further you will be able to try to return configuration back by 2E217C00 and 2E217B00. It is how to more or less safe change something

I've explored a bit your xml file EDC17C84170C and found one interesting parameter "ACC status from CAN". By my opinion, it should show us if racam sends ACC frames or not. Also try to carefully analyse what is shown on screens "CRUISE -> RV/LV "

michalzahor commented 5 years ago

I’ll check those “read” params.

But I’m worried to change those 2 params especially because of the explicit info that it will be written somewhere else then usual data - eeprom. I don’t know what kind of memory is used to write other type of data in ecus but why there is explicit info about eeprom. What if I’ll be not able to rewrite back to 0x00 and ECU will have problem with inconsistent configuration.

Question is if it is known that this eeprom can be rewriten back to 0x00 .

Michal

On 12 Jan 2019, at 08:56, shrlnm notifications@github.com wrote:

Ок, now you may try to change values by 2E217Cxx and 2E217Bxx on your own risk. Further you will be able to try to return configuration back by 2E217C00 and 2E217B00. It is how to more or less safe change something

I've explored a bit your xml file EDC17C84170C and found one interesting parameter "ACC status from CAN". By my opinion, it should show us if racam sends ACC frames or not. Also try to carefully analyse what is shown on screens "CRUISE -> RV/LV "

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or mute the thread.

michalzahor commented 5 years ago

Done few pictures while driving.

CC switch ON ( no icon of CC on main cluster screen and not able to set CC speed - ACC enabled in RaCam, TDB, RadNav

Michal

On 12 Jan 2019, at 08:56, shrlnm notifications@github.com wrote:

Ок, now you may try to change values by 2E217Cxx and 2E217Bxx on your own risk. Further you will be able to try to return configuration back by 2E217C00 and 2E217B00. It is how to more or less safe change something

I've explored a bit your xml file EDC17C84170C and found one interesting parameter "ACC status from CAN". By my opinion, it should show us if racam sends ACC frames or not. Also try to carefully analyse what is shown on screens "CRUISE -> RV/LV "

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or mute the thread.

Banana009 commented 5 years ago

Do you mean that you have activated ACC?

michalzahor commented 5 years ago

Just enabled in RaCam, RadNav and TDB cluster. But it is not working ( when I switch stndard CC switch on, on main cluster there is not CC or ACC icon and CC / ACC is not operating )

Those screen shots are from EDC17.... ecu.

Interesting is ACC status on CAN bus - saying ACC malfunction.

Question is why is ACC considered as malfunction.

I haven’t enabled those 2 ACC params inEDC17 ecu as I’m worried that will not be able to set them back to 0x00

Michal

On 13 Jan 2019, at 11:29, Banana009 notifications@github.com wrote:

Do you mean that you have activated ACC?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or mute the thread.

michalzahor commented 5 years ago

Sorry no pictures in the post:

capto_capture 2019-01-13_12-28-14_pm capto_capture 2019-01-13_12-27-55_pm capto_capture 2019-01-13_12-26-54_pm capto_capture 2019-01-13_12-26-30_pm capto_capture 2019-01-13_12-29-01_pm

michalzahor commented 5 years ago

@cedricp - do you know why RaCAm was not identified during a scan ?

capto_capture 2019-01-11_05-52-22_pm

michalzahor commented 5 years ago

Some diag. errors and screens from PyREN

2 images are from RaCam ( with lot of data ). There are some Failures related to ACC. Can be that this is source of ACC is not available ? Maybe there is missing ACC calibration procedure ?

capto_capture 2019-01-13_03-39-25_pm capto_capture 2019-01-13_03-38-45_pm capto_capture 2019-01-13_03-38-04_pm capto_capture 2019-01-13_03-37-47_pm capto_capture 2019-01-13_03-37-06_pm

Banana009 commented 5 years ago

You need to set ACC in FXA_RaCam of course, then in Cluster15_40, ESC15_40, RadNav. Fot Scenic IV is it ok but it does not work. Maybe it must be set in different ECUs.

Banana009 commented 5 years ago

I suppose I have to reprog ECU. :-(

michalzahor commented 5 years ago

@Banana009 have you found some more details ? Interesting info for me was the parameter: ACC Status from CAN: ACC Manfunction. - if the RaCAM ECU was generating this then why ...

Banana009 commented 5 years ago

I'll try to ask the service. ACC Status from CAN is really an interesting parameter, but there is no possibility to change it, missing DataWrite.ACC status from CAN :-(

michalzahor commented 5 years ago

I believe those errors on the picures above are the cause why the ACC functionality is propagated on CAN as "malfunction".

There are errors like ACCForceRequestsNotConsistent etc

@shrlnm : do you know what parameters in RaCAM ECU should be modified to avoid those errors ? As you have posted settings about speed limits to activate / deactivate ACC, I found that original settings were "non consistent" -for example acc activation speed was set originally to 250km/h. That is for sure that Koleos will not get that speed.

I think that there are some other parameters in RaCAM set to some "nonsense" values to disable operation of RaCAM as ACC functionality provider.

Banana009 commented 5 years ago

That is good idea, but we do not know how the RaCam works. for example, I will try to change speed limits for LKA but without succes, after write procedure RaCam sets the value back.

shrlnm commented 5 years ago

@michalzahor I suppose that this "ForceRequest" may came from other ecus, for example INJ or AT. I do not know which ECU is main in this process. As I suggested before, we need to investigate the content of system frames. Probably, they gave us a hint how to move further. It is probably, that INJ or AT have disabled ACC functionality.

Before we mentioned the button on the wheel. It is just one additional resistor and I suppose that it is not enough to activate ACC in INJ ECU. Probably the reprogramming with another firmware is needed to activate ACC in INJ or AT

shrlnm commented 5 years ago

Screenshot 2019-03-10 at 10 24 55 Screenshot 2019-03-10 at 10 28 40

shrlnm commented 5 years ago

@Banana009 LKA speed limit has internal down threshold. You can not set this limit below that threshold

michalzahor commented 5 years ago

This one is with ACC button?

Michal Zahor

On 10 Mar 2019, at 08:29, shrlnm notifications@github.com wrote:

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or mute the thread.

michalzahor commented 5 years ago

I can try to investigate system frames - you mean data on CAN right?

What is the recommended tool for this ?

My koleos was with option ACC with 0 € extra cost. Just dealer screw that and I have no ACC. That is why I believe there should be not a big difference in my hardware and software then the one with ACC if I was able to get one withh ACC without any extra costs.

Dephi Racam module is the same as for ACC.

And EDC ECU is saying - status of ACC on CAN - ACC malfunction.

There also option to write that ACC button is present to EEPROM but I worrie about do that, that I’ll not be able to rewrite eeprom back in case of problems

Michal Zahor mzahor@dtech.sk

On 10 Mar 2019, at 08:23, shrlnm notifications@github.com wrote:

@michalzahor I suppose that this "ForceRequest" may came from other ecus, for example INJ or AT. I do not know which ECU is main in this process. As I suggested before, we need to investigate the content of system frames. Probably, they gave us a hint how to move further. It is probably, that INJ or AT have disabled ACC functionality.

Before we mentioned the button on the wheel. It is just one additional resistor and I suppose that it is not enough to activate ACC in INJ ECU. Probably the reprogramming with another firmware is needed to activate ACC in INJ or AT

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or mute the thread.

Banana009 commented 5 years ago

Everything should go back, if you have a car in the warranty, you can complain it. :-) Another interesting thing is that you can not switch between ACC and CC. This indicates that the problem is more complex.

michalzahor commented 5 years ago

Better say, I screw that too as the ACC was not mentioned in the order list but I didn't notice dealer as I thought that ACC is by default there. They told me they can give me some compensation - but not ACC.

Question is if hunting for ACC is worth it :-0

But during free time I'd take this challenge to try to make it work.

Michal Zahor mzahor@dtech.sk

On 10 Mar 2019, at 22:44, Banana009 notifications@github.com wrote:

Everything should go back, if you have a car in the warranty, you can complain it. :-) Another interesting thing is that you can not switch between ACC and CC. This indicates that the problem is more complex.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/cedricp/ddt4all/issues/126#issuecomment-471356979, or mute the thread https://github.com/notifications/unsubscribe-auth/AEwYdEMvuncuJCKG8LT1-dAC2yqVkEfNks5vVXyugaJpZM4ZnLTw.

Banana009 commented 5 years ago

ACC operates in the range 50-160 km/h CC from 30 k /h ... This may be the reason why you can not set it up. The speed should be set as well.

shrlnm commented 5 years ago

This one is with ACC button?

Without. There is no small plastic part between 5 button and PCB, all other components are there.

What is the recommended tool for this ?

You may use ddt4all or pyren they are both contain bus monitors

michalzahor commented 5 years ago

Then this is interesting - they are using 2 wires to get data from all 5 buttons but analog way - different resistance for each pressed button

Then important from this PCB is that if you will press the position where should be ACC button there is resistor 0 ohm, so the output will be the same as pressing left-bottom button (speed adjuster)

buttons

michalzahor commented 5 years ago

This should be correct schema of the buttons.

What is sure, that from this PCB , ECU doesn't know if ACC button is present or not when not pressed.

But they have used resistor with 0 Ohm, so when ACC button will be added and pressed, it will be like pressing button S5 ( on my schematic ).

Seems that this is not inhibiting ACC functionality but if later we want to make ACC button working, we have to also change the resistor - I believe

Capto_Capture 2019-03-11_05-53-59_PM

Banana009 commented 5 years ago

This is a non-ACC version. I assume that for ACC, R=0 is replaced by the resistor. Then it makes sense. There is another resistor in this case. Certainly we need to exchange PCB for ACC version (with the resistor). If you press the button above R0 (S1-S3) , you get a different resistance value. I think the ACC must be activated somewhere in the braking unit or in other units yet.

michalzahor commented 5 years ago

They are using it as voltage divider, so they know which button was pressed.

We just don't know what should be the value of that resistor.

Anyway - this is like the minor issue now, as the first thing is to active ACC :-)

Michal Zahor mzahor@dtech.sk

On 12 Mar 2019, at 09:36, Banana009 notifications@github.com wrote:

This is a non-ACC version. I assume that for ACC, R=0 is replaced by the resistor. Then it makes sense. There is another resistor in this case. Certainly we need to exchange PCB for ACC version (with the resistor). If you press the button above R0 (S1-S3) , you get a different resistance value. I think the ACC must be activated somewhere in the braking unit or in other units yet.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/cedricp/ddt4all/issues/126#issuecomment-471904124, or mute the thread https://github.com/notifications/unsubscribe-auth/AEwYdGm_htqHH14z4mYkr2PvQQbBkkVXks5vV2b8gaJpZM4ZnLTw.

Banana009 commented 5 years ago

I agree with you, the button is in the last place. Finally you can buy cheap new steering wheel with button on Allegro.pl https://allegro.pl/oferta/kierownica-multifunkcja-renault-talisman-7861703709

xtrabart commented 5 years ago

Hi , any news with the button ?

Banana009 commented 5 years ago

Unfortunately we don't have a PCB with a button to compare the difference ( If you press the button above R0 (S1-S3) , you get a different resistance value.) Another problem is that ACC has to be activated somewhere else.

michalzahor commented 5 years ago

When I'll make some time for testing, will try to grab data from CAN BUS to try to get which frame brings the info that ACC is misconfigured.

What is new about this:

  1. ACC State on BUS is "NOT Activated" ( or something like that) while the speed of the car's speed is below threshold value
  2. When speed is increased over threshold, the state is "ACC misconfigured".

I believe that during increasing speed over threshold, we can see frames on the bus that can indicate the source

Another interesting is:

There is special variable that is saying if ACC button was already pressed for the first time. I don't know if ACC button must be pressed at least one time to make ACC work or it is just a service/diagnostic value.

Michal Zahor mzahor@dtech.sk

On 24 Mar 2019, at 22:38, Banana009 notifications@github.com wrote:

Unfortunately we don't have a PCB with a button to compare the difference ( If you press the button above R0 (S1-S3) , you get a different resistance value.) Another problem is that ACC has to be activated somewhere else.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/cedricp/ddt4all/issues/126#issuecomment-476002877, or mute the thread https://github.com/notifications/unsubscribe-auth/AEwYdE7JvZiV2OX0dcNtCSBeuFyfWak_ks5vZ_BdgaJpZM4ZnLTw.

shrlnm commented 5 years ago

we don't have a PCB with a button to compare the difference

There is no need to look on PCB. There a special sensor in Engine ECU it shows the voltage Screenshot 2019-03-25 at 21 01 32 On my 4-buttons PCB when no button pressed it shows ~4V 'R' ~3V '+' ~2V '-' ~1V 'O' ~0V

michalzahor commented 5 years ago

Based on the PCB photo, there are thise resistors in voltage divider

39A, 0, 60A, 89A, 39B that means:

249 ohm 0 ohm (Racc) 412 ohm 825 ohm 2490 ohm

Hm then if Racc ( resistor for acc button ) is set to some non 0 value, then whole voltage division is different except first button tied to 249 ohm resistor.

So then we have to tell the ECU that we have steering wheel with ACC button ( or non zero Racc resistor) so ECU knows that must use different volatges do decode which button was pressed. Those EEPROM stored values can by there for this purpose. Then if we set those values to “yes, we have steering wheel with acc button” non-acc steering wheel left buttons should stop working ( or maybe also right one if those are on the same wire ).

Michal Zahor mzahor@dtech.sk

On 25 Mar 2019, at 19:07, shrlnm notifications@github.com wrote:

we don't have a PCB with a button to compare the difference

There is no need to look on PCB. There a special sensor in Engine ECU it shows the voltage

On my 4-buttons PCB when no button pressed it shows ~4V 'R' ~3V '+' ~2V '-' ~1V 'O' ~0V

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or mute the thread.

Banana009 commented 5 years ago

Yes, we need to have the steering wheel with the ACC button. Otherwise we won't get the same voltage values and it won't work.

gabr777 commented 5 years ago

I have created custom screen also for MPH values and changed ( forget to make a photo ). Just in MPH there is not defined last one variable - DistanceControllerMaxSpeedCommand capto_capture 2019-01-04_02-07-36_pm

Hi, Did any of you manage to change the ACC speed limits? It's a bit annoying that it only works till 140kmph in my car (2016 Espace) If speed limit change is not possible can I just simply deconfigure ACC and enable "simple old" CC? Thanks, Gabor

michalzahor commented 5 years ago

It seems all problems with changing ACC to CC and CC to ACC is related to Engine Control Unit, where there is definition of the steering wheel type and different resistors in the ACC/CC part. So it seems that without changing steering wheel and changing settings also in "engine ECU" it is not possible to do that.