View Single Post
Old 05-28-2007, 12:13 PM
b3lha's Avatar
b3lha b3lha is offline
Phil & Belha
Join Date: Aug 2001
Location: Alcyone Limited, Buckinghamshire UK
Posts: 2,671
code apologies once more.

Originally Posted by Nomake Wan
When I first read about your stuff on the POWER mode, this was the first thing which came to mind. What signal is sent when that switch is in the on or off position? Does it have some sort of override to the code you've been messing with up 'til now? Or is it sent to a separate part of the TCU entirely?

I'm just curious... wondering if duplicating the signal of the power switch on a USDM car would even work. I know we don't have a switch, but maybe we'll get lucky and our TCU will still accept the signal...

Hmm. Excellent work, though. It's been very cool watching you figure these things out. Hopefully we'll get EDM and USDM applications once you're done fiddling with your Japanese car, hahaha.
The power switch on JDM models connects pin a4 of the TCU to ground. That's pin 4 of the 20 pin connector known as B66 on the diagram. On UK cars, this pin is used for the Economy switch. The pin is present on USDM cars but there is no switch connected to it.

When you push the power button, bit 6 of memory location 0011 in the TCU changes from 0 to 1. That's all, everything else is done in software. The software handles it like this:
e77f 13 11 40 04 brclr (0x0011), 0x40, [0xE787] // if powerswitch=0 goto e787
e783 c6 02       ldab 0x02                      // set b=2
e785 20 55       bra [0xE7DC]                   // goto e7dc
e7dc d7 5a       stab (0x005A)                  // set current map=b
e7de 39          rts                            // exit
The first line checks bit 6 of location 0011. Remember, this signifies whether the power button is on. If the bit is 0 then it goes to e787 and does the normal processing described earlier. Otherwise it sets the current map variable to 2 and exits from the subroutine.

This current map variable at location 005A governs which shift map is used. If it is greater than 0 then the TCU will use the power shift map instead of the normal shift map.

IF the USDM TCU contains the above lines of code (it might well do) then connecting a switch to pin a4 of the TCU will allow you to switch power mode on and off just like a JDM model. Otherwise, you're stuck with the timer frig method that I just invented or the TPS trick from Terry McLane's original SVX FAQ. The only way to know for sure is for somebody either to wire up a switch and try it, or download the code from a USDM TCU so I can have a look at it. Once I've progressed things a bit further, I'll try and get my hands on a USDM TCU.
Subaru ECU and TCU Website
1992 Alcyone SVX Version L
1992 Alcyone SVX Version L
1994 Alcyone SVX S40-II
2004 Subaru Legacy 2.5 SE Sports Tourer
1996 Subaru Legacy 2.2 GX Wagon
1988 Subaru Justy J12 SL-II

Last edited by b3lha; 05-28-2007 at 04:49 PM.
Reply With Quote