Jump to content

6 x Wide Band Sensor Setup


Timboj

Recommended Posts

Hey guys, doing a little planning for my build (12:1 CR, S/C, E85). I already have a Haltech WB2 monitoring the two banks at the collectors.

I was initially going to install a Haltech TCA8, to fine tune/monitor individual cylinders, but I realised for about the same price as the amplifier and sensors, I could just purchase 2 additional WB2s and run one sensor per cylinder (and blank the collector bungs).

I'm just wondering how this looks in PC Link? In this configuration, for CLL do you pick two cylinders to operate from (including LTT) and then manually adjust individual cylinder trims? I suppose you could cycle through five sensors relative to cylinder one to determine the deltas?

Link to comment
Share on other sites

You wont be able to do individual cylinder lambda with the Haltech widebands as they will all have the same ID.  You will need different ID's on each lambda.  

Link to comment
Share on other sites

As in, one would need an additional 4 single-sensor (like the 125-1000) controllers? Or 6 single-sensor controllers to achieve this?

Link to comment
Share on other sites

The WB2 can only ever send out two unique IDs. No matter how many of them you try to plug in, still only the two IDs, can't be reprogrammed. Haltech is VERY limited currently in their CAN configurations.

You'll need additional controllers which can be programmed to send unique IDs via CAN. The Link CAN Lambda definitely can be programmed to be one of 8 IDs, so you could keep your current WB2, and add 4x more Link CAN modules.

Not sure whether other controllers like the AEM X-Series can be programmed with different IDs, or if they're just as limiting.

Link to comment
Share on other sites

Thanks for the clarification. For the price I'm definitely back to EGT instead.

I assume this (in the WB2 instructions) is being handled by the Haltech ECU then, and not by the controllers?

 

Screenshot_20240509-175024.png

Link to comment
Share on other sites

Ahh, yes, the good old Haltech "A", "B" choices.

So possibly it can be changed to one of 4 unique IDs, but you'll likely need a Haltech ECU and ESP/NSP software in order to make the change... without that, you're stuck with all of the units as "A".

Link to comment
Share on other sites

Haltech has confirmed the IDs are changed at the controller so will send unique IDs over CAN.

Could you explain the config in PC Link and/or share a map with a multi WB setup?

Is LTT confined to 2 sensors at a time?

Link to comment
Share on other sites

The Haltech WB's output an emulated Link CAN Lambda message and then their own proprietary message for use with Haltech ECU's.  As far as I know the "device ID" only applies to the Haltech messages and you cant change the ID's that the emulated Link lambda messages use.  

Link to comment
Share on other sites

Thanks for the clarification, Adam.

Would this endeavour be possible by manually configuring the streams using the Haltech broadcast data, rather than use the Link CAN emulation?
image.png.a319a22b058d3e2476b7a412b790ee98.png

Link to comment
Share on other sites

In theory yes, but I had a vague recollection they needed to be sent the calibration data every startup, but I havent touched one since way back when they were in an aluminium case so I might be mixing it up with some other device.  If you already have one we can try setting it up this way to see if it works before committing to more.  You would still need someone with a Haltech ecu to reprogram their ID's initially however.  

Link to comment
Share on other sites

Thanks for the support Adam. Yes I've had one running in my setup for a while.

Let me know what I need to do for manual setup and I'll jump on it.

The impression I got from Haltech is it's a permanent setting on the controller but I can confirm as well.

 

Link to comment
Share on other sites

Go to your CAN setup, change the Link CAN Lambda channel to "Receive User Stream **", and change ID to 688. So it will look something like below.

5m57twT.png

 

Then go to the Streams tab, click on the stream number that you have chosen above, then click load stream, load the .lcs file attached to this post.  It should look something like below with the stream file loaded.  

CfxgXq0.png

Apply those changes, do a store and cycle ign off/on then have a look if lambda 1 & 2 are reporting anything.  If not have a look at CAN AN10 to see if the diagnostic code gives any clues.  I have a vague feeling they may need an RPM signal from the ecu to start up, but dont have any info on that.  

Haltech WB2A Use ID 688.lcs

Link to comment
Share on other sites

It just occurred to me that Can AN 10 is configured to output the diagnostic codes... bit slow on the uptake.

Is there a way to apply a text conversion to the codes? Eg. 0 = Error, 1 = Low Battery Voltage etc..

Hypothetically, if I wanted to set up the following:image.png.e1027420fdb7b0acc90c9d7d1b58fb25.png

..I would add another frame to Stream 1, add another CAN AN x parameter, with a starting position of 4 and a frame size of 4? Does 'Rate' ever need to be configured or is that automatically detected?

Now in terms of setting up two additional controllers. Assuming I've had their internal IDs set to WB2B and WB2C, my understanding is I would configure 2 user streams with IDs 692 & 694 respectively, and then configure them with the same parameters as WB2A?

Link to comment
Share on other sites

Should I be taking a hint here? :lol:

I can leave the CAN config questions if that's a bit much. For now I'm mostly interested in how to convert the codes to text descriptions, if possible.

Link to comment
Share on other sites

On 5/21/2024 at 8:11 PM, Timboj said:

I would add another frame to Stream 1, add another CAN AN x parameter, with a starting position of 4 and a frame size of 4?

No, you will need a separate stream for each controller, so, a single frame in User stream 2, another frame in User stream 3. 

 

On 5/21/2024 at 8:11 PM, Timboj said:

Does 'Rate' ever need to be configured or is that automatically detected?

Not sure what you mean here, there is a bitrate setting for the entire bus, but that must already be set if you already have 1 device working.  There should be no transmit rate setting since you only receiving data. 

 

On 5/21/2024 at 8:11 PM, Timboj said:

Now in terms of setting up two additional controllers. Assuming I've had their internal IDs set to WB2B and WB2C, my understanding is I would configure 2 user streams with IDs 692 & 694 respectively

Correct.

 

On 5/21/2024 at 8:11 PM, Timboj said:

and then configure them with the same parameters as WB2A?

No, the streams would be set up with parameters Lambda 3,4,5,6, instead of lambda 1&2.  But otherwise the start pos, width, divider etc is the same for all. 

 

3 hours ago, Timboj said:

For now I'm mostly interested in how to convert the codes to text descriptions, if possible.

You cant do custom enumerations, you can record the raw value to a CAN DI like I set up in the original file and trip a warning if it is ever >0, but you will have to manually decode the status ennumeration if there is ever an error reported.

Link to comment
Share on other sites

Thanks.

Your first response was actually relating to the original/current controller. It's a separate set of enumerations in the same stream (see the spreadsheet I uploaded earlier). It was more just trying to understand how to decode the CAN settings. I can just try and see, all good.

Re "rate", I was referring to the below, given they specific both 20 and 10 Hz for different outputs.

image.png.1d058639b4015d2756a557bf7bd44334.png

 

Re, Lambda 3-6, yes, I was just referring to the CAN configuration, but thanks.

Is custom enumerations something I can request in the wishlist? Obviously not high demand, but seems like a straightforward/useful function to be able to convert them in software.

Link to comment
Share on other sites

43 minutes ago, Timboj said:

Your first response was actually relating to the original/current controller. It's a separate set of enumerations in the same stream (see the spreadsheet I uploaded earlier). It was more just trying to understand how to decode the CAN settings. I can just try and see, all good.

If you look at the ID on the left, those status enumerations are sent on completely different ID's to the lambda data (ie 0x2B3 instead of 0x2B1), so you need to set up a completely separate user stream to receive them.   In terms of understanding their "message position" notation, this is haltech specific and is described in one of their other documents.  0:7-0:4 means the data is between Byte 0, bit 7 and Byte 0, bit 4.  Byte 0 is the left most byte in the frame and bit 7 is the left most bit in the byte.  Be aware that there are several different conventions for bit and byte numbering, some start at 1, some start at 0, some count from left some count from right, some change depending if MSB or LSB etc, so usually best to check documentation whenever there is any.  This is why we use "start position" and the visual tool rather than start bit which can often be ambiguous.   The Haltech 0:7-0:4 would be start pos 0 with a width of 4 in Link notation. 

B6JcKoo.png

 

 

1 hour ago, Timboj said:

Is custom enumerations something I can request in the wishlist? Obviously not high demand, but seems like a straightforward/useful function to be able to convert them in software.

By all means you can add your request to the wishlist forum.  My initial feeling is it would be a quite unlikely one for a couple of reasons;  1)Text strings take a lot of memory and RAM is always something you want to preserve as much as possible.  2) Every single parameter added to the ecu adds to the payload that must be moved at high speed between the ECU and PC, everything we add slows down connection speed, PC Logging, searching runtime lists etc.  So with any additional feature, we need to carefully scrutinise the balance between the potential negative effects on performance with the usefulness or desire of the function - how many users have requested it etc.  I dont think that balance is in your favour for this one.  

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