7802 WiFi Terminal Portable WiFI Data Collection Terminal Worth Data® 7800 Series Host Controlled WiFi Terminal System Owner's Manual Quick Start Guide www.worthdata.com Copyright © 2012, Worth Data, Inc.
This equipment has been tested and found to comply with the limits for a Class A digital device, pursuant to Part 15 of the FCC Rules. These limits are designed to provide reasonable protection against harmful interference in a residential installation. This equipment generates, uses and can radiate radio frequency energy and, if not installed and used in accordance with the instructions, may cause harmful interference to radio communications.
Table of Contents Introduction...................................................................................................................7 Differences....................................................................................................................7 Chapter 1: Installation..................................................................................................8 Components.......................................................................................................
Evaluating your area of planned operation...................................................................................................40 Chapter 4: Before You Begin Programming…..........................................................44 Overview...........................................................................................................................................................44 Plan Your Application................................................................................
Branch...........................................................................................................................................................95 Question........................................................................................................................................................95 Stamp (date and time Stamp).......................................................................................................................95 Time (time stamp)...................
I get 6 beeps when the Wi-Fi RF Terminal powers up......................................................................114 Problems reading Bar Codes......................................................................................................................114 The reader won't beep when I try to read bar codes..........................................................................114 I get extra characters at the beginning or end of my bar code data..............................................
Introduction The 7802 Wi-Fi RF Terminal is a low cost, easy-to-use radio frequency interactive terminal which communicates using the IEEE 802.11b/g protocol. It is designed to connect to a Wi-Fi network using an access point or wireless router. This terminal offers unprecedented power and ease of use, while maintaining compatibility with programs written for the older Worth Data Terminals.
Chapter 1: Installation Components The components in your Wi-Fi RF Terminal system will vary according to the configuration of your system. Your Wi-Fi RF Terminal shipment should contain at least: • A Wi-Fi RF Terminal T7802 or LT7802 - If the Wi-Fi RF Terminal is an LT7802 model, it will have an integrated laser scanner built-in to the body of the terminal. • USB Cable – for programming and voice prompt upload. • 5V Power Supply – battery charger with adapter cable.
mistake, you can delete the last character by pressing the DELETE key, or you can clear all characters displayed on the screen by pressing the CLEAR key. Battery Life Indicator The Wi-Fi RF Terminal detects low battery and displays the following message: LOW BATTERY Charge Battery Hit Any Key_ At this point you have approximately 10% of battery life remaining. You should complete what you are doing and charge the battery soon.
handle battery assembly. 5. Replace the battery door and screws and turn the reader on using the ON/OFF switch. 6. It is a good idea to fully charge the new battery(s) before first use. Recharging the battery: 1. With the RF Terminal shut off, plug the 5V power adapter into the RF Terminal using the supplied adapter cable. 2. The RF Terminal will turn On and display the following message: Charging Battery Please Wait……….. 3.
• • • • SSID is the name of the network that this terminal will connect to. Press the 1 key to SIGN ON to a host computer program through an access point. Pressing 2 enters the Setup Mode for the Wi-Fi RF Terminal. Press 3 to scan for access points that are within range of the Wi-Fi RF Terminal. You can back-out of any mode or prompt by pressing the F1 key. For example, if you select SETUP MODE but really want SIGN ON, press the F1 key to take you back to the previous menu.
WiFi configuration for your LAN/access point. This is a simulated data collection application that can be used to test your installation or to demonstrate how the 7802 Terminal system works. See chapter on RF System Setup for more on configuring your Terminal. As part of the Integrated Utilities, Worth Data also provides a complete stand-alone testing system that will run on your LAN and does not require Internet access. Using this test program requires more detailed configuration of your Terminal(s).
Chapter 2: RF System Setup The Wi-Fi RF Terminal can be configured using the Wi-Fi RF Terminal Setup menu. Most users do not need to change anything in the setup except for the Wi-Fi settings.
Using the Setup Menu on the RF Terminal The Wi-Fi RF Terminal can be setup via the Terminals' keypad by entering Setup from the menu. 1. - SIGN ON 2. - SETUP 3. - SITE SURVEY Press the 2 key.
Wi-Fi Configuration Under Wi-Fi Configuration there are three sections: Wi-Fi CONFIGURATION TERMINAL CONFIGURATION ACCESS POINT CONFIG CONNECTION HOST CONFIG 1 2 3 Terminal Configuration DHCP ON Default: ON Description Sets the Terminal to either obtain and IP address, network mask, gateway, etc. from a DHCP server, or to use static settings that you enter into the Terminal. DCHP servers typically run on your LAN, not on the internet. Most LANs use a DHCP server.
“255”s tells us is that all of the IP addresses on your subnet must have the same first three triplets (ie “192.168.1”) and that the fourth triplet can be any value from 1 to 255. All of the devices on your LAN with an IP address that starts with “192.168.1” will be visible to each other. If there is a device with an IP address of “192.16.2.5”, it is on a different subnet and will not be visible to all the “192.168.1.x” devices.
The gateway IP address is generally the IP address of your DSL or cable modem/router on your LAN. Options In most cases, the gateway address is supplied by a DHCP server, but if not you can enter one. A typical address is 192.168.0.1; you can check your computer settings and match that. DNS Server IP Address 000.000.000.000 Default: 000.000.000.000 Description A DNS server is any computer registered to join the Domain Name System.
hidden, you can use the SITE SURVEY command at the opening screen to find the SSID of Wi-Fi networks that are in range. The SSID must be entered in the Terminal EXACTLY as it is set in the WiFi router (and as shown in the Site Survey described above). This means all upper- and lower-case letters and number must match exactly. When setting the SSID the cursor will change to a white box. Press the light blue shift key to enter uppercase alpha characters. Press the F2 to toggle upper and lower-case entry.
upper- and lower-case characters. Connection Host Configuration Connection Host URL www.worthdata.net/server/cloud.php Default: www.worthdata.net/server/cloud.php Description This is the web address/URL or IP address (must have DNS Server set if using a URL) where a Connection Host is running.
The Port Number is part of the address of the Connection Host and is used in addition to the Connection Host URL above. Think of the port number as like a PO Box number in a mailing address. By using different ports, a single computer running on a single IP address can support multiple server functions, for example it can be an FTP server (port 21), an HTTP web server (port 80), a telnet server (port 23), a SMTP mail server (port 25), etc.
that use this Application Server. The Connection Host does not use this setting and simply passes the User Name on to connected Terminals and Application Servers. Note: Application Servers are custom programs you build using the provided ActiveX control. “Password” is one of the required properties to set in the ActiveX control. Options Enter any text you like here (up to 12 characters), as long as exactly the same Password is set in the Application Server you want the Terminal to connect with.
The normal operating mode of the 7802 terminal (with rev. 100 mode turned OFF) uses standard TCP connections and HTTP data formatting. Rev. 100 mode is intended ONLY FOR BACKWARD COMPATIBILITY and should NOT be used for developing new applications. Existing applications that use the older terminals can be easily ported to accommodate both old and new 7802 terminals. Please review the sample applications, ActiveX programming tools, and documentation that comes with your 7802 terminal.
Bar Code Options Code 3 of 9 (Code 39) Code 3 of 9 Full ASCII Accumulate Mode Transmit Start Stop MOD 43 Check Digit Transmit MOD 43 Caps Lock Decode Option ON ON ON ON ON ON ON OFF OFF OFF OFF OFF OFF OFF 0, 1, 2 1 2 3 4 5 6 7 8 • The Start and Stop character for Code 39 is the * character. Setting 4 determines whether or not those characters are transmitted to the computer along with the data. For example, at setting ON, the data of 1234 would be transmitted as *1234*.
• Use setting 5 to enable the transmission of the EAN-13 country code (the first 2 digits). • Use setting 6 to enable the transmission of the EAN-13 check digit. • ISBN (International Standard Book Numbering) bar codes are EAN-13 with a 5-digit supplement. If the “Bookland” bar code uses 978 (books) or 977 (periodicals) as the first three digits, then the RF Terminal can transmit it in the ISBN format. To enable transmission of the ISBN format, set option 7 to ON.
• Setting 3 will transmit the Codabar start and stop characters with the bar code data to your computer. If you are varying the start and stop characters to differentiate between different labels, transmitting the start and stop can be helpful. See Appendix: Codabar for more information.
commonly used bar code symbology. DataBar / RSS-14 Options DataBar / RSS-14 DataBar / RSS-14 plus Identifiers DataBar / RSS-14 plus UCC-128 Format ON ON ON OFF OFF OFF 1 1 1 By default, DataBar / RSS-14 is disabled. Press the 1 key to toggle through the DataBar / RSS-14 options listed above. We support the standard and stacked version of DataBar / RSS-14. For more information on GS1 DataBar, see the GS1.org website at http://www.gs1.
Parity • Use the 2 key to select the parity. • The options are None, Even or Odd. • None is generally used with 8 data bits • Even or Odd parity is generally used with 7 data bits. Data Bits Use the 3 key to select either 8 or 7 data bits. XON / XOFF Printer • Setting 4 pertains to use of a serial Printer with your RF Terminal. Use key 4 to enable XON / XOFF if your serial Printer supports it. It DOES NOT apply to the Cameo and QL3 Printers.
Delete/View Devices This command is used to see what Bluetooth devices are “known” by the LT7802B and delete them from the list of known devices. If one of the devices is paired with the LT7802B then (PAIRED) will appear next to that device. This is a quick way to see what device, if any, is currently paired with the LT7802B. Pair with Existing Device Use this command to pair the LT7802B with a Bluetooth device that has been found using the “Add New Device” command.
operation, you must turn the RF Terminal back on using the ON/OFF key. To change the amount of time the RF Terminal waits before shutting down enter two digits - the default is 05 (5 minutes)- to correspond to the length of time in minutes. For example, 01 would be 1 minute. Setting the Shut Down Time to 00 will disable automatic shutdown. Speaker Settings Beep Volume OFF Low 2 3 4 Medium 6 7 8 High 1 1 1 1 1 1 1 1 1 1 The default volume of the “Beep” is Medium.
Laser Options Double Decode Double Decode ON OFF 1 • Double Decode is there to minimize the possibility of misreads when scanning very poor quality bar codes. This option forces the RF Terminal to keep reading until it gets two results that are identical. This "double scan checking" takes longer but will minimize misreads since it must get the same result twice before considering it a "good" read. 4.5 Second Laser Beam 4.5 Second Laser Beam ON OFF 2 • 4.
Brightness Timeout Brightness Timeout (in seconds) 00..05..99 This setting controls the timeout for the display to dim after a key is pressed or data is displayed on the LCD. The dim setting is the same as the LOW brightness setting so if you have the brightness above set to LOW you will not see any effect from the timeout. Dimming the display helps extend battery life. The default is 05 for 5 seconds. A setting of 00 will disable the timeout and keep the display always at the standard brightness level.
trim from the front of the data. For example, ~b2~c1 says “trim 2 characters from Code 39 data and 1 character from UPC-A data”. Remember that the Preamble trims leading data. This applies to One-Way and host prompted communication. Lastly, the Preamble can be used to check a minimum/maximum data length for bar code data entered. To check for bar code length in the Preamble enter: |nnmm where | is ASCII 124, nn is the two-digit minimum and mm is the two-digit maximum.
where b is the Bar Code ID character (see the Code 128 setup parameter) and x is the number of characters to trim from the end of the data. For example, ~b2~c1 says “trim 2 characters from Code 39 data and 1 character from UPC-A data”. Remember that the Postamble trims trailing data. • Lastly, the Postamble can be used to check a maximum character length for data entered. To check for length in the Postamble, enter: |nnmm where | is ASCII 124, nn is the two-digit minimum and mm is the two-digit maximum.
Chapter 3: Operational Theory Before you jump in and start writing a complex host program, it is a good idea to be familiar with the theory behind the operation of your 7802 RF Terminal.
Architecture There are two ways to describe the 7802 Terminal System. The first is “Physical” architecture, that is the way the parts of the system actually hook together; and the second is the “Logical” architecture which describes the information flow between the parts of the system. Physical The 7802 Terminals always connect to a wireless access point to become part of a LAN. In order for the Terminal to have Internet access, the LAN that it connects to must provide it.
Communication Diagrams for Using a Connection Host An Application Server can run on any computer with access to the Internet. Worth Data provides programming tools for creating Windows Application Servers, but you could also create your own that runs on other platforms (Linux, Apple, etc.). A “Cloud” web-based application server is essentially a special website installed on a web server. Typically it would be created as a script, written in PHP or ASP or whatever language is your favorite.
Communication Diagram for Using a “Cloud” Application Server Worth Data provides full demos with source code for both the Connection Host and “Cloud” approach. These are installed with the utility software or download them from www.worthdata.net You can see that there a numerous ways that the necessary connectivity can be achieved.
The dialog between 7802 RF Terminal and Application Host is established when a terminal connects to the 802.11 RF network. The host computer application waits until a terminal SIGNS ON, then begins its processing by sending the first prompt out to the terminal via an Internet connection. Logical The easiest way to think of the logical architecture of the 7802 Terminal system is as a “spoked wheel” or a “star”.
Communication The 7802 RF Terminal has two modes of communication: • Sign-In Mode – the Terminal associates with an 802.11 access point and connects with your LAN. It then attempts to link with a Connection Host or Web Application Server over the Internet and register with an Application Server with matching username, password, and server ID. Upon receiving a “SignIn” signal from a Terminal, an Application Server will respond with either a prompt command or by sending a batch mode program.
3. If the host program does nothing within 2 seconds, the Terminal displays the message: Host Application Not Found Enter: Retry or F1:Exit Lets suppose that a Terminal and a host application program have been processing data by sending prompts and data back and forth as described above. The host application program sends a data prompt to the Terminal. The Terminal transmits the operator-entered data back to the Server.
• Metal walls are almost impenetrable by RF. If your access point is located in a metal shed, Terminals will likely not operate very well outside. • The more walls you try to transmit through, the more the signal breaks down. Walls that have metal studs (interior office walls) and concrete walls with steel rebar slightly degrade the signal with each wall you try to go through. Metal walls may require the use of WiFI repeaters and/or high-gain antenna on your access point(s) to achieve adequate coverage.
If you have difficulty somewhere in the area, as long as that area is in an area of overlapped coverage that a different position of the Access Point covers, you won't have a problem. If you find a spot that none of the planned Access Point locations will cover, you will have to move one of the Access Points closer to the problem spot or plan on adding another closer Access Point. It is best to locate the Access Point in the center as high as possible of the area you intend coverage.
The terminal will do an Access Point Scan and report on the three Access Points with the strongest signals contacted, (or fewer than three is less contacted). You can update the display by pressing ENTER to rescan. The display will have the following format: WorthData1 WorthData2 WORTHDATA5 WPAv1 WEP WEP ENTER:Rescan or F1: Exit If no Access Point can be located, nothing will be displayed except the bottom line.
Chapter 4: Before You Begin Programming… Overview In this chapter we are going to talk about planning application design and the various implementation choices available to you. We will look at the various testing configurations offered by Worth Data as illustrations of implementation options. We will talk about the various parts of the system, their variations and how they can be put together and customized. Then we will review how to install and configure, depending on your implementation choice.
Demo/Test Servers 45
When you build your application, you will take one of these approaches. Depending on which approach you take, here is a diagram of how the parts of your system will fit together. Operational Configuration Options Notice that you can choose to use the Connection Host that Worth Data provides, or install your own. We recommend installing your own when you are ready to put your application into production.
Failure Planning • Plan for system failures. This includes hardware failures, software failures and operator failures. In order to create an efficient application, you must put some thought into what you will do when different parts of the system fail. • Look for All Errors. Be sure your program is monitoring all possible error conditions that the Connection Host may return to you. Error conditions are detailed in the next chapter. Don’t forget to program for them; this is a common mistake.
Parts of the System Provided by Worth Data and specific to the 7802 WiFi RF Terminal: 1. Terminal(s) “Terminal(s)” refers to one or more Worth Data WiFi RF7802 Terminals. 2. Connection Host “Connection Host” is software that provides a link or “relay” between your Terminal(s) and the Application Server.
has just one connector socket. This sort of access point can be purchased from a typical computer retailer. Look for brands like Cisco, Netgear, Linksys, etc. An access point can also be a portable cellular device that allows wireless devices (like your laptop computer) to connect directly to the Internet. Many newer model “smart” cell phones now come with builtin access points. You can also get dedicated mobile access point devices from Verizon (MiFi) and Sprint, and other.s.
As mentioned above, there are two possible ways to implement an Application Server: One is using the RFTerm Active Control to create a Windows-based Application Server that connects with Terminals via a Connection Host (running on the Internet or on your LAN), and the other is build a custom Internet based Application Server (“Cloud Server”) that does not need a Connection Host and requires no computer on your LAN to run (it runs entirely on a web hosting service server).
Then, copy the necessary files (listed above) to your web site. Typically you will use an FTP client such as Filezilla or whatever is provided by your web hosting service to copy the files out to your web server. When you copy these out to your web server, you should put them in a subfolder to keep them separate from the rest of the content of your web site. Run the install.php script by opening your web browser and going to www.mywebsite.com/afolder/install.
Install Local Connection Host and Test Server Your Terminal comes preset to access Worth Data's web-based Cloud Server which provides a very simple testing and setup system for your Terminal. All you have to do is configure your Terminal to connect to your LAN's wireless access point and internet gateway. If you prefer, you can instead use the Local Connection Host and Test Server that is included with the Integrated Utilities program.
Select “Test Program” at the upper-left: Then click on the button for “Start 7802 Terminal Test Program” 53
How To Use Local Test Server When you start the Test Server, you will first see a notice about how you must configure your Terminal(s) in order to work with the Local Test Server. Notice that your Terminal must be set to find the Local Test Server on your LAN. This requires finding the IP address of your computer on your LAN. Do this by opening a DOS (Command) window and entering the command: IPCONFIG You will see a list of connection information for your computer.
When the Test Server and Local Connection Host start, they are automatically running and pre-configured. All you have to do is configure your Terminal to communicate with the Local Connection Host (as outlined above). If you click on the “Stop Server” button in the Test Server window, the Local Connection Host will shut down and the Test Server will set itself to connect with Worth Data's web-based Connection Host, rather than the Local Connection Host.
Server Setup: Connection Host URL The default setting here is the internet address for the Connection Host that Worth Data provides. You can leave it as is, or if you want to use your own Connection Host, set it to the URL of wherever you installed yours. This can be a URL like “www.mywebsite.com/afolder/server.php or it can be an IP address like http://12.48.196.34/server.php Don't forget the “server.php” (all in lower case).
Start the System Run your local Test Server. Make sure the settings are correct and click on the “Start” button. The Test Server then attempts to evaluate its link with the Connection Host, and you will see a count-down displayed on the log. Initializing Server in 5 Seconds... If there is a problem, you will see an error message. Once the Server connects with the Connection Host, you will see.
web server. If you are editing a local copy of this file, make sure to upload your changes to your web server. Then copy the necessary files to your web site. Typically you will use an FTP client such as Filezilla or whatever is provided by your web hosting service to copy the files out to your web server. When you install the WD7800 Programming Tools, the necessary files are locating in My Documents\Worth Data\Hardware\Cloud Server Demo Source They are install.php cloud.php index.html varstermrouter.
proj_terminals keeps track of what step in the program definition each Terminal is at (Think of it as the “program pointer” for each Terminal. proj_data stores the data collected from each Terminal. By indexing on Terminal ID (MAC address) and a SQL auto-inc field, we can insure that “Quantity B” is for “Item A”, even with many Terminals running simultaneously. And, so you can tell which prompt a piece of data is associated with, each record also includes the “program pointer”.
Tutorials Cloud Server Your terminal comes configured by default to access Worth Data's Test Cloud Server at www.worthdata.net/server/cloud.php. Of course, you must first configure your Terminal to connect with an access point on your LAN. See the chapter on RF System Setup to configure the Terminal to connect to your access point.
Click on the “Export To Excel” button to download the data you just collected directly into Excel running on your computer. Connection Host Since your terminal comes configured by default to access Worth Data's Test Cloud Server, you must make some changes to the Terminal's WIFI configuration settings. Of course, you must first configure your Terminal to connect with an access point on your LAN. See the chapter on RF System Setup to configure the Terminal to connect to your access point.
Scan Item: Key or scan some data. Press enter and you will see the next prompt Enter Quantity: These prompts repeat. Collect as much data as you desire. Data you collect is retrieved by the Worth Data server and discarded.
Chapter 5: Programming for the RF Terminal Two levels of programming support offered for the 7802 WiFi Terminal are: • Active X drop-in component. Every necessary function is defined. You just complete the code for each function. The ActiveX component, along with the Connection Host software, functions as a Server for managing data traffic to and from one or more terminals (your “terminal network”) and as an interface for your host application running on your PC.
In Real-Time mode, the Terminal operates similarly to a classic “dumb terminal” where the display is controlled completely by the Server. Obviously, Real-Time mode requires good continuous connectivity with the Server. If the connection with the Server becomes unavailable, the Terminal is unable to continue data collection. Batch Mode Batch mode requires that a “Program” is sent to the Terminal by the Server instead of a simple prompt.
mind that there are some limitations compared to a TriCoder: • Unless your data structure is only one field repeating, you must use data identifiers with each data field so that your Application Server can figure out what to do with each piece of data. In other words, if all you are doing is scanning “Item”, “Item”, “Item”, you do not need identifiers.
Terminal Native Command Reference HTTP / Low Level ASCII script sequences Planning Local, PC-based programs can be written in any language that has some way to access TCP communication on your LAN and over the Internet. Web based server applications can be written in any language that can access a database backend and serve HTTP web pages, such as PHP, ASP, Pearl, Python,etc. Host - Terminal Communication Programming All messages sent to a Terminal are in the form of a simple HTTP web page.
termID serverID termdata You can see that the actual data coming from the terminal is “%0F” which is HTML encoding for ASCII #15, which is a “Sign-In” request. USER, PASSWORD, and SERVERID all come from the Terminal's setup. TERMID is the MAC address of the Terminal and is unique for every Terminal Note that non-printable ASCII characters (as well as “&”, “?”, and “;”) must be sent as %hh, where hh is a two char hex value. Also, space characters must be mapped to “+”.
This is what the Terminal receives from the Connection Host/web-based App Server in response to a properly configured page request as outlined above. Sample: HTTP/1.1 200 OK Content-Type: text/plain Transfer-Encoding: chunked 19 wd*data:@1,1,1,Enter Data%04 (blank line) Explanation: Basically, the terminal will read the first line and make sure it includes “100 Continue” or “200 OK” (more on this below) and then read lines until it finds a blank line (CR/LF alone).
Low-Level Terminal Command Script Reference The basic format of a message that is transmitted from Host to Terminal is fairly simple: Byte position 1 2 Last Function Unused Command(s) Termination of message Possible values 0 (zero) (See Below) EOT (ASCII 4) The first byte, RF Terminal ID, is unused and included for backwards compatibility, should you want to port existing RF Terminal applications to the new 7802 system. Leave this set to “0” (zero).
There are 16 possible text and background colors available to choose from. They are the same 16 colors used in HTML programming. The @C command has been expanded to set the foreground and background colors for the entire display and within the same command you can also set the font size for the entire display to all be the same or split up the display using different size fonts for each line. The command structure is as follows: @C[fnfnfn...
lines defined cannot exceed the height of the screen. The total height of the screen is 240 pixels. A small font is 16 pixels tall, a medium font is 24 pixels tall and a large font is 32 pixels tall. If you define 2 lines with small fonts, 2 lines with medium fonts and 2 lines with large fonts you will be using (2x16)+(2x24)+(2x32)=144 pixels out of a maximum of 240 pixels. The top 144 pixels of the display will be used, the bottom 96 pixels will be divided into 6 lines (96/16=6) of small font..
@n,m,o,data where n m o data is the line number (1-F) you want the prompt displayed on is the character position (1-20) where you want the prompt displayed is the character that determines whether the prompt is for display only (0) or is waiting for data input (1) See the table below for valid characters for this position.
For example, the command @1,1,1, Enter Quantity would display Enter Quantity starting at position 1 on line 1, then wait for the operator to enter their data.
the host the RF Terminal ID followed by a CR (ASCII 13). There is a 231 character limit on data for this command. If you send a command of more than 231 characters, you will get an Illegal Command returned, (ID ? CR). If you need to send 300 characters of data, send the first part, wait for the acknowledgement (ID CR), and then send the remaining part.
Here are some sample command statements utilizing some of the programming tips offered above: @2,1,1,ENTER ITEM NO @V23@1,2,1,WRONG ITEM @C1@1,7,0,PICKING @1,1,1,ITEM@2,1,1,QTY Display ENTER ITEM NO on line 2, position 1 and wait for wait for data input. This is a valid single command statement – it ends with a data entry request. Play voice message 23, display WRONG ITEM on line1, position 2 and wait for data input. This is a valid multiple command statement – it ends with a data entry request.
Byte position 1 Function SIGN ON Last Termination of message Possible values SYN (ASCII 22) if 15 line display configured as a 15 line display. SI (ASCII 15) if 15 line display terminal configured as 15 line display. DC4 (ASCII 20) if 15 line display configured as a 15 line display.
Connection Host Error Feedback If you are using the ActiveX control in your Application Server, you can periodically check for any error codes present by calling GetErrorCode. Codes are set for Warning and Error conditions on the Connection Host. Look at the log file (if you have the ActiveX configured to generate one) for details on the error codes.
the current prompt, and sends back the following message: Byte position 1 Last Function Check Back Termination of message Possible values BEL (ASCII 07) CR (ASCII 13) Control Keys for Possible Programming There are some keys on the 7802 RF Terminal keypad that when pressed, can transmit special ASCII characters back to the host program. This feature might be used by a programmer to allow the operator to review transactions.
WD7802Term/ActiveX WD7802Term is a drop in ActiveX component that allows programmers to easily add the ability to send prompts to and receive data from their R/F Terminal across a wireless 802.11 Ethernet network connection. The ActiveX component is compatible with Visual Basic, Visual C++, Delphi, and most other 32-bit development platforms. Make sure you compiler is set to generate 32-bit compatible files.
Test For Good Communication • Implement an event handler for OnTermSignIn that causes a beep or displays a message when called. If communication between the host PC and the terminal is good, your event handler will fire when your program is running and you sign in a terminal on your network. Terminal Tracking • • Since you get only one set of event handlers, you will need some scheme for keeping track of where each terminal (up to 1000) is in its transaction sequence.
Events are function definitions placed in your application’s source code. The function definitions in your source code are called Event Handlers. The skeleton structure of the event handler’s source code is automatically generated. The code in the Event Handler is called ("fired") by the drop-in component when a specific event occurs. An example of an event is when a terminal returns data and the OnTermData event is fired.
ConnectionHostAddr Valid values: Any valid IP address or web site address (URL) Function: Set to www.worthdata.net/connect/server.php by default for standard internet operation. Do not change unless you know exactly what you are doing. If you are not familiar with IP addresses and URLs, leave this value at the default setting. ConnectionHostPort Valid values: 1-65536 Function: Set to 80 by default for standard internet operation. Do not change unless you know exactly what you are doing.
to call the InitializeServer method (See Methods) LogFileName Valid values: Any valid file path and name Function: Leave blank if you do not want a log file kept. If you enter a filename here, WD7802Term will create the file (or add to it if it already exists) in standard text file format that you can open using Windows Notepad.
Function: Prepares the Server to be started. Follow this call by setting the ServerActive property to True. This must be called before any of the methods described below. DefineFormat Parameters: font, linecount Function: Adds a line formatting definition. This command is called multiple times to build a display formatting definition for multiple lines which is then sent to the ActiveTerminal by the SendFormat command.
InputKeyBdColor Parameters: termID, line, position, prompt, shifted, timestamped, FG, BG Function: This instructs the ActiveTerminal to display the prompt at line and position and wait for data to be entered from the terminal keypad only. FG and BG are ForeGround and BackGround color, see table above for key. InputKeyBd (deprecated) Parameters: termID, line, position, prompt, shifted, timestamped Function: Provided for backward compatibility.
data to be entered from the terminal keypad only. The entered data is not displayed on the terminal. FG and BG are ForeGround and BackGround color, see table above for key. InputPassword (deprecated) Parameters: termID, line, position, prompt, shifted Function: Provided for backward compatibility.
SendDisplay (deprecated) Parameters: termID, line, position, prompt Function: Provided for backward compatibility. Use SendDisplayColor for new applications ClearScreen Parameters: termID Function: This instructs the ActiveTerminal to clear its display. Must be followed by an "Input" method call to take effect. ClearLine Parameters: termID, line Function: This instructs the ActiveTerminal to clear the specified line on its display. Must be followed by an "Input" method call to take effect.
useful for adapting old DLL-based code to use the new ActiveX system. MapTermID Parameters: TermNumber Function: Returns the actual terminal ID letter code for a given terminal number. Use the returned character to match with the Terminal ID programmed into a non-802 RF Terminal. This is provided for backwards compatibility and should not be used for new host applications. GetMACAddress Parameters: TermNumber Function: Returns the actual MAC address of the terminal associated with a given ID code.
Events – WD7802Term ActiveX WD7802term events occur when a specific condition is met. When an event is "fired", an event handler function in your application is called. Though the details of exactly how it is done varies from one programming environment to the next, the source code skeletons for the various event handlers are automatically generated and inserted into your source code for you. See the samples for more specific information.
error is generated and the server shuts itself down. While WD7802Term/ActiveX will intercept and prevent most logic errors, they are still possible so you should implement this event handler! OnTermIllegalCommand Data passed: terminal Event: An illegal command has been sent to a terminal.
OnTermEndKey Data passed: terminal Event: The END button has been pressed on a terminal. You must issue another Input method call before WD7802Term can respond to another keypress on the terminal. If you have already entered some data on the terminal and press the End key, this event will not fire. OnTermSearchKey Data passed: terminal Event: The SEARCH button has been pressed on a terminal. You must issue another Input method call before WD7802Term can respond to another keypress on the terminal.
Chapter 6: Batch Programming Create custom Terminal Batch Program files on your PC that are ready to send to your terminals using your the Application Server that you write using the provided ActiveX control. Use the Batch Program Editor in the Integrated Hardware Utilities. Installing the Hardware Utilities • Insert the Worth Data Utilities CD-ROM into your CD-Rom drive on your computer running Windows. • If you have autoplay enabled, the CD should begin by itself.
4. Select Batch Program Editor on the 7802 WiFi Terminal Menu 5. Press the Start Program Editor button and follow the prompts. 6.
From this screen you can create a new Terminal Batch Program. By default the View Table (Program Grid) is activated and will also appear with the Program Editor screen. For help getting started simply press the Help button and you can get detailed instructions on how to use the Program Editor. Statement Types Reference Use the Batch Program Editor described in the previous section to create and edit Batch Mode program files for your 7802 WiFi Terminals.
Statement Details Reference Data Data entry prompts are program statements that prompt the operator to enter data for storage in memory. A typical Data Statement would be prompting the operator for an “Item Number” or a “Quantity”. This is the most commonly used statement type. Branch A branch statement allows the program to jump to anywhere between 1 and 15 different statements depending on the character entered at the branch prompt.
The Time Stamp statement uses the same program fields as the Date and Time Stamp statement. Date (date stamp) The Date Stamp statement stores only the date information in a MMDDYY format. As in the other Date/Time stamp statements, using DIS in the DATA ID field will display the Date information on the Terminal when the statement is executed. The date format can be changed using the Alternative Date Format settings in the Terminal setup.
automatically enter a quantity of 1 for each item. To enter a quantity other than 1, simply enter the quantity by using the keypad, making sure the length of the quantity data does not exceed the maximum data length for the quantity field (4 digits). The very last quantity entered at the end of data collection must be keyed in from the Terminal keypad, even if it is 1.
Stmnt # Type 1 2 3 D C D Prompt Freq. Voice Data Min. Max Yes/Next No/End Msg. ID Len Len. Scan 1st Item A Scan 2nd Item A Not Equal, Press A Enter 41 42 62 01 00 01 02 01 01 09 03 00 According to the example, data scanned in statement 2 is compared to the data scanned in statement 1. If the two items match, the operator is taken back to statement 1 to scan the next item.
Stmnt # 1 2 3 4 Type D D D P Prompt Min. Len. Scan Item Number 1 Scan price 1 Scan location 1 ! UF myfile.fmtCRLR}1CRLF}2CRLF}3 Max Len. 10 10 10 Yes/Next No/End 02 03 04 01 09 99 99 99 * For details on creating label formats and specific commands for the printer, see the Zebra CD that comes with your printer. If you do not have a label format, you can utilize line printing by leaving out the ! UF myfile.fmt portion of the command.
• • • With new prompt data (which will cause the Terminal to switch to Real-Time Mode) With a Batch Acknowledge command (Terminal continues running existing Batch Program) With a new Batch Program File (Terminal continues running new Batch Program) See the ActiveX Programming section above on: SendBatchProgram and SendBatchDataACK Statement Field Details Prompt Text If you have chosen D (Data) for the STATEMENT ENTRY TYPE, typical PROMPT text might be something like "ENTER DATA" or "SCAN BARCODE".
1. E -- Exception - the voice message is played the first five times that the prompt for this statement is displayed. If the Frequency field is left blank, E is the default. 2. A -- Always - the voice message is played every time the prompt for this statement is displayed.
In this example, the data in positions 1 and 3 can be anything; but position 2 must be an “S”. 2. UPC/EAN Check digit verification for keyed-in data The second function of the Data ID field is to have the Terminal verify the check digit on an UPC or EAN bar code when the data has be entered on the Terminal keypad (not scanned). This scenario happens often when bar codes are damaged or missing and the data has to be entered by hand.
statement type C for statement 2 and enter 01 for the Data ID. Data Type The DATA TYPE field determines what kind of data - alphabetic, numeric or both - is accepted for a particular statement. There are five options for the DATA TYPE field: • • • • • D -- Digits Only; digits are 0-9 N -- Numeric Only; numeric data is 0-9, SPACE + - / $ , . A -- Alphabetic Only; alphabetic data is A-Z a-z SPACE - , .
able to simply press the ENTER key without actually entering any data for the statement. Input Device This field tells the Terminal where the data will be coming from. There are 3 valid entries for this field: • • • K -- Terminal keypad entry only W -- Scanner input only. This includes any bar code scanner attached to, or built into the Terminal. R -- Serial device input. Use for scales or other serial interface instruments. Data must be terminated by carriage return (CR).
field: 1. 2. 3. 4. 5. Data field identification Timing Delays Appending data to another field Trimming data from the front of a field Padding data with spaces or zeros at the front of a field 1. Data Field Identification By specifying particular characters in the Upload Prefix, you can help the host computer program identify or distinguish one field of data from another. For example, if your software identifies part numbers by seeing the letter P before each part number, specify P in the Upload Prefix.
is uploaded. {x where x is a single hex digit corresponding to the number of characters you want to remove from the data. As above, valid entries are 1-F. Trimming characters using the { character trims the data BEFORE displaying it on the Terminal screen and before checking data lengths and data ID’s. {zx where z is the bar code ID character and x is a single hex digit corresponding to the number of characters you want to remove from the data. As above, valid entries are 1-F.
Chapter 7: Portable Printers Cameo and QL 3 Common Information Both of these printers are stocked by Worth Data for the convenience of our users who need portable printing. These printers do not require any special protocol; they do not require the “wake-up byte” as do other printers. They do require a special cable that can be ordered from Worth Data (part #C13); cable pin-outs are available in Appendix C: Cable Pin-outs.
Track 1&2: T1: DATAT2: DATA So, when the RF Terminal transmits the data to the host, it will be in the following format: RF Terminal ID + T1: DATA + CR or RF Terminal ID + T2: DATA + CR or RF Terminal ID + T1: DATA + T2: DATA + CR For further information, see your Printing Systems Programming Manual on the CD ROM shipped with the printer. Zebra QL 3 Printer The QL 3 Printer is used for label printing. It doesn’t have Magstripe input.
Chapter 8: Voice Message Operations The Wi-Fi RF Terminal’s exclusive use of voice prompts allows you to overcome problems such as literacy, language and lighting. With proper planning, voice prompting can enhance your Wi-Fi RF Terminal application, making it faster and simpler. Voice messages are recorded (or imported from existing sound files) and uploaded to the Wi-Fi RF Terminal using the Worth Data Hardware Utilities program included on the Utility CD.
making your voice prompts user-friendly: 1. Short messages are preferable for prompts; most English prompts can be stated in ½ second. Instead of saying, “Enter the Item Number,” say “Item”. The typical Wi-Fi RF Terminal operator does not want to hear long messages thousands of times. Error messages are typically longer because they are the exception and need to provide more precise instruction to the user. 2. Record your voice prompts calmly.
Chapter 9: Troubleshooting General Considerations Changing the Battery For RF Terminals, the most frequent cause of problems is a low battery that has either been ignored or undetected. The real test for the battery is to remove battery from a working unit and place it into a suspect unit. Most of the time the battery becomes the problem as a result of: • The operator ignores the Low Batteries message and doesn’t finish up the transaction and immediately charge the battery.
Terminal Error Messages Message Meaning – Action Required “Initializing Radio Unit” This is a normal message, generated when you first establish radio contact. If you continue to get this message and it results in a "Transmission Failed" message, makes sure your Access Point setup is correct. “Waiting on Host Prompt” Problem is between Connection Host and Application Server. Check to see if Application Server is running. Check Connection Host setup.
Troubleshooting specific problems I can’t communicate at all... • First, check the settings for SSID and Wi-Fi Security on your AP and make sure they match the same settings on the Wi-Fi RF Terminal. • Make sure the SSID and Passkey or WEP Key match exactly with the same upper and lower-case characters for the SSID. • Double check the server IP and port address. • Verify that the Connection Host and Application Server are running.
Wi-Fi RF Terminal Problems When laser is triggered, it cycles power by itself – 1st screen When a voice message plays, it cycles power by itself –1st screen When I turn it on, it just beeps continually. When I turn it on, the screen flashes continually. • If the battery is very low, when turned on, the Terminal will just keep beeping; it is cycling power, over and over because the batteries are too low.
the bar codes is the problem. Whoever is printing the bar codes needs to make the necessary corrections. • The bar code should also have a “quiet zone” of at least ¼” to the left of the first bar and to the right of the last bar. Make sure the beam covers the bar code completely and “overscans” a bit on each end. • Check the laser beam window at the top of the unit and make sure it's not dirty or scratched.
RMA #XXXXXX Worth Data Inc. 623 Swift St.
Appendix: Firmware Upgrades Updates are occasionally available for the Wi-Fi RF Terminal System when new features or improvements are added. Wi-Fi RF Terminal Firmware Upgrades The RF Terminal firmware can be upgraded by downloading new firmware into the Wi-Fi RF Terminal from your computer.
Appendix: Code 39 Specifications Code 39 (or Code 3 of 9) is the de facto standard of non-retail American industry. It is widely used in the automotive industry (AIAG specifications) as well as in government and military applications (LOGMARS specifications). Code 39 is flexible, features a large character set, variable data length and density, and bidirectional readability. Code 39 is extremely accurate; substitution errors are almost nonexistent.
Here is an example to illustrate how the check character is calculated for bar code data of 123XYZ: Take the sum of the values assigned to each character: 1 + 2 + 3 + 33 + 34 + 35 = 108 1 2 3 X Y Z Divide the sum by 43: (thus the name modulus 43) 108/43 = 2 with a Remainder of 22 Find the character corresponding with the remainder. M (value 22) is the CHECK CHARACTER The data becomes 123XYZM, with M added as the Mod-43 check character.
Accumulate Mode Accumulate Mode is an option allowing the RF Terminal to accumulate multiple bar codes in its buffer, then transmit them to the computer as if they had been a single bar code. This is useful for entering quantities and other variable data. Accumulate Mode works with Code 39, Code 93 and Code 128 only and can't be used with a check digit. When the RF Terminal reads a bar code with a space as the first character, it beeps and buffers the data without transmission.
Appendix: Code 93 Specifications Code 93 is variable length, continuous, bi-directional, compact code. Code 93 is an alphanumeric bar code which consists of 43 data characters (0-9,A-Z,$/+%.- and Space), 4 control characters, and a unique start/stop character. The entire set of 128 ASCII characters is represented in Code 93 using combinations of control characters and data characters. The control characters are , , , and . Pairing these control characters with normal data characters creates full ASCII 93.
Appendix: Codabar Specifications Codabar is widely used in libraries, blood banks, the cotton industry and transportation industries. Its character set consists of numbers 0 through 9, and punctuation characters + . - / : and $. Symbols a, b, c, d, t, n, * and e are used as start and stop characters. Characters are constructed of four bars and three spaces. a12345b Codabar is a numeric-only code, but different combinations of start and stop characters can be used to identify different types of labels.
Appendix: Code 128 Specifications Code 128 is a very powerful bar code, combining an extensive character set and variable length with compactness and error checking. The character set contains all 128 ASCII characters with each character made up of three bars and three spaces. Each element (bar or space) varies from one to four units in width, totaling 11 units of width per character.
UCC-128 Shipping Container Code If UCC/EAN-128 is enabled on the RF Terminal reader, all Function 1 codes are transmitted as ]C1. In addition, should you be reading a 20 digit Shipping Serial Container code, the Mod 10 check digit is also compared with the computed Mod 10 value to give further assurance of no substitutions.
Appendix: Interleaved 2 of 5 Code Specifications Interleaved 2 of 5 Code is a numeric-only, even-number-of-digits bar code. It is widely used in warehouse and industrial applications. A combination of five elements, two wide and three narrow represent each character. Odd-number position digits are encoded in the bars, even-number positions in the spaces.
Appendix: UPC / EAN Specifications UPC symbols are found on almost all grocery products and many other retail items. The UPC code most people are familiar with (UPC-A) is a fixed-length (12 digits) numeric only code, with the first digit controlled by UPC coding assignments and the last digit a checksum. UPC-E and UPC-E1 are variations of the standard UPC-A code. Each digit is constructed of two bars and two spaces. UPC has very precise standards of code size, structure, and numbers to be used.
Supplemental codes The UPC standards include the addition of a 2 or 5-character supplemental code as well as the Extended Coupon Code. To read the supplements, you must first enable them using the RF Terminal Setup Menu. NOTE: Enabling the supplements disallows the reading of UPC codes from right to left to assure that the 2 and 5 digit supplements are not get missed. Coupon codes can be read from right to left or left to right.
• Starting with the leading digit, 8, take the sum of all the characters in the odd positions. 8 + 9 +8 + 4 + 3 + 1 = 33 • Multiply the result of step 1 by 3. 33 x 3 = 99 • Now take the sum of all the even-position characters. 3 + 9 + 5 + 1 + 8 = 26 • Add the result in Step 2 to the result in Step 3. 99 + 26 = 125 • Subtract the result from the next higher multiple of 10. Next higher multiple of 10 over 125 = 130 130 - 125 = 5 • 5 is the Modulo-10 check character.
1234500006 Add the Number System Character of 0 to the sample data: 01234500006 Use the UPC-A check digit calculation described in the previous section to produce a check digit as if it were a UPC-A code.
Appendix: MSI/Plessey Specifications Plessey is a variable length numeric only bar code. MSI Bar Code is a variable length, numeric-only code with an automatically appended Modulus 10 check digit. MSI is sometimes called Modified Plessey Code. If the user specifies an additional check digit, the MSI code can be 14 digits long, otherwise it has a maximum length of 13 characters.
943457842 • Assign a checking factor to each number, starting with the units position of the number (in this example, the 2) up to the highest order position (the 9). Use checking factors of: 2,3,4,5,6,7,2,3,4,5,6,7... • Multiply the checking factor with its assigned number and add the products: 4 + 12 + 32 + 35 + 30 + 28 + 6 + 12 + 36 = 195 • Divide the sum by 11 195/11 = 17 remainder 8 • Subtract remainder from 11 11 - 8 = 3 • New Check Digit 3 (If the remainder is 10, no check digit is added.
Appendix: How To Scan a Bar Code The Wi-Fi RF Terminal is available with an optional internal laser bar code scanner. This section will include information on different scanners as well as how to use each one. You can use this information to compare the built-in scanner with other types of bar code scanners that are also available from Worth Data. Laser Scanners If you are using a laser scanner, technique is not critical. The scanners are “point-and-shoot”; you can’t miss.
• “Difficult Code 39 Reading” for reading Vehicle Identification Numbers (VIN) through the automobile windshield. This applies only to the external tethered LZ400 Laser Scanner. Aiming the Laser Dot: Sometimes it is difficult to see the laser beam and know you are on the bar code, especially if you are attempting to read outdoors in direct sunlight.
Appendix: Cable Pin-outs Below are the pin-outs for our cables. All cables showing a Worth Data part number (Cxx) are available for purchase. Unless you have experience making your own cables, we recommend buying your cables from us. For all of the 7000 RF Terminal cables, number pins based on the number sequence of the connector (marked on the connector). The I/O connector is a JAE # DD1P030MA7 Male Connector (DigiKey Part # 670-1021-ND).
C13 Zebra Serial Printer Cable Pin Outs Pin-outs Pin-outs for C13 Zebra Compatible 8pin Din (QLxxx Series Mobile Printers) to Worth Data I/O Male 30pin connector.
Appendix: ASCII Code Equivalent Table The 128 ASCII codes, their 3-digit decimal equivalents and 2-digit hex equivalents are detailed in the below table.