mcneil
Veteran Member
The last month has been transmission tuning and working on the communication for the gauges.
I was having what I thought to be transmission slip, and near-impossibility of getting out of first gear. To avoid damaging the trans while I diagnosed it, I put the rear axle up on stands and that's where the jeep sat since November. First thing was sort out the VSS issue, which had me locked into 1st gear unless I shifted manually on the laptop.
The problem there was nothing electrical - a burr in the 5/8-18 hole for the VSS meant that while I thought I had bottomed the sensor and backed off 1/4 turn, it was still about an inch away from the tone wheel. I chased the thread and spun that sensor in to the proper location, and it worked. Still facing some noise issues, I disconnected the line pressure sensor from the harness (shared with the VSS). I hooked a multimeter up to the pressure sensor for safety - anything under 50 psi can damage the clutches in less than a minute.
The problem then was that the transmission controller didn't know RPM, so it couldn't measure slip. I was sure that running 3800 rpm at 15 mph, something was wrong. To figure it out, I had the Arduino send the RPM from CAN to serial, then compared with the TunerStudioMS (the TCU tuning software) reported VSS. When I saw that I was consistently "slipping" by a factor of about 2.5, I had my facepalm moment. I had screwed up the input file, and the TCU was applying the 2.62:1 4WD low ratio at all times. Once I changed that variable, it was off and running. I got it tuned to shift nicely up to about 90 mph. It had RPM to go faster, but remember, rear wheels were up on stands. The 10 year old flat-spotted mud terrains are far from balanced; it felt like any faster and I'd shake it off the stands. The engine vibe was pretty mild at that point, but I need to do something about noise insulation.. still too loud.
Also in this whole process, I revised how the communication was setup between the TCU, ECM, and my dashboard Arduino.
Below diagram explains it:
It may seem a little convoluted: the TCU reads a sensor, turns it into a signal to send to the ECM, who then sends it to the Arduino over CAN. The VW EDC15 is expecting a 0-5V signal where Hz= speed in km/hr. In the Jetta/Golf setup, the Instrument cluster would read the VSS, apply conditioning and scaling, then send to the ECM. I know the 0-5V signal works because I can do it bit banging an Arduino. I would have the Arduino read the speedo signal from the Mshift, but the ECM needs road speed to make all the OBDII features work. If I tried to send speed over the CAN bus from the Arduino, the ECM would just ignore it.
I was having what I thought to be transmission slip, and near-impossibility of getting out of first gear. To avoid damaging the trans while I diagnosed it, I put the rear axle up on stands and that's where the jeep sat since November. First thing was sort out the VSS issue, which had me locked into 1st gear unless I shifted manually on the laptop.
The problem there was nothing electrical - a burr in the 5/8-18 hole for the VSS meant that while I thought I had bottomed the sensor and backed off 1/4 turn, it was still about an inch away from the tone wheel. I chased the thread and spun that sensor in to the proper location, and it worked. Still facing some noise issues, I disconnected the line pressure sensor from the harness (shared with the VSS). I hooked a multimeter up to the pressure sensor for safety - anything under 50 psi can damage the clutches in less than a minute.
The problem then was that the transmission controller didn't know RPM, so it couldn't measure slip. I was sure that running 3800 rpm at 15 mph, something was wrong. To figure it out, I had the Arduino send the RPM from CAN to serial, then compared with the TunerStudioMS (the TCU tuning software) reported VSS. When I saw that I was consistently "slipping" by a factor of about 2.5, I had my facepalm moment. I had screwed up the input file, and the TCU was applying the 2.62:1 4WD low ratio at all times. Once I changed that variable, it was off and running. I got it tuned to shift nicely up to about 90 mph. It had RPM to go faster, but remember, rear wheels were up on stands. The 10 year old flat-spotted mud terrains are far from balanced; it felt like any faster and I'd shake it off the stands. The engine vibe was pretty mild at that point, but I need to do something about noise insulation.. still too loud.
Also in this whole process, I revised how the communication was setup between the TCU, ECM, and my dashboard Arduino.
Below diagram explains it:

It may seem a little convoluted: the TCU reads a sensor, turns it into a signal to send to the ECM, who then sends it to the Arduino over CAN. The VW EDC15 is expecting a 0-5V signal where Hz= speed in km/hr. In the Jetta/Golf setup, the Instrument cluster would read the VSS, apply conditioning and scaling, then send to the ECM. I know the 0-5V signal works because I can do it bit banging an Arduino. I would have the Arduino read the speedo signal from the Mshift, but the ECM needs road speed to make all the OBDII features work. If I tried to send speed over the CAN bus from the Arduino, the ECM would just ignore it.