This car has an intermittent no start condition with the security light flashing. Checked codes and found code B2960 stored. The code is for a valid but incorrect passkey signal. Now there are several different things that can cause this code but the most common is a failing passkey sensor which is part of the ignition tumbler kit. Some of the others are a faulty Ignition Switch, Body Control Computer and poor connections in the wiring harness. Because this problem is usually so intermittent there is not much real testing you can do that will result in a clear answer. I have found the only practical thing to do is to look at passkey voltage with a Tech 2 and gently wiggle the wiring some at the ignition switch and the BCM to see if there is any problem with the harness. Also look at passkey voltage while switching the key off and on. It should be about 5 volts when you initially switch the key on and then drop to a value higher than 0 and lower than 5 volts. Normally I see anywhere from .78 to 3.9 volts. If I see no other problems I always change the ignition tumbler kit and install a new ignition switch as well. If one is failing the other will not be far behind. I have seen plenty of these ignition switches fail without a passkey fault so I replace both as a rule.
With that out of the way this is the what you have to do to change the switch. Drop the tilt steering column to the full tilt down position. Remove both of the dash end caps and remove a screw from each end. Start pulling the trim panel from either end until the clips release. If it does not seem to want to release check for any extra screws that may be retaining the panel. If none are found pull harder but please be careful as panels can break.
After the trim panel is released you will have to disconnect the switches. The hazard switch needs the center tab depressed while you pull the harness connector from the switch.
The Traction control switch needs the center tab lifted slightly while the harness connector is pulled from the switch.
You will also need to remove the lower panels. There and a coulpe of retaining screws and a retaining pin or two. After all retainers are removed pull the cover towards the driver’s seat.
Disconnect the trunk release switch if present and now you will find a metal panel.
Remove the attaching screws and place aside.
Next you will need to remove the two 10mm headed screws that hold the switch assembly to the dash.
Next pull the switch down through the opening in the bottom of the dash.
With the key off release the locking tabs and pull the two main harnesses from the ignition switch. Make sure the key is off, it will save programming time.
Next turn the key on and depress the locking tab for the shifter interlock cable and pull the cable out of the switch.
Next depress the metal locking pin that hold the tumbler and sensor assembly into the ignition switch, rotate the key and pull the assembly out of the ignition switch.
Disconnect the sensor wiring harness by depressing the two side locking tabs and pull from the switch.
Install the new ignition switch and then install the new tumbler and sensor assembly.
I have another post for assembly of the tumbler kit. Please click here to see that post.
After the ignition switch and tumbler assembly are back together turn the key on and reinstall the shifter interlock cable. Then Make Sure The Key Is Off and Then Connect The Two Main Harness Connectors. Again this saves programming or relearn time. Now attempt to start the engine. Do Not be surprised if it does not start. Leave The Key ON and Wait about ten minutes or until the security light stops flashing. You may have to repeat this process up to four times in all before the system will relearn the new sensor value. The closer the new sensor value is to the original the quicker it will relearn. On some rare occasions you will have to use a Tech 2 and reprogramming software to teach the system the new value.