Acceso seguro impulsado por IoT
para empresas

Una plataforma en la nube para cada puerta que importa: oficinas, plantas de gimnasio, salas de personal de cafeterías y ascensores. La gente desbloquea con PIN personal, toque NFC o teléfono, y Super Admin más Company Admin lo ven en vivo.

El producto es una consola React para tres roles, un backend Go y MQTT desde un controlador de puerta hardware en ESP32 / ESP32-S3. Cada apertura es un kit: panel ESP32, lector PN532 o Wiegand, cerradura, contacto y petición de salida. Esa placa publica desbloqueos, denegaciones y estado de puerta: Super Admin no sondea el teclado.

ESP32 door controller App unlock MQTT publish
Persona abriendo una puerta de oficina de cristal en un teclado PIN inteligente
PIN accepted
Logged to cloud
Controller online
Door event in under a second
ESP32-S3 hardware door controller · PIN · NFC · App
ESP32 · Go · MQTT
3 panels Super Admin · Company · User
4 zones Building · Gym · Cafe · Lift
ESP32-S3 Hardware door controller · MQTT
PIN + app Personal codes, not shared keys

Four door types. Four spreadsheets. Zero live view.

Los equipos de instalaciones gestionaban vestíbulos, puertas de gimnasio, puertas de personal de cafetería y pisos de ascensor como sistemas separados. Las llaves físicas estaban en un cajón. Un PIN estaba escrito en un post-it detrás de la cafetera. Los socios del gimnasio compartían el mismo código de cuatro dígitos. Cuando alguien dejaba la empresa, nadie sabía qué puertas podía seguir abriendo.

  • Sin identidad únicaEl acceso iba ligado a llaves metálicas y códigos compartidos, no a un registro de personal, socio o visitante.
  • Sin monitorización en vivoLos admins se enteraban de una puerta forzada o una entrada al gimnasio fuera de horario a la mañana siguiente, si acaso.
  • Sin lista de puertas de usuarioLa gente no sabía qué puertas podía usar. Recepción se convirtió en el helpdesk.
Primer plano de un teclado PIN de puerta inteligente mostrando Access Granted

PIN, tap, or app — same door, same audit

Cada método sigue comprobando horario, zona y rol en el motor de políticas Go. Las apps React solo muestran lo que ese rol puede hacer.

Teclado PIN numérico en un marco de puerta de cristal

Personal PIN

Cada usuario recibe un código único, no un PIN de gimnasio compartido. Los intentos fallidos bloquean el teclado. Company Admin puede rotar un PIN sin tocar el hardware.

Persona en una puerta de cristal inteligente usando acceso sin contacto

NFC badge or phone

Toque el lector para entrada sin contacto en vestíbulo, gimnasio, cafetería o ascensor. El evento igual aparece en los feeds en vivo de Super Admin y Company Admin.

Teléfono en un vestíbulo junto a un lector PIN de pared

User door list + unlock

El panel de usuario lista solo las puertas asignadas. Un toque desbloquea si están en rango, o van al teclado e introducen el PIN para las salas de personal de cafetería.

Named kit: ESP32 hardware door controller

El cliente MQTT es un ESP32-S3 (o ESP32-WROOM-32 en salas de personal de cafetería de dos puertas). Los dispositivos de campo cuelgan de esa placa. Lectores y cerraduras no hablan con la nube por su cuenta.

Hardware door controller · ESP32-S3

Espressif ESP32-S3 (Wi-Fi + BLE) como panel de 2/4 puertas en el armario de comunicaciones. Relés GPIO para la cerradura, Wiegand/OSDP del lector, cliente MQTT TLS que publica cada evento. Las sedes de cafetería de dos puertas usan ESP32-WROOM-32.

ESP32-S3 · ESP32-WROOM-32

RFID / NFC · PN532 + Wiegand

NXP PN532 (13,56 MHz NFC / toque de teléfono) en el lado no seguro, más un lector RFID Wiegand de 125 kHz para credenciales. El ESP32 solo recibe el UID: no abre la cerradura hasta que Go (o la caché local) dice sí.

PN532 · Wiegand 26-bit

PIN keypad · 4×4 matrix

Teclado de membrana 4×4 en puertas de personal de cafetería y puertas de gimnasio fuera de horario, leído por GPIO del ESP32. Los PIN erróneos bloquean el teclado; el ESP32 igual publica el denegado en MQTT.

4×4 keypad

12V maglock / electric strike

Golpe eléctrico fail-secure 12V en puertas de oficina; cerradura electromagnética 12V en hojas de cristal de gimnasio y vestíbulo. Un relé optoaislado en el ESP32 es lo que realmente desbloquea, no la app del teléfono.

12V lock · relay

Door contact · MC-38

Reed magnético MC-38 en el marco, cableado a GPIO del ESP32. Cerrada vs retenida abierta vs forzada. Las alertas de Super Admin vienen de este sensor, no de una conjetura de cámara.

MC-38 DPS

REX · PIR HC-SR501

PIR HC-SR501 o botón push-to-exit en el lado seguro para que la gente salga sin PIN. El ESP32 publica REX para que una salida libre no se registre como puerta forzada.

HC-SR501

PSU · 12V / 5V

12V para maglock y golpe, 5V para el ESP32. Si se va la red, el ESP32 publica POWER_FAIL y se mantiene con un respaldo pequeño el tiempo suficiente para que la puerta del gimnasio siga siendo honesta.

12V / 5V PSU

App as a credential

El desbloqueo de My Doors no es una cerradura Bluetooth. El teléfono pega a la API Go; Go publica un comando al que se suscribe el ESP32, y dispara el mismo relé que usa el teclado PIN. El ESP32 igual publica el evento.

ESP32 /cmd

Real spaces. Different rules.

El mismo firmware de lector IoT se instala en cuatro entornos. La política — no el hardware — decide quién puede abrir qué puerta y cuándo.

Vestíbulo de oficina de lujo con acceso inteligente en la entrada de cristal Building

Office building lobby & floors

Entrada principal de cristal, pisos de inquilinos y salas de servidores. PIN o credencial de personal en horario de oficina. Los visitantes reciben un código de vestíbulo con tiempo limitado de Company Admin. Super Admin ve la salud de cada lector de cada edificio en un mapa.

Interior de gimnasio comercial real con cintas y control de acceso en la puerta Gym

Gym floor & member gate

Los socios desbloquean solo en horas pagadas. Los entrenadores conservan el acceso fuera de horario. Cuando vence una membresía, la lista de puertas del usuario quita Gym Floor 2 al momento: no más código de cuatro dígitos compartido en el cristal.

Interior de cafetería con barista y cerradura PIN de personal junto a la barra Cafe

Cafe staff room & store

La cafetería pública sigue abierta. La puerta de personal junto a la barra usa PIN para que solo los baristas en turno abran almacén y caja. Company Admin asigna ventanas de turno; los PIN fallidos salen como alertas en el feed en vivo.

Vestíbulo de ascensor moderno con lector PIN junto a los botones de llamada Lift

Lift floors & call permissions

El lector junto al banco de ascensores solo habilita los pisos de la lista de puertas de esa persona. Los pisos ejecutivos siguen ocultos. Cada llamada se registra con usuario, hora y destino para auditorías de Super Admin.

Live monitoring for operators. A door list for users.

Cambie de rol. Super Admin vigila todo el recinto. Company Admin opera un negocio. Los usuarios solo ven las puertas que pueden abrir.

Platform operator

Super Admin — live estate monitoring

Esta es la torre de control. Super Admin da de alta empresas, ve cada controlador de puerta hardware ESP32 (edificio, gimnasio, cafetería, ascensor) y puede bloquear de emergencia un sitio. No gestiona las horas de gimnasio de un empleado: eso queda en Company Admin.

  • Feed en vivo de publicaciones MQTT del controlador
  • Device health: panel, lock, DPS, PIN errors
  • Política global, firmware y exportación de auditoría

Panel React · MQTT desde ESP32-S3 · flujo de eventos Go.

OmniAccess · Super Admin Live MQTT
48Companies
312Doors online
14PIN unlocks / hr
2Alerts
TimeZoneEventStatus
10:24:31GymCTRL-04 PUB ACCESS_GRANTEDGranted
10:24:18CafeCTRL-09 PUB DPS closedOK
10:23:47LiftCTRL-02 PUB REXExit
10:22:30BuildingCTRL-12 PUB ACCESS_DENIEDDenied
Live Original HD console — not a third-party screenshot
Escritorio de operaciones con consola Super Admin en una pantalla ancha
NOC / security desk view Always-on monitoring

Del PIN a puerta abierta y registro en vivo

01

Present

El usuario introduce el PIN en el teclado, toca NFC o toca Unlock en su lista de puertas estando en el lector.

02

Authorize

El controlador de puerta hardware ESP32-S3 publica el PIN, el UID NFC o el comando de la app por MQTT. Go comprueba identidad, zona, horario y si el código sigue válido.

03

Unlock

El ESP32 dispara el golpe o maglock 12V, o habilita el piso del ascensor. El teclado muestra Access Granted.

04

Monitor

El mismo evento aparece en los feeds en vivo de Super Admin y Company Admin, y en el historial del usuario.

ESP32-S3 hardware door controller as an MQTT publisher

Cada ESP32-S3 (o ESP32-WROOM-32) es un cliente del broker. Publica eventos de puerta y salud. Se suscribe solo a comandos (unlock, lock, sincronización de horario). Las consolas nunca hablan con el maglock directamente.

Publish topics (ESP32 → broker)

  • access/{site}/{ctrl}/eventGranted, denied, REX, forced, held-open
  • access/{site}/{ctrl}/healthOnline, tamper, power, battery
  • access/{site}/{ctrl}/lockStrike/maglock state after a relay change
  • access/{site}/{ctrl}/dpsDoor contact: closed, open, held

Subscribe (broker → ESP32)

  • access/{site}/{ctrl}/cmdUnlock, lock, PIN cache, firmware
CTRL-04 · ESP32-S3 · gym-front Publishing
PUB  access/tower-a/ctrl-04/event     qos 1
{
  "ts": "2026-09-19T10:24:31Z",
  "hw": "ESP32-S3",
  "controllerId": "CTRL-04",
  "doorId": "gym-front",
  "event": "ACCESS_GRANTED",
  "method": "PIN",
  "userId": "u_asha",
  "lock": "UNLOCKED"
}

PUB  access/tower-a/ctrl-04/dps       qos 1
{ "hw": "ESP32-S3", "doorId": "gym-front", "sensor": "MC-38", "state": "OPEN" }

PUB  access/tower-a/ctrl-12/event     qos 1
{
  "ts": "2026-09-19T10:22:30Z",
  "hw": "ESP32-WROOM-32",
  "controllerId": "CTRL-12",
  "doorId": "lobby",
  "event": "ACCESS_DENIED",
  "method": "PIN",
  "reason": "UNKNOWN_PIN"
}

PUB  access/tower-a/ctrl-04/health    qos 0 retained
{ "hw": "ESP32-S3", "online": true, "tamper": false, "mains": true }
Live ESP32-S3 publishes — Go API and React boards subscribe

React for every panel. ESP32-S3 publishes MQTT.

Super Admin, Company Admin, and the user door list are React applications. The Go API owns authentication, PIN hashing, policy, and /cmd unlocks. Field hardware is named: ESP32-S3 / ESP32-WROOM-32 as the hardware door controller, PN532 NFC, Wiegand RFID, 4×4 PIN keypad, 12V maglock or strike, MC-38 door contact, and HC-SR501 REX.

El ESP32 publica eventos aunque nadie tenga la app abierta. Cuando Company Admin abre la monitorización en vivo, el feed ya está en el broker.

React JS Go API MQTT ESP32-S3 ESP32-WROOM-32 PN532 MC-38 HC-SR501
React JS consoles

Los paneles en vivo se suscriben a temas del controlador. Super Admin y Company Admin nunca hacen polling al teclado.

Go backend

Motor de políticas, ciclo de vida del PIN y comandos MQTT de vuelta al relé del controlador.

MQTT — ESP32 publishes

ACCESS_GRANTED, ACCESS_DENIED, REX, DOOR_FORCED, DPS, health. El broker los reparte a los tableros en vivo.

ESP32 hardware door controller

ESP32-S3 / ESP32-WROOM-32 · PN532 · Wiegand RFID · teclado 4×4 · maglock 12V · MC-38 · HC-SR501 — edificio, gimnasio, cafetería y ascensor.

Qué cambió después del go-live

Personal PINs, not sticky notes

Los códigos de cafetería y gimnasio dejaron de compartirse. Cada persona tiene un PIN que Company Admin puede rotar sin visitar el sitio.

Live, not next-day logs

Super Admin y Company Admin ven los desbloqueos en el momento, incluidos los intentos de PIN fallidos en puertas de personal.

Users know their doors

La lista My Doors acabó con las conjeturas de recepción. Si Gym no está en la lista, la puerta no se abre.

¿Necesita esto para su edificio, gimnasio o cafetería?

Mapeamos la monitorización Super Admin, PIN y operaciones de personas de Company Admin, una lista de puertas de usuario y un controlador de puerta hardware ESP32-S3 (publicación MQTT) en una plataforma React y Go que sus equipos pueden operar.