project:brmdoor
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionLast revisionBoth sides next revision | ||
project:brmdoor [2013/06/29 09:03] – ruza | project:brmdoor [2016/11/08 19:11] – [BrmDoor Hardware] jenda | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ====== BrmDoor ====== | ||
+ | {{template> | ||
+ | name=DIY Access Control\\ and Burglar alarm| | ||
+ | image=pir.jpg? | ||
+ | founder=crowdsourcing| | ||
+ | depends=| | ||
+ | interested=[[user: | ||
+ | status=done}} | ||
+ | For hackerspace more secure and without the annoyance of physical keys. DIY digital lock control, open/closed space status monitor and burglar alarm. | ||
+ | |||
+ | **Status:** Currently, we have digital lock control and open/closed space status monitor, doorbell. Burglar alarm is TODO long-in-the-future. | ||
+ | |||
+ | **System Architecture: | ||
+ | |||
+ | ===== Unlocking the Door ===== | ||
+ | |||
+ | Executive summary, how to get in without a key - arrange registering your RFID card with stick first, then you need to sometime come physically to brmlab to meet with him; he will add your ID to the Arduino sketch code. (We do not use external database out of security concerns.) | ||
+ | |||
+ | If your card is registered, just put it at the door around the place with the " | ||
+ | |||
+ | ===== BrmDoor Hardware ===== | ||
+ | |||
+ | * Simple token-based Identity Check device (we just rely on serial numbers for starters): | ||
+ | * [DONE] MiFare RFID cards (e.g. ISIC, OpenCard, or plain tokens) | ||
+ | * We have [[https:// | ||
+ | * We have it wired up and can detect a card and receive its serial id. Tested on ISIC and OpenCard, works like a charm! | ||
+ | * It is already duct-taped at the inner side of the door. Most rfid cards have no trouble with talking through the wooden door; a sticked by chido marks the spot. The wires are routed off the door through UTP cable. | ||
+ | * TODO: More secure crypto-based auth? | ||
+ | * [TODO] [[user: | ||
+ | * Lock device: | ||
+ | * [DONE] BERA-E electromagnetic clock, sponsored by b00lean! | ||
+ | * From inside, it is possible to open the door anytime by just pushing the handle. | ||
+ | * From outside, it is possible to open the door by turning the lock by the key, OR by pushing the handle if +15V is fed in. | ||
+ | * We have it wired up and can control it fine. The wires are routed off the door through UTP cable. | ||
+ | * AxTheB breadboarded a Darlington IC that switches the 15V based on 5V TTL input. The power source used to be first an old ATX PSU (unreliable, | ||
+ | * [DONE] Microcontroller will interface the hardware (RFID reader, EM lock) | ||
+ | * We use just Arduino hooked up on USB serial (sponsored by TomSuch) | ||
+ | * TomSuch created a mini-shield that has all the extra wiring and Darlington. | ||
+ | * " | ||
+ | |||
+ | {{ : | ||
+ | ===== BrmDoor Firmware ===== | ||
+ | |||
+ | Programmed mainly by [[user: | ||
+ | |||
+ | - NOCARD | ||
+ | * no card is detected | ||
+ | - CARD < | ||
+ | * card from ACL is detected | ||
+ | - CARD UNKNOWN | ||
+ | * card not found in ACL | ||
+ | |||
+ | When message 2 is sent (card in ACL found), the door is also unlocked for few seconds. | ||
+ | |||
+ | Each message is prefixed by two space-separated boolean numbers; the first denotes the state of the " | ||
+ | |||
+ | The Arduino sketch is here: [[http:// | ||
+ | |||
+ | {{ : | ||
+ | ===== Status Monitor ===== | ||
+ | |||
+ | How to detect whether the space is currently inhabited? | ||
+ | |||
+ | Two big switches with LEDs are now by the door ("Club Mate Panel" | ||
+ | |||
+ | Few more old photos @ https:// | ||
+ | ===== brmd ===== | ||
+ | |||
+ | The software side is [[http:// | ||
+ | |||
+ | [[http:// | ||
+ | |||
+ | brmd runs at brmdoor@brmdoor.brm ([[wp> | ||
+ | |||
+ | ===== Alphasign ===== | ||
+ | |||
+ | < | ||
+ | |||
+ | Alphasign hardware broke a long time ago. | ||
+ | |||
+ | ===== BrmDoor Access Policy ===== | ||
+ | |||
+ | The requirement is to always have a backup way to get in, even when the digital control gets stuck at the most inconvenient moment in the most stupid way. Also, the building owner always needs to have a means of access, a plain key if possible; this is also related to fire regulations. Therefore, having digital entry as primary access method, with couple of backup plain keys in case things go wrong, should be the most preferred method. | ||
+ | |||
+ | Some means of the digital entry should still work if the network is offline for some reason. | ||
+ | |||
+ | The door is always closed from the outside and locked and must be unlocked every time before it is open; it stays unlocked for a short period enough to open the door. | ||
+ | |||
+ | ===== Adding card under new PN532 system ===== | ||
+ | |||
+ | When you login as ' | ||
+ | |||
+ | The new version currently running will be soon merged into brmlab/ | ||
+ | ===== GitHub, last commits ===== | ||
+ | |||
+ | {{rss> | ||
+ | |||
+ | ===== Yet another Brmdoor implementation - Pythonic this time ===== | ||
+ | |||
+ | The [[https:// | ||
+ | |||
+ | Requires [[https:// | ||
+ | |||
+ | Features: | ||
+ | |||
+ | * Clean, documented and extensible code | ||
+ | * Authentication data is stored in SQLite DB - no need to restart daemon to make any change; extensible DB schemas | ||
+ | * NFC smartcard communication support (ISO 14443-4) | ||
+ | * Multiple authentication schemes supported | ||
+ | * simple authentication by UID | ||
+ | * [[http:// | ||
+ | * Dedicated configuration file and logging facilities | ||
+ | |||
+ | Missing features: | ||
+ | |||
+ | * No sound produced (can be fixed via WiringPi) | ||
+ | * No IRC messages yet | ||
+ | |||
+ | ===== Links ===== | ||
+ | |||
+ | * http:// | ||
+ | * http:// | ||
+ | * http:// | ||
+ | * http:// | ||
+ | * yet another doorlock projects made by various hackerspaces http:// |