doorbot
This is an old revision of the document!
Table of Contents
Doorbot
The doorbot is responsible for scanning key fobs and unlocking the door for members. The software is written in C++ and runs on an ESP32. It expects to use the Wiegand protocol for reading fobs. It communicates with a server written in Python.
Implementation of the system is split up into a few repositories:
- https://github.com/bodgery/doorbot-server - The server for the API and management frontend
- https://github.com/bodgery/esp32_doorbot - ESP32 firmware, plus a hat for making the connections
Building a Doorbot
To deploy a doorbot, you will need the following major materials:
- RFID reader for 125KHz fobs that outputs the Wiegand protocol (https://www.amazon.com/Waterproof-Wiegand-125KHz-Control-Proximity/dp/B01LWRQMN5)
- Electronic strike running at 12V or 24V (https://www.amazon.com/UHPPOTE-Standard-Fail-Secure-Fail-Safe-Adjustable/dp/B00V49S2NI)
- A power supply matching your 12V or 24V strike
- An ESP32 [TODO: exact model of dev board]
- The doorbot hat (see below)
- An enclosure (3d printed)
Building the hat is covered elsewhere (TODO make that page)
- TODO: RFID reader connections
- TODO: Power connection
- TODO: Strike connection
- TODO: Configure firmware
- TODO: Uploading firmware
Serial Port Debugging
The ESP32 has a USB port, and much useful information is given about the cache status, key reading, etc. There are also a few commands you can send:
- check <ID> - Check if a keyfob is valid
- newcache - Rebuild the cache
- open - Open the door
- stats - Dump info about this doorbot
doorbot.1701227793.txt.gz · Last modified: 2023/11/29 03:16 by tmurray