Example #1
0
        static void Main(string[] args)
        {
            _reader = new FedmIscReader();

            //Initilize internal table size (default is 0, without initilization, there is no table to place data coming in)
            _reader.SetTableSize(FedmIscReaderConst.BRM_TABLE, 255);


            //Create a new FedmTaskListener object, this Interface implements the OnNewNotificaiton() method, which will fire when the reader sends through a new notificaiton
            FedmTaskListener listener = new NotificaitonTaskListener(_reader);

            //Set up FedmTaskOption, this is where you configure the port to listen to, as well as the option to reply with an acknoledgement
            FedmTaskOption taskOpt = new FedmTaskOption()
            {
                IPPort        = 10005,
                NotifyWithAck = 0 // 0 = Off, 1 = Off
            };

            Console.WriteLine("Begin Listening");
            Console.WriteLine();

            //Initialize notificaiotn listening, by starting a new background task
            _reader.StartAsyncTask(FedmTaskOption.ID_NOTIFICATION, listener, taskOpt);


            listener.OnNewNotification(1, "172.20.43.67", 10005);



            Console.ReadKey();
        }
        public AuthentMifare(FedmIscReader reader)
        {
            InitializeComponent();
            // Init Reader Object
            this.fedm = reader;

            // set components
            this.comboBoxKeyLoc.Enabled       = true;
            this.comboBoxKeyLoc.SelectedIndex = 1; // Key from Reader

            this.comboBoxKeyType.Enabled       = true;
            this.comboBoxKeyType.SelectedIndex = 0; // Key A

            this.numericUpDown_DBAdr.Enabled  = true;
            this.numericUpDown_KeyAdr.Enabled = true;

            this.textBox_Key1.Enabled = false;
            this.textBox_Key1.Text    = "00";

            this.textBox_Key2.Enabled = false;
            this.textBox_Key2.Text    = "00";

            this.textBox_Key3.Enabled = false;
            this.textBox_Key3.Text    = "00";

            this.textBox_Key4.Enabled = false;
            this.textBox_Key4.Text    = "00";

            this.textBox_Key5.Enabled = false;
            this.textBox_Key5.Text    = "00";

            this.textBox_Key6.Enabled = false;
            this.textBox_Key6.Text    = "00";
        }
Example #3
0
        public void OnReceiveProtocol(FedmIscReader reader, string receiveProtocol)
        {
            IAsyncResult result;
            DelegateOnReceiveProtocol ReceiveProtocolMethod = new DelegateOnReceiveProtocol(DisplayReceiveProtocol);

            result = (IAsyncResult)Invoke(ReceiveProtocolMethod, receiveProtocol);
        }
Example #4
0
 private void labelScannerConnection_DoubleClick(object sender, EventArgs e)
 {
     reader = new FedmIscReader();
     L.DisconnectScanner(reader);
     labelScannerConnection.Text            = "Disconnect";
     conncetToScannerToolStripMenuItem.Text = "Connect to Scanner";
 }
Example #5
0
        public ScanSample()
        {
            //
            // Erforderlich für die Windows Form-Designerunterstützung
            //
            InitializeComponent();

            // initializing of reader
            try
            {
                reader           = new FedmIscReader();
                delOnRecProtocol = new DelegateOnRecProtocol(DisplayReceiveProtocol);
            }
            catch (FedmException e)
            {
                System.Console.WriteLine(e.ToString());
                Application.Exit();
            }

            // Set the parameters in dialog
            comboSerialPort.SelectedItem = Convert.ToString(1);
            textBoxBusAddress.Text       = Convert.ToString(255);
            textBoxTimeout.Text          = "600";
            buttonConnect.Checked        = false;
            comboAscii.SelectedIndex     = 1;          //output ASCii
        }
Example #6
0
        //Add and Connect Reader
        public void AddDevice(long DeviceID)

        {
            FedmIscReader AdUSBReader;

            AdUSBReader = new FedmIscReader();

            // add ebent listener for protocol streams to be displayed in a window
            AdUSBReader.AddEventListener((FeIscListener)this, FeIscListenerConst.SEND_STRING_EVENT);
            AdUSBReader.AddEventListener((FeIscListener)this, FeIscListenerConst.RECEIVE_STRING_EVENT);

            // max IIDs for each Inventory
            AdUSBReader.SetTableSize(FedmIscReaderConst.ISO_TABLE, 128);

            //Try to connect Readers
            try
            {
                //Connect with USB_Port
                AdUSBReader.ConnectUSB((int)DeviceID);
                map.Add(DeviceID, AdUSBReader);
                this.listBoxUSBReaders.Items.Add(DeviceID.ToString());
                ReaderCount();
                // Read out ReadInfo of connected reader
                AdUSBReader.ReadReaderInfo();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
        }
Example #7
0
        public void OnSendProtocol(FedmIscReader reader, string sendProtocol)
        {
            IAsyncResult           result;
            DelegateOnSendProtocol SendProtocolMethod = new DelegateOnSendProtocol(DisplaySendProtocol);

            result = (IAsyncResult)Invoke(SendProtocolMethod, sendProtocol);
        }
        public TagHandlerSample()
        {
            InitializeComponent();

            Reader = new FedmIscReader();

            // initializes the internal table for max. 50 tags per Inventory
            Reader.SetTableSize(FedmIscReaderConst.ISO_TABLE, 50);
        }
Example #9
0
        static void Main(string[] args)
        {
            ServiceLocator.Reader           = _reader = new FedmIscReader();
            ServiceLocator.ReaderController = _controller = new ReaderController(_reader);
            ServiceLocator.Settings         = _settings = Settings.Instance;
            Console.OutputEncoding          = Encoding.UTF8;

            new MainMenu(ServiceLocator.ReaderController).Run();

            //Run();
        }
 public void DisconnectScanner(FedmIscReader reader)
 {
     if (reader.Connected)
     {
         reader.DisConnect();
     }
     else
     {
         Console.WriteLine("No device connected");
     }
 }
        public AuthentMYD(FedmIscReader reader)
        {
            InitializeComponent();

            // Init Reader Object
            this.fedm = reader;
            this.mode = 0;

            // Init Values
            this.comboBox_AuthSequence.SelectedIndex = 0;
            this.numericUpDown_AuthCntAdr.Value      = 0x03; // Default value
        }
Example #12
0
 private void conncetToScannerToolStripMenuItem_Click(object sender, EventArgs e)
 {
     reader = new FedmIscReader();
     L.ConnectScanner(reader);
     if (reader.Connected)
     {
         labelScannerConnection.Text            = "Connected";
         conncetToScannerToolStripMenuItem.Text = "Disconnect to Scanner";
     }
     else
     {
         MessageBox.Show("Please connect scanner");
     }
 }
Example #13
0
 //Constructor
 public NotificationSample()
 {
     InitializeComponent();
     try
     {
         reader = new FedmIscReader();
         reader.SetTableSize(FedmIscReaderConst.BRM_TABLE, 255);             // max 255 tag with each notification
         taskOpt = new FedmTaskOption();
     }
     catch (FedmException ex)
     {
         MessageBox.Show(ex.ToString());
         return;
     }
 }
Example #14
0
        //Read activated/selected Reader
        public void ReadActiveReader(long DeviceID)
        {
            string[] serialNumber = new string[0];

            int index;

            //Activate from selected reader
            index     = map.IndexOfKey(DeviceID);
            ActReader = (FedmIscReader)map.GetByIndex(index);

            ActReader.SetData(FedmIscReaderID.FEDM_ISC_TMP_B0_CMD, 0x01);
            ActReader.SetData(FedmIscReaderID.FEDM_ISC_TMP_B0_MODE, 0x00);
            try
            {
                ActReader.ResetTable(FedmIscReaderConst.ISO_TABLE);

                ActReader.SendProtocol(0x69);             // RFReset
                ActReader.SendProtocol(0xB0);             // ISOCmd

                while (ActReader.GetLastStatus() == 0x94) // more flag set?
                {
                    ActReader.SetData(FedmIscReaderID.FEDM_ISC_TMP_B0_MODE_MORE, 0x01);
                    ActReader.SendProtocol(0xB0);
                }
                //new dimensiion from array serialNumber
                serialNumber = new string[ActReader.GetTableLength(FedmIscReaderConst.ISO_TABLE)];

                this.labelTagsNumb.Text = ActReader.GetTableLength(FedmIscReaderConst.ISO_TABLE).ToString();

                if (ActReader.GetTableLength(FedmIscReaderConst.ISO_TABLE) > 0)
                {
                    int i;
                    for (i = 0; i <= (ActReader.GetTableLength(FedmIscReaderConst.ISO_TABLE) - 1); i++)
                    {
                        ActReader.GetTableData(i, FedmIscReaderConst.ISO_TABLE, FedmIscReaderConst.DATA_SNR, out serialNumber[i]);
                    }
                    TagChanged(serialNumber);
                }
                else
                {
                    this.listBoxTags.Items.Clear();
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
        }
        private void Form1_Load(object sender, System.EventArgs e)
        {
//			int back = 0;
            try
            {
                reader = new FedmIscReader();
                mux    = new FedmIscFunctionUnit(reader, FedmIscFunctionUnit.FU_TYPE_MUX);
                umux   = new FedmIscFunctionUnit(reader, FedmIscFunctionUnit.FU_TYPE_UMUX);
                dat    = new FedmIscFunctionUnit(reader, FedmIscFunctionUnit.FU_TYPE_DAT);

// the next block is a supplement to manage a complex function unit tree with one root element
// but be care with this methods !! Please have a look to the ISC.SDK.NET manual.
// enable this block for debugging purpose

/*				back = mux.AddChild(1, dat);// a previous created function unit object is added to the
 *											// child list of the root
 *
 *                              FedmIscFunctionUnit child;	// local declaration of a child
 *                              child = mux.GetChild(1);	// local child object is returned from internal child list
 *                                                                                      // (identical with object dat)
 *
 *                              back = mux.DeleteChild(1);	// child is removed from internal table, but the object (dat)
 *                                                                                      // exists continuously.
 *                              child = mux.GetChild(1);	// child is unvalid
 *                              back = mux.DeleteChild(1);	// nothing happens
 */
            }
            catch (FedmException ex)
            {
                MessageBox.Show(ex.Message);
            }

            try
            {
                reader.ConnectCOMM(1, true);                // COM-Port 1
                reader.SetBusAddress(255);
                reader.SetPortPara("Baud", "38400");
                reader.SetPortPara("Frame", "8E1");
            }
            catch (FedmException ex)
            {
                MessageBox.Show(ex.Message, "Error - FedmException");
            }
            catch (FePortDriverException ex)
            {
                MessageBox.Show(ex.Message, "Error - FePortDriverException");
            }
        }
Example #16
0
        public bool Scanning;                                           // to check from outside if the Communicator is currently scanning for chips



        /////////////////////// Methods ///////////////////////
        ///////////////////////////////////////////////////////

        // Constuctor
        private ReaderCommunicator()
        {
            try
            {
                _reader = new FedmIscReader();
                Logger.GetInstance().Log("RC: FedmIscReader constructed");
            }
            catch (Exception e)
            {
                Logger.GetInstance().Log("RC: --EXCEPTION caught when generating a new FedmIscReader object: " + e.Message);
            }

            //TODO check if constructing was possible?
            _reader.SetTableSize(TableId, TableSize); // set the table used to the tableID and the dependent size
            Logger.GetInstance().Log("RC: Tablesize set");
        }
Example #17
0
        void AddDevice(int deviceId)
        {
            var device = new FedmIscReader();

            device.SetTableSize(FedmIscReaderConst.ISO_TABLE, 128);

            try
            {
                device.ConnectUSB(deviceId);
                Devices.Add(deviceId, device);
                device.ReadReaderInfo();
            }
            catch (Exception e)
            {
                Console.Error.WriteLine(e);
            }
        }
        public APDU_Sample()
        {
            try
            {
                fedm      = new FedmIscReader();
                APDU_Prot = new FedmCprApdu(this);
                fedm.SetTableSize(FedmIscReaderConst.ISO_TABLE, 128);
            }
            catch (Exception ex)
            {
                MessageBox.Show(this, ex.ToString(), "Error");
            }



            config = new PortConnection();
            config.PortConfig(ref fedm);
            DialogResult reponse = config.ShowDialog();

            // Check Reader - Support of APDUs
            if (fedm.GetReaderType() == FedmIscReaderConst.TYPE_CPR02 ||
                fedm.GetReaderType() == FedmIscReaderConst.TYPE_CPR04_U ||
                fedm.GetReaderType() == FedmIscReaderConst.TYPE_CPR40_XX ||
                fedm.GetReaderType() == FedmIscReaderConst.TYPE_CPR40_XX_U ||
                fedm.GetReaderType() == FedmIscReaderConst.TYPE_CPR50_XX ||
                fedm.GetReaderType() == FedmIscReaderConst.TYPE_CPR52_XX ||
                fedm.GetReaderType() == FedmIscReaderConst.TYPE_CPR44_XX ||
                fedm.GetReaderType() == FedmIscReaderConst.TYPE_CPR30_XX ||
                fedm.GetReaderType() == FedmIscReaderConst.TYPE_CPRM02)
            {
            }
            else
            {
                MessageBox.Show(this, "Reader doesn't support APDU commands!", "Error");
            }

            InitializeComponent();
            // First send "Inventory" and select Tag before APDU Input
            this.button_sendAPDU.Enabled    = false;
            this.maskedTextBox_APDU.Enabled = false;
        }
 public void PortConfig(ref FedmIscReader reader)
 {
     InitializeComponent();
     this.radioButtonUSB.Checked = true;
     try
     {
         int i;
         for (i = 1; i <= 4; i++)
         {
             this.comboBoxPortnumber.Items.Add(i);
         }
         this.comboBoxPortnumber.SelectedIndex = 0;
     }
     catch (FePortDriverException ex)
     {
         MessageBox.Show(ex.ToString());
     }
     this.comboBoxBaudrate.SelectedIndex = 5;
     this.comboBoxFrame.SelectedIndex    = 7;
     this.Reader = reader;
 }
Example #20
0
        void ReadDevice(int deviceId, FedmIscReader device)
        {
            device.SetData(FedmIscReaderID.FEDM_ISC_TMP_B0_CMD, 0x01);
            device.SetData(FedmIscReaderID.FEDM_ISC_TMP_B0_MODE, 0x00);

            try
            {
                device.ResetTable(FedmIscReaderConst.ISO_TABLE);

                device.SendProtocol(0x69);
                device.SendProtocol(0xB0);

                while (device.GetLastStatus() == 0x94)
                {
                    device.SetData(FedmIscReaderID.FEDM_ISC_TMP_B0_MODE_MORE, 0x01);
                    device.SendProtocol(0xB0);
                }

                var transponders = new string[device.GetTableLength(FedmIscReaderConst.ISO_TABLE)];

                if (transponders.Length > 0)
                {
                    for (var i = 0; i < transponders.Length; i++)
                    {
                        device.GetTableData(i, FedmIscReaderConst.ISO_TABLE, FedmIscReaderConst.DATA_SNR,
                                            out transponders[i]);
                    }
                }

                _rfidSendRepository.Send(new Service.Models.RfidData {
                    DeviceId = deviceId.ToString(), Timestamp = DateTime.Now, Transponders = transponders
                });
                Console.WriteLine($"Device {deviceId} read tags: {string.Join(",", transponders)}");
            }
            catch (Exception e)
            {
                Console.Error.WriteLine(e);
            }
        }
Example #21
0
 public NotificaitonTaskListener(FedmIscReader reader)
 {
     _reader = reader;
 }
Example #22
0
 //method from interface FeIscListener
 public void OnSendProtocol(FedmIscReader reader, String sendProtocol)
 {
     DisplaySendProtocol(sendProtocol);
 }
Example #23
0
 public void OnSendProtocol(FedmIscReader reader, byte[] sendProtocol)
 {
 }
Example #24
0
 public ReaderController(FedmIscReader reader)
 {
     _reader = reader;
     _reader.SetTableSize(FedmIscReaderConst.ISO_TABLE, 255);
 }
Example #25
0
        /************************************************ENDE******************************/

        /************************************Interface(FeIscListener) Methods*****************************/
        public void OnReceiveProtocol(FedmIscReader reader, byte[] receiveProtocol)
        {
        }
Example #26
0
 private void LeserApplikation_Load(object sender, System.EventArgs e)
 {
     reader = new FedmIscReader();
     int back = reader.SetTableSize(FedmIscReaderConst.ISO_TABLE, 128);
 }
 public void ConnectScanner(FedmIscReader reader)
 {
     reader.ConnectUSB(0);
 }
Example #28
0
        public void  OnReceiveProtocol(FedmIscReader reader, byte[] receiveProtocol)
        {
//            DelegateOnRecProtocol delOnRecProtocol = new DelegateOnRecProtocol(DisplayReceiveProtocol);
            this.Invoke(delOnRecProtocol, receiveProtocol);
        }
Example #29
0
 public void  OnSendProtocol(FedmIscReader reader, string sendProtocol)
 {
     return;
 }
Example #30
0
 public void  OnReceiveProtocol(FedmIscReader reader, string receiveProtocol)
 {
     return;
 }