Exemple #1
0
        private async Task <RfidReaderResult> Read()
        {
            RfidReaderResult retvalue = new RfidReaderResult();
            var dataReader            = new DataReader(_rfidReader.InputStream);

            try
            {
                SetStatus("Awaiting Data from RFID Reader");
                var numBytesRecvd = await dataReader.LoadAsync(1024);

                retvalue.Result = new byte[numBytesRecvd];
                if (numBytesRecvd > 0)
                {
                    SetStatus("Data successfully read from RFID Reader");
                    dataReader.ReadBytes(retvalue.Result);
                    retvalue.IsSuccessful = true;
                    retvalue.Message      = "Data successfully read from RFID Reader";
                }
            }
            catch (Exception ex)
            {
                retvalue.IsSuccessful = false;
                retvalue.Message      = ex.Message;
            }
            finally
            {
                if (dataReader != null)
                {
                    dataReader.DetachStream();
                    dataReader = null;
                }
            }
            return(retvalue);
        }
Exemple #2
0
        private async Task <RfidReaderResult> Write(byte[] writeBytes)
        {
            var dataWriter            = new DataWriter(_rfidReader.OutputStream);
            RfidReaderResult retvalue = new RfidReaderResult();

            try
            {
                //send the message
                SetStatus("Writing command to RFID Reader");
                dataWriter.WriteBytes(writeBytes);
                await dataWriter.StoreAsync();

                retvalue.IsSuccessful = true;
                retvalue.Result       = writeBytes;
                retvalue.Message      = "Text has been successfully sent";
                SetStatus("Writing of command has been successful");
            }
            catch (Exception ex)
            {
                retvalue.IsSuccessful = false;
                retvalue.Message      = ex.Message;
            }
            finally
            {
                if (dataWriter != null)
                {
                    dataWriter.DetachStream();
                    dataWriter = null;
                }
            }
            return(retvalue);
        }
        /// <summary>
        /// Serial write function to PN532
        /// </summary>
        /// <param name="writeBytes">byte array sent to the Cottonwood</param>
        /// <returns>bytes written and success indicator</returns>
        private async Task <RfidReaderResult> Write(byte[] writeBytes)
        {
            Debug.WriteLine(string.Format("Write: {0}", BitConverter.ToString(writeBytes)));

            var dataWriter = new DataWriter(_rfidReader.OutputStream);
            var retvalue   = new RfidReaderResult();

            try
            {
                //send the message
                //Writing command to RFID Reader
                dataWriter.WriteBytes(writeBytes);
                await dataWriter.StoreAsync();

                retvalue.IsSuccessful = true;
                retvalue.Result       = writeBytes;
                //Writing of command has been successful
            }
            finally
            {
                dataWriter.DetachStream();
            }

            return(retvalue);
        }
 private async Task<RfidReaderResult> Read()
 {
     RfidReaderResult retvalue = new RfidReaderResult();
     var dataReader = new DataReader(_rfidReader.InputStream);
     try
     {
         SetStatus("Awaiting Data from RFID Reader");
         var numBytesRecvd = await dataReader.LoadAsync(1024);
         retvalue.Result = new byte[numBytesRecvd];
         if (numBytesRecvd > 0)
         {
             SetStatus("Data successfully read from RFID Reader");
             dataReader.ReadBytes(retvalue.Result);
             retvalue.IsSuccessful = true;
             retvalue.Message = "Data successfully read from RFID Reader";
         }
     }
     catch (Exception ex)
     {
         retvalue.IsSuccessful = false;
         retvalue.Message = ex.Message;
     }
     finally
     {
         if (dataReader != null)
         {
             dataReader.DetachStream();
             dataReader = null;
         }
     }
     return retvalue;
 }
Exemple #5
0
        /// <summary>
        /// Serial write function to the Cottonwood
        /// </summary>
        /// <param name="writeBytes">byte array sent to the Cottonwood</param>
        /// <returns>bytes written and success indicator</returns>
        private async Task <RfidReaderResult> Write(byte[] writeBytes)
        {
            var dataWriter            = new DataWriter(_rfidReader.OutputStream);
            RfidReaderResult retvalue = new RfidReaderResult();

            try
            {
                //send the message
                //Writing command to RFID Reader
                dataWriter.WriteBytes(writeBytes);
                await dataWriter.StoreAsync();

                retvalue.IsSuccessful = true;
                retvalue.Result       = writeBytes;
                //Writing of command has been successful
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                if (dataWriter != null)
                {
                    dataWriter.DetachStream();
                    dataWriter = null;
                }
            }
            return(retvalue);
        }
        /// <summary>
        /// Serial read
        /// </summary>
        /// <returns>bytes read</returns>
        private async Task <RfidReaderResult> Read()
        {
            var retvalue   = new RfidReaderResult();
            var dataReader = new DataReader(_rfidReader.InputStream);

            var cancellationTokenSource = new CancellationTokenSource(2000);
            var token = cancellationTokenSource.Token;

            try
            {
                //Awaiting Data from RFID Reader

                var numBytesRecvd = await dataReader.LoadAsync(1024).AsTask(token);

                retvalue.Result = new byte[numBytesRecvd];
                if (numBytesRecvd > 0)
                {
                    //Data successfully read from RFID Reader"
                    dataReader.ReadBytes(retvalue.Result);
                    retvalue.IsSuccessful = true;

                    Debug.WriteLine($"Read: {BitConverter.ToString(retvalue.Result)}");
                }
            }
            catch (Exception)
            {
                //dataReader.DetachStream();
                //_rfidReader.Dispose();
                retvalue.IsSuccessful = false;
                throw;
            }
            finally
            {
                dataReader.DetachStream();
            }

            return(retvalue);
        }
 /// <summary>
 /// Serial write function to the Cottonwood
 /// </summary>
 /// <param name="writeBytes">byte array sent to the Cottonwood</param>
 /// <returns>bytes written and success indicator</returns>
 private async Task<RfidReaderResult> Write(byte[] writeBytes)
 {
     var dataWriter = new DataWriter(_rfidReader.OutputStream);
     RfidReaderResult retvalue = new RfidReaderResult();
     try
     {
         //send the message
         //Writing command to RFID Reader
         dataWriter.WriteBytes(writeBytes);
         await dataWriter.StoreAsync();
         retvalue.IsSuccessful = true;
         retvalue.Result = writeBytes;
         //Writing of command has been successful
     }
     catch (Exception ex)
     {
         throw ex;
     }
     finally
     {
         if (dataWriter != null)
         {
             dataWriter.DetachStream();
             dataWriter = null;
         }
     }
     return retvalue;
 }
 private async Task<RfidReaderResult> Write(byte[] writeBytes)
 {
     var dataWriter = new DataWriter(_rfidReader.OutputStream);
     RfidReaderResult retvalue = new RfidReaderResult();
     try
     {
         //send the message
         SetStatus("Writing command to RFID Reader");
         dataWriter.WriteBytes(writeBytes);
         await dataWriter.StoreAsync();
         retvalue.IsSuccessful = true;
         retvalue.Result = writeBytes;
         retvalue.Message = "Text has been successfully sent";
         SetStatus("Writing of command has been successful");
     }
     catch (Exception ex)
     {
         retvalue.IsSuccessful = false;
         retvalue.Message = ex.Message;
     }
     finally
     {
         if (dataWriter != null)
         {
             dataWriter.DetachStream();
             dataWriter = null;
         }
     }
     return retvalue;
 }