Apartment building access control system fix


Table of contents

The issue

An RFID apartment building access control system is not working. The controller is seeing random IDs each time a tag is read.

The inventory

  • 1 x C3-400 ZKTeco RFID Multi-Door Controller
  • 6 x whitelabeled, seemingly no-name, wiegand-protocol tag readers “1000-EM”
  • 3 x doors (2 readers for each door)
  • ~100 m. of UTP cable going to each door/reader pair

The investigation

Controller

The controller setup I found:

At the bottom: the brown/brown-striped cable pairs go to the V- terminal of the magnet locks. While orange/orange-striped go to the V+.

At the top: cables go to the Wiegand readers. Reader 2 has some more optional lines connected.

Readers

The readers are mounted near the door, both side of the wall and share data lines.

To enable data line sharing - diodes are placed on the D0 and D1 lines.

The diodes I found installed (at least for the one line I checked) were HER107.

The fixing

Doubling up data lines

You can see from investigation phase, that the power lines were doubled for the readers (GND and +12V). Expecting a better connection, I changed that to have the data lines doubled instead. The result was the same - garbage data. Seemingly nothing changed.

Poor-man’s shielding arrangement

Looking at it further - I noticed that the data lines are from a single pair - orange for D0 and orange-striped for D1. That might cause interference between them, which would degrade the signal & would be a reason for garbage data received at the controller.

The cable distances are below 200 m, but still - I used a single line for +12V and moved the data lines to separate twisted pairs and connected a single cable from each twisted pair to GND to act as a “poor man shielding” for the data line. So single cables for +12V, D0 and D1 and 3 x GND cables with two of them as shielding for data lines.

Diodes with better specs

I tested the new cable arrangement and I actually managed to get data from a single reader, but it was flaky - only about every second/third transmission got to the controller. When I connected the second reader on the lines - it went crashing down and garbage again.

The shielding document also talked about voltage drops, so I investigated how do the diodes affect the voltage.

I used UF4007 diodes and the data sheet for them shows a 1.7 volt forward voltage (i.e. voltage drop), which for the reader, I imagine, would be shit-ton enough to cause issues.

The original HER107 diodes had the exact same voltage drop.

To combat this, I looked for more appropriate diodes and found them - Schottky diodes, specifically the 1N5817.

The voltage drop is a more manageable 0.45 volts with RMS voltage and current specs more than enough for the task.

With this setup - the controller is now receiving the correct data, with no misses!

Connecting the door magnets

Looking at how the magnets were connected to the controller (V- to GND, V+ to NC) - I found no match for that arrangement in the controller’s documentation. So I removed those cables and connected as per the “External power supply for NC lock” diagram.

The power supply is shared between the readers and locks, but it is 5 amps, so should be enough.

Managing the controller

The software that was reported working with this specific controller was ZKAccess. I used the 3.5 version of the software, and as much as I tried - I couldn’t get it to connect to the controller.

Only after a neighbour suggested setting the timezone of the OS running the software to “China” - I’ve set it to “Beijing” and it connected straight away! Amazing.

Conclusion

The final wiring on the controller:

  • The controller management software needs a Beijing timezone set on the OS to detect the device!
  • Using an electronics component (diode) rated higher in one parameter (voltage, current), might have an undesirable trade-off in a more important parameter (forward-voltage, meaning voltage drop), which can ultimately break the system.
  • Sending different signals over a single twisted pair will be rife with interference.

Further action

  • The controller wiring mentions adding diodes near the locks to “protect the access control system against self-induced electromotive force generated by an electronic lock at the instant of switching off/on”. Might look into that to preserve the controller’s longevity.
  • Figuring out what the optional wires for the readers are might be interesting.
  • Connecting additional peripherals, like door lock status sensors.