Installing MS3Pro on 2ZZ-GE Toyota Celica 2002

Parallel installation.
The factory ECU transmits engine temperature data to the dashboard using the digital Toyota BEAN bus. The request to turn on the air conditioner compressor is sent by the body control unit to the engine control unit via the same bus. So I decided to leave the stock ECU in place and install the Megasquirt in parallel. Air conditioning, cooling fans and dashboard controls remain on the factory ECU, the rest is controlled by Megasquirt.

Double ECU box.
In the previous post, I wrote that I moved the battery to the trunk and now there is enough space under the hood to install 2 ECUs. The factory ECU box is too small, so I made a sealed aluminum box with dimensions of 170*225*220 mm and placed it instead of the battery on a factory plastic battery tray. The holes for the factory rubber wiring grommets are 45 mm. I drilled them with a stage drill. Additional connections are made through cylindrical sealed connectors. The large connector connects additional wiring under the hood, and the small connector connects the wiring to the passenger compartment (serial port). The vacuum to the Megasquirt MAP sensor comes from a small fitting on the side of the 2ZZ-GE intake manifold through a 4 mm bulkhead fitting. As a vacuum line, I used a silicone hose for a vacuum advance corrector for carbureted cars. There is also a ground connection point at the bottom of the box wall. There was not enough space for the metal battery bracket, so a luggage strap was used to secure the box, which was passed from the bottom of the metal platform for the battery.
Inside the box, the MS3Pro is mounted with long bolts to the aluminum wall and presses the factory ECU. This simple solution turned out to be good enough, both computers are firmly fixed.

Double ECU wiring, connections, sensors.
As a base for my wiring splitter, I took the motor harness extension from AutoSportWiring and the wiring that came with the MS3Pro. Some of the signals go directly to the factory ECU, some go to Megasquirt, and some of the signals go to both ECUs.

The factory ECU controls:

  • Cooling fans
  • Air conditioner compressor clutch
  • Temperature on the dashboard (via Toyota BEAN bus)
  • RPM gauge on the dashboard
  • Auxiliary systems (EVAP purge, etc.)

MS3Pro controls:

  • Fuel injectors
  • Ignition coils
  • IAC valve (PWM out 1)
  • VVT solenoid (PWM out 2)
  • VVTL solenoid (Hi-current 1)
  • Check Engine light on the dashboard (Hi-current 3)

The factory ECU sensors:

  • Factory coolant temperature sensor
  • Air conditioner pressure sensor
  • Crank sensor
  • Cam sensor
  • Auxiliary systems sensors (EVAP vapor pressure sensor, etc.)

MS3Pro sensors:

  • Separate coolant temperature sensor
  • IAT sensor
  • Crank sensor
  • Cam sensor
  • Wideband O2 sensor (replaces the factory narrowband sensor)
  • Knock sensor
  • TPS
  • Speed sensor (Digital freq in 2)
  • Air conditioner clutch engage (Digital switched in 3)

Megasquirt uses all factory sensors except the engine temperature sensor and wideband O2 sensor. You cannot directly connect 2 ECUs to the temperature sensor, because the readings will be incorrect. Therefore, the factory ECU remains connected to the factory sensor, and Megasquirt is connected to a separate GM style temperature sensor installed in the upper radiator hose through a special adapter from LCE Performance. The adapter is 35 mm (1 3/8 inch) in diameter and has a 3/8 NPT thread for the sensor.

The factory ECU needs to see the engine RPM, so you need to connect the Crank VR sensor. If this is not done, then the factory ECU will think that the engine is not running and will not engage the air conditioning compressor clutch. VR sensors can be connected directly to both ECUs.

I had a problem with the MS3Pro sync loss which was solved by installing a 250 ohm resistor between Crank+ and Crank-. In addition, you need to make sure that all ground connections have good contact, and that the rectifier bridge and alternator voltage regulator are in good condition. One of the diodes in my alternator was faulty and this was not a problem with the factory ECU, but the MS3Pro would lose sync at high RPM for this reason.

Wiring connection.

The table shows the outputs of the factory wiring and connection points to the Megasquirt or to both ECUs at once. If the wiring output is not listed in the table, then it remains connected only to the factory ECU.

The factory ECU does not turn off the EFI power relay immediately after turning off the ignition. This behavior is confusing to Megasquirt and does not allow a guaranteed restart of the controller (quickly turn the ignition off and on).
In addition, constant +12v are supplied to the factory ECU to save adaptations, idle calibrations, etc. We do not need this, because the engine is now operated by Megasquirt.

In addition to the table:

  • IGN SOURCE (A8) from the engine wiring side connect to MREL (B21) from the engine wiring side (so that the EFI relay turns on by ignition, and not by a signal from the factory ECU)
  • MREL (B21) from the side of the factory ECU disconnect from everything
  • BATT (A1) from the side of the factory ECU, connect to +B (A16) from the engine wiring side (so that “constant” power to the factory ECU is supplied only when the ignition is on)
  • BATT (A1) from the engine wiring side disconnect from everything

This table is for a 2002 USA 2ZZ-GE Celica with cable throttle and 2-wire knock sensor.
Earlier modifications use a 1-wire knock sensor, while later ones use an electronic throttle control and in these cases the connections will be different.
You can use this document to make the necessary changes:
Toyota Celica ECU pinout for years 2000-2005 pdf document

Factory engine wiring output2ZZ factory ECUMS3ProDescription
D1grey 1Injector #1
D2grey 2Injector #2
D3grey 3Injector #3
D4grey 4Injector #4
D10grey 27Spark #1
D11grey 26Spark #2
D12grey 25Spark #3
D13grey 15Spark #4
D18white 14IAC valve
D23white 29VVT control ground
D24white 35VVT +12v
D27white 31knock signal
D28white 18knock ground
Factory engine wiring output2ZZ factory ECUMS3ProDescription
C6white 1VVTL control ground
C7white 35VVTL +12v
С12white 25O2 sensor signal pre cat
C15C15white 26Cam+
C16C16white 6Crank+
C18C18white 18sensor ground
C22white 10IAT
C23white 9TPS
C24C24white 15
white 27
Cam- and Crank- common ground
Factory engine wiring output2ZZ factory ECUMS3ProDescription
B22B22grey 17speed signal
Factory engine wiring output2ZZ factory ECUMS3ProDescription
A3white 28fuel pump ground
A12A12grey 29A/C clutch control ground
A15white 5CEL control ground
A16A16white 35EFI +12v power
2002 Toyota Celica dual-ECU harness connections

Wideband O2 sensor.
I have connected the wideband oxygen sensor controller via factory wiring. On the left at the feet on the passenger side under the carpet are 2 connectors of the factory narrowband oxygen sensors.

O2 sensors connectors location

Cut off the wires from the pre-cat narrowband sensor after the connector and connect +12v power, sensors ground and O2 signal wire to the wideband controller in accordance with the diagram. Heater ground is not used. If the controller has a separate power ground wire, it must be connected separately directly to the body. Do not connect it to sensors ground due to potential noise problems.
On the ECU side, the O2 signal wire must be disconnected from the factory ECU and connected to the Megasquirt.

Factory narrowband O2 sensor connection
Wideband O2 modification

The wideband sensor is screwed in instead of the narrowband one. They have the same thread size M18x1.5 . Wiring is routed through a hole in the body using a rubber grommet from a narrowband sensor and connected to the controller. There is enough room next to the connectors to fit a small wideband controller.
The second sensor downstream of the catalytic converter is no longer needed and can be removed. After that, plug the hole in the exhaust system and the hole in the body.

MS3Pro 2ZZ-GE basemap.
This map was made by me for my almost stock engine. The only major difference is the use of low compression pistons because turbo is planned in the future. If you will be using this map on a stock compression engine, pay particular attention to the knock sensor reading and be sure to use the highest octane gas available in your area for the first start and test drive (but do not use ethanol or E85). Start off at idle, low revs and lightly pressing the throttle, then increase the load while monitoring knock and AFR. If necessary, edit the fuel table manually or using autotune.
This map is good enough to get the engine started and get out of the garage (and, in my case, for driving on the streets) but it has some simplifications. For example, the VVT ​​system in this map operates in on-off mode. Engine behavior will likely improve if you tune it in PID mode as the factory ECU controls it. Also, all tuning took place at +20 degrees Celsius, so the winter start and warm-up were not checked.
Warning: Use at your own risk!

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

Create your website with
Get started
%d bloggers like this: