Door lock with 2.4 TFT and 512k eeprom and log send to server.

In our company have door lock, but this door lock can store only 100 card ID. But this is not enough. I made more usefull door lock system, with ESP32.
To card ID store using Microchip 25AA512 512kbit SPI EEPROM. (13106 card can store)
Rfid reader is: Innovations ID-12.
To programming: any Key Card (you can select and programming to the source code)
To clear all data on database: Magnet and reed relay.
To image converter: UTFT Image converter
TFT Display: 2.4'' Display 320x240 pixel
Log store with NetCat program with this command: nc -l -p 10000 >>log.csv (you make batch to looping)
Log viewing: mTail
Instruction:
1. Swipe programming card to store new card (programming card not opening the door)
2. Swipe new card to store
3. Swipe already stored card to open the door
If card ID is not in database, then door is still lock, when ID is in the data base, then door is open.
If in programming mode swipe already stored card, then not store this ID in database.
Database structure: The first 2 byte (16bit 64kb addressing) is the index/FAT (how many card stored in the database Big Endian LSB/MSB). This 2 byte clearing when use magnet to activate reed relay.
The log file (CSV) you can open in Microsoft Excel.
All events are logged: restart, eeprom erasing, new card, denied card and granted card.
Displayed graphics: denied.h, granted.h, logo.h and swipe.h
Source code.
In TFT driver uncomment this line #define ILI9341_DRIVER, and comment any chip driver, and uncomment this line #define SPI_FREQUENCY 20000000 (very ipmortant, if you leave 27000000, then eeprom not working properly)
Libs link.