Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
309 views

Demo Board API Manual v2.3

The document describes an API manual for a DEMO Board fingerprint sensor. It provides 24 functions for operations like opening/closing the device, capturing fingerprint images, generating and matching templates, storing and searching templates in flash memory, uploading and downloading templates and images, and configuration functions for settings like baud rate and security level. The functions are exported from two DLL files, with most functions taking a device address as a parameter and returning error codes.

Uploaded by

Ravindra Parab
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
309 views

Demo Board API Manual v2.3

The document describes an API manual for a DEMO Board fingerprint sensor. It provides 24 functions for operations like opening/closing the device, capturing fingerprint images, generating and matching templates, storing and searching templates in flash memory, uploading and downloading templates and images, and configuration functions for settings like baud rate and security level. The functions are exported from two DLL files, with most functions taking a device address as a parameter and returning error codes.

Uploaded by

Ravindra Parab
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 11

DEMO Board API Manual

V2.3

Page 1 of 11
INDEX
DEMO Board API Manual...........................................................................................................................1
1. API Function Description ....................................................................................................................3
1.1 Error code .........................................................................................................................................3
1.2 Export from SynoAPI.dll..................................................................................................................3
1.3 Export from ARTH_DLL.dll ....................................................................................................................9
2 Oprate flow.............................................................................................................................................10
2.1 Enroll a finger and save to Flash ....................................................................................................10
2.2 Search finger from flash ................................................................................................................. 11

Page 2 of 11
1. API Function Description

1.1 Error code

#define PS_OK 0x00 //success


#define PS_COMM_ERR 0x01 //package error
#define PS_NO_FINGER 0x02 //There is no finger on the sensor
#define PS_GET_IMG_ERR 0x03 //fail to get image
#define PS_FP_TOO_DRY 0x04 //the finger too dry
#define PS_FP_TOO_WET 0x05 //the finger too wet
#define PS_FP_DISORDER 0x06 //Too disorderly fingerprint"
#define PS_LITTLE_FEATURE 0x07 //too little feature
#define PS_NOT_MATCH 0x08 //No matching fingerprint
#define PS_NOT_SEARCHED 0x09//No fingerprint searched
#define PS_MERGE_ERR 0x0a //Combine character error
#define PS_ADDRESS_OVER 0x0b//Address number is out of fingerprint range
#define PS_READ_ERR 0x0c//Read templet from fingerprint library error
#define PS_UP_TEMP_ERR 0x0d//Upload character failed
#define PS_RECV_ERR 0x0e//Recv package error
#define PS_UP_IMG_ERR 0x0f//Upload image failed"
#define PS_DEL_TEMP_ERR 0x10//Del Template error
#define PS_CLEAR_TEMP_ERR 0x11 //Clear Template error
#define PS_SLEEP_ERR 0x12 //Can't go into Sleep mode
#define PS_INVALID_PASSWORD 0x13//Password is not correct
#define PS_RESET_ERR 0x14//reset system error
#define PS_INVALID_IMAGE 0x15 //Invalid fingerprint image
#define PS_HANGOVER_UNREMOVE 0X17//Must move finger

1.2 Export from SynoAPI.dll

1. OpenDevice;
BOOL WINAPI PSOpenDevice(int nDeviceType,int nPortNum,int nPortPara,int
nPackageSize=2);
Parameter: nDeviceType: 0:USB Device ;1:Serial Port Device
nPortNum: if nDeviceType equal 1 then nPortNum is a Serail port
number representation.
nPortPara: baudRate setting
Return: if device opened success then the function return true.

2. CloseDevice

Page 3 of 11
BOOL WINAPI PSCloseDevice();
Return: if device closed success then the function return true.

3. Detect finger and Get Image


int WINAPI PSGetImage(int nAddr);
Parameter: nAddr: the address of device , generally it is 0xffffffff, the function below the
address is also same.
Return: function return 0 Indicates success,others see error code

4. Generate Character file


int WINAPI PSGenChar(int nAddr,[in] int iBufferID);
Parameter: iBufferID: Indicates a character file buffer chip internal. The
value is always 0 or 1.
Return: function return 0 Indicates success,others see error code

5. Match two character file on chip


int WINAPI PSMatch(int nAddr,[out] int* iScore);
Parameter: iScore: if the function return success then this variable can
get a Score of one Matching.
Return: function return 0 Indicates success,others see error code
reference.

6. Search a part or all of fingerprint libray


int WINAPI PSSearch(int nAddr,int iBufferID, int iStartPage, int iPageNum, [out]int
*iMbAddress);
Parameter: iBufferID: Indicates a character file buffer chip internal. The
value is always 0 or 1.
iStartPage:Indicates a Start Page of search.
iPageNum: Indicates numbers of Page to search.
iMbAddress: if find a valid character ,the variable retrieve page id
Return: function return 0 Indicates success,others see error code
reference.

7. Combine BufferAs character file with BufferBs character file and generate the templet

int WINAPI PSRegModule(int nAddr);

Return: function return 0 Indicates success,others see error code


reference.

8. Store BufferA or BufferBs character file to flash fingerprint library


int WINAPI PSStoreChar(int nAddr,int iBufferID, int iPageID);
Parameter: iBufferID: Indicates a character file buffer chip internal. The
value is always 0 or 1.

Page 4 of 11
iPageID: this Indicates character file storage page.
Return: function return 0 Indicates success,others see error code
reference.

9. Transfer a templet to BufferA or BufferB from flash fingerprint library


int WINAPI PSLoadChar(int nAddr,int iBufferID,int iPageID);
Parameter: same as PSStoreChar.
Return: function return 0 Indicates success,others see error code
reference.

10. Transfer character file from BufferA or BufferB to PC


int WINAPI PSUpChar(int nAddr,int iBufferID, [out]unsigned char* pTemplet, [out]int*
iTempletLength);
Parameter: iBufferID :same as PSStoreChar.
* pTemplet: Receive character file data from specify buffer.
iTempletLength: serial port communicate used. Indicates
received datas length.
Return: function return 0 Indicates success,others see error code
reference.

11. Download a character form form pc to BufferA or BufferB


int WINAPI PSDownChar(int nAddr,int iBufferID,[in] unsigned char* pTemplet, [in]int
iTempletLength);
Parameter: same as PSUpChar.

Return: function return 0 Indicates success,others see error code


reference.

12. Upload Original Image


int WINAPI PSUpImage(int nAddr,[out]unsigned char* pImageData, [out]int* iImageLength);
Parameter: pImageData: image data buffer.
iImageLength: serial port communicate used. Indicates
received datas length.
Return: function return 0 Indicates success,others see error code
reference.

13. Download original Image


int WINAPI PSDownImage(int nAddr,[in]unsigned char *pImageData, [in]int iLength);
Parameter: same as PSUpImage
Return: same as PSUpImage

Page 5 of 11
14. Genarate a BMP file from image data buffer
int WINAPI PSImgData2BMP(unsigned char* pImgData,const char* pImageFile);
Parameter: pImgData: Bmp file data buffer. It doesnt include header of bmp file.
pImageFile: path of bmp file save.

Return: function return 0 Indicates success,others see error code


reference.

15. Delete specify range of character file from flash fingerprint libaray
int WINAPI PSDelChar(int nAddr,int iStartPageID,int nDelPageNum);
Parameter: iStartPageID: start of range.
nDelPageNum: numbers of character file.
Return: function return 0 Indicates success,others see error code
reference.

16. Clear flash fingerprint libaray


int WINAPI PSEmpty(int nAddr);
Return: function return 0 Indicates success,others see error code
reference.

17. Read Parameter table


int WINAPI PSReadParTable(int nAddr,[out]unsigned char* pParTable);
Parameter: pParTable: Parameter table buffer.
Return: function return 0 Indicates success,others see error code
reference.

18. Set Device Communicate Key


int WINAPI PSSetPwd(int nAddr,unsigned char* pPassword);

19. Verify Device Communicate Key


int WINAPI PSVfyPwd(int nAddr,unsigned char* pPassword);

20. Read Notepad


int WINAPI PSReadInfo(int nAddr,int nPage,[out]unsigned char* UserContent);
Parameter: nPage: specify page of notepad.
UserContent: the content buffer.
Return: function return 0 Indicates success,others see error code
reference.

21. Write Notepad


int WINAPI PSWriteInfo(int nAddr,int nPage,[in]unsigned char* UserContent);
Parameter: nPage: specify page of notepad.

Page 6 of 11
UserContent: the content buffer.
Return: function return 0 Indicates success,others see error code
reference.

22. Set baudrate


int WINAPI PSSetBaud(int nAddr,int nBaudNum);
Parameter: nBaudNum: set baudrate.
Return: function return 0 Indicates success,others see error code
reference.

23. Set security level


int WINAPI PSSetSecurLevel(int nAddr,int nLevel);
Parameter: nBaudNum: set Security Level.
Return: function return 0 Indicates success,others see error code
reference.

24. Set parket size


int WINAPI PSSetPacketSize(int nAddr,int nSize);
Parameter: nBaudNum: set packet size of serial port communication.
Return: function return 0 Indicates success,others see error code
reference.

25. Upload character file to PC


int WINAPI PSUpChar2File(int nAddr,int iBufferID, const char* pFileName);
Parameter: iBufferID: Indicates a character file buffer chip internal. The
value is always 0 or 1.
pFileName: Indicates character file path.

Return: function return 0 Indicates success,others see error code


reference.

26. Download a character file to BufferA or BufferB from PC


int WINAPI PSDownCharFromFile(int nAddr,int iBufferID, const char* pFileName);
Parameter: same as PSUpChar2File

Return: function return 0 Indicates success,others see error code


reference.

27. Get random data generate by chip


int WINAPI PSGetRandomData(int nAddr,unsigned char* pRandom);
Parameter: pRandom: Random data buffer.

Return: function return 0 Indicates success,others see error code


reference.

Page 7 of 11
28. Set Chip address
int WINAPI PSSetChipAddr(int nAddr,unsigned char* pChipAddr);
Parameter: pChipAddr: Chip address buffer.

Return: function return 0 Indicates success,others see error code


reference.

29. Get templet count


int WINAPI PSTemplateNum(int nAddr,[out]int *iMbNum);
Parameter: iMbNum: numbers of templet count.

Return: function return 0 Indicates success,others see error code


reference.

30. Generate binary image


int WINAPI PSGenBinImage(int nAddr, int nImgType);

31. Format error information


char* WINAPI PSErr2Str(int nErrCode);
Parameter: nErrCode: Error code.

Return: function return a detail information of corresponding error code

32. Change Finger data to BMP format data


int WINAPI PSFingerData2BMPData([in]unsigned char *pFingerData,
[out]unsigned char *pBMPData,
[out]int* nBMPDataLen)
Parameter: pFingerData- the finger data get from PSUpImage function.
pBMPData-the BMP format data
nBMPDataLen-the BMP data buffer size,if pFingerData==NULL or
pBMPData==NULL,then the nBMPDataLen return the length of buffer.

Return: function return 0 Indicates success,others see error code


reference.

33. Show Finger Data in DC


int WINAPI PSShowFingerData(HWND hWnd,unsigned char *pFingerData)
Parameter: hWnd-the handle of control,
pFingerData- the finger data get from PSUpImage function.
Return: function return 0 Indicates success,others see error code
reference.

Page 8 of 11
1.3 Export from ARTH_DLL.dll

1, Match two character file on PC


int WINAPI Match2Fp(unsigned char* Src,unsigned char* Dst);
Parameter: Src: source character file buffer.
Dst: destination character file buffer.

Return: function return a score of one matching. Basicly , Should the


number be equal or above 50, that indicates successful matching.
And the higher the number, the more precise the matching.

2, Generate character file on PC


int WINAPI GenChar([in]unsigned char* FingerData,[out]unsigned char* CharData);
Parameter: FingerData: Fingerprint image file data buffer.
CharData: character file buffer
Return: function return a detail information of corresponding error code

Page 9 of 11
2 Oprate flow

2.1 Enroll a finger and save to Flash

Page 10 of 11
2.2 Search finger from flash

Page 11 of 11

You might also like