Jump to content

CAN Wideband Setting Overflow error


Emil

Recommended Posts

Greetings,

I've just upgraded from a G4+ to a G4X and wanting to get the wide band controller to work the way it was working on G4+.

The external wide band controller is wired in to CAN2, mode=user defined, Channel1=Receive User Stream 1, mode=Receive user stream1. It has its own CAN ID and the format it normal.

This configuration is okay on G4+ however as soon as I add Frame 1 = Lambda on G4X, it throws setting overflow error 8. If I delete the frame, the error goes away.

The frame 1 is configured with Parameter=Lambda1, Start pos=8, width=16, unsinged, 1,1,0. Exact same configuration in G4+.

 

Is there a reason for the setting overflow error? Firmware version 6.16.15.

Thanks

Link to comment
Share on other sites

It works a bit different in G4X as pretty much any input or output can be via CAN.  So in your user CAN stream, change the received parameter to CAN Analog 1 or similar (not Lambda 1).

Then in the analog inputs section, go to lambda 1 and set the "Lambda sensor control" to CAN analog 1.  Leave calibration set to none I think.

Link to comment
Share on other sites

Thanks @Adamw, interestingly it created the frame with that without the setting overflow error.

Frame is now configured with Parameter=CAN Analogue 1, Start pos=8, width=16, unsigned, 1,1,0.

When I select Lambda1, sensor control to CAN Analogue 1, the setting overflow returns.

Where to from here? Thanks

Link to comment
Share on other sites

The help file seems to suggest what you mentioned but I guess there's still a problem in my config. I can see the values on CAN Analogue 1 on runtime values.

Generic CAN Wideband

To use a generic CAN Lambda device you will need to setup a custom CAN stream.

You can either set the relevant Lambda (1 or 2) to Link CAN and then have the CAN stream write directly to the runtime or have the CAN stream write to a CAN analog and select that CAN analog as the source and the appropriate calibration (None calibration will pass the value straight through).

Link to comment
Share on other sites

Ok, it looks like it needs to be scaled down to correct resolution as its received.  So set divider to 1000 should do it.

This is sending a value of "1100" via CAN.

j3QjSzm.png

 

 

Edit, added later:

I think I found where the problem is.  It does actually work when set to Link CAN the way it suggests in the help file note you attached, but it now needs a divider of 1000, it didnt in the G4+.  I will pass that on to engineering and either get them to fix it or fix the help file note.

So this set up will work too:

97UViwX.png

Link to comment
Share on other sites

I discussed this with Engineering the other day, the way the value is stored and used in the ecu has changed to make it more flexible so this is intended behavior and is just something I didnt come across until now.  Hopefully when the test calculator and help file is updated that will make it more clear.  This applies to all parameters that arent scaled 1:1 such as wheel speeds, the received data now needs to be scaled to make it match the final display value/units when received.

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...