Skip to main content

HID Prox Shenanigans

In case anyone wanted to know this (I did):

The raw data you get from a HID Prox (marked "XceedID", not sure the data protocol; PACSProbe thinks maybe HID H10301, but the checksum is not quite right when I try that in Python) card using the USB readers (like the Omnikey 5025CL) is something like 0x022845DA. The data transmitted from a Wiegand reader (like the ProxPoint Plus 6005BGB00) is something like 0x1422ED.

That Wiegand code is extracted from the raw one as follows: (raw & 0xFFFFFF)>>1 == wiegand

Furthermore, if you cared about facility and card serial data, the facility code is the first octet of the Wiegand data (0x14) and the card serial is the last two (0x22ED).

The use case I have for this is, I have a USB reader I want to use for PACS login to an inventory control kiosk (so the engineers have no excuses for not checking in and out hardware from the feasibility lab here at work), and I also want to use the same badges on a standalone door controller for access control to the lab (our facility's Wiegand alarm system ran out of channels so we cannot add more doors). And hey, be real nice if I could directly generate the ACL for the door from the kiosk setup.