

Akilli guvenlik kasasi
AI-powered IoT security system with ESP32-CAM, custom PCB design (KiCad), 3D enclosure (Fusion 360), Firebase cloud sync, and React dashboard. End-to-end embedded engineering project.
- Size
- 120 × 80 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 18
- Nets
- 28
- Pads
- 57
- Tracks, vias
- 122, 0
- Pours
- 2
- Routed
- Yes
- KiCad
- KiCad 9.0 (file 20241229)
- Created
- 17 Apr 2026
- Updated
- 29 Oct 2026
Overview
Akilli guvenlik kasasi is an open-source printed circuit board by eemreinceer, from the eemreinceer/Smart_Safe repository on GitHub. It is a 2-layer board of 120 × 80 mm with 18 parts on 28 nets, routed with 122 tracks and 0 vias.
It is built around the ESP32-SOLO-1C. Its parts include 12 connectors, 1 capacitor and 1 resistor. It belongs with the home automation and IoT boards and the ESP32 and RISC-V boards of this library.
Main components
1README
README.mdSmartSafe
ESP32-CAM based RFID access-control and IoT safe prototype.
SmartSafe combines embedded firmware, a physical RFID authorization path, a solenoid-lock driver, event capture, Firebase Realtime Database synchronization, a web dashboard, KiCad PCB sources and Fusion 360 mechanical files.
What this project demonstrates
- C++ firmware on ESP32-CAM with FreeRTOS tasks and a non-blocking state-machine design.
- Local RFID allowlist authorization using an RC522 reader.
- Fail-closed handling for missing credentials, missing TLS CA data and unprovisioned OTA authentication.
- Solenoid/MOSFET lock-control path with explicit actuator-command state.
- Firebase RTDB event synchronization with an offline queue.
- Append-only event logging and role-separated database rules for device/admin/operator access.
- PlatformIO build and mock-test workflow with GitHub Actions checks.
- KiCad schematic/PCB sources and Fusion 360 enclosure/mechanical sources.
Architecture
RFID allowlist
|
v
ESP32-CAM firmware ---> MOSFET / solenoid lock
| |
| +--> commanded lock state
v
Firebase RTDB <--------- device status and audit events
^
|
Authorized dashboard ---> alarm command requestThe physical RFID decision is local to the device. The cloud and web dashboard do not directly unlock the safe.
Repository map
- FIRMWARE/Platform.IO/ - ESP32-CAM firmware, mocks and PlatformIO configuration
- FIRMWARE/WEB/akilli-kasa-dashboard/ - dashboard, Firebase config template and RTDB rules
- PCB/ - KiCad schematic and PCB sources
- 3D/ - Fusion 360 source files
- docs/ - physical bring-up and acceptance checklist
- SECURITY.md - security assumptions and reporting guidance
Local configuration
Secrets are intentionally excluded from Git. Copy the templates locally:
cd FIRMWARE/Platform.IO
cp include/secrets.example.h include/secrets.h
cd ../WEB/akilli-kasa-dashboard/web
cp firebase-config.example.js firebase-config.jsDo not commit Wi-Fi credentials, Firebase service-account keys, device passwords, OTA secrets, tokens or personal event images. Use separate Firebase identities for the device and dashboard, and deploy the RTDB rules before connecting a real device.
Build and test
cd FIRMWARE/Platform.IO
pio run -e esp32cam
pio run -e esp32cam-hardware
pio run -e esp32cam-production
./wokwi_test.shThe Wokwi/mock path checks firmware behavior and RFID flows; it is not proof of physical lock safety, cloud availability or hardware electrical correctness. Follow the physical bring-up checklist before energizing a real actuator.
Security boundaries
- RC522 UID matching is not cryptographic authentication and cards can be cloned.
- is_locked represents the commanded actuator state because the prototype has no physical lock-position sensor.
- A solenoid must use an appropriate external supply, common ground and flyback protection.
- ESP32-CAM and RC522 logic are 3.3 V; signal levels and MOSFET gate drive must be verified against the relevant datasheets.
- This is a prototype and must not be treated as the sole security layer for valuable assets.
Project scope
This is a personal engineering and learning project. It includes AI-assisted development in parts; the repository documents the implemented architecture, security decisions, test paths and limitations rather than claiming production readiness.
License
No LICENSE file has been added yet. Reuse and redistribution should not be assumed until a license is explicitly added.
Parts
18| Qty | Value | Footprint | References |
|---|---|---|---|
| 4 | MountingHole_Pad | MountingHole:MountingHole_3.2mm_M3_Pad | H1, H2, H3, H4 |
| 1 | 12V_GND | Connector_PinSocket_2.54mm:PinSocket_1x01_P2.54mm_Vertical | J7 |
| 1 | 12V_IN | Connector_PinSocket_2.54mm:PinSocket_1x01_P2.54mm_Vertical | J6 |
| 1 | 1K | Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_Horizontal | R1 |
| 1 | 470uf | Capacitor_THT:CP_Radial_D8.0mm_P3.50mm | C1 |
| 1 | 5V_GND | Connector_PinSocket_2.54mm:PinSocket_1x01_P2.54mm_Vertical | J10 |
| 1 | 5V_IN | Connector_PinSocket_2.54mm:PinSocket_1x01_P2.54mm_Vertical | J8 |
| 1 | DF_SAG | Connector_PinSocket_2.54mm:PinSocket_1x08_P2.54mm_Vertical | J12 |
| 1 | DF_SOL | Connector_PinSocket_2.54mm:PinSocket_1x08_P2.54mm_Vertical | J11 |
| 1 | ESP-32_SAG | Connector_PinSocket_2.54mm:PinSocket_1x08_P2.54mm_Vertical | J1 |
| 1 | ESP-32_SOL | Connector_PinSocket_2.54mm:PinSocket_1x08_P2.54mm_Vertical | J2 |
| 1 | GUC_GİRİSİ | TerminalBlock_Phoenix:TerminalBlock_Phoenix_MKDS-1,5-2-5.08_1x02_P5.08mm_Horizontal | J4 |
| 1 | J_HOPARLOR | TerminalBlock_Phoenix:TerminalBlock_Phoenix_MKDS-1,5-2-5.08_1x02_P5.08mm_Horizontal | J9 |
| 1 | R503 PARMAK İZİ | Connector_JST:JST_XH_B6B-XH-A_1x06_P2.50mm_Vertical | J5 |
| 1 | ROLE_MODULU | Connector_PinSocket_2.54mm:PinSocket_1x03_P2.54mm_Horizontal | J3 |
Similar boards
- 2 layers100 × 60 mm

- 2 layers60 × 47.5 mm

- 2 layers70.8 × 60.7 mm

Car
AndreHatu/MarioKart
Senior Design Project using ESP32s to remake Mario Kart with RC Cars
44 partsMIT - 2 layers27.9 × 16.5 mm

- 2 layers42.7 × 13.7 mm

Stm32-mini12864
VoronDesign/Voron-Hardware
Cool Hardware designed by the Voron Design group
18 parts1.1kGPL-3.0 - 2 layers41.2 × 46.6 mm

- 2 layers44 × 51.3 mm

4272MAVcoder R4
hackclub/OnBoard
💡 Join 1,000 teenagers and make your first PCB with a $100 grant!
18 parts915 - 2 layers28.3 × 14.3 mm

Tap Photosensor PCB
VoronDesign/Voron-Tap
Tap is a nozzle-based z-probe for the V2 and Trident printer designs. The entire toolhead moves to trigger an optical switch. Tap offers many advantages:
18 parts716GPL-3.0
Questions
How big is the Akilli guvenlik kasasi PCB?
It measures 120 × 80 mm and has 2 copper layers, 1.6 mm thick.
What parts does the Akilli guvenlik kasasi use?
18 parts, built around the ESP32-SOLO-1C. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
Where can I download the Akilli guvenlik kasasi KiCad files?
From the eemreinceer/Smart_Safe repository on GitHub, at the commit this page was made from: the board is PCB/akilli_guvenlik_kasasi/akilli_guvenlik_kasasi.kicad_pcb and its schematic PCB/akilli_guvenlik_kasasi/akilli_guvenlik_kasasi.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the Akilli guvenlik kasasi design in my own project?
Its repository states no licence, so its author keeps all rights: ask eemreinceer before reusing the design.