Skip to content
  1. May 29, 2017
    • developer4's avatar
      version 4.0.25 · b13ca363
      developer4 authored
      Finished NFC T4T support for NDEF messages using APDU support through "ISO14443-4 half-duplex block transmission protocol (i_block, r_block and s_block)".
      All functions in library that support NDEF messages now working with NFC T4T cards.
      4.0.25
      b13ca363
  2. May 16, 2017
  3. Apr 28, 2017
    • developer4's avatar
      library version 4.0.24 · 4614bc21
      developer4 authored
      Added functions:
      UFR_STATUS GetAdHocEmulationParams(uint8_t *ThresholdMinLevel, uint8_t *ThresholdCollLevel,
      								   uint8_t *RFLevelAmp, uint8_t *RxGain, uint8_t *RFLevel);
      UFR_STATUS SetAdHocEmulationParams(uint8_t ThresholdMinLevel, uint8_t ThresholdCollLevel,
      								   uint8_t RFLevelAmp, uint8_t RxGain, uint8_t RFLevel);
      UFR_STATUS GetAdHocEmulationParamsM(UFR_HANDLE hndUFR,
      								    uint8_t *ThresholdMinLevel, uint8_t *ThresholdCollLevel,
      								    uint8_t *RFLevelAmp, uint8_t *RxGain, uint8_t *RFLevel);
      UFR_STATUS SetAdHocEmulationParamsM(UFR_HANDLE hndUFR,
      								    uint8_t ThresholdMinLevel, uint8_t ThresholdCollLevel,
      								    uint8_t RFLevelAmp, uint8_t RxGain, uint8_t RFLevel);
      
      Dependency for these functions: uFR firmware - min. version 3.9.35
      4.0.24
      4614bc21
  4. Apr 24, 2017
    • developer4's avatar
      library binaries version 4.0.23 · 736a1ca8
      developer4 authored
      Added functions:
      UFR_STATUS AdHocEmulationStart(void);
      UFR_STATUS AdHocEmulationStop(void);
      UFR_STATUS GetExternalFieldState(uint8_t *is_field_present);
      
      UFR_STATUS AdHocEmulationStartM(UFR_HANDLE hndUFR);
      UFR_STATUS AdHocEmulationStopM(UFR_HANDLE hndUFR);
      UFR_STATUS GetExternalFieldStateM(UFR_HANDLE hndUFR, uint8_t *is_field_present);
      4.0.23
      736a1ca8
  5. Apr 05, 2017
  6. Apr 03, 2017
  7. Mar 23, 2017
  8. Mar 20, 2017
  9. Mar 09, 2017
  10. Mar 07, 2017
  11. Mar 04, 2017
  12. Feb 24, 2017
  13. Feb 14, 2017
  14. 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
  15. Jan 31, 2017
  16. Jan 16, 2017
  17. 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
  18. 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
  19. 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
  20. 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
  21. Jul 26, 2016
  22. 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
  23. Jul 07, 2016
  24. 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
  25. 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
  26. 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
  27. 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