Picture of RFID Car immobiliser with PIC12629
Ok, so there are heaps of immobilisers out there but with most of them, if someone has your keys, they have you car.  What good is a car alarm with 3+ point immobilisation if someone manages to get the keys and of course the alarm remote. 

This is a simple immobiliser based on a PIC12F629 and an ID-12 chip from innovations.  This can be built for about $50.

The ID-12 chip is/can be remotely mounted away from the main PCB, behind a panel with no external components viewable.

If someone carjacks you or something like that (after you have started the car) then if they stop the car, it will not be startable again.

Cheap and effective

I apologise for the slight lack in detail.  This was a project i done some time ago and it has been a long time since i touched it.  I have posted this on here as it was requested by a few people. I will be happy to answer questions though.

Step 1: The Schematic and how it works

Picture of The Schematic and how it works
The PIC and the ID-12 are powered by a 7805 5v regulator via some basic filtering caps.  The PIC is in an endless loop at this point, reading available data from the ID-12.  Once a card/tag is read, it compares the string with up to 10 tags it has in EEPROM.  If one matches, it activates the transistor which in turn activates the relay and the program stops.  If there is no match, it just keeps waiting for data. The bi-colour LED indicates the status.

Initial setup is done by shorting the jumper and then reading up to 10 tags in sequence. This overwrites each tag if it's alreading in eeprom.

I know the schematic is hard to read, click on the 'i' in the top left then click on the  'original file' link for an uncompressed version...
1-40 of 52Next »
Maniutek2 months ago

Hello, if she would be an opportunity obtain the source code ?

lachko973.5 months ago

Hello Andrew,

Thank you for sharing your project.

I made it with PIC12F629 and it works but I have a problem.

When hooked the D0 pin of the ID-12 chip to USB-TTL RS232 FT232RL converter RXpin the ID-12 gives every single time the same code : 010D69AE01CA for the particular rfid TAG

When I program the tag 10 times and remove the jumper and then read the tag again it works , the PIC activates the relay.

When i hook the FT232RL converter to the pin 2 of the PIC12f629 i see the debug information that you provide

Got : 313044363941453031F9

Rom has: 313044363941453031F9 *** Matched chip 1 ***

But after each power ON/OFF cycle the value I see form the same tag is changing

Got : 313044363941453031D8 //this value is different from the one in the eeprom and the relay is not powered. Then I switch the power and plug it back and receive different reading

Got : 313044363941453031F8 //again not the same value and the relay not operating

Got : 313044363941453031F9 // after many ON/OFF cycles (without additional learning by the jumper) I receive the same code that is stored in the eeprom and the relay is activated

With the same tag I see different reading in the last byte at pin 2 of the PIC.

Please do you know what causes this.

Again thank you for sharing your project.

Best regards.

Maniutek made it!1 year ago

Hi i have all times red light when programming, what PIC did you used?

I have 12f629

I/P (B3) 7UM


viking251 year ago

I can't get my programmer to accept just the HEX file for the 12F629. Any chance of getting the ASM file?

andrew_h (author)  viking251 year ago

I have added the ASM to the instructable.

Tried the ASM but it says I need the "IMMOBL~2.MAC" and the "PBPPIC14.LIB" files. Should they be standard files? I'm not really sure since I'm new-ish to programming PICs

very good
rjadhav13 years ago
andrew_h (author)  rjadhav13 years ago
See the spec sheet for the ID-12. If you want to connect it directly to a PC serial port, you will likely need a MAX232 or equivalent to convert the 5v TTL to true serial. However, some serial ports or USB to serial adapters will work ok on just the 5v signals.
When I saw this I was hoping for something I could use to shut down a car that had just tried to run me over on my bike. I could use such an item about 3 times a week when I ride as someone tries to "teach me a lesson" about riding in the street about every other ride. BTW I ride in full compliance with the law TX VC 551.100-103, I teach bicycle laws to local cops who would bust me in a nanosecond if they caught me breaking the law.
 dude, this instructable has nothing to do with bicycles.  vent somewhere else.

to kill a car you would need a powerful emp genny.
I was hoping for something a little smaller and lighter than an EMP generator, something that didn't require a semi trailer to haul it around. I just want to be able to shut cars down after they are used as a weapon against me. The most deadly thing in our lives is not a gun, but the family car, by a decimal (close to 4 binary) order of magnitude. The number of people that die inside cars has been decreasing as newer cars replace older cars with less passenger protection, but the people outside cars are dying at the same rate they have since the mid-1990s, in spite of fewer miles travelled in the last 2 years.
I agree with thinkdunson, RFID will never kill a car. Even lighting won't immobilize a car.
You would be better off just firing an automatic weapon at the engine...
chandra034 years ago
im chandra..can i get the source code for this...i cant download it.
inst_lom4 years ago
Sorry I can ask a question "also works with a 12f675?" thanks
andrew_h (author)  inst_lom4 years ago
Should work fine on the 675 too. The only real difference is the analogue input.
Thanks for the reply I did not have a 12F629 un12f675 I tried but it seems that does not run the program, the file download is
good or has a problem?? Thanks
andrew_h (author)  inst_lom4 years ago
Hmm, there may be an extra option needed to disable the analogue input. Give me a little time and i will relase a version compatible with 675.
ok thanks I'll wait
andrew_h (author)  inst_lom4 years ago
Ok, i have uploaded a hex file for 675 on the last step. Should work but i can not test as i don't have one...
No, nothing seems to not work
not yet bought the ID-12 but I can not send your pic in the programming jumper
pin 6 is low and pin 7 is high and does not exceed,
Thanks hello ..........
Sorry for the English but is translated
andrew_h (author)  inst_lom4 years ago
I found that i have a 675 so i will give it a try myself in the next few days.
inst_lom4 years ago
thanks for answering, but still the question stays : "how could i extend the reading range?"

should i build a bigger anntena ? How should i build it ? i see that the ID-20 has an option for external anntena , but i didn't find anywhere what cind of antenna ?
andrew_h (author)  dragon_shadow884 years ago
There is antenna designs in the ID-12 datasheet.

Depending on the application and range you need, your easiest option is to use credit card sized 'tags' - these give about 10cm range on an id12.
andrew_h (author) 4 years ago
Im currently working on a much more advanced version of this using a 16F828a. It is designed to be a 3 point passive immobiliser and also controlling the central locking of a car.

It's in the final development and testing stages now, hopefully should be finished in a week or two. Let me know if anyone is interested and i will post it as another instructable.

I wonder does this circuit can work with ID-40 ? because the ID-40 has a tvice longest range than a ID-20.

If the answer is NO , than , how can I extend the operating range of this RFID reader ?

PS: sorry for my bad English, i'm from Serbia :) (thanks for the answer)
andrew_h (author)  dragon_shadow884 years ago
Looking at the datasheet for the ID-40, i see two potential problems in using it for this setup. It appears that the ID-40 does not use TTL level serial data but 'true' RS-232. You would likely need a max232 or equivalent between the data wire on the ID-40 and the IC to shift the voltages down. The other problem is that the ID-40 runs on 12v (nominal) whereas the ID-12 is only 5v so you would need an additional power source for the ID-40.
calaman255 years ago
hi, i downloaded the file, but the extension is .tmp, is that ok?, or i have to change it to .hex
andrew_h (author)  calaman255 years ago
 Yes, just rename the file to .hex and you should be fine.
ShadowCowz5 years ago
 pretty awesome, gotta try this :D
andrew_h (author) 5 years ago
Thanks for the replies people.  I really had no idea this would be so popular!
mikeyeez5 years ago
great instructables will help in my auto electrical work,
shteef5 years ago
 Hmm, interesting, best get my soldering iron out. Great inscrutable.
Dutch_Razor5 years ago
 Wow this is great! I was trying to create a door lock using the ID12 and a PIC16F628A but I couldn't get it to work.

Is there any chance you could compile it for a 16F628A?
andrew_h (author)  Dutch_Razor5 years ago
 I suppose i can but it's not just as simple as selecting the different chip and hitting compile.  i/o pins/ports and memory locations etc are different in that chip.

If you can be a little patient then i can recode it for the bigger chip but to be honest, is it really worth it?  The 16f628A is way overkill and you'll have a lot of wasted pins.  The 12f629 is also a lot cheaper and is pretty much fully utilised.
Sorry I had no experience in that, thought it was just a recompile.

Nevermind then , I'd be better off ordering the 12f629 and keeping the 16F628 for another project.

Thanks for the quick reply!
ian bernal5 years ago
Hello!  I really like this idea, but forgive for asking, where can i get a RFID card for this? do i have to program it?  thank you
andrew_h (author)  ian bernal5 years ago
The tags are encoded with a 64bit hex key from factory theoretically garunteed unique.  The tag itself or the reader do not need to be programmed, only the PIC.

The cards/tags are commonly available on Ebay and some electronics stores that sell silicon chip kits (Silicon chip released a somewhat similar kit to this). Just look for 125khz RFID tags. They can also be referred to as 'Manchester' tags.
samirsky5 years ago
What would it take to get rid of the need for keys?
I would like to use an RFID (or even just a magnet and a reed switch) to enable my Jeep to be started with a push putton switch.  (No need for keys for the doors in a topless Jeep.)

That way I wouldn't need my keys, and how to start my Jeep would not be obvious to someone who didn't know the 'trick'.

Kind of a cheap-man's-add-on to emulate the newer cars where you don't put the keys in the ignition (keep in pocket) and just push the button.
1-40 of 52Next »