Jump to content

AEM X series CAN setup


Michal

Recommended Posts

Hi, so I've read many pages about this topic and by now I feel quite dumb to ask again, but I can't seem to get it to work in my case. I have an X series inline wideband 30-0310 connected to a G4X CAN 2. I use a Link CAN cable with 4 pin DTM connector and wire it like drawn in this diagram:

https://drive.google.com/file/d/1EvTB879acwCV6LzePVelw-yqbXJ_ChLU/view?usp=drive_link

Because of the voltmeter readnigs, I guess that it is wired properly, as the values seem reasonable enough.

In the CAN 2 and in the channel settings on my ECU I set it up according to the users manual: 500kbps, extended format, decimal ID 384.

https://drive.google.com/file/d/13ES6ycWyHEFIUEjZFiIHPS_sSEuCDWLb/view?usp=drive_link

From what I read in the PCLink help, I set up my Lambda 1 source to be CAN An 1 and I set the calibration to X series.

In the stream settings, I used the "Load frame" option and loaded the X series template. I changed the parameter to CAN An 1 and based on another thread about this topic here in the forum, I took the advice that the Link lambda resolution is 0,001 and the X series has 0,0001. I set up the divider to 10 with hope, that it will work, but it doesn't. Pictures of the settings:

https://drive.google.com/file/d/13EeNwjdblph919EaOGzckukcd2pJJuqO/view?usp=drive_link

https://drive.google.com/file/d/13K2Pa8CLU7z07Q131zfVMcAOFb97edM6/view?usp=drive_link

This is basically a cold start tuning. I allready got the engine to idle for a while, but I get no lambda readings, only the error value, so I now only test it with the "Run when stalled" option.

Any suggestions where I might have gone wrong would be appreciated.

Mike

Link to comment
Share on other sites

@keizsr's config matches my working X-Series config @Michal.

Change your 'Frame 1' CAN parameter to Lambda 1 and add the divider of 10000 like he has:
image.png.16e7dceed7da21ad03d436e20a7d203e.png

And your Lambda1 input needs to be 'Link CAN' same as his:
image.png.3a2adced95d491a7f6bb64c2163df48a.png

 

Not sure that secondary 120 Ohm resistor needs to exist - the ECU should have one inbuilt - I only added a resistor at the X-Series end of my CAN wiring.

image.thumb.png.e205f1d1b2eb6511bcf58af707be66b3.png

image.thumb.png.e6a3cb5c62a4c11671e8ea35314b5292.png

Link to comment
Share on other sites

On 5/11/2024 at 10:06 PM, Michal said:

From what I read in the PCLink help, I set up my Lambda 1 source to be CAN An 1 and I set the calibration to X series.

In the stream settings, I used the "Load frame" option and loaded the X series template. I changed the parameter to CAN An 1 and based on another thread about this topic here in the forum, I took the advice that the Link lambda resolution is 0,001 and the X series has 0,0001. I set up the divider to 10 with hope, that it will work, but it doesn't.

This is wrong.  Go back to your stream 1, delete the frame, load the x-series template as is, you dont need to change anything. 

Then go to Analog inputs>lambda 1 and set sensor control to Link CAN.    

Link to comment
Share on other sites

Hello, there are multiple AEM canids. Have you tried them?

link help can-lamda

Set the CAN ID to suit the ID selected in the gauge. If the gauge is set to ID 1, enter CAN ID 384, for gauge ID 2 enter 385, ID3 = 386, etc

Please check the manual for AEM 30-0310

Link to comment
Share on other sites

Hey everyone and thanks for your replies. @keizsr I am currently using only one device and it's not a gauge just a controler - but the CAN setup should be the same. The setting you suggested and everyone else as well, I tried that the first time, as it seemed the most logical, but as it didn't work, I tried what I posted here.

I somehow overlooked, that G4X has a terminating resistor, so today I rewired the CAN, so that the ECU is at the end of the bus (instead of the second 120Ohm resistor) and then changed the settings in the ECU as you all suggested. Loaded the X series template without any changes and set up the Lambda 1 to CAN Link.

But even now, when I turn on the "Run when stalled" option, it still shows the error value 3.00 I had set previously. Any guess why? Or what value does the sensor show, when the engine is not running? Do I need to recalibrate it or something?

Thanks for any help.

Link to comment
Share on other sites

2 hours ago, Michal said:

But even now, when I turn on the "Run when stalled" option,

This option is only for Link controllers, the AEM runs anytime it has power, it has no ability to turn off the heater.  

Please attach a copy of your tune and a PC log.  

Link to comment
Share on other sites

Do you have any suggestions, where do I start my troubleshooting to get rid of this error? Any advice would be much appreciated, thanks

On 5/13/2024 at 11:57 PM, Adamw said:

Your map is reporting bus errors on CAN 2.  What ecu do you have?

 

Link to comment
Share on other sites

Looking at your map again I noticed the CAN errors being reported were transmit errors, not receive errors as you would expect.  I loaded your map into a live ecu on the bench and got the same transmit errors.  The only logic that I could fit to that would be "Lambda 1" has seperate receive and transmit runtimes so perhaps you manually selected the lambda 1 transmit runtime rather than just loading the AEM .lcs template which has the correct receive runtime?  

Anyway, by deleting that frame and loading the AEM template again your map is not reporting CAN errors for me now.  So try loading the attached updated map in.  

Startup tune 240513 CAN reset up.pclx

Link to comment
Share on other sites

11 hours ago, Adamw said:

Looking at your map again I noticed the CAN errors being reported were transmit errors, not receive errors as you would expect.  I loaded your map into a live ecu on the bench and got the same transmit errors.  The only logic that I could fit to that would be "Lambda 1" has seperate receive and transmit runtimes so perhaps you manually selected the lambda 1 transmit runtime rather than just loading the AEM .lcs template which has the correct receive runtime?  

Anyway, by deleting that frame and loading the AEM template again your map is not reporting CAN errors for me now.  So try loading the attached updated map in.  

Startup tune 240513 CAN reset up.pclx 476.07 kB · 1 download

When I open your file it doesn't show the transmit errors you mention, but when I connect the ECU, I see that it shows Bus Warning, Error Passive and Transmit Error Counter is 128... Even after I download your file into the ECU and store it, it shows again, the same errors as before. I also tried to delete the stream and just open the AEM.lcs template as you say you did amd it shows the same thing. So did I wire it wrong?

17159673865468735118186910780217.jpg

Link to comment
Share on other sites

  • 3 weeks later...

Hey guys, I let it rest for a bit, vent on a vacation and when I got back, I redid the wiring from the top, no error reports now and when I turn the engine on the sensor works just fine. Thanks all of you for your feedback and input 🙏🏻 the final problem was in a faulty wire...

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...