I made some progress on the data side of things. My biggest peeve with the car right now is it runs rich at cruising loads. The new wideband is part of the solution, but before I start tuning, I want to trust that the ECU is seeing accurate AFR.
The new wideband (AEM X-Series / LSU 4.9) doesn't always agree with the old wideband (Old AEM gauge / LSU 4.2). Sometimes it's like 1/2 a point different (idle mostly it seems; WOT is within .1 - .2). If they are different, the old one is richer. So whats the deal? Which is telling the truth: Old or new?
Some possibilities
1. They both are right. The old wideband is in the front bank and the new one is in the rear bank. Maybe the front bank generally runs richer?
2. The old sensor is on its way out. I don't know how old it is, and I'm not sure how they behave when they are going bad. It's not _that_ different tho...
3. Something is slightly weird where the ECU is reading the new sensor's analog out. Either it needs some gain adjust or my translation from linear func -> AEM software's table is off.
I'll have more info on the first two when I replace the front-bank sensor and gauge with another new LSU 4.9 controller. So the effort here was about validating the analog out in the 3rd possible issue.
AEM wideband gauges of old had this feature where you could unplug the o2 sensor and the gauge's analog out would read 14.7, or like 2.37 volts. So in the EMS software, you could adjust the gain or scale the table to make sure it read 14.7 AFR.
The new X-series controllers don't do this, an unplugged sensor is an error. How should I validate that the ECU is seeing the correct voltage? I emailed AEM and they were no help.
Going digital
I realized a couple things: The car has a CAN bus now! The X-Series controllers output CAN messages! Sweet!
After realizing this, the goal for verification was to get the controller's CAN messages onto the bus along with the ECU's, then read both the ECU's AFR out and the controller's AFR out at the same time. If they agree, yay, if not, adjust the gain value in the software til they agree.
The easiest way to read the CAN bus for both things turned out to be the RealDash app. An added benefit here was testing RealDash to see if it's a legit option for a navpod setup. Can I get it working at all? Whats the best way to permanently connect a device to the CAN bus? Are updates fast? How do I build and attach data to a custom gauge? Can I really do whatever I want with it CAN-wise?
There are a couple ways to connect the CAN bus to a device. Seems like most common is an OBDLink MX+ device. It's bluetooth, but that seemed unnecessary for a permanent setup. I emailed RealDash and they pointed me to the SeeedStudio CAN analyzer. It's small, $24, and connects via USB.
I ran the CAN wires into the engine bay (white and blue wires) and to the new controller. Originally I was going to do a temporary setup, but in the end decided to permanently wire it in. You can never have too much data, eh? Also the controller's CAN out has a couple flags indicating any controller or sensor errors which seems reasonable to show on the navpod.
The SeeedStudio analyzer all wired in:
I hooked it up to a windows laptop, fiddled with some settings on the analyzer's software, and .... data! You can see the sensor is warming up as bytes 0 & 1 show as FF...
I wrote up a custom XML file for the controller's CAN messages, loaded it into RealDash, then attached my new data points to a gauge in one of their example dashes:
It works! The ECU (left AFR) matches the wideband CAN out (right AFR). You can see it follows even after a throttle blip. The controller's digital out seems to respond a little faster, but probably only by a couple milliseconds.
Now I'm ready to replace the old gauge with another controller...
The new wideband (AEM X-Series / LSU 4.9) doesn't always agree with the old wideband (Old AEM gauge / LSU 4.2). Sometimes it's like 1/2 a point different (idle mostly it seems; WOT is within .1 - .2). If they are different, the old one is richer. So whats the deal? Which is telling the truth: Old or new?
Some possibilities
1. They both are right. The old wideband is in the front bank and the new one is in the rear bank. Maybe the front bank generally runs richer?
2. The old sensor is on its way out. I don't know how old it is, and I'm not sure how they behave when they are going bad. It's not _that_ different tho...
3. Something is slightly weird where the ECU is reading the new sensor's analog out. Either it needs some gain adjust or my translation from linear func -> AEM software's table is off.
I'll have more info on the first two when I replace the front-bank sensor and gauge with another new LSU 4.9 controller. So the effort here was about validating the analog out in the 3rd possible issue.
AEM wideband gauges of old had this feature where you could unplug the o2 sensor and the gauge's analog out would read 14.7, or like 2.37 volts. So in the EMS software, you could adjust the gain or scale the table to make sure it read 14.7 AFR.
The new X-series controllers don't do this, an unplugged sensor is an error. How should I validate that the ECU is seeing the correct voltage? I emailed AEM and they were no help.
Going digital
I realized a couple things: The car has a CAN bus now! The X-Series controllers output CAN messages! Sweet!
After realizing this, the goal for verification was to get the controller's CAN messages onto the bus along with the ECU's, then read both the ECU's AFR out and the controller's AFR out at the same time. If they agree, yay, if not, adjust the gain value in the software til they agree.
The easiest way to read the CAN bus for both things turned out to be the RealDash app. An added benefit here was testing RealDash to see if it's a legit option for a navpod setup. Can I get it working at all? Whats the best way to permanently connect a device to the CAN bus? Are updates fast? How do I build and attach data to a custom gauge? Can I really do whatever I want with it CAN-wise?
There are a couple ways to connect the CAN bus to a device. Seems like most common is an OBDLink MX+ device. It's bluetooth, but that seemed unnecessary for a permanent setup. I emailed RealDash and they pointed me to the SeeedStudio CAN analyzer. It's small, $24, and connects via USB.
I ran the CAN wires into the engine bay (white and blue wires) and to the new controller. Originally I was going to do a temporary setup, but in the end decided to permanently wire it in. You can never have too much data, eh? Also the controller's CAN out has a couple flags indicating any controller or sensor errors which seems reasonable to show on the navpod.
The SeeedStudio analyzer all wired in:
I hooked it up to a windows laptop, fiddled with some settings on the analyzer's software, and .... data! You can see the sensor is warming up as bytes 0 & 1 show as FF...
I wrote up a custom XML file for the controller's CAN messages, loaded it into RealDash, then attached my new data points to a gauge in one of their example dashes:
It works! The ECU (left AFR) matches the wideband CAN out (right AFR). You can see it follows even after a throttle blip. The controller's digital out seems to respond a little faster, but probably only by a couple milliseconds.
Now I'm ready to replace the old gauge with another controller...