KLOKL Bridge
Turns an OSDP card reader into a native Home Assistant device. Card, keypad, LED and beeper, all over MQTT, all on your own network. For the flush-mount box behind the reader, or the DIN rail.

- Fits behind the reader
- Flush-mount
- With the adapter
- DIN rail
- Professional readers
- OSDP · RS-485
- Home Assistant discovery
- MQTT
What the bridge does
Hardware and firmware are our own work, from the 12-volt terminal to the last MQTT topic.
Device
Fits into a standard flush-mount box, directly behind the reader.
Clip the same module onto a DIN rail when the reader is wired to the distribution board.
12 V in; the bridge passes the supply on to the reader.
Robust bus for long cable runs; switchable 120 Ω termination.
Resettable fuses and surge protection on supply and bus.
Power, Wi-Fi, MQTT/Home Assistant and reader at a glance.
Firmware and diagnostics without opening the module.
A closed module for the flush-mount box behind the reader, or for the DIN rail in the distribution board.
Firmware
Framing, CRC, polling, card and keypad events, LED and beeper control according to OSDP v2.2.
AES-encrypted OSDP Secure Channel for readers that offer it.
Card plus master code: the code is checked on the bridge. It can also be used on its own or managed from Home Assistant.
Wi-Fi setup through its own access point, status page and diagnostics in the browser.
HTTP, HTTPS or both, with your own certificate or one generated on the device.
New firmware through the web interface.
Finds its way back into Wi-Fi and MQTT without a restart.
Written from the protocol up in C++, not a wrapper around someone else’s library.
Home Assistant
Card data, keypad, PIN status and reader status appear as sensors, without YAML.
“Feedback OK” and “Feedback Denied” control the reader’s LED and beeper from your automations.
Set the master code from Home Assistant as a text entity.
Firmware version, IP, uptime, restart reason and Wi-Fi signal.
Optional TLS-encrypted connection to your broker.
Derived from the chip address, so several readers never collide.
Connect it, and the reader is a normal Home Assistant device.
Flush-mount module
Fits into a standard flush-mount box, directly behind the reader.
A closed module for the flush-mount box behind the reader, or for the DIN rail in the distribution board.
From the door to Home Assistant
Hold a card to the reader and follow the message. Everything happens inside your own network: the bridge speaks OSDP to the reader and MQTT to your broker. Nothing leaves the house.
Card reader
A professional OSDP reader with keypad at the door. It reads cards and codes, it decides nothing.

KLOKL Bridge
Speaks OSDP to the reader, checks the access code on the device as a second factor and publishes every event via MQTT.
…/card_data…/keypad…/pin_status…/cmd/feedback_okYour MQTT broker
For example the Mosquitto add-on in Home Assistant. Optionally encrypted with TLS (MQTTS).
- Front doorUnlocked
Home Assistant
Sensors and buttons appear by themselves. Your automation decides who gets in and opens the lock you already use.
What travels over your network
OSDPreader → bridge osdp_RAW card 0004958372MQTTbridge → broker osdp-reader-3f9a12/card_data "0004958372"MQTTbroker → Home Assistant osdp-reader-3f9a12/card_dataHAautomation: card 0004958372 is on the list → unlock, press Feedback OKMQTTHome Assistant → broker osdp-reader-3f9a12/cmd/feedback_ok "PRESS"MQTTbroker → bridge osdp-reader-3f9a12/cmd/feedback_okOSDPbridge → reader osdp_LED green + osdp_BUZTechnical data
Firmware v1.0.2. Housing as designed for the first series.

| Form | Closed flush-mount module |
|---|---|
| Mounting | Flush-mount box or DIN rail (adapter) |
| Controller | ESP32-C3 |
| Wireless | Wi-Fi 2.4 GHz |
| Status LEDs | Power, Wi-Fi, MQTT/HA, reader |
| Service | USB-C, reset button |
| Input | 12 V DC |
|---|---|
| Reader supply | +12 V passed through to the reader |
| Protection | Resettable fuse, surge protection |
| Interface | RS-485, automatic direction |
|---|---|
| Protocol | OSDP v2.2 (IEC 60839-11-5), controller role |
| Speed | 19,200 baud (DS-K1107AMK) |
| Termination | 120 Ω, switchable |
| Tested reader | Hikvision DS-K1107AMK |
| MQTT | MQTT and MQTTS, Home Assistant discovery |
|---|---|
| PIN | Second factor, checked on the device |
| Web interface | HTTP and/or HTTPS, optional password |
| Updates | Over the air via web interface |
| Secure Channel | Supported, if the reader offers it |
Specifications of the prototype. Housing and details may change before the first series.

Up and running in an evening

Mount it. Into the flush-mount box behind the reader, or with the adapter onto the DIN rail in the distribution board.
Wire it. Four wires from the reader: +12 V, A+, B− and GND. 12 V from the power supply into the other terminal. The bridge powers the reader too.
Connect it. The bridge opens its own Wi-Fi called OSDP-Reader-Setup. Join it with your phone, pick your home network and enter your MQTT broker.
Automate it. Home Assistant finds the reader by itself. An automation checks the card and opens your lock, for example:
trigger: - platform: mqtt topic: osdp-reader-3f9a12/card_data condition: - "{{ trigger.payload in ['0004958372'] }}" action: - service: lock.unlock target: { entity_id: lock.front_door }
Questions about the bridge
Does the bridge need a cloud or an account?
No. The bridge talks only to the reader and to your own MQTT broker. There is no KLOKL server in between and no subscription.
Which readers work?
We develop and test with the Hikvision DS-K1107AMK (card and keypad, OSDP over RS-485). Other readers that speak OSDP over RS-485 should work as well. Wiegand-only readers are not supported.
How is the PIN meant to be used?
As a second factor: card plus a master code that the user knows. The bridge checks the code itself and reports the result; your automation opens only when card and code match. The code can also be used on its own, or you set it from Home Assistant.
Does the bridge open the door itself?
No, it has no relay. Home Assistant opens the lock or relay you already use, for example a smart lock or a relay module, through your automation.
What happens if Wi-Fi drops?
The bridge keeps talking to the reader and reconnects to Wi-Fi and MQTT on its own as soon as the network is back. Opening needs Home Assistant, so keep your lock’s usual fallback (key or code).
Can it read Mifare sectors?
Standard OSDP transmits the card number (UID), not the content of the card. That is what the bridge uses.
When can I buy it?
We are preparing a first small series and a crowdfunding campaign. Join the list and you hear it first.

Be there for the first batch
We are preparing a first small production run and a crowdfunding campaign. Leave your email and we write once, when the bridge can be ordered.
First series in preparation