Search models, users, collections, and posts

NFC Access Controller - Home Assistant

Print Profile(1)

All
P2S
X1 Carbon
H2D
P1P
A1
X1
X1E
H2D Pro
H2S
P1S
H2C
X2D
A2L

0.28mm layer, 2 walls, 15% infill
0.28mm layer, 2 walls, 15% infill
Designer
2.3 h
1 plate

Open in Bambu Studio
Boost
16
54
0
2
2
0
Released 

Description

🔴 GHome Gate – NFC Access Controller for Home Assistant

A compact, fully-integrated NFC access controller designed for Home Assistant, powered by ESPHome, and packaged inside a custom 3D-printed enclosure.
This device allows you to trigger Home Assistant automations simply by tapping an NFC tag on the external reader.

It is built to be installed inside the utility meter cabinet and powered directly from 230 VAC, making it a fully autonomous access module for gates, doors, alarms, and automations.

Features

  • ✔️ PN532 NFC reader (I2C)
  • ✔️ ESP8266 NodeMCU running ESPHome
  • ✔️ Direct 230 VAC → 5 VDC power via Hi-Link isolated PSU
  • ✔️ External NFC antenna + internal buzzer feedback
  • ✔️ Designed for outdoor electrical cabinet installation
  • ✔️ Instantly sends tag ID to Home Assistant (tag_scanned)
  • ✔️ Custom beeps, LED status, OTA updates, API encryption
  • ✔️ Fully open-source and customizable

📦 Bill of Materials (BOM)

Electronics

ComponentQtyNotes
NodeMCU v2 ESP82661Main microcontroller running ESPHome
PN532 RFID/NFC Module (I2C version)1Mounted inside the external reader shell
Hi-Link HLK-PM01 (100–240VAC → 5VDC)1Compact isolated power supply
Passive buzzer (5V)1Connected via PWM (GPIO12)
Prototype board (70×50 mm)1For ESP + PSU mounting
External WiFi antenna1Required due to metal cabinet shielding
Header pins + jumper wiresvariousInternal wiring
M3 brass threaded inserts4For robust enclosure assembly
M3 screws4Cover fastening

3D Printed Parts

PartMaterialNotes
Main enclosure (GHome Gate)PETG / ASAHeat-resistant, durable
Front cover with embossed logoPETG / ASA 
External NFC reader mountPETG / ASAAdhesive mounting
Internal panel spacersPETG 

Other

  • Heat-shrink tubing
  • Cable ties
  • Silicone or double-sided pads
  • 230 VAC double-insulated cable

⚙️ Hardware Overview

The device is composed of two physical modules:

1. Main Controller Box

Contains:

  • NodeMCU ESP8266
  • Hi-Link power module
  • Buzzer
  • I2C connection to NFC reader
  • WiFi antenna connector

This box is installed inside the meter cabinet, powered directly by 230 VAC.

2. External NFC Pad

Mounted outside the cabinet door.
This contains the PN532 board, placed close to the plastic surface for maximum tag detection reliability.

The two modules are connected internally through a small ribbon cable (SDA, SCL, 5V, GND).

🔌 Pinout / Wiring

NodeMCU → PN532

PN532NodeMCU
SDAGPIO4 (D2)
SCLGPIO5 (D1)
VCC5V
GNDGND

NodeMCU → Buzzer

BuzzerNodeMCU
SignalGPIO12 (D6)
VCC5V
GNDGND

Power Input

Hi-Link OutputNodeMCU
+5VVin
GNDGND

🧠 ESPHome Configuration

Below is the firmware used in this project (ready to copy/paste):

 

https://github.com/RazorCopter/home-assistant/blob/dev/Stack_esphome

🏡 Home Assistant Integration

This module integrates natively with Home Assistant through ESPHome API.

When a tag is scanned:

Home Assistant receives:

 

tag_scanned:  id: <tag_uid> 

You can use this to trigger:

  • gate control
  • door unlocking
  • alarm arming/disarming
  • presence detection
  • custom automations

Audio feedback

You may call:

  • button.beeep
  • button.test_doppio_beep

Or trigger the services exposed by API:

  • esphome.gate_beep
  • esphome.test_doppio_beep

🖨️ 3D Printing Instructions

Recommended settings:

  • Material: PETG or ASA (heat & outdoor resistant)
  • Layer height: 0.2 mm
  • Perimeters: 3
  • Infill: 20–30%
  • Supports: No (all parts designed with self-supporting geometry)
  • Bed temp: 75–80°C
  • Hotend: 235–245°C

Notes:

  • Brass inserts should be heat-pressed into the main body.
  • External NFC cover should not be thicker than 2.0–2.5 mm for best read performance.
  • Antenna connector hole supports SMA bulkhead connectors.

🔧 Assembly Instructions

  1. Solder the NodeMCU and Hi-Link to the prototype board
  2. Wire SDA/SCL/5V/GND from NodeMCU to PN532
  3. Mount the PN532 into the external reader shell
  4. Install brass inserts into the 3D-printed case
  5. Route the I2C cable between the two shells
  6. Connect buzzer to GPIO12
  7. Close the main enclosure using M3 screws
  8. Mount the external pad on the door using screws or adhesive
  9. Install the main module inside the electric meter cabinet
  10. Upload ESPHome firmware via USB or OTA
  11. Add the device to Home Assistant

🧩 How It Works

  • When an NFC tag approaches the external pad,
  • The PN532 recognises the UID
  • ESPHome immediately sends it to Home Assistant
  • Home Assistant triggers the configured automation
  • The buzzer provides audio feedback
  • The status LED shows connectivity and OTA updates

A complete, local, private access system with instant response.

🛡️ Safety Notes

⚠️ The Hi-Link module handles 230 VAC.
Installation must be done with the power disconnected, and ideally by someone experienced.

⚠️ Always use a double-insulated 230 V cable.

⚠️ Do not expose the main enclosure to weather (keep inside the cabinet).

📜 License

This project is released under the MIT License.
You may reuse, modify, or republish the files as long as credit is provided.

Comment & Rating (0)

(0/1000)

No more