Projects/Access Control/Interface

The access control system interface card connects the peripheral devices of system to the Raspberry Pi. The peripheral devices include, door lock FET driver board, VFD 2 line 16 character display, sensor inputs, the RFID reader, and the power supply voltage monitor.
 * Hardware

The interface card is based on the Olimexino-32U4 board. This low cost board has advantages over the Minimus and the Leonardo in terms of cost and functions. Important to this design it has analog inputs, supports 8 USB endpoints, and has a .1" header matrix. The Arduino Leonardo bootloader has been replaced with the Atmel DFU bootloader.

A protoboard daughter card is added to connect the peripheral devices:

The Interface card enumerates as two CDC Serial ports to the Raspberry Pi. The first serial port is transparently passed through to the RFID reader. The second serial port outputs to the VFD display and controls the other I/O functions:
 * Software

Alphanumeric characters are passed from the serial port to the VFD display. Other characters are trapped and used as follows: Escape character (0x1B) following character is sent to VFD as a control to setup VFD, clear VFD etc. See HD44780 datasheet.

Control A (0x01) Sets update mode where the status of the Olimexino is regularly updated to display. This shows USB state, supply and battery voltages, and sensor inputs.

Control B (0x02) stops the above updates and clears display

Control C (0x03) sets lock output on (high)

Control D (0x04) sets lock output off (low)

Control E (0x05) Pulses the lock output on (high) for 100ms

Control F (0x06) Returns status in form "VSxx.x VByy.y Iz/r/n" where xx.x is the supply voltage, yy.y is the battery voltage, and z is the hex representation of the sensor inputs