Skip to content
This repository has been archived by the owner on Jan 8, 2023. It is now read-only.

The System

Thomas Contis edited this page Jul 15, 2017 · 4 revisions

Goal:

The goal of the project is to make a reliable and secure system enabling the control of access into the Makerspace, and eventually devices as well.

The Parts:

  • Wemos D1

    Wemos D1 Board

    This little board may seem unimpressive at first, but for around $10, it sure packs a punch!

    • https://wiki.wemos.cc/products:d1:d1
    • The Wemos D1 is a microcontroller featuring an ESP8266 chip. This allows for it to connect to WiFi so it can send and receive packets.
    • Additionally, it comes with an impressive 4 Megabytes of Flash memory with support for a file system (SPIFFS). It can essentially store small files, or in this project's case, logs.
    • This board can be programmed with the Arduino IDE software, which uses C++/C.
    • All in all, the Wemos D1 is cost effective, and small, making it the perfect microcontroller for the RFID project.
  • Raspberry Pi 3 Model B

    Raspberry Pi 3 Board

    Since their initial conception the Raspberry Pi computers have been very popular -- and for very good reason!

    • https://www.raspberrypi.org/products/raspberry-pi-3-model-b/
    • The Raspberry Pi 3 is a small computer that comes equipped with 1 GB of RAM, a 64-Bit 1.2 GHZ Quad-Core ARMv8 CPU, 4 USB 2.0 Ports, Bluetooth, a stereo output, and an HDMI port --all for a mere $60 ($41 on Amazon right now).
    • The Pi runs Linux-based operating systems such as Raspbian (Debian tailored for the pi) and Ubuntu, making it perfect for a LAMP stack and server-based systems.
    • Additionally the Pi uses a microSD slot for storing microSD cards.
    • The Pi is an amazing all-in-one bare-bones computer (or server should I say 😉 ).

The System:

Keypad ==> Wemos <===> Pi <===> UI+Software

Device <=====||

  • The current system plans involves multiple modules (consisting of a Keypad and a Wemos), hooked up a device to enable/disable, like the front door, for example.
  • These devices contain a database of RFID fob codes, and so when someone tries to log in with a fob, it will let them in if the fob's code matches a database code. This action will also be stored in a log file, and a device will be enabled (like a door lock).
  • Each device communicates to the central Raspberry Pi using a secure UDP server hosted on the Pi on a separate Wifi. The Pi's job is to control and oversee each modules. Modules will empty their logs to the Pi and the Pi will update their database.
  • The Pi (UDP server) can itself be controlled via a UI on a piece of software by an authorized user. This enables an administrator to enable/disable modules, as well as update the database of users by adding members, removing members, and enabling/disabling certain fobs associated with them.
  • An important feature is the capability of each module and the Pi to work independently. Without the Pi, each module still has a local database, and will not crash because it can't connect to the Pi or the WiFi is down. Reciprocally, the Pi can save changes made by administrators to send to modules later and can indicate problems with the modules.
Clone this wiki locally