1-Wire Door Access Controller

Home > 1-Wire Projects > Door Access Controller

In the summer of 2001 the company that I work for moved premises and one of my many projects was to implement a door access system that would tell us who opened a specific door. So because I was already a fan of iButton and 1-Wire technology and a wearer of a DS1996 Digital Decoder Ring, I managed to persuade my collegues that this was a good idea, although they opted for the key fob instead of a ring.

This project is based upon the TINIdoor project by Dallas Semicondutor but instead of supporting just one door it supports two. This enabled us to not only restrict access to the main entry but also to the computer room.

How the Circuit Works

I wrote a small VB application called iBdoor which just basically scans that 1-wire bus using a conditional search for DS2409's (1F) devices that have an alarm condition, if one of the DS2409's signals an event then the software will address the alarmed DS2409 and issue the "SMART ON MAIN" command, this will turn on the main connection and will expose an iButton or key that is present on this new segment. The software now scans the 1-wire bus collecting all the serial numbers of all the devices present at this time and puts them
into a table, next the "ALL LINES OFF" command is issued to the DS2409 to disconnect the main segment.


The software now looks through the list of serial numbers, removes static entries (chips that are always present i.e the DS2409 / DS2406) and then compares what is left if any with a list of keys, if one of the found serial numbers matches a serial number in the key file then we log the access and open the door. To do this we turn the relevant DS2406 PIO pin on which triggers the NE555N timer for a set time and activates a relay, this relay activates the door solenoid and the door can then be opened, a visual indication that the door is unlocked is given using a green led in the center of the DS9092 iButton reader.

The beauty of this system is that if you lose your keys or have them stolen, instead of replacing all the locks you simply delete the key from the key file, and issue a new key to the user. Also you keep a log of who accessed or tried to access a door, which could be used for employer time keeping / security.



Schematic and Printed Circuit Board / Door Hardware

iBdoor Code Snippet for VB5