Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Allow ECUs that start with 19200 bauds #27

Open
flxkrmr opened this issue Feb 17, 2023 · 12 comments
Open

Allow ECUs that start with 19200 bauds #27

flxkrmr opened this issue Feb 17, 2023 · 12 comments
Labels
enhancement New feature or request

Comments

@flxkrmr
Copy link
Owner

flxkrmr commented Feb 17, 2023

No description provided.

@flxkrmr flxkrmr added the enhancement New feature or request label Feb 17, 2023
@mercury64
Copy link

As far as I know, the initial UART message starts at 2400 baud for all.
The request is made to put in CART mode 0x04 using 2400 baud.
Then depending on the EEC strategy configuration, CART mode is at 19200 baud.
Once in CART mode, the baud can be changed 2400, 4800, 9600, or 19200.
Command code 0x81, DCL_DM_SetCommLinkBAUDRate # Set DCL baud rate
in CART mode changes the EEC baud rate.

@flxkrmr
Copy link
Owner Author

flxkrmr commented Feb 18, 2023

The code currently only works with CART mode that starts with 9600 baud and is has trouble with units that start CART mode with 19200 baud. After CART initialisation it always switched baud rate to 2400 for all diagnostic communication.

Do you know if all diagnostic commands work with all baud rates? I had trouble getting the error codes with 9600 baud, but I found nothing about this in the docs.

@mercury64
Copy link

UART mode is only 2400.
You can only start CART mode in UART mode at 2400.
CART mode will start in whatever the EEC is programmed to.
CART mode can be changed once in this mode to 2400, 4800, 9600, or 19200.

I am unable to get any communication happening right now, probably a noisy circuit.

@flxkrmr
Copy link
Owner Author

flxkrmr commented Feb 19, 2023

In my tests the communication seemed very resistant against noise or bad cable connections. Maybe check the delays between bytes and IWs. The EEC IV is more unforgiving with these

@mercury64
Copy link

mercury64 commented Feb 20, 2023

EEC-IV hardware code SME-105, software code ENVY once in cart mode starts in 9600.

What hardware code you have, and software code?

I can decompile for you, and show the code in the EEC.
UART command code 0x04= GO CART MODE:
5a6d: d7,19 jne 5a88 if (R33 = 4) {
5a6f: 91,08,df orb Rdf,8 B3_Rdf = 1;
5a72: b1,02,32 ldb R32,2 R32 = 2;

R32 = 2 = 0x2H = 9600baud
0x00H 2400 baud
0x01H 4800 baud
0x02H 9600 baud
0x03H 19200 baud

@flxkrmr
Copy link
Owner Author

flxkrmr commented Feb 20, 2023

How do I find the hardware- and software-code?

@mercury64
Copy link

Software code, or calibration is the 3 or 4 digit bold uppercase letters and numbers located on the actual EEC label.
The hardware code is not bold, can start with SME-xxxx, SDxxxx, MAF-xxxx, MLP-xxx, etc.

Post a picture of your EEC-IV label.

@flxkrmr
Copy link
Owner Author

flxkrmr commented Feb 21, 2023

My main testing ECU is VANE SME-401. This one starts in 9600 baud.
The ECU that starts in 19200 is BEAU SME-105.
And lastly one ECU that does not answer at all is 2GEA EST-230

@mercury64
Copy link

The 2GEA EFI-SD230 must have the 81C62 chip.
More than likely it only has 81C61 chip.
For DCL needs the second crystal that runs at 4.9152Mhz and the 81C62 CART chip.

I'll try and find the VANE and BEAU bins and will disassemble them with DCL UART/CART info. I will check in my own repository and will create a pull request.

@mercury64
Copy link

@flxkrmr
Copy link
Owner Author

flxkrmr commented Feb 22, 2023

Damn, thats interesting. Thanks for this. Event though I'm not so good at reading assembler, I think I can pull some infos out of this

@mercury64
Copy link

Comments are on the right hand side. I only commented the DCL stuff. I copied it from my EEC-IV SD48b KID2 v8 351w E4OD(Canadian). I've been disassembling it for about 3 years. The DCL code is near identical.
I'll push my documentation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants