Access Control Hardware
Update: I never ended up building my own, I bought another IEI HubMax. While the system requires a Windows box to make changes, I did manage to get it to log, in realtime, to a Linux-based server, which then parses the entry logs and dumps them into MySQL, to ultimately be searched or reported via a web interface. The code is available in CVS, called ieilogd and there's also an explanation of how it was done on my blog. Basically, it's quite simple - the HubMax has a setting to log everything in realtime to a "serial line printer". We just plug the serial output from the board into a serial port on a Linux box (or, though I don't have it working yet, a nice little Soekris board) and read the serial port. Viola! Plaintext logging, in realtime. Just parse it out.
If anyone happens by this, and ieilogd doesn't work for you, just drop me an e-mail.
This is some general information that I've amassed on access control hardware, after a project I have taken on to replace a failed IEI HubMax controller at the local Ambulance Corps. The system is an embedded computer which lives in a small alarm-system-style wall-mount cabinet and controls access to their building's two doors. Each door is equipped with a weatherproof keypad and an electric lock, which are controller by the master unit. The master unit is programmed via an RS232 connection and proprietary Windows-based software, and is capable of storing access codes for thousands of users, dealing with different access levels and "time zones" for access, and logging all activity.
The system has recently failed to communicate with anything else over either of its two serial interfaces, and therefore is stuck in an intermediate state where no changes can be made and no access logs can be downloaded.
My project, intended to be open-source, would consist of the following components:
- An embedded computer running Linux such as the Soekris, with low power requirements so that it could be powered off of a battery in the event of power failure.
- Two outputs capable of driving relays which will in turn control the electric door locks.
- Two RS-232 inputs which are capable of reading the output from the keypads, which should conform to the Wiegand Protocol.
- One RS-232 port for programming and diagnostics
- One Ethernet connection for network management
- A web-based interface, with authentication, for programming of the system and log viewing/analysis
- A SSH CLI interface (pure text or Ncurses) for programming and log viewing
Most of IEI's keypads appear to use an industry-standard serial communications protocol, known as the Wiegand protocol. Information can be found on various sites.
[http:www.itworksolutions.com/brochure/catalogue/RFID/Communication%2520Protocol_RFID-M1.pdf IT Works]
Forum post on Wiegand Protocol