background image

 

 - 6 

 

1. Introduction 

 

1.1.  How to download data from scanner 

The major difference between the HT660/PA96x/PA982 and a standard HPC/PalmPC is 
barcode input capability. The WinCE Reference Manual contains no information regarding 
barcode input.

 

  This section will introduce the programming structure of the barcode sub-

system and the programming utility library for the HT660/PA96x/PA982.  Inside the 
HT660/PA96x/PA982 there is an advanced decoding chip to control SE900 laser engine and 
to handle barcode decoding.  Below is system diagram for the HT660/PA96x/PA982 
barcode: 
 

According to the above diagram, the HT660/PA96x/PA982 communicates with Decoder 
Chip by mean of serial port COM2. Its communication parameter is fixed on 38400,N,8.1.   
Normally, the Decoder Chip is in sleep mode when COM2 is not activated.    When COM2 is 
activated, the Decoder Chip will start working, and it will decode the barcode “signal” from 
the laser engine when the trigger key is pressed.  After decoding, barcode data and its 
symbology type will be sent directly to HT660/PA96x/PA982.   
 
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. Application program “Scan2Key.exe” is a useful application program that can read 

input data from the laser scanner and then directly input the data into 
HT660/PA96x/PA982’s keyboard buffer. “Scan2Key.exe” makes barcode data input 
simple, and can be especially valuable to those programmers not familiar with COM 
port programming. User program simply reads the barcode data from the keyboard. For 
barcode symbologies setting, you can run 

Scanner Setting

 from 

Control Panel

 to 

define all of supporting symbologies and delimiter.   

 
2. Utility  library:   

For programming control, HT660/PA96x/PA982 provide USI.DLL to let user control 
scanner input, symbologies setting and profile controlling. Please refer to 

2

 for detail 

API lists. 
 
USI.DLL is Unitech’s new scanner function library on HT660/PA96x/PA982. For 
backward compatible issue, Unitech still provide Scanner3.DLL and ScanKey3.DLL for 
existing PT930/PT930SA user to port their software into HT660/PA96x/PA982, but 
several APIs on Scanner3.DLL and ScanKey3.DLL have already been removed on 
HT660/PA96x/PA982. User can refer to 

0

and 

5

 for detail supporting API. 

CPU 

COM2

Advanced 

Decoder 

Chip 

Laser 

Engine 

   

Summary of Contents for HT660 Wireless edition

Page 1: ...HT660 PA96x PA982 RH767 Programming Manual V 1 7 2008 01 15...

Page 2: ...ror code 9 2 7 Get scan data 10 2 8 Get length of scanned data 11 2 9 Get Symbology name 11 2 10 Clear scan data system buffer 12 2 11 Good read indicator 12 2 12 Wait for acknowledgement of the last...

Page 3: ...SCANNER3 DLL 22 4 1 Enable Decoder 22 4 2 Disable Decoder 22 4 3 Check barcode input 22 4 4 Read barcode data 23 4 5 Get DLL version no 23 4 6 Reset all symbologies to default 23 5 SCANKEY3 DLL BACKWA...

Page 4: ...eypad utility input mode 29 7 1 6 Get keypad utility input mode For HT660 only 29 7 1 7 Check Alpha key is pressing For PA962 PA966 PA982 only 29 7 2 Scanner Related Functions 30 7 2 1 Enable Disable...

Page 5: ...5693 Inventory Parameter 39 9 8 ISO 15693 Inventory 39 9 9 Get Data From Reader 40 9 10 Error Code 40 10 RH767 UHF READER 42 10 1 Class MPRReader 42 10 2 The Parameter in MPRReader 42 10 3 The Paramet...

Page 6: ...ly 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 Decod...

Page 7: ...ET VB NET_sample zip C http w3 tw ute com pub CS software Sample_Program HT660 evc evc_sample zip PA96x PA982 series C http w3 tw ute com pub cs software Sample_Program PA962 c_sharp c_sharp_sample zi...

Page 8: ...dicates a system error which is caused by a call to the system function Param contains the error code from GetLastEror SM_ERROR Indicates an error Param contains the cause of error which can be on of...

Page 9: ...ion Set the scanner to the working mode and reset the communication control Function call BOOL USI_Reset Return Always TRUE 2 5 Get error code Function Description Returns the error code SERR_ Functio...

Page 10: ...ned on USI H Please refer to below list BCT_CODE_39 Code 39 BCT_CODABAR CodaBar BCT_CODE_128 Code 128 BCT_INTERLEAVED_2OF5 Interleaves 2 of 5 BCT_CODE_93 Code 93 BCT_UPC_A UPC A BCT_UPC_A_2SUPPS UPC A...

Page 11: ...PC A BCT_UPC_A_2SUPPS UPC A with 2 Supps BCT_UPC_A_5SUPPS UPC A with 5 Supps BCT_UPC_E0 UPC E BCT_UPC_E0_2SUPPS UPC E with 2 Supps BCT_UPC_E0_5SUPPS UPC E with 5 Supps BCT_EAN_8 EAN 8 BCT_EAN_8_2SUPPS...

Page 12: ...ngs DLLLEDCONTROL UPI300 DLL The function prototype of GoodReadLEDOn is VOID WINAPI GoodReadLEDOn BOOL fon Turn on when fon is TRUE and turn off when fon is FALSE 2 12 Wait for acknowledgement of the...

Page 13: ...ttings remain unchanged Return TRUE success FALSE error 2 16 Automatically enable scanner beam with pressing trigger key Function Description Start auto scanning Scan engine will be automatically trig...

Page 14: ...aded Return NULL Scan2Key is not running Non NULL indicates scan2key is running It actually returns window handle for scan2key but it is for internal use send messages 2 20 Test if Scan2Key is enabled...

Page 15: ...as following Esc and BCC will be calculated and added automatically Esc high length low length command ID operation set BCC Please refer to complete command reference on section 4 BOOL HAM_SendCommand...

Page 16: ...ber of parameters is specified by first parameter num Function call BOOL HAM_SendCommand2 BYTE num BYTE parameter1 Parameter input num BYTE number of total parameters parameterx BYTE Parameter Paramet...

Page 17: ...ster to Host If Hamster receive a command and this command do not need send message back Hamster reply the ACK NAK Esc 80H NAK 15H It is from Hamster to Host Hamster require the Host to re send comman...

Page 18: ...S Scan_post_data Esc 0 L 1c m S1 Si BCC Si can be 1 to 8 CHARACTERS Define_code39f Esc 0 4 1d m S1 BCC define Code 39 full ASCII ID Here S1 is 1 CHARACTER Define_code39s Esc 0 4 1e m S1 BCC define Cod...

Page 19: ...th Esc 0 4 49 m S1 BCC S1 is 0_on 1 off record first 3 record len S2of5_cd Esc 0 4 4a m S1 BCC S1 is 0 calculate send 1 calculate not send 2_not calculate S25_min Esc 0 4 4b m S1 BCC S1 is 1 48 4 min...

Page 20: ...CC S1 is 0 disable 1_enable Upc_e_ld Esc 0 4 7a m S1 BCC S1 is 0_leading digit send 1 not send Upc_e_cd Esc 0 4 7b m S1 BCC S1 is 0 check digit send 1_not send Upc_e_expand Esc 0 4 7c m S1 BCC S1 is 0...

Page 21: ...amster execute the command after receive an Esc ENQ then send back a reply The Max Length of data is 264 The m and the reply define as following DATA TO HOST FROM HAMSTER Data format Code_number Lh Ll...

Page 22: ...data from the system buffer Function call INT PT_EnableBarcode VOID Return code 1 Create new thread fail 2 Cannot re enable 3 Cannot open COM2 4 Upload parameter from Hamster fail 0 OK 4 2 Disable Dec...

Page 23: ...8H Code 128 09H Code 93 0Ah STD 25 0BH MSI 0CH EAN 128 0DH Code 32 0EH DELTA 0FH LABEL 10H PLESSEY 11H Code 11 12H TOSHIBA Return code TRUE There is barcode input FALSE No Barcode Input 4 5 Get DLL ve...

Page 24: ...d which is created by PT_EnableBarToKey Function call for VC VOID PT_DisableBarToKey VOID 5 3 Get DLL version no Function description This function is used to get DLL version number Function call for...

Page 25: ...bar keyboard and etc You can get demo program from HT660 PA96x PA982 technical binder zip files from programming UnitechAPI 6 1 Disable ActiveSync Function Description After called this function HT66...

Page 26: ...ode TRUE OK FALSE Fail 6 7 Enable Desktop Function Description This function will show all icons which had already showed on desktop before executed DisableDesktop Function call BOOL EnsableDesktop VO...

Page 27: ...n LPTSTR Parameter Input Specify the connection name in parameter Return code TRUE Success FAULE Fail 6 11 Enable Connection Function Description This function will enable the specify connection in Se...

Page 28: ...ck 7 1 2 Get SHIFT 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 Function Description To check...

Page 29: ...rameter input For HT660 0 normal 1 lower case 2 upper case For PA962 PA966 PA982 0 hide the selection window 1 show lower case selection window 2 show upper case selection window Return code None 7 1...

Page 30: ...es trigger keys to turn scan engine on or off It functions even if trigger keys are disabled Function call void SetScannerOn BOOL fON Parameter Input fON BOOL TRUE turn scan engine on False turn scan...

Page 31: ...ion call Void EnableTriggerKeyEvent BOOL fON Parameter Input fON BOOL TRUE Enable key event False Don t generate key event Return code none Note Trigger key activity will generate an event named EXT K...

Page 32: ...me while 1 WaitForMultipleObjects 2 gKeyEvents FALSE INFINITE TriggerKeyStatus LEFT_TRIGGER_KEY TriggerKeyStatus RIGHT_TRIGGER_KEY 7 3 LED related function Function Description There are two LEDs abov...

Page 33: ...ON Parameter Input fON BOOL TRUE turn on keypad backlight FALSE turn off backlight Return code 7 4 4 Get Keypad Backlight Status For PA966 PA962 PA982 only Function Description This function returns t...

Page 34: ...he following function is kept for compatible reason It takes the same uSocket value as previous products but reversed internally Function call void EnablePCMCIASlot UINT uSocket BOOL bEnable Parameter...

Page 35: ...lot 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...

Page 36: ...ery ID Function call BYTE GetSmartBatteryID void Return 0 Not Smart Battery Other Smart battery it 7 7 Enable Disable LCD screen Function Description Turn on off LCD screen Function call void PowerOnC...

Page 37: ...call void BT_PowerEnable BOOL bEnable Parameter Input bON BOOL TRUE Enable FALSE Disable Return code FALSE PowerOFF Module 8 2 Get BT Power status Function Description Get Bluetooth Module Power Statu...

Page 38: ...9200 It supports 9600 19200 38400 and 115200 strAccessCode The reader s access code default is 00000000 u1SecurityMode To set use security mode or not TURN_ON Open TURN_OFF Close u32OpenDelayMs The de...

Page 39: ...eter Function Description Set inventory parameter for ISO 15693 Function Call INT32 RDINT_ISO15693AutoInventoryParam BYTE u8COMPort BYTE u8Flag BYTE u8Afi BYTE u8MaskLen LPBYTE pu8Mask Parameter u8COM...

Page 40: ...RPARAM 0x05 Request Parameter error LRACCESS 0x06 Card access error LRREAD 0x07 Card read error LRWRITE 0x08 Card write error LRINCR 0x09 Purse increment error LRDECR 0x0a Purse decrement error LRTRAN...

Page 41: ...lost LRBADCOMPORT 0xfe COM port cannot be accessed LRNOCRYPTBOX 0xf8 Key Box not found LRBADAPPACCES S 0xf7 Invalid Application access code LRNOMAIDFILE 0xf6 Cannot open MAID definition LRBOXREAD 0xf...

Page 42: ...enna on reader and this value should be 0 on RH767 byte TxPower This parameter to set and get the current antenna power and this value should between 18 30 int InvUpdateGap To set and get the time bet...

Page 43: ...D Reader Function Description Close the connection and disable inventory with reader Function Call void Disconnect Parameter None Return code None 10 3 3 Clear All Tags In The Reader Function Descript...

Page 44: ...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 dwEx...

Page 45: ...LL 0 outBuf sizeof outBuf bytesReturned Platform ID memcpy PBYTE platformID PBYTE pDeviceID pDeviceID dwPlatformIDOffset pDeviceID dwPlatformIDBytes Device ID memcpy PBYTE deviceID PBYTE pDeviceID pDe...

Page 46: ...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...

Reviews: