COM DEFINITION FOR HT6XX/PA96X/PA982/RH767 ........... 11 USEFUL SAMPLE PROGRAM ..................11 GET SDK FROM UNITECH?.................... 12 USI.DLL – UNITECH SCANNER INTERFACE DLL............13 Register the application to the USI DLL ........................ 13 Unregister the application from the USI.DLL ....................... 14 Enable / Disable Scanner............................
Page 3
2.21 Load/Unload Scan2Key.exe ..........................21 2.22 Enable/Disable Scan2Key ............................. 21 2.23 Send scanner command to decoding chip ....................... 21 2.24 Only send single command decoding chip ...................... 22 2.25 Send command to decoding chip ........................22 2.26 2D imager supporting for PA966/967 ......................... 22 CONTROL COMMAND FOR DECODER CHIP (HAMSER: 1D ONLY) ......
Page 4
Enable TaskBar ................................33 Disable Desktop................................33 Enable Desktop ................................33 Disable toolbar on windows explorer ........................34 Enable toolbar on windows explorer ........................34 6.10 Disable Connection..............................34 6.11 Enable Connection..............................34 SYSIOAPI.DLL ........................35 Keypad Related Functions............................35 7.1.1 Get CAPS lock status (This function call is reserved for OS using, it is not suggested to be used on application if you are not fully understand OS operation behavior) ................
Page 5
PCMCIA/CF slot related functions .......................... 42 7.8.1 Get physical slot ID..............................42 7.8.2 Enable/Disable PCMCIA or CF slot ........................43 7.8.3 Enable/Disable IO slots............................43 7.8.4 Inquire PCMCIA/CF slot status..........................43 7.8.5 Inquire IO slot status ............................. 44 7.8.6 Disable PCMCIA/CF slot when resume ......................44 Check battery type ..............................
Page 6
9.4.7 Write SRIX4K Card’s Block Data ........................57 9.4.8 Authenticate SRIX4K Card........................... 58 9.4.9 Read SRIX4K Card ID ............................58 Error Code ..................................59 RH767 UHF READER FOR WJ..................60 10.1 Class “MPRReader”..............................60 10.2 The Parameter in MPRReader ..........................60 10.3 The Function in MPRReader..........................
Page 7
11.19 Set Reader’s Frequency............................68 11.20 Get Reader’s Hop Channel Spacing ........................68 11.21 Set Reader’s Hop Channel Spacing........................68 11.22 Get Reader’s Firmware Version........................... 69 11.23 Get Reader’s LBT Setting............................69 11.24 Set Reader’s LBT Setting ............................69 RH767 UHF READER FOR KITTY ................... 70 12.1 Kitty RFID Reader API Reference ........................
Page 8
12.5.19 Clear RFID Reader Module’s Error State ...................... 80 12.5.20 Ability of Hold or Discard the Duplicate Tags ....................80 12.6 Other APIs ................................. 80 12.6.1 Get RFID Reader’s Firmware Version........................ 80 12.7 Structure of the Library............................81 12.7.1 RFID_ANTENNA_PORT_CONFIG ........................81 12.7.2 ACCESS_STATUS..............................
Many programmers find it difficult to control the Decoder Chip via programming language alone, especially if they are not familiar with barcode and serial port controls. Because of this, Unitech provides the following utility library and program for the user or application programmer to control the Decoder Chip: 1.
1.2 COM definition for HT6xx/PA96x/PA982/RH767 General: COM 1 Physical full RS232 port (ActiveSync) COM 2 Scanner (Hamster) or RFID reader COM 3 IrComm COM 4 USB client COM 5 IrDA or Bluetooth COM 6 Reserve COM 7 Bluetooth Printer COM 8 Bluetooth Modem COM 9 Bluetooth ActiveSync...
1.4 Get SDK from Unitech? You can get SDK from below URL HT660 http://w3.tw.ute.com/pub/cs/sdk/ht660/HT660SDK.zip HT680 http://w3.tw.ute.com/pub/cs/sdk/HT680/HT680SDK.zip PA962/963 http://w3.tw.ute.com/pub/cs/sdk/pa962/pa962sdk.zip PA966/967 http://w3.tw.ute.com/pub/cs/sdk/pa966/pa966sdk.zip PA968 http://w3.tw.ute.com/pub/cs/sdk/pa968/pa968sdk.zip PA982 http://w3.tw.ute.com/pub/cs/sdk/pa982/Pa982SDK.zip RH767 http://w3.tw.ute.com/pub/cs/sdk/RH767/RH767_CE5_SDK.zip...
USI.DLL – Unitech Scanner Interface DLL 2.1 Register the application to the USI DLL Function Description: Register the application to the USI DLL, so that the DLL can communicate with the application. It will also open and initial scanner port (COM2, for example) and set the scanner to the working mode.
"CHECKPARITY"="1" Return: BOOL: TRUE : OK FALSE : Failure 2.2 Unregister the application from the USI.DLL Function Description: Unregister the application from the DLL. It will close the scanner port, and by default it will disable the scanner. Function call: void USI_Unregister();...
2.6 Returns the system error code Function Description: Returns the system error code, which is returned by GetLastError. It will also return the description of the error in buffer if it is not NULL. Function call: DWORD USI_GetLastSysError(LPTSTR buffer, len); Parameter: (output) buffer: LPTSTR:...
(UPI300.DLL is an example) to turn on and off the LED. If the DLL is not defined or the function is not found, USI will bypass the call of GoodReadLEDOn. [HKEY_LOCAL_MACHINE\SOFTWARE\Unitech America Inc.\Scanner\Settings] "DLLLEDCONTROL"="UPI300.DLL" The function prototype of GoodReadLEDOn is: VOID WINAPI GoodReadLEDOn(BOOL fon);...
(UPI300.DLL is an example) to start and stop the scanner. If the DLL is not defined or the function is not found, then auto scanning is not available. [HKEY_LOCAL_MACHINE\SOFTWARE\Unitech America Inc.\Scanner\Settings] "DLLSCANNERCONTROL"="UPI300.DLL" The function prototype of SetScannerOn is: VOID WINAPI SetScannerOn(BOOL fon);...
2.17 Stop auto scanning function Function Description: Stop auto scanning Function call: void USI_StopAutoScan(); 2.18 Check if auto scanning is enable Function Description: Check if auto scanning function is enabled or not Function call: BOOL USI_IsAutoScanning() Return: BOOL: TRUE: auto-scanning is running FALSE: auto-scanning is disabled.
2.21 Load/Unload Scan2Key.exe Function Description: Load or unload Scan2Key Function call: BOOL S2K_Load(BOOL load, DWORD timeout); Parameter: (input) load: BOOL: TRUE = load Scan2Key FALSE = unload Scan2Key timeout: DWORD: when unload Scan2Key, it will wait until Scan2Key has been removed from memory or timeout specified by this parameter.
2.24 Only send single command decoding chip Function Description: Send command to decoder chip. This is a variation of command HAM_SendCommand. It sends following command to Hamster: (note, only two bytes without BCC) Esc, 0x80+cmd Function call: BOOL HAM_SendCommand1(BYTE cmd); Parameter: (input) cmd: BYTE:...
Control command for decoder chip (Hamser: 1D only) Important: This chapter describes low level command for scanner control function. If you already USI to do scanner programming, you don’t need to care about this chapter. In general, it is not suggested to use level command to control scanner, because there are timing issue on serial communication programming , and it is always need communication expert to do that and it is hard to explain it on document.
Page 24
low/high,5high/low block_delay Esc,0,4,4,m,S1,BCC S1 is 0_10ms,1 50ms,2 100ms,3 500ms,4 1s,5 3s char_delay Esc,0,4,5,m,S1,BCC S1 is 0_none,1 1ms,2 5ms,3 10ms,4 20ms,5 50ms Function_code Esc,0,4,6,m,S1,BCC S1 is 0 off,1_on No meaning for you Capslock Esc,0,4,7,m,S1,BCC S1 is 0_auto trace,1 lower case,2 upper case No meaning for you Language Esc,0,4,8,m,S1,BCC...
Page 25
T2_account_only Esc,0,4,34,m,S1,BCC S1 is 0_NO,1 YES No meaning for you Separator Esc,0,4,35,m,S1,BCC S1 is 1 CHARACTER No meaning for you Must_have_data Esc,0,4,36,m,S1,BCC S1 is 0 YES,1_NO No meaning for you Track1_sequence Esc,0,L,37,m,S1,…Si,BCC Si can be 1 to 16 CHARACTERS No meaning for you Track2_sequence Esc,0,L,38,m,S1,…Si,BCC Si can be 1 to 8 CHARACTERS...
Page 26
Code93_min Esc,0,4,62,m,S1,BCC S1 is 1~48:1 (min<=data len) Code93_max Esc,0,4,63,m,S1,BCC S1 is 1~48:48 (data len<=max) Esc,0,4,64,m,S1,BCC S1 is S1.b0 is for Code11_enable,S1.b1 is for Code11 Code11_cdnumber,S1.b2 Code11_cdsend Code11_enable Esc,0,4,65,m,S1,BCC S1 is 0_disable, 1 enable Code11_cdnumber Esc,0,4,66,m,S1,BCC S1 is 0 one check digit,1_two check digits Code11_cdsend Esc,0,4,67,m,S1,BCC S1 is 0 check digit send,1_not send...
Page 27
reset the setting area into FF. m=2 is upload setting. Actually you just need the format as bellow: Download: Esc,1,02,91,0,s1,...,s255,BCC Upload: Esc,0,3,91,2,BCC EAN128Brace Esc,0,4,92,m,S1,BCC S1 is =0_disable,1 enable(Remove the brace) Remove AimingTime Esc,0,4,93,m,S1,BCC S1 is =0 0.5s,1_1s,2 1.5s 3 2s •...
Scanner3.DLL – Backward compatible API for PT930/PT930S’s Scanner3.dll “Scanner3.lib” and “scanner3.h” are necessary files for VC programming to compile application. You can find it from standard LIB and INCLUDE folder after installed SDK. 4.1 Enable Decoder Function Description: This function will open COM2 port, create a thread to get any barcode input from Decoder Chip, and then store input data in the system buffer.
4.4 Read barcode data Function Description: Get input barcode data and its type from system buffer. Function call: BOOL PT_GetBarcode( TCHAR *szBarcodeBuffer,TCHAR *cType); Parameter: (output) szBarcodeBuffer : string buffer for storing input data cType : Type of Input data =00H Full Code 39 =01H STD Code 39 =02H EAN-13 =03H UPC-A...
ScanKey3.DLL – Backward compatible API for PT930/PT930S’s ScanKey3.dll In Technical Binder CD, you can get this file from folder \Programming\scankey. In this folder can also find extra 3 files. "Scankey3.lib" Used for VC programming "Scankey3.h" Used for VC programming 5.1 Enable Decoder Function Description: This function will open COM2 port, create a thread to get any barcode input from Decoder Chip, and then send scanner data to keyboard buffer.
int PT_StartScan (VOID) 5.6 Reset all symbologies to default Function Description: This function call will reset decoder chip's symbologies setting to system default value Function call for VC: int PT_ SetToDefault (VOID) Function call for VB: PT_ SetToDefault...
ActiveSync function over RS232 port to let user directly control RS232 port. Unitech also provide several function to enable/disable several system icon and task bar. For WinCE system, it just like Windows OS platform, user can directly tap “Start” button from task bar to setup terminal or execute any application on WinCE terminal, so it mean that operator can change, modify or delete any setting.
6.3 Suspend Function Description: After called this function, HT6XX/PA96x/PA982 will automatically suspend itself. Function call: void Suspend (void); Disable TaskBar Function Description: This function will hide “TaskBar” and it doesn’t like “Auto Hide” function which is set from Start Settings TaskBar.
6.8 Disable toolbar on windows explorer Function Description: This function will hide windows explorer’s toolbar Function call: BOOL DisableExploreToolbar (VOID); Return code: =TRUE =FALSE Fail 6.9 Enable toolbar on windows explorer Function Description: This function will enable windows explorer’s toolbar again Function call: BOOL EnsableExploreToolbar (VOID);...
SysIOAPI.DLL This DLL provide hardware relative API for user to control scanner, LED, back-light and PC card slot. API functions are provided through DLL to assist programmer to write application for HT6XX/PA96x/PA982. Two files are essential and provided in SDK, SysIOAPI.LIB and SysIOAPI.H.
7.1.4 Disable/enable power button Function Description: To enable / disable power button Function call: void DisablePowerButton(BOOL) Parameter (Input) TRUE = Disable power button. FALSE = Enable power button. 7.1.5 Set keypad utility input mode Function Description: In terminal, there is a utility to emulate full alpha key input, called GetVK. The input mode can be switched by pressing “alpha”...
Page 37
7.1.8 Check Function key status (For HT680/PA968 only) Function Description: This function is used to check if function key is enabled or not. Function call: BOOL GetFnKeyStatus(void); Return code: TRUE = Function key is enabled. FALSE = Function key is enabled. 7.1.9 Enable/Disable Function key (For HT680/PA968 only) Function Description:...
7.2 Scanner Related Functions To save power, the decoder IC is disabled when scanner is not in use. It can be enabled through USI functions. Following functions are meaningful only if decode IC is enabled. 7.2.1 Enable/Disable Scanner trigger key Function Description: This function enables/disables trigger keys.
7.2.5 Control trigger key’s key event. (FOR PA96x/PA982 Only) Function Description: This function is used to inform system if necessary to generate key event for trigger key. Function call: void EnableTriggerKeyEvent(BOOL fON) Parameter(Input) fON: BOOL: TRUE = Enable key event. False = Don’t generate key event.
7.3 LED related function Function Description: There are two LEDs above the screen of HT6XX/PA96x/PA982, red and green LEDs. Only the green LED can be controlled by programmer. Function call: void GoodReadLEDOn(BOOL fON) Parameter(Input) fON: BOOL: TRUE = turn on LED. FALSE = turn off green LED 7.4 Backlight related function There are two backlight controls, screen backlight and keypad backlight.
7.4.4 Get Keypad Backlight Status (For HT680/PA966/PA962/PA982 only) Function Description: This function returns the status of keyoad backlight. Function call: BOOL GetKeypadLightStatus(void) Return code: TRUE = keypad backlight is on. FALSE = keypad backlight is off. 7.4.5 Screen Backlight Brightness Control Function Description: This function adjusts screen backlight brightness.
7.7 Wireless module related functions 7.7.1 Inquire wireless module status Function Description: This function returns wireless module enable/disable status. Function call: BOOL GetWLANStatus() Return code: TRUE = Module is enabled. FALSE = Module is disabled. 7.7.2 Enable/Disable wireless module Function Description: This function enables/disables wireless module.
7.8.2 Enable/Disable PCMCIA or CF slot Function Description: This function enables/disables PCMCIA or CF slot. PA96x/PA982 assigns physical slot 0 to CF and slot1 to PCMCIA, which is reversed compared with previous products. The following function is kept for compatible reason. It takes the same uSocket value as previous products, but reversed internally.
7.8.5 Inquire IO slot status Function Description: This function returns slot enable/disable status. It is recommended to use with function GetPCMCIASlotID() for platform independent reason. Function call: BOOL GetPCMCIAStatus1(UINT uSocket) Parameters(Input) uSocket: UINT: slot to be applied. Return bEnable : BOOL: TRUE = specified slot is enabled.
7.10 Enable/Disable LCD screen Function Description: Turn on / off LCD screen Function call: void PowerOnColorLCD(BOOL fON) Parameters(Input) fON: BOOL: TRUE = Power on LCD screen FALSE = Power off LCD screen...
BlueTooth relative API - BTAPI.DLL This DLL provide BlueTooth relative API. Two files are essential and provided in SDK, BTAPI.LIB and BTAPI.H. 8.1 Enable/Disable Bluetooth Power status Function Description: Enable Bluetooth Module Power ON/OFF Function call: void BT_PowerEnable ( BOOL bEnable ) Parameter (Input) bON: BOOL:...
RH767 HF reader To programming RH767 HF reader, it needs C++ library. Please get it from below URL. http://w3.adc.unitech.com.tw/pub/cs/SDK/RH767/RFID_SDK.zip And get the sample program from the link. http://w3.tw.ute.com/pub/cs/software/RFID/HF/RFID_HF.zip 9.1 General Function 9.1.1 Get library version Function Description: To get the library version.
9.1.4 Select Card type Function Description: This API change the reader working type with different card type and this should be called before read the card. Function Call: INT32 RDINT_WorkingType (BYTE u8COMPort, BYTE u8Type); Parameter: u8COMPort: The reader’s COM port number (1 – 255) u8Type: WT_ISO14443_TypeA WT_ISO14443_TypeB...
9.2 ISO-15693 9.2.1 Inventory Function Description: Set the card to StayQuiet mode and return the card ID. Function Call: INT32 RDINT_ISO15693Inventory(BYTE u8COMPort, BYTE u8Flag, BYTE u8Afi, BYTE u8MaskLen, LPBYTE pu8Mask, LPBYTE pu8Dsfid, LPBYTE pu8Uid); Parameter: u8COMPort: The reader’s COM port number (1 – 255) u8Flag: It specifies the actions to be performed by the VICC and whether corresponding fields are present or not.
9.2.4 Set Ready Mode Function Description: Set the card to Ready mode for StayQuiet or Select mode. Function Call: INT32 RDINT_ISO15693Reset2Ready(BYTE u8COMPort, BYTE u8Flag, LPBYTE pu8Uid); Parameter: u8COMPort: The reader’s COM port number (1 – 255) u8Flag: It specifies the actions to be performed by the VICC and whether corresponding fields are present or not.
9.2.7 ISO15693 Lock Block Function Description: Lock the block on ISO15693 tag. Function Call: INT32 RDINT_ISO15693LockBlock(BYTE u8COMPort, BYTE u8Flag, LPBYTE pu8Uid, BYTE u8Block); Parameter: u8COMPort: The reader’s COM port number (1 – 255) u8Flag: It specifies the actions to be performed by the VICC and whether corresponding fields are present or not.
9.2.10 Write DSFID to ISO15693 Tag Function Description: Write DSFID to the specific ISO15693 tag. Function Call: INT32 RDINT_ISO15693WriteDsfid(BYTE u8COMPort, BYTE u8Flag, LPBYTE pu8Uid, BYTE u8DsfidValue); Parameter: u8COMPort: The reader’s COM port number (1 – 255) u8Flag: It specifies the actions to be performed by the VICC and whether corresponding fields are present or not.
9.3 ISO-14443A 9.3.1 Write Default Key Function Description: Write the default key to reader. Function Call: INT32 RDINT_WriteDefaultKey(BYTE u8COMPort, BYTE u8DefaultKeyIndx, LPBYTE pu8DefaultKey); Parameter: u8COMPort: The reader’s COM port number (1 – 255) u8DefaultKeyIndx: The default key index in the reader pu8DefaultKey: The point of the buffer which contain key.
9.3.3 ISO-14443A Close Card Function Description: Unlock the ISO-14443A tag. After control the ISO-14443A tag, user should call this API to unlock the tag. Function Call: INT32 RDINT_CloseCard(BYTE u8COMPort); Parameter: u8COMPort: The reader’s COM port number (1 – 255) Return code: Please refer to section 9.5.
9.3.5 ISO-14443A Read Sector Data Function Description: Read the specify sector data. Function Call: INT32 RDINT_ReadMifareOneSector(BYTE u8COMPort, BYTE u1KeyType, BYTE u1DefaultKey, BYTE u8DefaultKeyIndx, BYTE u8Sector, LPBYTE pu8Key, LPBYTE pu8Data); Parameter: u8COMPort: The reader’s COM port number (1 – 255) u1KeyType: The private key type.
9.3.7 ISO-14443A Inventory Function Description: Read ISO-14443A Tag. Function Call: INT32 RDINT_MifareAutoRequest4Antennas(BYTE u8COMPort, LPBYTE pu8GRLCS); Parameter: u8COMPort: The reader’s COM port number (1 – 255) pu8GRLCS: Receive the read data’s length which in the reader’s buffer. Return code: Please refer to section 9.5. 9.4 ISO-14443B 9.4.1 Select ST Card Function Description:...
9.4.4 Write SR176 Card’s Block Data Function Description: Write data to specify SR176 card’s block. Function Call: INT32 RDINT_SR176WriteBlock(BYTE u8COMPort, BYTE u8BlkNo, LPBYTE pu8Data); Parameter: u8COMPort: The reader’s COM port number (1 – 255) u8BlkNo: The block number which user wants to read (Ex: 0, 1, 2…). pu8Data: The data which user wants to write to the block.
9.4.8 Authenticate SRIX4K Card Function Description: Authenticate the specify SRIX4K card. Function Call: INT32 RDINT_SRIX4KAuth(BYTE u8COMPort, LPBYTE pu8Auth); Parameter: u8COMPort: The reader’s COM port number (1 – 255) pu8Auth: The authentication data. Return code: Please refer to section 9.5. 9.4.9 Read SRIX4K Card ID Function Description: Read the SRIX4K card ID.
10 RH767 UHF reader for WJ To programming RH767 UHF reader, it need C# DLL “MPR DLL.dll”. Please get it from below URL. http://w3.adc.unitech.com.tw/pub/cs/SDK/RH767/RFID_SDK.zip 10.1 Class “MPRReader” This is the main class instantiated by Applications. Manages a single WJ Multi-Protocol Reader. Provides properties and methods for accessing features of the MPR.
10.3 The Function in MPRReader 10.3.1 Connect to RFID Reader Function Description: To create a connection with the reader before control it. Function Call: bool Connect(string SerialPortName, string BaudRate) Parameter: SerialPortName: The reader’s COM port number (COM1: – COM255:) BaudRate: The baud rate with the reader, the default is “57600” Return code: True : Connect success.
11 RH767 UHF reader for SkyeTek This library “Skeydll.dll” is used to control RH767 RFID Reader. Please get it from below URL. http://w3.adc.unitech.com.tw/pub/cs/SDK/RH767/RFID_SDK.zip 11.1 Connect to RFID reader Function Description: To create a connection with the reader before control it.
11.4 Select Gen2 Tag Function Description: To only detect EPC Class1 Gen2 tags. Function Call: BOOL SelectGen2Tag (char *szData); Parameter: szData: Receive the Tag ID. Return code: TRUE: Select tag success. FALSE: Select tag fail. 11.5 Read Data from Gen2 Tag’s Blocks Function Description: To read data from Gen2 tag’s blocks.
11.7 Select ISO18000-6B Tag Function Description: To only detect an ISO18000-6B tag. Function Call: BOOL SelectISO180006BTags (char *szData); Parameter: szData: Receive the Tag ID. Return code: TRUE: Select tag success. FALSE: Select tag fail. 11.8 Read Data from ISO18000-6B Tag’s Block Function Description: To read the data form ISO18000-6B tag’s block.
11.10 Select All Tags of Any Type Function Description: Selecting all supported tags in field. Function Call: BOOL InventoryTag (int *nIndex); Parameter: nIndex: Return the number of tags. Return code: TRUE: Select tag success. FALSE: Select tag fail. 11.11 Get The tags from Command InventoryTag Function Description: Get the tags which read by command InventoryTag.
11.13 Lock Gen2 Tag Function Description: Set password protection for the different memory bank of the tag. Function Call: BOOL LockGen2Tag (char *szData); Parameter: szData: The lock value. Return code: TRUE: Lock tag success. FALSE: Lock tag fail. 11.14 Lock ISO18000-6B Tag Function Description: To lock ISO18000-6B blocks.
11.16 Set Reader’s Power Level Function Description: To set reader’s power level. Function Call: BOOL SetPowerLevel(int nPower, BOOL bSetDefault); Parameter: nPower: The power level. bSetDefault: TRUE for set to the value to EEPROM and FALSE for temporary Return code: TRUE: Set value success.
11.19 Set Reader’s Frequency Function Description: To set reader’s frequency. Function Call: BOOL SetFrequency(FREQUENCY_TYPE nFrequencyType, char *szFrequency, BOOL bSetDefault); Parameter: nFrequencyType: The frequency type. szSpacing: The frequency value. bSetDefault: TRUE for set to the value to EEPROM and FALSE for temporary Return code: TRUE: Set value success.
11.22 Get Reader’s Firmware Version Function Description: To get reader’s firmware version. Function Call: BOOL GetFWVersion (char * szVersion); Parameter: szVersion: The reader’s firmware version. Return code: TRUE: Get firmware version success. FALSE: Get firmware version fail. 11.23 Get Reader’s LBT Setting Function Description: To get reader’s LBT(listen before talk) setting.
This library “RFID18K6CReader.dll” is used to control new RH767 RFID Reader. Please get it from below URL. http://w3.adc.unitech.com.tw/pub/cs/SDK/RH767/Kitty_SDK.zip 12.1 Kitty RFID Reader API Reference To Build the project copy all header file and RFID186KCReader.lib to you project folder, and then include rfidstruct.h and RFID18K6CReaderAPI.h to your project.
12.3 RFID Reader Configuration After RFID Reader Interface has been successfully initialized, Developer must open a RFID Reader and then Configure parameters of RFID Reader for the current operation environment. Such as the operation mode, data response format, the power state of RFID Reader and other parameters. 12.3.1 Open RFID Reader Description: Open a RFID Reader for control.
12.3.5 Set the Response Data’s Mode of the RFID Reader Description: Allows the application to control the mode of data reporting for tag-access operations. By default, the reporting mode is set to "normal". RFID18K6CReaderAPI.dll only support “Compact” and “Normal” format. Compact mode contains the minimum amount of data necessary to return the results of tag-protocol operations to the application;...
12.3.10 Get the RFID Reader’s Low-Level Parameter Description: Retrieves a low-level RFID Reader module configuration parameter. Function Call: RFID_STATUS RFIDGetConfigurationParameter(INT16U parameter, INT32U *pValue); Parameters: parameter – parameter to retrieve. pValue – pointer to variable that contain the value of configuration parameter. Returns: RFID_STATUS.
12.4.4 Retrieving Antenna-Port Configuration Description: Retrieve a single logical antenna port's configuration parameters – for example, dwell time, power level, and number of inventory cycles. Even the logical antenna port is disabled. Function Call: RFID_STATUS RFIDGetAntennaPortConfiguration(INT32U antennaPort, RFID_ANTENNA_PORT_CONFIG *pConfig); Parameters: antennaPort –...
12.5.2 Get Antenna’s Response Status Description: After the tag access operation executed call this function to retrieve the Antenna's status. In Block mode call this function follow the tag access function; In Non-block mode call this function in application-defined callback function. Function Call: BOOL RFIDGetAntennaStatus(int nAntenna, LPANTENNA_STATUS lpAntennaStatus);...
12.5.6 Tag Inventory Operation Description: Executes a tag inventory for all tags of interest. If the selection Criteria and post- singulation is specified, tags will be partitioned first. Function Call: void RFIDInventory(RFID_INVENTORY stInventory, LPACCESS_STATUS lpAccessStatus, BOOL bBlock = FALSE, int nTimeout = 3000); Parameters: stInventory –...
12.5.13 Tag Post Singulation Operation Description: Configures the post-singulation match criteria to be used by the RFID radio module. An application can use post-singulation to filter tags, based upon all or part of the tag's EPC. The post-singualtion match criteria will stay in effect until the next call of post- singulation.(All the tag's access operation will apply to the which has been singulated only.) Function Call:...
12.5.17 Cancelling a Tag Operation Description: Stops a currently-executing tag operation on a RFID Reader. Function Call: RFID_STATUS RFIDCancelOperation (); Parameters: None Returns: RFID_STATUS 12.5.18 Aborting a Tag Operation Description: Terminate a tag operation immediately. Any response packet will be discarded. Function Call: RFID_STATUS RFIDAbortOperation ();...
12.7 Structure of the Library 12.7.1 RFID_ANTENNA_PORT_CONFIG Description: The configuration parameters for a logical antenna port. Define: typedef struct { INT32U length; INT32U powerLevel; INT32U dwellTime; INT32U numberInventoryCycles; INT32U physicalRxPort; INT32U physicalTxPort; INT32U antennaSenseThreshold; } RFID_ANTENNA_PORT_CONFIG; Fields: length - The length of the structure in bytes. Must be set to by the application to sizeof(RFID_ANTENNA_PORT_CONFIG) powerLevel - The power level for the logical antenna port's physical transmit antenna.
12.7.2 ACCESS_STATUS Description: Contain the information of the tag operation result. Define: typedef struct ACCESS_STATUS_TAG{ FILETIME ftStartTime; FILETIME ftEndTime; INT32U dwResponseMode; INT32U dwOperationMode; INT16U unCommand; DWORD dwErrorCode; DWORD dwStatus; INT16U unAntennas } ACCESS_STATUS, *LPACCESS_STATUS; Fields: ftStartTime – Time of the Tag operation start ftEndTime –...
12.7.4 ACCESS_DATA Description: Contain access data of the tag return by the antenna. Define: typedef struct ACCESS_ DATA _TAG{ INT16U unEPCLength; INT16U unRSSI; //The receive signal strength BYTE pnEPC[68]; //PC + EPC + CRC INT16U unDataLength; BYTE pnData[256]; //Access data or access Status } ACCESS_DATA, *LPACCESS_DATA;...
12.7.11 RFID_KILL Description: The structure of Kill a tag. Define: typedef struct RFID_KILL_TAG { HWND hWnd; //Parent window RFIDPROC lpfnStartProc; RFIDPROC lpfnStopProc; INT32U accessPassword; INT32U killPassword; }RFID_KILL; Fields: hWnd –The Parent window which issue the Tag operation. lpfnStartProc – Application-defined callback function. The RFID Reader Interface call this function before execute Tag operation.
12.7.16 RFID_POST_SINGULATION Description: The structure of post-singulation matches criteria. Define: typedef struct RFID_POST_SINGULATION_TAG { INT32U offset; INT32U count; INT8U mask[RFID_18K6C_SINGULATION_MASK_BYTE_LEN]; BOOL32 match; }RFID_POST_SINGULATION; Fields: offset – offset in bits, from the start of the EPC. count –The number of bits in the mask.Alength of zero causes all EPC to match. If (offset + count) falls beyond the end of the mask, the tag is considered non- matching.(valid values are 0 to 396).
12.8 Error Code There are two types of error codes. One is returned by RFID Library interface indicates RFID library status and the other is return by the RFID module’s firmware contains access operation result. RFID Library status and error codes: Name Value RFID_STATUS_OK...
Page 92
Access Operation Result: Value Description 0x00 Success 0x01 Read after write verify failed. 0x02 problem transmitting tag command 0x03 CRC error on tag response to a write 0x04 CRC error on the read packet when verifying the write 0x05 Maximum retry's on the write exceeded 0x06 Failed waiting for read data from tag, possible timeout.
RFID Reader. The methods in R1000ReaderCF have the same name as their Native implementation. 12.9.2 Programming Model The first is add reference of R1000ReaderCF.dll to your project. C# example: using Unitech.R1000.Reader; using Unitech.R1000.Reader.Constants; using Unitech.R1000.Reader.Structures; //Create and Initialize the RFID Library String strVersion = String.Empty;...
13 Useful function call – without include SysIOAPI.DLL Below API maybe useful for you to control HT6xx/PA96x 13.1.1 Warm-boot. Cold-boot and power off #include <pkfuncs.h> #include "oemioctl.h" // Warn boot KernelIoControl(IOCTL_HAL_REBOOT, NULL, 0, NULL, 0, NULL); // Cold boot KernelIoControl(IOCTL_COLD_BOOT, NULL, 0, NULL, 0, NULL); // Power off DWORD dwExtraInfo=0;...
14 Get Device ID In HT6xx/PA96x, an unique ID had been burnt into terminal, user can check it by pressing “Func”+”9”. The sample code for read device ID as follow, //////////////////////////////////////////////////////////////// HWND hDeviceId = GetDlgItem(hWnd, IDC_DEVICEID); PDEVICE_ID pDeviceID = NULL; TCHAR outBuf[512], deviceID[200];...
17 Camera related functions (C#) Please get C# sample program from below URL. http://w3.tw.ute.com/pub/cs/software/Sample_Program/Camera/CameraDemo_C_Sharp.zip 17.1 Open Camera Function Description: Open camera and initial video resource for encoding / decoding processes. This must be called before any other functions. Function Call: bool OpenCamera();...
17.5 Get transparent color key Function Description: Get which color is transparent of display context. The transparent pixels will be replaced by camera image. Function Call: int GetColorKey(); Return code: The color key is described by ARGB value. 17.6 Capture Image Function Description: Capture a photo with the specified resolution and store in JPEG file format.
17.8 Stop Capture Video Function Description: Stop video capturing. Function Call: bool EndVideoCapture() Return code: TRUE: Success. FALSE: Fail. 17.9 Initial Playback Decoder Function Description: Initial the playback decoder. Function Call: bool InitializeDecoder(string filename, int left, int top, int width, int height); Parameter: filename: Video file path.
18 Fingerprint related functions Please get sample program and manual from below URL. http://w3.tw.ute.com/pub/cs/software/Sample_Program/PA968/Fingerprint.zip...
19 GPS related functions Please get sample program and manual from below URL. http://w3.tw.ute.com/pub/cs/software/Sample_Program/PA968/GPS_SDK1.01.zip...
20 USI .NET Compact Framework Component Please get sample program and manual from below URL. http://w3.tw.ute.com/pub/cs/software/Sample_Program/USICF/usicf_v25.zip...
21 USI ActiveX Control Please get binary file and html example from below URL. http://w3.tw.ute.com/pub/cs/software/Sample_Program/USIActiveX/USIActiveX.zip 21.1 Register Control a. Copy Microsoft “REGSVRCE.exe” to device. b. Run “REGSVRCE.exe ScannerActiveX.dll” to register control. c. Warmboot device to apply system change. 21.2 Embedded to html <OBJECT ID="Scanner"...
23 Update notes V1.0 The first version V1.1 Wrong URL link for C# on chapter 1.4 V1.2 PA982 support V1.3 Add RH767 HF/UHF programming on chapter 9 & 10 V1.4 Modify RH767 HF programming on chapter 9. V1.6 Change logo V1.7 Modify SDK URL V1.8...