Introduction: Add a Door Lock Keyfob
My Son's 2000 Monte Carlo had electric locks but did not have the fob option installed from the factory.
We saw a 4 button remote on Adafruit for $6.95 and a receiver (momentary type) for $4.95, so we set off to install the handy feature into the car lock system. (We chose the 4 button because we also wanted to open the electric trunk latch in a future project.)
Step 1: Figure Out How the Electric Locks Work
We removed the door panel on the drivers side to look at the lock switch. We found 6 wires on the switch.(complicated!) .Then we did an internet search to find that the electric locks were activated by grounding the control wire(lock) or grounding the control wire through a 470 ohm resistor(unlock). Using an ohm meter we measured all the wires to the car ground and found that most of them measured 0 ohms (ground). Then we measured resistance on the switch disconnected from the wiring harness to figure out which one had a 470 ohm resistance. There was one wire that was orange/black so we suspected that this would be the control wire. We jumpered a 470 ohm resistor from ground to the orange/black wire (with the switch removed) and the lock responded! Then we grounded the control wire and the doors locked. So now we knew what wires to connect up....yay!
Step 2: Now We Needed to Find Some "always On" Power
At first we thought we would run power from under the dash through the rubber wire harness "pipe" near the door hinge---Way too painful! Then we realized that the door already had electric mirrors that would work with the key out--YAY! So we found a source for constant power already in the door (to provide power for our key fob receiver)
Step 3: Receiver and Transmitter(fob)
On the receiver I designated GND as Pin 1. and +5v as pin 2 etc... Adafruit says that the module will work with a supply range of +5v to +10v. We tried it on the bench and they were right (but all the parts appear to be capable of up to +15v) I suspect that the RF receiver portion was the limiting factor for 10volts max. Well the car when on produces 14v and 12v when the key is out. We will need to regulate down the car supply voltage to run our receiver...
Output current drive was my next question...I needed to drive a couple of switches to provide lock/unlock signals.
Here is a link to the part on the receiver... http://www.goldmine-elec.com/pdf/PT2272.pdf
At the 8.36v volts supply we planed on for our circuit ---the part will source/sink 6/5 ma
So I planned to drive a solid state "relay" to avoid the hoggish coil voltage of a regular relay. (See the data sheet link in the next step). The Solid state relay has a low power input led that needs a scant 5ma to light up ---Perfect!
So for those that don't know the Solid state relay is actually an optocoupler input. This means that the led lights up inside the part and is detected by a little teensie transistor switch which shorts when light is present.
Next we found that when we pushed button A on the key fob D3 on the receiver goes high (not what I expected). You might think that button A = D0, B = D1,C = D2, D = D3, But it was actually A = D3, B = D2,C = D1, D = D0. Then lastly Adafruit warns us that the receiver/transmitter are not addressable so when you press button A all receivers will respond. This is not actually true. There are some solder pads on the back of both tx/rx boards (8 sets of pads) you can set a code by shorting the center pads to high or low (and matching the code on the other board). Just seemed right to secure the link to this car since it was the locks...
Step 4: Schematic
So here is a schematic...
Here is a data sheet for the regulator (I used a TO-92 package)http://www.fairchildsemi.com/ds/LM/LM317L.pdf
Total max current measured out of our regulator power supply was ~5ma
Here is the solid state relay data sheet http://pewa.panasonic.com/assets/pcsd/catalog/aqw-...
I picked an adjustable regulator because it was what I had and so that I could pick a voltage output near the receiver board 10v max input. Resistors ended up producing 8.3v into the receiver (this may seem like a random voltage but any voltage 5v to 10v will work) . Here is the equation I used to Adjust the output
Vout = (1.24*(1+(R4/R3)))
I set the resistors on the receiver board output to provide 1.5v @5ma into the solid state relay. (don't forget that a high on the RX module output will be approx 8.3v.) Here is how I calculated the resistor values...
8.3v (supply) - 1.5v (solid state relay input voltage) = 6.8v
6.8v (voltage dropped across resistor) divided by 5ma (Solid state relay current) = 1360 ohms
I wired the output "relays" so that if one was energized it would apply ground to the door lock control line while the other would provide a ground through the 470 ohm resistor.
We also measured the door lock control signal current to be approx 20 ma no problem for our solid state relays
I built the whole thing on perf board (see the front/back pictures)
Step 5: Next We Needed to Connect the Receiver and Mount It in the Door
Next We cut the lock switch control wire and connected the receiver board in parallel (So either the door switch or the fob could control the locks). Then we connected "always on" power from the mirrors to the new receiver along with ground (we need this power to be on with the ignition key out). We found a convenient space in the door to double stick (used a really good 3M foam tape) the circuit. We picked a spot that would not be inside the shielding metal of the door. The side mirror was made of plastic so we unraveled the antenna and made sure it was near the backside of this plastic side mirror (for good reception)
Step 6: Time to Test It!
The TX/RX worked great! We were getting approx 30 feet for reception distance.
So the price to do this was pretty inexpensive...(I think)
Adafruit 4 button key fob $6.95
Adafruit momentary type receiver $4.95
Solid state relay $5.79
Misc resistors/caps/wire/perf board (free in my junk box)