Doorlock

From The Munich Maker Lab's Wiki
Revision as of 16:38, 2 January 2015 by Tiefpunkt (talk | contribs) (infobox, link to dorma pdf)
Jump to navigation Jump to search
   
Doorlock

Release status: experimental [box doku]

Description Electronic door lock for the new space
Author(s)  tarwin, tiefpunkt
Download  https://github.com/munichmakerlab/doorlock

Our new space will need an electric door lock.

Theory

We needed a lock that allows us to hand out as many "keys" as we like, but without making it super complicated to use. A lot of hackerspaces used SSH keys as "keys" to their space. For us, that's not user friendly enough, as we expect quite a few non-technical folks to have access to the space

After discussions, we settled for a two-factor system, using RFID cards and PINs. Additional means to authenticate may be introduced at another point in time.

Hardware

Frontend

RFID reader, pinpad, and LCD display, connected to an Arduino.

Prototype uses an Arduino Uno, which is a little short on pins. A buzzer would be nice, and we currently can't control the backlight of the LCD.

Locking Mechanism

We got a motor lock on eBay, together with its electronics, and we'll use that. It's a Dorma SVP 2000 series lock.

The electronics have a set of contacts that can be used to get the status of the lock, as well as to lock and unlock it.

Backend

A Raspberry Pi, which is connected to the frontend over a serial connection, and has the motor lock electronics connected via its GPIOs. Currently, only the locking pins are connected via a grove relay. No status checks are being done yet.

Schema

                                                           +-----------+
                                                           | RFID      | 
                                                  +-(SPI)--+ Reader    | 
                                                  |        +-----------+ 
 +--------------+              +---------------+  |                
 |              |              |               |  |          +-----------+ 
 | RaspberryPi  +----(UART)----+  Arduino      +--+-(Matrix)-+ Keypad    | 
 |              |              |   (frontend)  |  |          +-----------+ 
 +------+-------+              +---------------+  |                
        |                                         |  +-----------+ 
    (Relais board)                                +--+ Display   | 
        |                                            +-----------+ 
  +-----+------+
  | Door lock  |                                                   
  +------------+                                                   

Software

Hosted on Github: https://github.com/munichmakerlab/doorlock, contains both the frontend firmware as well as the software for the backend.

The backend runs on the RPi, and uses a SQLite database to store RFID and PIN information. The "manage_db.py" script can be used to maintain that database.

Resources