//Step 3
        public FingerPrintPacket ReadPacket()
        {
            FingerPrintPacket result = null;

            lock (ControlPacketsLock)
            {
                if (_lstControlPackets.Count() > 0)
                {
                    result = _lstControlPackets[0];
                    _lstControlPackets.RemoveAt(0);
                }
            }
            return(result);
        }
 public void SetDeviceState(FingerPrintPacket.DeviceStates deviceState)
 {
     lock (ControlPacketsLock)
     {
         _lstControlPackets.Add(new FingerPrintPacket(FingerPrintPacket.PacketTypes.DeviceState, deviceState));
     }
 }