CVReader SDK
CVReader SDK
CVReader SDK is software development kit worked with CV3XXX, CV5XXX and CV6XXX product series for second
development. It includes API, Host Demo, user manual, USB driver and program example. It’s developed by C++builder
developing tool on Windows Operating system and GCC developing tool on Linux OS, compatible to VC,VB/VB.NET,JAVA,
C++,C#.NET, DELPHI etc.
Features
SDK is available with some special benefits for customer’s development
Stronger and powerful informative API to save your time and cost for development (See "CVReader API reference
directory" in Appendix for details)
Examples for good reference and understanding, using developing tools like Delphi, C++ Builder, C#.NET,
VC,VB/VB.NET etc.
Comprehensive platform to provide flexibility by customer side:
Operating System: Linux and Windows. Support Win 98,Win ME, Win 2000, Win 2003, Win 2003 x64, Win XP, Win
XP x64, Win Vista, Win Vista x64, Win 2008, Win 2008 x64, Win 2008 R2 x64, Win 7, Win 7 x64, Win8
Host Demo, a software testing tool to ease and simply development
One SDK for all our readers (CV3XXX, CV5XXX, CV6XXX) to avoid development cost for product upgrade
Selective SDK
1 INTRODUCTION 14
2 API FUNCTIONS 19
CiVinTec Global Co., Limited Version 1.04 / May 6, 2013 / Page 1/11
Tel: +86-755-86117608 Fax: +86-755-86117428 Web: www.civintec.com
2.1 Configuration, I/O commands 19
2.1.1 Int GetVersionAPI( char *VersionAPI ) 19
2.1.2 int OpenComm(char *Com, int Baudrate)//.. single serial port working mode19
2.1.3 int CloseComm ( Void ) 19
2.1.4 int SetExtPort(int DeviceAddress,unsigned char Ports) 19
2.1.5 int GetPort ( int DeviceAddress, unsigned char *status ) 20
2.1.6 int ActiveLED ( int DeviceAddress, unsigned char NumLED, unsigned char ontime, ussigned
char cycle) 20
2.1.7 int SetLED ( int DeviceAddress, unsigned char LEDState ) 21
2.1.8 int ActiveBuzzer ( int DeviceAddress, unsigned char mode, unsigned char *pattern) 21
2.1.9 int RF_Field ( int DeviceAddress, unsigned char time ) 22
2.1.10 int SetWiegandStatus(int DeviceAddress,unsigned char status) 22
2.1.11 int ActiveWiegandMode(int DeviceAddress,unsigned char status) 23
2.1.12 int CreateCommPort(int SerialNUM,unsigned char *CommID,int Baudrate ) //..multi serial
port working mode [note]:the function will only available on serial port communication(232
communication) 23
2.1.13 int ReaderC_EXT(int DeviceAddress,byte iTime)[Controlling Relay if reader have] 25
CiVinTec Global Co., Limited Version 1.04 / May 6, 2013 / Page 2/11
Tel: +86-755-86117608 Fax: +86-755-86117428 Web: www.civintec.com
2.4.3 int MF_Write(int DeviceAddress,unsigned char add_blk, unsigned char num_blk, unsigned char
*buffer) 32
2.4.4 int MF_Transfer(int DeviceAddress, unsigned char add_blk ) 33
2.4.5 int MF_Increment( int DeviceAddress, unsigned char add_blk, int value ) 33
2.4.6 int MF_Decrement( int DeviceAddress, unsigned char add_blk, int value )33
2.4.7 int MF_Restore(int DeviceAddress, unsigned char add_blk ) 34
2.4.8 int MF_InitValue( int DeviceAddress, unsigned char add_blk, int value )34
2.4.9 int MF_ReadValue(int DeviceAddress, unsigned char add_blk, int *value ) 34
2.4.10 int MF_LoadKey(int DeviceAddress, unsigned char *Key) 34
2.4.1 int MF_StoreKeyToEE(int DeviceAddress, unsigned char KeyAB, unsigned char Sector,
unsigned char *Key) 35
2.4.2 int MF_LoadKeyFromEF(int DeviceAddress, unsigned char KeyAB, unsigned char Sector)
35
CiVinTec Global Co., Limited Version 1.04 / May 6, 2013 / Page 3/11
Tel: +86-755-86117608 Fax: +86-755-86117428 Web: www.civintec.com
2.6.8 int CMD_ISO15693_Reset_To_Ready(int DeviceAddress,unsigned char flags,unsigned
char*UID) 44
2.6.9 int CMD_ISO15693_Write_AFI(int DeviceAddress,unsigned char flags, unsigned char AFI,
unsigned char*UID) 45
2.6.10 int CMD_ISO15693_Lock_AFI(int DeviceAddress,unsigned char flags,unsigned char*UID)
45
2.6.11 Int CMD_ISO15693_Write_DSFID(int DeviceAddress,unsigned char flags,unsigned char
DSFID,unsigned char*UID) 46
2.6.12 int CMD_ISO15693_Lock_DSFID(int DeviceAddress,unsigned char flags,unsigned
char*UID) 46
2.6.13 Int CMD_ISO15693_GET_System_Information(int DeviceAddress,unsigned char
flags,unsigned char*UID,unsigned char *databuffer) 47
2.6.14 int CMD_ISO15693_GetMultipleBlockSecurity(int DeviceAddress,unsigned char
flags,unsigned char Firstblock,unsigned char Number,unsigned char *UID,unsigned char *databuffer) 47
2.6.15 int CMD_Myd_read(int DeviceAddress,unsigned char flags,unsigned char block,unsigned
char*UID,unsigned char*databuffer) 48
2.6.16 int CMD_Myd_write(int DeviceAddress,unsigned char flags,unsigned char block,unsigned
char*UID,unsigned char*databuffer) 48
2.6.17 int CMD_ISO15693_Inventory16(int DeviceAddress,unsigned char Flags, unsigned char
AFI,int *CardNum,unsigned char*Buffer) 49
CiVinTec Global Co., Limited Version 1.04 / May 6, 2013 / Page 4/11
Tel: +86-755-86117608 Fax: +86-755-86117428 Web: www.civintec.com
2.8.6 int MF_UL_AnticollL2(int DeviceAddress,unsigned char *UID_Part2,unsigned char *BCC2)
57
2.8.7 int MF_UL_SelectL2( int DeviceAddress,unsigned char *UID_Part2,unsigned char BCC2)
57
2.8.8 int MF_UL_Read(int DeviceAddress,int StartPage , unsigned char *FromData_16Bytes) 57
2.8.9 int MF_UL_Write(int DeviceAddress,int PageNum , unsigned char *ToData_4Bytes) 57
CiVinTec Global Co., Limited Version 1.04 / May 6, 2013 / Page 5/11
Tel: +86-755-86117608 Fax: +86-755-86117428 Web: www.civintec.com
2.9.21 MF_DF_GetKeyVersionEx(int DeviceAddress,unsigned char CID,unsigned char
KeyNo,unsigned char *KeyVersion) 67
2.9.22 MF_DF_CreateApplication(int DeviceAddress,int AID, byte MasterKeySettings=0x0F, byte
NumOfKeys=0x0E) 67
2.9.23 MF_DF_CreateApplicationEx(int DeviceAddress,unsigned char CID,int AID,unsigned char
MasterKeySettings, unsigned char NumOfKeys,unsigned char CryptoMethod) 67
2.9.24 MF_DF_DeleteApplication(int DeviceAddress,int AID); 68
2.9.25 MF_DF_DeleteApplicationEx(int DeviceAddress,unsigned char CID,int AID) 68
2.9.26 MF_DF_GetApplicationIDs(int DeviceAddress,int AIDs27[]) 68
2.9.27 MF_DF_GetApplicationIDsEx(int DeviceAddress,unsigned char CID,int AIDs27[]) 68
2.9.28 MF_DF_SelectApplication(int DeviceAddress,int AID) 69
2.9.29 MF_DF_SelectApplicationEx(int DeviceAddress, unsigned char CID, int AID) 69
2.9.30 MF_DF_FormatPICC(int DeviceAddress) 69
2.9.31 MF_DF_FormatPICCEx(int DeviceAddress, unsigned char CID) 69
2.9.32 MF_DF_GetVersion(int DeviceAddress, unsigned char VerInfo[28]) 70
2.9.33 MF_DF_GetVersionEx(int DeviceAddress, unsigned char CID,unsigned char VerInfo[28])
70
2.9.34 MF_DF_GetFreeMem(int DeviceAddress,unsigned char CID,unsigned long *pFreeMemSize)
71
2.9.35 MF_DF_GetCardUID(int DeviceAddress,unsigned char CID,unsigned char *UID) 71
2.9.36 MF_DF_SetConfiguration(int DeviceAddress,unsigned char CID,unsigned char
ConfigurationType, unsigned char *pConfigurationData,unsigned char ConfigurationDataLength) 71
2.9.37 MF_DF_GetFileIDs(int DeviceAddress,int FileIDs[16]) 72
2.9.38 MF_DF_GetFileIDsEx(int DeviceAddress,unsigned char CID,unsigned char
*FileIDs,unsigned char *FileNumber) 72
2.9.39 MF_DF_GetFileSettings(int DeviceAddress, unsigned char FileNo, unsigned char
FileSettings[]) 72
2.9.40 MF_DF_GetFileSettingsEx(int DeviceAddress,unsigned char CID,unsigned char
FileNo,unsigned char FileSettings[]) 72
2.9.41 MF_DF_ChangeFileSettings(int DeviceAddress, unsigned char FileNo, unsigned char
CommSet,unsigned short AccessRights, int Is_Rights_Free) 74
2.9.42 MF_DF_ChangeFileSettingsEx(int DeviceAddress,unsigned char CID,unsigned char FileNo,
unsigned char CommSet,unsigned short AccessRights,int Is_Rights_Free) 74
2.9.43 MF_DF_CreateStdDataFile(int DeviceAddress, unsigned char FileNo, unsigned char
CommSet, unsigned short AccessRights, int FileSize) 75
2.9.44 MF_DF_CreateStdDataFileEx(int DeviceAddress,unsigned char CID,unsigned char
FileNo,unsigned char CommSet, unsigned short AccessRights,int FileSize) 75
2.9.45 MF_DF_CreateBackupDataFile(int DeviceAddress, unsigned char FileNo, unsigned char
CommSet, unsigned short AccessRights, int FileSize) 76
2.9.46 MF_DF_CreateBackupDataFileEx(int DeviceAddress,unsigned char CID,unsigned char
FileNo,unsigned char CommSet,unsigned short AccessRights,int FileSize) 76
2.9.47 MF_DF_CreateValueFile(int DeviceAddress,byte FileNo, unsigned char CommSet,unsigned
short AccessRights, int LowerLimit,int UpperLimit,int Value, unsigned char LimitedCreditEnabled) 76
2.9.48 MF_DF_CreateValueFileEx(int DeviceAddress,unsigned char CID,unsigned char
FileNo,unsigned char CommSet,unsigned short AccessRights,int LowerLimit,int UpperLimit,int Value,unsigned
char LimitedCreditEnabled) 77
CiVinTec Global Co., Limited Version 1.04 / May 6, 2013 / Page 6/11
Tel: +86-755-86117608 Fax: +86-755-86117428 Web: www.civintec.com
2.9.49 MF_DF_CreateLinearRecordFile(int DeviceAddress,byte FileNo, unsigned char
CommSet,unsigned short AccessRights, int RecordSize, int MaxNumRecords) 77
2.9.50 MF_DF_CreateLinearRecordFileEx(int DeviceAddress,unsigned char CID,unsigned char
FileNo,unsigned char CommSet,unsigned short AccessRights,int RecordSize,int MaxNumRecords) 77
2.9.51 MF_DF_CreateCyclicRecordFile(int DeviceAddress,byte FileNo, unsigned char
CommSet,unsigned short AccessRights, int RecordSize, int MaxNumRecords) 78
2.9.52 MF_DF_CreateCyclicRecordFileEx(int DeviceAddress,unsigned char CID,unsigned char
FileNo,unsigned char CommSet,unsigned short AccessRights,int RecordSize,int MaxNumRecords) 78
2.9.53 MF_DF_DeleteFile(int DeviceAddress, unsigned char FileNo) 79
2.9.54 MF_DF_DeleteFileEx(int DeviceAddress,unsigned char CID,unsigned char FileNo)79
2.9.55 MF_DF_ReadData(int DeviceAddress,byte FileNo, int Offset, int Length, unsigned char
CommSet, unsigned char DataRead[255],int &ReadLen) 79
2.9.56 MF_DF_ReadDataEx(int DeviceAddress,unsigned char CID,unsigned char FileNo,int
Offset,int Length,unsigned char CommSet,unsigned char *DataRead,int &ReadLen) 79
2.9.57 MF_DF_WriteData(int DeviceAddress, unsigned char FileNo, int Offset,int Length, unsigned
char CommSet, byte *DataToWrite) 80
2.9.58 MF_DF_WriteDataEx(int DeviceAddress,unsigned char CID,unsigned char FileNo,int
Offset,int Length, unsigned char CommSet,unsigned char *DataToWrite) 80
2.9.59 MF_DF_GetValue(int DeviceAddress, unsigned char FileNo, unsigned char CommSet, int
*Value) 81
2.9.60 MF_DF_GetValueEx(int DeviceAddress,unsigned char CID,unsigned char FileNo,unsigned
char CommSet,int *Value) 81
2.9.61 MF_DF_Credit(int DeviceAddress, byte FileNo, unsigned char CommSet, const int incValue)
81
2.9.62 MF_DF_CreditEx(int DeviceAddress,unsigned char CID,unsigned char FileNo,unsigned char
CommSet,const unsigned long incValue) 81
2.9.63 MF_DF_Debit(int DeviceAddress, unsigned char FileNo,byte CommSet,const int decValue)
82
2.9.64 MF_DF_DebitEx(int DeviceAddress,unsigned char CID,unsigned char FileNo,unsigned char
CommSet,const unsigned long decValue) 82
2.9.65 MF_DF_LimitedCredit(int DeviceAddress, unsigned char FileNo, byte CommSet, const int
incValue) 83
2.9.66 MF_DF_LimitedCreditEx(int DeviceAddress,unsigned char CID,unsigned char
FileNo,unsigned char CommSet,const unsigned long incValue) 83
2.9.67 MF_DF_WriteRecord(int DeviceAddress, unsigned char FileNo,int Offset, int Length,
unsigned char CommSet, unsigned char *DataToWrite) 83
2.9.68 MF_DF_WriteRecordEx(int DeviceAddress,unsigned char CID,unsigned char FileNo,int
Offset,int Length,unsigned char CommSet,unsigned char *DataToWrite) 84
2.9.69 MF_DF_ReadRecords(int DeviceAddress,unsigned char FileNo,int Offset,int
RecNumberToRead,int RecSize,unsigned char CommSet,unsigned char *DataRead,int &ReadLen) 84
2.9.70 MF_DF_ReadRecordsEx(int DeviceAddress,unsigned char CID,unsigned char FileNo,int
Offset,int RecNumberToRead,int RecSize,unsigned char CommSet,unsigned char *DataRead,int &ReadLen) 84
2.9.71 MF_DF_ClearRecordFile(int DeviceAddress, unsigned char FileNo) 85
2.9.72 MF_DF_ClearRecordFileEx(int DeviceAddress,unsigned char CID,unsigned char FileNo)
85
2.9.73 MF_DF_CommitTransaction(int DeviceAddress) 86
2.9.74 MF_DF_CommitTransactionEx(int DeviceAddress,unsigned char CID) 86
CiVinTec Global Co., Limited Version 1.04 / May 6, 2013 / Page 7/11
Tel: +86-755-86117608 Fax: +86-755-86117428 Web: www.civintec.com
2.9.75 MF_DF_AbortTransaction(int DeviceAddress) 86
2.9.76 MF_DF_AbortTransactionEx(int DeviceAddress,unsigned char CID) 86
2.9.77 MF_DF_SaveDESFire4Key(int DeviceAddress, int Index, int KeyNo,unsigned char Key[16])
87
2.9.78 MF_DF_SaveDESFire4ParameterForRead (int DeviceAddress, int AppNo, int FileNo, int
Offset, int ReadLen, int KeyIndex) 87
2.9.79 MF_DF_ReadDESFire4UID(int DeviceAddress,unsigned char DESFireUID[7]) 87
2.9.80 MF_DF_ReadDESFire4File (int DeviceAddress, int AppNo, int FileNo, int Offset, int
ReadLen, int KeyIndex, int &FileType, int &Value, unsigned char *DataBuf, int &ReturnLen)87
2.9.81 MF_DF_DESELECT(int DeviceAddress) 88
2.9.82 MF_DF_DESELECTEx(int DeviceAddress,unsigned char CID) 88
CiVinTec Global Co., Limited Version 1.04 / May 6, 2013 / Page 8/11
Tel: +86-755-86117608 Fax: +86-755-86117428 Web: www.civintec.com
2.10.23 MF_DFEV1_SetConfiguration(int DeviceAddress,unsigned char CID, unsigned char
ConfigType, unsigned char *ConfigData,unsigned int ConfigDataLen) 97
2.10.24 MF_DFEV1_GetFileIDs(int DeviceAddress,unsigned char CID, unsigned char
*FileIDs,unsigned int *FileIDsLen) 98
2.10.25 MF_DFEV1_GetFileSettings(int DeviceAddress,unsigned char CID,unsigned char FileID,
unsigned char *FileSettings) 98
2.10.26 MF_DFEV1_ChangeFileSettings(int DeviceAddress,unsigned char CID,unsigned char
FileID,unsigned char CmtSet,unsigned short AccessRights,bool Is_Rights_Free) 100
2.10.27 MF_DFEV1_CreateDataFile(int DeviceAddress,unsigned char CID,unsigned char
FileID,unsigned char FileType, unsigned char CmtSet,unsigned short AccRights,unsigned int CreateSize) 101
2.10.28 MF_DFEV1_CreateValueFile(int DeviceAddress,unsigned char CID,unsigned char
FileID,unsigned char CmtSet, unsigned short AccRights,unsigned int LLimit,unsigned int ULimit,unsigned int
InitVal,unsigned char LimitCredit) 101
2.10.29 MF_DFEV1_CreateRecordFile(int DeviceAddress,unsigned char CID,unsigned char
FileID,unsigned char FileType,unsigned char CmtSet, unsigned short AccRights,unsigned int
SingleRecordSize,unsigned int RecordNumber) 102
2.10.30 MF_DFEV1_DeleteFile(int DeviceAddress,unsigned char CID, unsigned char FileID) 102
2.10.31 MF_DFEV1_ReadData(int DeviceAddress,unsigned char CID,unsigned char FileID,unsigned
char CmtSet, unsigned int Offset,unsigned int ReadLength,unsigned char *ReturnData,unsigned int
*ReturnDataLen) 103
2.10.32 MF_DFEV1_WriteData(int DeviceAddress,unsigned char CID,unsigned char
FileID,unsigned char CmtSet, unsigned int Offset,unsigned int WriteDataLength,unsigned char *WriteData) 103
2.10.33 MF_DFEV1_GetValue(int DeviceAddress,unsigned char CID, unsigned char FileID,unsigned
char CmtSet, int *RetValue) 104
2.10.34 MF_DFEV1_Credit(int DeviceAddress,unsigned char CID, unsigned char FileID, unsigned
char CmtSet,unsigned int IncValue) 104
2.10.35 F_DFEV1_Debit(int DeviceAddress,unsigned char CID, unsigned char FileID, unsigned char
CmtSet,unsigned int DecValue) 105
2.10.36 MF_DFEV1_LimitedCredit(int DeviceAddress,unsigned char CID, unsigned char FileID,
unsigned char CmtSet,unsigned int IncValue) 106
2.10.37 MF_DFEV1_WriteRecord(int DeviceAddress,unsigned char CID,unsigned char
FileID,unsigned char CmtSet, unsigned int Offset,unsigned int RecordLength,unsigned char *RecordData) 106
2.10.38 MF_DFEV1_ReadRecord(int DeviceAddress,unsigned char CID,unsigned char
FileID,unsigned char CmtSet, unsigned int Offset,unsigned int ReadNumber,unsigned int RecSize,unsigned char
*ReturnData,unsigned int *ReturnDataLen) 107
2.10.39 MF_DFEV1_ClearRecordFile(int DeviceAddress,unsigned char CID,unsigned char FileID)
107
2.10.40 MF_DFEV1_CommitTransaction(int DeviceAddress,unsigned char CID)108
2.10.41 MF_DFEV1_AbortTransaction(int DeviceAddress,unsigned char CID) 108
2.10.42 MF_DFEV1_KeySetting(int DeviceAddress,unsigned char KeyNo,unsigned char
CryptoType,unsigned char *Key) 109
2.10.43 MF_DFEV1_FileSetting(int DeviceAddress,int AID,unsigned char KeyNo,unsigned char
FileID,unsigned char FileType, unsigned char CmtSet,unsigned int Offset,unsigned int Length,unsigned int
RecSize) 109
2.10.44 MF_DFEV1HL_Read(int DeviceAddress,unsigned char CID,int AID,unsigned char
KeyIndex, unsigned char FileID,unsigned char FileType,unsigned char CmtSet,unsigned int Offset,unsigned int
Length, unsigned int RecSize,unsigned char *Data,unsigned int *ReadLen) 109
CiVinTec Global Co., Limited Version 1.04 / May 6, 2013 / Page 9/11
Tel: +86-755-86117608 Fax: +86-755-86117428 Web: www.civintec.com
2.10.45 MF_DFEV1HL_Write(int DeviceAddress,unsigned char CID,int AID,unsigned char
KeyIndex, 110
unsigned char FileID,unsigned char FileType,unsigned char CmtSet,unsigned int Offset,unsigned int
Length, unsigned char *Data) 110
2.10.46 MF_DFEV1HL_ClearReads (int DeviceAddress,unsigned char CID,int AID,unsigned char
KeyIndex, unsigned char FileID) 110
2.10.47 MF_DFEV1HL_GetValue(int DeviceAddress,unsigned char CID,int AID,unsigned char
KeyIndex, unsigned char FileID,unsigned char CmtSet, int *RetValue) 111
2.10.48 MF_DFEV1HL_Credit(int DeviceAddress,unsigned char CID,int AID,unsigned char
KeyIndex, unsigned char FileID,unsigned char CmtSet, unsigned int IncValue,bool IsLimited)111
2.10.49 MF_DFEV1HL_Debit(int DeviceAddress,unsigned char CID, int AID,unsigned char
KeyIndex, unsigned char FileID,unsigned char CmtSet, unsigned int DecValue) 111
CiVinTec Global Co., Limited Version 1.04 / May 6, 2013 / Page 10/11
Tel: +86-755-86117608 Fax: +86-755-86117428 Web: www.civintec.com
2.12.17 MF_PS_SL3Read(int DeviceAddress,unsigned char CID,bool IsPlusX,unsigned short
BNr,unsigned char BlockNum,bool MACC,bool Plaintext,bool MACR,unsigned char *DataRead,unsigned char
*DataReadLen) 118
2.12.18 MF_PS_SL3Write(int DeviceAddress,unsigned char CID,bool IsPlusX,unsigned short
BNr,bool Plaintext,bool MACR,unsigned char *DataToWrite,unsigned char DataToWriteLen)119
2.12.19 MF_PS_SL3InitValue(int DeviceAddress,unsigned char CID,unsigned short BNr,bool
Plaintext,bool MACR,int Value) 119
2.12.20 MF_PS_SL3ReadValue(int DeviceAddress,unsigned char CID,unsigned short BNr,bool
MACC,bool Plaintext,bool MACR,int *Value) 119
2.12.21 MF_PS_SL3Increment(int DeviceAddress,unsigned char CID,unsigned short BNr,bool
MACR,unsigned long Value) 120
2.12.22 MF_PS_SL3Decrement(int DeviceAddress,unsigned char CID,unsigned short BNr,bool
MACR,unsigned long Value) 120
2.12.23 MF_PS_SL3Transfer(int DeviceAddress,unsigned char CID,unsigned short BNr,bool
MACR) 121
2.12.24 MF_PS_SL3Restore(int DeviceAddress,unsigned char CID,unsigned short BNr,bool MACR)
121
2.12.25 MF_PS_SL3IncAndTrans(int DeviceAddress,unsigned char CID,unsigned short
BNr,unsigned short BNr2,bool MACR,unsigned long Value) 121
2.12.26 MF_PS_SL3DecAndTrans(int DeviceAddress,unsigned char CID,unsigned short
BNr,unsigned short BNr2,bool MACR,unsigned long Value) 122
CiVinTec Global Co., Limited Version 1.04 / May 6, 2013 / Page 11/11
Tel: +86-755-86117608 Fax: +86-755-86117428 Web: www.civintec.com