Skip to content
  1. Mar 04, 2017
  2. Feb 24, 2017
  3. Feb 14, 2017
  4. Feb 13, 2017
    • developer3's avatar
      uFR lib version 4.0.15 · 1be9915a
      developer3 authored
      The first big testing of the EEPROM partitions and FW version 4.x
      
      Libraries files:
        + include / header files
        + Binaries for multiple OS-es and platforms:
          + 32 and 64 bit Windows Intel,
          + 32 and 64 bit Windows Intel static GCC libraries,
          + 32 and 64 bit Linux Intel,
          + 64 bit OS X Intel,
          + 32 bit Linux ARM
          + 32 bit Linux ARM-HF
      1be9915a
  5. Jan 31, 2017
  6. Jan 16, 2017
  7. Nov 15, 2016
    • developer3's avatar
      uFR lib version 4.0.11 · 6bd8a579
      developer3 authored
      Fixed DST (summer time) in CardEncryption
      
      Libraries files:
        + include / header files
        + Binaries for multiple OS-es and platforms:
          + 32 and 64 bit Windows Intel,
          + 32 and 64 bit Windows Intel static GCC libraries,
          + 32 and 64 bit Linux Intel,
          + 64 bit OS X Intel,
          + 32 bit Linux ARM
          + 32 bit Linux ARM-HF
      6bd8a579
  8. Aug 31, 2016
    • developer4's avatar
      Added support for APDU commands for ISO 14443-4 tags through i-blocks (if tag... · 4fe6c1e4
      developer4 authored
      Added support for APDU commands for ISO 14443-4 tags through i-blocks (if tag support APDU commands).
      Added functions:
      UFR_STATUS DL_API uFR_APDU_Transceive(uint8_t cls, uint8_t ins, uint8_t p0, uint8_t p1, uint8_t *data_out, uint8_t data_out_len, uint8_t *data_in, uint8_t *response_len, uint8_t send_le);
      UFR_STATUS DL_API uFR_APDU_TransceiveM(UFR_HANDLE hndUFR, uint8_t cls, uint8_t ins, uint8_t p0, uint8_t p1, uint8_t *data_out, uint8_t data_out_len, uint8_t *data_in, uint8_t *response_len, uint8_t send_le);
      UFR_STATUS DL_API uFR_DESFIRE_StartM(UFR_HANDLE hndUFR);
      UFR_STATUS DL_API uFR_DESFIRE_StopM(UFR_HANDLE hndUFR);
      
      Added function "aliases":
      UFR_STATUS DL_API uFR_APDU_Start(void);               // Alias for uFR_DESFIRE_Start()
      UFR_STATUS DL_API uFR_APDU_StartM(UFR_HANDLE hndUFR); // Alias for uFR_DESFIRE_StartM()
      UFR_STATUS DL_API uFR_APDU_Stop(void);                // Alias for uFR_DESFIRE_Stop()
      UFR_STATUS DL_API uFR_APDU_StopM(UFR_HANDLE hndUFR);  // Alias for uFR_DESFIRE_StopM()
      4fe6c1e4
  9. Aug 02, 2016
    • developer2's avatar
      Version 4.0.9 · 321f9f26
      developer2 authored
      Support for UID byte order and decimal represenation od card UID, in the async UID sending.
      Functions added
      UFR_STATUS DL_API SetAsyncCardIdSendConfigEx(uint8_t send_enable,
      		uint8_t prefix_enable, uint8_t prefix, uint8_t suffix,
      		uint8_t send_removed_enable, uint8_t reverse_byte_order,
      		uint8_t decimal_representation, uint32_t async_baud_rate);
      UFR_STATUS DL_API GetAsyncCardIdSendConfigEx(uint8_t *send_enable,
      		uint8_t *prefix_enable, uint8_t *prefix, uint8_t *suffix,
      		uint8_t *send_removed_enable, uint8_t *reverse_byte_order,
      		uint8_t *decimal_representation, uint32_t *async_baud_rate);
      UFR_STATUS DL_API SetAsyncCardIdSendConfigExM(UFR_HANDLE hndUFR,
      		uint8_t send_enable, uint8_t prefix_enable, uint8_t prefix,
      		uint8_t suffix, uint8_t send_removed_enable, int8_t 		reverse_byte_order,
      		uint8_t decimal_representation, uint32_t async_baud_rate);
      UFR_STATUS DL_API GetAsyncCardIdSendConfigExM(UFR_HANDLE hndUFR,
      		uint8_t *send_enable, uint8_t *prefix_enable, uint8_t *prefix,
      		uint8_t *suffix, uint8_t *send_removed_enable, uint8_t 		*reverse_byte_order,
      		uint8_t *decimal_representation, uint32_t *async_baud_rate);
      321f9f26
  10. Jul 28, 2016
    • developer12's avatar
      uFR lib version 4.0.8 · 122d739b
      developer12 authored
      * BUGFIX : Reader Open error with error UFR_COMMUNICATION_BRAKE on serial port
      * ReaderOpenExHnd(), after opening the communication port and wait for firmware start,
      try several times to get reader HW version
      
      * BUGFIX : serial port stay blocked on Linux/OSX if some error occurred while changing port configuration
      > fixed in rs232_serial_port_init() : close() port if error occurred
      122d739b
  11. Jul 26, 2016
  12. Jul 20, 2016
    • developer4's avatar
      Version 4.0.5 · 47b1e7d1
      developer4 authored
      Support for the ASCII mirror function of the NXP NTAG21x series.
      Added functions:
      UFR_STATUS DL_API write_ndef_record_mirroring(uint8_t message_nr, uint8_t *tnf, uint8_t *type_record, uint8_t *type_length, uint8_t *id, uint8_t *id_length, uint8_t *payload, uint32_t *payload_length, uint8_t *card_formated, int use_uid_ascii_mirror, int use_counter_ascii_mirror, uint32_t payload_mirroring_pos);
      UFR_STATUS DL_API write_ndef_record_mirroringM(UFR_HANDLE hndUFR, uint8_t message_nr, uint8_t *tnf, uint8_t *type_record, uint8_t *type_length, uint8_t *id, uint8_t *id_length, uint8_t *payload, uint32_t *payload_length, uint8_t *card_formated, int use_uid_ascii_mirror, int use_counter_ascii_mirror, uint32_t payload_mirroring_pos);
      Those functions use already existing NDEF functionality of the uFRCoder library.
      47b1e7d1
  13. Jul 07, 2016
  14. Jul 05, 2016
    • developer4's avatar
      Version 4.0.4 · 3e767659
      developer4 authored
      -Added static libraries for Windows, x86 and x86_64 both. When you use uFCoder static library, you must linking FTDI d2xx library in your project to. See http://www.ftdichip.com/ for more details.
      -When you use uFCoder static library in your project, define macro:
      #define DL_USE_STATIC_LIB
      before include uFCoder.h or set -DDL_USE_STATIC_LIB as compiler directive.
      3e767659
  15. Jun 27, 2016
    • developer4's avatar
      Version 4.0.3 · a0b3e195
      developer4 authored
      Finished T2T counters (especially for NXP UL EV1 & NTAG 21x) support.
      
      Added:
      DL_API UFR_STATUS ReadCounter(uint8_t counter_address, uint32_t *value);
      DL_API UFR_STATUS IncrementCounter(uint8_t counter_address, uint32_t inc_value);
      DL_API UFR_STATUS ReadNFCCounter(uint32_t *value); // Same as ReadCounter(2, &value);
      DL_API UFR_STATUS ReadNFCCounterPwdAuth_RK(uint32_t *value, uint8_t reader_key_index);
      DL_API UFR_STATUS ReadNFCCounterPwdAuth_PK(uint32_t *value, const uint8_t *key);
      
      DL_API UFR_STATUS ReadCounterM(UFR_HANDLE hndUFR, uint8_t counter_address, uint32_t *value);
      DL_API UFR_STATUS IncrementCounterM(UFR_HANDLE hndUFR, uint8_t counter_address, uint32_t inc_value);
      DL_API UFR_STATUS ReadNFCCounterM(UFR_HANDLE hndUFR, uint32_t *value); // Same as ReadCounter(2, &value);
      DL_API UFR_STATUS ReadNFCCounterPwdAuth_RKM(UFR_HANDLE hndUFR, uint32_t *value, uint8_t reader_key_index);
      DL_API UFR_STATUS ReadNFCCounterPwdAuth_PKM(UFR_HANDLE hndUFR, uint32_t *value, const uint8_t *key);
      a0b3e195
  16. Jun 09, 2016
    • developer3's avatar
      uFR lib version 4.1.0 · 88b5925e
      developer3 authored
      Implemented serial port communication for Windows IoT serial device.
      
      For testing on Windows IoT,
      use ReaderOpenEx() for connect to the reader,
      use win_iot_serial.dll
      
      !!! All multi-reader functions are disabled on Windows IoT
       - ReaderList_UpdateAndGetCount()
       - ReaderList_GetInformation()
       - ReaderList_Destroy()
       - ReaderList_GetSerialByIndex()
       - ReaderList_GetSerialDescriptionByIndex()
       - ReaderList_GetTypeByIndex()
       - ReaderList_GetFTDISerialByIndex()
       - ReaderList_GetFTDIDescriptionByIndex()
       - ReaderList_OpenBySerial()
       - ReaderList_OpenByIndex()
      
       - API OriginalityCheck() not implemented on WIN IoT
      
      * some bug fixes
      
      Libraries files:
        + include / header files
        + Binaries for multiple OS-es and platforms:
          + 32 and 64 bit Windows Intel,
      	+ 32 bit Windows IoT ARM
          + 32 and 64 bit Linux Intel,
          + 64 bit OS X Intel,
          + 32 bit Linux ARM
          + 32 bit Linux ARM-HF
      88b5925e
    • developer12's avatar
      uFR lib version 4.0.2 · e2cf6170
      developer12 authored
      Merged versions 4.0.1 and 3.9.14 ( OriginalityCheck() )
      
      * fixed some bugs
      
      Libraries files:
        + include / header files
        + Binaries for multiple OS-es and platforms:
          + 32 and 64 bit Windows Intel,
          + 32 and 64 bit Linux Intel,
          + 64 bit OS X Intel,
          + 32 bit Linux ARM
          + 32 bit Linux ARM-HF
      e2cf6170
  17. Jun 03, 2016
    • developer4's avatar
      * uFR lib version 4.0.1 · 2f67cac7
      developer4 authored
      Implemented communication with serial devices ( not FTDI )
      
      Can communicate with devices without FTDI ( RS232 devices )
      via serial, non FT functions, for Windows, Linux and OSX.
      
      + ReaderOpenEx() - new extended API function for opening a reader over FTDI or serial
      
      New global error constants:
       + UFR_NOT_IMPLEMENTED
       + UFR_COMMAND_FAILED
      
      - removed deprecated type : chr_ptr
      - removed deprecated function : error_get()
      
      * Lots of changes and improvements.
      
      Libraries files:
        + include / header files
        + Binaries for multiple OS-es and platforms:
          + 32 and 64 bit Windows Intel,
          + 32 and 64 bit Linux Intel,
          + 64 bit OS X Intel,
          + 32 bit Linux ARM
          + 32 bit Linux ARM-HF
      
      Signed-off-by: srkos
      2f67cac7
    • developer4's avatar
      * uFR lib version 3.9.14 · 876da0f6
      developer4 authored
      UFR_STATUS OriginalityCheck(const uint8_t *signature, const uint8_t *uid, uint8_t uid_len, uint8_t DlogicCardType);
      in common.c module
      works now on linux and OSX.
      On those platforms it depends on libcrypto.so and libcrypto.dylib (OpenSSL). If libraries mentioned is installed on LD_LIBRARY_PATH, everything works perfectly. Otherwise OriginalityCheck() returns UFR_OPEN_SSL_DYNAMIC_LIB_NOT_FOUND error code.
      Other error codes that OriginalityCheck() can return:
      UFR_OPEN_SSL_DYNAMIC_LIB_FAILED (new error code)
      UFR_NOT_NXP_GENUINE (new error code)
      UFR_UNSUPPORTED_CARD_TYPE
      or UFR_OK if checked card is NXP genuine.
      
      Signed-off-by: zborac
      876da0f6
    • developer4's avatar
      * uFR lib version 3.9.13 · 118fe68e
      developer4 authored
      Fixed compiling MAC OS X dynamic library
      * FTDI library is linked statically
      * only x86_64 arch
      
      + GetTickCount() : new API Helper function for non Windows platforms
      ----------------------------------------------------------------------
      * Update uFCoder.h with new DESFIRE card types
      
      + DL_MIFARE_DESFIRE_EV2_2K, DL_MIFARE_DESFIRE_EV2_4K, DL_MIFARE_DESFIRE_EV2_8K
      
      Work with uFReader firmware version 3.9.9 and later
      ----------------------------------------------------------------------
      * Merge branch 'master' of git.d-logic.net:nfc-rfid-reader-sdk/ufr-lib
      ----------------------------------------------------------------------
      
      Signed-off-by: srkos
      118fe68e
    • developer13's avatar
      * uFCoder lib version 3.9.12 · 59e9c180
      developer13 authored
      Implemented ECC Signature Read support for all platforms and NXP originality check for Windows. Depends on uFR firmware ver. 3.9.8
      
      Signed-off-by: zborac
      59e9c180
    • developer13's avatar
      * uFR lib version 3.9.11 · f5c2e93a
      developer13 authored
      + ReaderOpenByType() new API function for speed up opening for non uFR basic reader type
         parameters:
              reader_type : 0 : auto > same as call ReaderOpen()
                            1 : uFR type (1 Mbps)
                            2 : uFR RS232 type (115200 bps)
                            3 : XRC type (250 Kbps)
      
      Speed up opening XRC with this function from ~3500 ms to ~100 ms
      
      Signed-off-by: srkos
      f5c2e93a
    • developer3's avatar
      uFR lib version 3.9.10 · 8a87dd92
      developer3 authored
      New API functions for getting information about last detected card on the uFReader
      + GetLastCardIdEx();
      + GetLastCardIdExM() - multi reader
      
      git-svn-id: svn://192.168.1.162/sw_open/ufr/lib@19 70e0a68e-34dc-42a9-ac42-4afe8c0da599
      
      Signed-off-by: srkos
      8a87dd92
    • developer3's avatar
      uFR lib version 3.9.9 · ad092403
      developer3 authored
      Speed up ReaderOpen() opening time from 2900 ms to 100-300 ms
      
      git-svn-id: svn://192.168.1.162/sw_open/ufr/lib@18 70e0a68e-34dc-42a9-ac42-4afe8c0da599
      
      Signed-off-by: srkos
      ad092403
    • developer3's avatar
      uFR lib version 3.9.8 in testing folder. · 69a167cb
      developer3 authored
      -Added ndef record support for UL_EV1_11, UL_EV1_21 and Mikron MIK640D.
      
      git-svn-id: svn://192.168.1.162/sw_open/ufr/lib@17 70e0a68e-34dc-42a9-ac42-4afe8c0da599
      
      Signed-off-by: zborac
      69a167cb
    • developer3's avatar
      * uFR lib version 3.9.7 in testing folder · 9a5c7b0c
      developer3 authored
      -Added support for activation of the uFR "Combined emulation mode".
      -New exported functions are:
       UFR_STATUS CombinedModeEmulationStart(void);
       UFR_STATUS CombinedModeEmulationStartM(UFR_HANDLE hndUFR);
      -Fixed value for MAX_EMULATION_PAYLOAD_LEN in commands.h (changed val from 21 to 40) // 48 - nfc_message_overhead (TLVs, type values, length values...)
      
      git-svn-id: svn://192.168.1.162/sw_open/ufr/lib@16 70e0a68e-34dc-42a9-ac42-4afe8c0da599
      
      Signed-off-by: zborac
      9a5c7b0c
    • developer13's avatar
      * uFR lib version 3.9.6 · a28d5aa1
      developer13 authored
      -BUGFix: isolated debug prints to console with prprocessing directive (macro DEBUG_STD).
      
      -Support for new DLogicCardType added:
       #define NFC_T2T_GENERIC 0x0C
       This type represent all NFC T2T tags which have Get Version NFC Command. From this firmware version all read/write operations (except in sector address mode which is reserved for Mifare Classic) with those tags are enabled. User must take care because no adres range protection applied  in this case. Recomendation for users: call GET_NFC_T2T_VERSION before work with this type of tags.
       New exported functions are:
       UFR_STATUS GetNfcT2TVersion(uint8_t lpucVersionResponse[8]);
       UFR_STATUS GetNfcT2TVersionM(UFR_HANDLE hndUFR, uint8_t lpucVersionResponse[8]);
      
      New helper types and functions:
      typedef struct t2t_version_struct {
      	uint8_t header;
      	uint8_t vendor_id;
      	uint8_t product_type;
      	uint8_t product_subtype;
      	uint8_t major_product_version;
      	uint8_t minor_product_version;
      	uint8_t storage_size;
      	uint8_t protocol_type;
      } t2t_version_t;
      void NfcT2TSafeConvertVersion(t2t_version_t *version, const uint8_t *version_record);
      
      git-svn-id: svn://192.168.1.162/sw_open/ufr/lib@15 70e0a68e-34dc-42a9-ac42-4afe8c0da599
      
      Signed-off-by: zborac
      a28d5aa1
    • developer13's avatar
      * uFR lib version 3.9.4 · e76469e1
      developer13 authored
      -New functionality added:
       DL_API UFR_STATUS GetCardSize(uint32_t *lpulLinearSize, uint32_t *lpulRawSize);
       DL_API UFR_STATUS GetCardSizeM(UFR_HANDLE hndUFR, uint32_t *lpulLinearSize, uint32_t *lpulRawSize);
      
      git-svn-id: svn://192.168.1.162/sw_open/ufr/lib@13 70e0a68e-34dc-42a9-ac42-4afe8c0da599
      
      Signed-off-by: zborac
      e76469e1
    • developer13's avatar
      * uFR lib version 3.9.3 - Multi-Readers speed up the opening of the reconnected device · 13194275
      developer13 authored
      Library for:
      + Windows 32 and 64 bit x86
      + Linux 32 and 64 bit x86, ARM, ARM-HF
      + OS X 32 and 64 bit x86
      
      git-svn-id: svn://192.168.1.162/sw_open/ufr/lib@6 70e0a68e-34dc-42a9-ac42-4afe8c0da599
      
      Signed-off-by: srkos
      13194275
    • developer13's avatar
      * uFR lib version 3.9.2 - Multi-Readers Faster first open for later connected devices · b3e12ccd
      developer13 authored
      Library for:
      + Windows 32 and 64 bit x86
      
      git-svn-id: svn://192.168.1.162/sw_open/ufr/lib@5 70e0a68e-34dc-42a9-ac42-4afe8c0da599
      
      Signed-off-by: srkos
      b3e12ccd
    • developer13's avatar
      * uFR lib version 3.9.1 - Multi-Readers Open without problems · f55f8305
      developer13 authored
      + new API functions : ReaderList_GetInformation()
       * Function for getting all relevant information about connected readers.
       *
       * Eg. If you have tree connected readers, detected by ReaderList_UpdateAndGetCount(),
       * you should call this function tree times.
      
      + new API functions : ReaderList_Destroy()
       * If the handle exists in the list of opened devices,
       * function would try to close communication port and destroy the handle.
       * ( ReaderList_UpdateAndGetCount() will do that automatically in next execution)
       *
       * Good when you identify that the reader is no longer connected, and want to release the handle.
      
      Info about changing in ReaderList_UpdateAndGetCount()
       * This is the main function of the multi-reader support.
       * ReaderList_UpdateAndGetCount() scan all communication ports for compatible devices.
       * Function probes opened readers if still connected, if not close and mark them handles for deletion.
       * If some device is disconnected from system this function should remove its handle.
      
      * The chr_ptr type renamed ( and documented ) to c_string
      
      + new status : UFR_DEVICE_IS_NOT_CONNECTED
      
      Library for:
      + Windows 32 and 64 bit x86
      + Linux 32 and 64 bit x86, ARM, ARM-HF
      + OS X 32 and 64 bit x86
      
      git-svn-id: svn://192.168.1.162/sw_open/ufr/lib@4 70e0a68e-34dc-42a9-ac42-4afe8c0da599
      
      Signed-off-by: srkos
      f55f8305
    • developer13's avatar
      * uFR lib version 3.8.15 · 575bd451
      developer13 authored
      Implemented Auto-Sleep functionality.
      
      New functions in uFCoder-multi.c:
      -AutoSleepSetM()
      -AutoSleepGetM()
      New functions in uFCoder-single.c:
      -AutoSleepSet()
      -AutoSleepGet()
      
      -Releasing of the version 3.8.14 has been stopped because of bug detected.
      
      git-svn-id: svn://192.168.1.162/sw_open/ufr/lib@7 70e0a68e-34dc-42a9-ac42-4afe8c0da599
      --------------------------------------------------------------------------------------
      * Updated uFCoder.h include file.
      
      For gcc dynamic import __stdcall calling convention must be used.
      Code changes:
      #	ifdef DL_uFC_STATIC_LIB
      #		define DL_API __stdcall
      #	elif defined DL_uFC_GCC_DLL_IMPORT
      #		define DL_API __stdcall
      # ...
      
      git-svn-id: svn://192.168.1.162/sw_open/ufr/lib@9 70e0a68e-34dc-42a9-ac42-4afe8c0da599
      --------------------------------------------------------------------------------------
      
      Signed-off-by: zborac
      575bd451
    • developer13's avatar
      * uFR lib version 3.8.13 FAST MULTI READERS OPENING · f6196671
      developer13 authored
      * Implemented "parallel" reset on multiple devices, and after waiting for FW get started, check which is really uFReader
      
      * Automatically close all opened devices before start the new search
      
      DLL for Windows is compiled with GCC v5.1.0
      
      git-svn-id: svn://192.168.1.162/sw_open/ufr/lib@2 70e0a68e-34dc-42a9-ac42-4afe8c0da599
      
      Signed-off-by: srkos
      f6196671
    • developer13's avatar
      * uFR lib version 3.8.10 · 7651c850
      developer13 authored
      Added new functions ReaderStillConnected() and ReaderStillConnectedM() for checking availability.
      
      git-svn-id: svn://192.168.1.162/sw_open/ufr/lib@1 70e0a68e-34dc-42a9-ac42-4afe8c0da599
      
      Signed-off-by: srkos
      7651c850